caelestia-shell

![GitHub last commit](https://img.shields.io/github/last-commit/caelestia-dots/shell?style=for-the-badge&labelColor=101418&color=9ccbfb) ![GitHub Repo stars](https://img.shields.io/github/stars/caelestia-dots/shell?style=for-the-badge&labelColor=101418&color=b9c8da) ![GitHub repo size](https://img.shields.io/github/repo-size/caelestia-dots/shell?style=for-the-badge&labelColor=101418&color=d3bfe6) ![Ko-Fi donate](https://img.shields.io/badge/donate-kofi?style=for-the-badge&logo=ko-fi&logoColor=ffffff&label=ko-fi&labelColor=101418&color=f16061&link=https%3A%2F%2Fko-fi.com%2Fsoramane)
> [!WARNING] > The overhaul is finished! > Installation is now via an [install script](https://github.com/caelestia-dots/caelestia/blob/main/install.fish) in the > [`caelestia` repo](https://github.com/caelestia-dots/caelestia). > > Anyone with an existing installation, please reinstall via the install script. > > Some breaking changes: > - Rename the `scripts` repo -> `cli` > - Rename the `hypr` repo -> `caelestia` > - Merge all other repos (except this and `cli`) into `caelestia` > - Installation for the `shell` and `cli` will be done via AUR packages; `caelestia` will have a meta package and an install script (should fix most installation issues) > - Overhaul the scheme system (should fix a few bugs with that and make it cleaner in general) https://github.com/user-attachments/assets/0840f496-575c-4ca6-83a8-87bb01a85c5f ## Components - Widgets: [`Quickshell`](https://quickshell.outfoxxed.me) - Window manager: [`Hyprland`](https://hyprland.org) - Dots: [`caelestia`](https://github.com/caelestia-dots) ## Installation This is not implemented as of now. ## Usage The shell can be started in two ways: via systemd or manually running `caelestia shell`. ### Via systemd The install script creates and enables the systemd service `caelestia-shell.service` which should automatically start the shell on login. ### Via command If not on a system that uses systemd, you can manually start the shell via `caelestia-shell`. To autostart it on login, you can use an `exec-once` rule in your Hyprland config: ``` exec-once = caelestia shell ``` ### Shortcuts/IPC All keybinds are accessible via Hyprland [global shortcuts](https://wiki.hyprland.org/Configuring/Binds/#dbus-global-shortcuts). For a preconfigured setup, install [`caelestia-hypr`](https://github.com/caelestia-dots/hypr) via `caelestia install hypr` or see [this file](https://github.com/caelestia-dots/hypr/blob/main/hyprland/keybinds.conf#L1-L29) for an example on how to use global shortcuts. All IPC commands can be accessed via `caelestia shell ...`. For example ```sh caelestia shell mpris getActive trackTitle ``` The list of IPC commands can be shown via `caelestia shell help`: ``` > caelestia shell help target mpris function stop(): void function play(): void function next(): void function getActive(prop: string): string function list(): string function playPause(): void function pause(): void function previous(): void target drawers function list(): string function toggle(drawer: string): void target wallpaper function list(): string function get(): string function set(path: string): void target notifs function clear(): void ``` ### PFP/Wallpapers The profile picture for the dashboard is read from the file `~/.face`, so to set it just put your image there. The wallpapers for the wallpaper switcher are read from `~/Pictures/Wallpapers`, so put your wallpapers there for them to show up in the switcher (you need to restart the shell after changing stuff in `~/Pictures/Wallpapers` sadly, no watching for changes yet). To set the wallpaper, you can use the command `caelestia wallpaper`. Use `caelestia wallpaper -h` for more info about the command. ## Credits Thanks to the Hyprland discord community (especially the homies in #rice-discussion) for all the help and suggestions for improving these dots! A special thanks to [@outfoxxed](https://github.com/outfoxxed) for making Quickshell and the effort put into fixing issues and implementing various feature requests. Another special thanks to [@end_4](https://github.com/end-4) for his [config](https://github.com/end-4/dots-hyprland) which helped me a lot with learning how to use Quickshell. Finally another thank you to all the configs I took inspiration from (only one for now): - [Axenide/Ax-Shell](https://github.com/Axenide/Ax-Shell) ## Stonks 📈 Star History Chart