Desktop Shell created with GTK4, Libadwaita, and Astal.
- River, or Hyprland
- Vala, Meson, Just
- Libadwaita & Adwaita Theme.
- Blueprint-Compiler
- GTK
- Astal
- 4
- Tray
- IO
- Wireplumber
- Mpris
- NotifD
- Network
- Bluetooth
- Apps
- River (Optional)
- Hyprland (Optional)
-
Battery
While it might not be used, its mandatory to install it (For now). -
Power Profiles
While it might not be used, its mandatory to install it (For now).
- libgtop (Optional)
Note
Optional dependencies are not required only if built from source, the binary release requires all.
git clone https://github.com/ARKye03/morghulis
cd morghulis
just init
just install
Build and install using my PKGBUILD
file:
mkdir /tmp/morghulis && cd /tmp/morghulis
wget https://raw.githubusercontent.com/ARKye03/PKGBUILDS/refs/heads/main/morghulis-git/PKGBUILD
makepkg -si
Alternatively, use a binary from releases.
Morghulis is a desktop shell that uses Astal under the hood, so the astal cli is available to use, via astal -i morghulis <command>
, nevertheless, the morghulis-cli
called morghulctl
is dedicated to this project itself.
morghulctl --help
Note
The cli at the moment offers simple commands to start the application, toggle window, and show inspector.
You can change the style of Morghulis by creating the main.css
file at $HOME/.config/morghulis/
. Hot Reload is supported. As previously mentioned, Adwaita theme is needed.
just init
just
Use flake.nix
for development:
nix develop
Or run it with:
nix run github:ARKye03/morghulis -- --help
# For non-NixOS distro
nix run github:ARKye03/morghulis#fhs -- --help
- Status Bar
- Tags/Workspaces Module
- Focused View/Client
- Systray
- Battery
- Quick Menu
- Mpris Media Player
- Power Buttons
- Power Profiles
- Bluetooth
- (WIP) Network
- (WIP) Audio
- Runner
- Run apps
- Solve math expressions
- Handle Hyprland Clients
- Handle River views?
- Notifications
- Center
- Popup
- Don't Disturb logic
- Power Menu (WIP)
- OnScreenDisplay
- Audio
- Brightness
- Dynamic CSS
Note
For OSD to work, you need to append morghulctl -r change_volume
to whatever keybinding you want to use to raise/volume the volume.
Note
The preview uses the Adwaita-black theme, loaded directly from $XDG_CONFIG_HOME/morghulis/main.css
. This allows custom shell colors without affecting the system-wide GTK theme.
- kotontrion and its kompass project for inspiration, code snippets, and guidance.
- Aylur for the awesome project Astal is.
Licensed under the WTFPL. See the LICENSE file for details.