Skip to content

garado/ags-shell

Repository files navigation

ags shell


Another desktop with an emphasis on functionality and cohesive design. Made with ags and ❤️.

⚠️ Warning (the end of an era!)

This project is abandoned. I have a new desktop shell project called Labyrinthine using Qt/C++. I figured if I'm spending dozens (hundreds...?) of hours writing code in my spare time, I should at least choose a language that's relevant for my career :P

Originally part of my Nix config, now contained in its own repo.


What is it?

A desktop shell made with ags (v2). It brings together everything I need in one place: calendar, finance tracking (hledger), task management (TaskWarrior), system monitoring, weather, directions, goals tracking, sticky notes, color mixing instructions for watercolor paints, and whatever else I could think of.

Spiritual successor to Cozy, my previous AwesomeWM setup.

Showcase

Dashboard

Ledger

A frontend for hledger, a plaintext accounting tool which I use to manage all of my finances.

The overview tab displays balance tracking, debts/liabilities, recent spending analysis, and preview of recent transactions.

The analytics tab displays more detailed financial reports, such as spending by category by month.

The FIRE tab has an interactive plot showing current progress towards financial independence targets.

A privacy toggle (Ctrl+O) switches between real and demo data for screenshots or public use.

Calendar

Week view calendar with Google Calendar synchronization.

Goals tracking

Sort, filter, and search goals tracked in TaskWarrior.

Task tracking

View tasks stored in Taskwarrior.

Trip planning

A trip planning widget with multi-modal routing, route visualizations, and the option to send the trip details to my phone.

Made because I use the Transit app a lot, and after finding out they had an API, I wanted to play around with it. The widget uses: libshumate (map rendering), LocationIQ (location autocomplete), Pushover (sending trip details to phone), and of course the wonderful Transit API.

Control panel

Lots of convenient system controls

UI scaler (for different DPI monitors), power settings, wifi/Bluetooth/audio control, monitor arrangement and settings, and a few more things.

Theme switcher

Hot reloadable theme with shell, terminal, and wallpaper theme switching support.

Utility panel

Paint mixer

I like to paint (watercolor/gouache). I made this tool to help me mix a specific color from a reference image using the colors I have in my paint palettes.

Sticky notes

Little notes-to-self.

Metronome

I play guitar. I made this metronome for when I feel like noodling around.

Gemini chat

For quick prompts to Gemini.

Acknowledgements

Structure

.
├── assets
│   ├── defaults    # theme stuff (walls, etc)
│   ├── icons       # https://phosphoricons.com/
│   └── sourceview  # gtk source view themes
├── src
│   ├── globals.ts  # random global stuff
│   ├── scripts/    # misc scripts used by this config
│   ├── services/   # stuff for interfacing with external programs
│   ├── styles/     # SASS
│   ├── utils/      # random utility functions
│   └── views/      # all window definitions and components
├── app-lock.ts     # gtk3 lockscreen entrypoint
├── app.ts          # gtk4 regular desktop shell entrypoint
└── userconfig.ts   # auriga will use default if this is not provided

Disclaimer

This config is designed specifically for my setup and workflow. Feel free to use it as a reference, but YMMV if you try to run it directly.

About

backup of ags shell work

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors