A Wayland desktop shell created with GTK4, Libadwaita, and Astal.
Note
The preview uses custom Adwaita colours, loaded directly from $XDG_CONFIG_HOME/morghulis/main.css. This allows custom shell colors without affecting the system-wide GTK theme.
- River, or Hyprland
- Vala, Meson, Just
- Libadwaita & Adwaita Theme.
- Blueprint-Compiler
- GTK
- GSound
- Astal
- Tray
- Wireplumber
- Mpris
- NotifD
- Network
- Bluetooth
- Apps
- River (Optional)
- Hyprland (Optional)
- Battery
- Power Profiles
- libgtop
- muparser
- CMark
- JsonGLib
- libsoup
- libportal
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 installIt's on AUR so, using yay or any other helper:
yay -S morghulis-gitAlternatively, use this PKGBUILD, that will install latest release.
Morghulis is a desktop shell that handles also cli.
morghulis --helpNote
The CLI currently offers simple commands to start the application, toggle windows, and show the inspector.
You can change the style of Morghulis by creating the file $XDG_CONFIG_HOME/morghulis/main.css. Hot Reload is supported. As previously mentioned, an Adwaita theme is encouraged.
just init
justUse flake.nix for development:
nix developOr 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
- Active Mode/Submap
- Systray
- Quick Menu
- Mpris Media Player
- Power Buttons
- Power Profiles
- Bluetooth
- Network
- Wifi
- Ethernet
- Audio
- Battery Support
- Runner
- Run apps
- Solve math expressions
- Handle Hyprland Clients
- Handle River views?
- Notifications
- Center
- Popup
- Don't Disturb logic
- Power Popup Menu
- OnScreenDisplay
- Audio
- Brightness
- Backligh
- Hot Reload CSS
Warning
Users must be part of the video group to use backlight services.
For OSD to work, you need to append "morghulis -r change_volume" and/or" morghulis -r change_brightness" to whatever keybinding you want to use to raise/lower the volume/brightness.
Example:
binde=, XF86MonBrightnessUp, exec, brightnessctl set +10% & morghulis -r change_brightness
- kotontrion and its kompass project for inspiration, code snippets, and guidance.
- Aylur for the awesome project Astal is.
Licensed under the MIT. See the LICENSE file for details.
