Mist-shell is a desktop shell with dotfiles specifically made for Arch Linux. This is a performance and customization first shell. Mostly contains the shell itself but this also contains a few dotfiles (more coming soon!)
Warning
This only works for Hyprland 0.55+ If you haven't updated to Hyprland 0.55 then this won't work for you since hyprlang is deprecated
Installation
Hyprland 0.54: If you're using Hyprland version 0.54 or less then you are not ready to use it because this is made only for Hyprland 0.55 or later, which uses the Lua language for config files instead of hyprlang.
Clone this repo (preferrably in the home directory) and run the install script using ./install.sh
Manual Installation
NOTE: It is recommended to use a fresh installation of Arch Linux. If not using a fresh installation, make sure to back up your dotfiles.
-
Clone this repo and enter the directory
git clone https://github.com/SchneeFawl/mist-shell.git cd mist-shell -
Copy the config files
dots/.configto your config directorymkdir -p $HOME/.config cp -ri dots/.config/. $HOME/.config/
-
Install all the pacman dependencies
sudo pacman -S --needed \ hyprland kitty zsh playerctl networkmanager network-manager-applet \ pavucontrol pipewire pipewire-pulse wireplumber bluez bluez-utils \ blueman dolphin awww matugen rofi papirus-icon-theme starship \ cliphist brightnessctl gpu-screen-recorder gamemode qt6-declarative \ qt6-base qt6-wayland qt6-svg qt6-multimedia qt6-multimedia-ffmpeg \ qt6-imageformats qt6-shadertools qt6-positioning qt6-webengine \ libpipewire xdg-desktop-portal-hyprland xdg-desktop-portal-gtk
-
Install all the AUR dependencies (replace
yaywith your preferred AUR helper if needed):yay -S --needed \ otf-geist-mono-nerd ttf-cascadia-code-nerd ttf-cascadia-mono-nerd \ ttf-roboto quickshell-git bibata-cursor-theme-bin
Keybinds
-
May not be suited to you but here are the list of keybinds if you want to use the ones present in the shell:
SUPER+T= terminal (kitty)SUPER+F= browser (change browser in.config/hypr/hyprland/keybinds.luaif needed)SUPER+C= editor (code)SUPER+A= app launcherSUPER+E= open file manager (dolphin)SUPER+V= open clipboardSUPER+I= open settings windowSUPER+L= lockscreen
-
Hyprland keybinds:
SUPER+Q= close windowSUPER+W= toggle floating modeSUPER+S= open special workspaceSUPER+P= toggle pseudoSUPER+M= shutdown hyprland
SUPER+1...0= switch workspace from 1 to 10 (0 is the tenth workspace)SUPER+SHIFT+1...0= move window to workspace 1 to 10
SUPER+left= move focus leftSUPER+right= move focus rightSUPER+up= move focus upSUPER+down= move focus downSUPER+CTRL+left= navigate to previous workpsaceSUPER+CTRL+right= navigate to right workpsace
SUPER+SHIFT+left= move window leftSUPER+SHIFT+right= move window rightSUPER+SHIFT+up= move window topSUPER+SHIFT+down= move window downSUPER+SHIFT+S= move window special workspace
Components
- Window manager: Hyprland (>0.55)
- Widgets: Quickshell
| Mist theme | Catppuccin theme |
|---|---|
![]() |
![]() |
| Dashboard (mist) | Dashboard (catppuccin) |
![]() |
![]() |
- Dashboard
- Wallpapers
- Bluetooth
- Clipboard
- Notifications
- DND mode (dashboard)
- Idle inhibitor/Caffeine mode (half complete)
- Brightness control (dashboard)
- App launcher
- Screen recorder
- Lock screen
- Power menu
- Screenshot
I found that most desktop shells based on Quickshell use a lot of system resources by default. Since I have only 4GB ram in my PC, I really don't like high ram usage but I do enjoy aesthetics.
I made this project with a lot of performance aspects in my mind to use the absolute bare minimum system resources. The optimizations in the shell may not be good because I am a beginner to QML and JS overall.
If you want to reach out to me, you can add me on Discord - schneefawl. I really want to learn about linux and QML in general.
- Bugs and Suggestions - You can open an issue
- Ambxst - Quite obvious but this entire project is inspired by Axenide's Ambxst shell's design (love this project)
- ends-4 dots-hyprland - Awesome project, mimicked some implementations and learned a lot from it. Found the code quite beginner friendly
- octashell - Best thing I found on r/QuickShell, very beginner friendly and simple implementations (very grateful to find this)
- outfoxxed - Amazing Quickshell documentation



