be308191c5dce92b32270e8028a025180b82cf8a
The refactor introduces persistent indicator widgets and updates how visibility and layout are managed based on configuration changes. New Features - Added BatteryIndicator, NetworkIndicator and BluetoothIndicator as persistent panel children. - Implemented visibility toggling for each indicator according to configuration and battery presence. - Added debug prints when an indicator’s visibility changes or a battery is not detected. Enhancements - Updated dropdown actions to use `get_about_window()` and `get_settings_window()` for About and System Settings entries. - Switched layout rebuilding to use `get_config_all()` and now only rebuilds when specific keys actually change. - Removed manual recreation of indicators; visibility is controlled via `show()`/`set_visible()`. - Consolidated changed‑key detection and added logging of rebuild reasons. - Streamlined config key checks to use `config_data.get(..., True)`. Bug Fixes - Fixed BatteryIndicator to hide and log when no battery is detected. - Corrected use of `config_data.get()` with appropriate fallback values. - Updated layout updates to use `show()` and trigger a resize queue instead of `show_all()`.
Home Screen:
Lock Screen:
Installation
Caution
- You need a working installation of hyprland and knowledge of how it works
- There may not be all packages in your system install them accordingly
git clone https://github.com/S4NKALP/Modus ~/.config/Modus
cd ~/.config/Modus
./install.sh
Tip
Post Installation
- Install recommended Icon theme , GTK theme and Cursor Theme
- Check
config/hypr/modus.confedit it according to your device and copy it to your hyprland config- For Lock Screen Bind keys to
uv run lock
Todo
Manual Installation
paru -S fabric-cli-git gtk-session-lock uv apple-fonts cinnamon-desktop hyprshot hypridle hyprpicker grim slurp gnome-bluetooth-3.0 cliphist matugen-bin awww swappy wl-clipboard webp-pixbuf-loader acpi wf-recorder brightnessctl power-profile-daemon uwsm libnotify playerctl ffmpeg --needed
git clone https://github.com/S4NKALP/Modus ~/.config/Modus
cd ~/.config/Modus
uv sync
uv run start
- Launcher
- Lock Screen
- Dock
- Notification
- Control Center
- Music Player
- Desktop Widgets
- New Launcher (like Spotlight)
- Settings
Magnifier hover effect on DockNew Application Switcher- Panel Widget
- MacOS like Widget
- Expandable Notification Centre
- Installation Script
- Migrate to a
uvmanaged Python virtual environment - Proper Documentation
- Pomodoro Timer Widget
- To-do List Widget
Bug Fixes (the bug found till now)
- WiFi
- wifi off button looks bigger
- Metadata Changes delay in Media Player
- Active Window Title showing
Unknownwhen no active window - Notification Escape Char Issue
Team
Special Thanks
A big thank you to the following people for their incredible help with code and creative ideas. Your help made a real difference!
- darsh: for creating Fabric, which made everything possible.
- gummy bear album: for sharing fantastic code snippets that saved me time and effort.
- axenide: for the amazing config that not only inspired parts of mine but also provided some gems I couldn’t resist borrowing.
- E3nviction: for code snippets and ideas that were incredibly helpful.
I truly appreciate your support
Description
A modular and extensible shell for Hyprland, written on Fabric.
arch-linuxarchlinuxdesktopdotfilesdotsdynamic-colorfabricfabric-configfabric-shellgtkgtk-layer-shellhyprlandmaterial-colorsmatugenpythonpython3ricericingunixpornwayland
Readme
GPL-3.0
78 MiB
0 Stars
1 Watchers
0 Forks
