Nisfere is a setup script and dotfiles collection tailored for Arch Linux users. It includes tools, themes, fonts, and Hyprland configuration to get a beautiful and functional desktop environment quickly.
- Arch Linux
- Internet connection
- A non-root user
- Automatic installation of required packages
- ZSH setup with plugins
- Fonts, GTK themes, icons, and cursors
- Hyprland default keybindings
- Panel and theming powered by Fabric
bash <(wget -qO- https://gist.githubusercontent.com/Nisfeight8/62ee7aed6796641cf5a89a6e482a2519/raw/a7f2b9b251e463cbd901914b550633f79adcdabd/install.sh)
After installation, Nisfere stores its configuration in the following directory:
~/.config/nisfere
To create your own themes, navigate to:
~/.config/nisfere/themes/
Inside this folder, you can add a subfolder for each custom theme (e.g., dracula, nord, gruvbox, etc.). Each theme folder should contain the following files:
| File Name | Description |
|---|---|
colors.sh |
Shell script that defines theme color variables. |
wallpapers.pdf |
The wallpaper to be used for the theme. |
icon.txt |
A text file containing the desired icon theme. |
Example directory structure:
~/.config/nisfere/themes/dracula/ ├── colors.sh ├── wallpapers.pdf └── icon.txt
🔁 You can switch themes using the
change-theme.shscript found in the~/.nisfere/scripts/directory.
The colors are applied to Alacritty, Gtk theme, Bpytop, Hyprland colors, VSCode, Swaylock, Nisfere Panel
The panel is controlled via a JSON config file located at:
~/.config/nisfere/panel-config.json
This file lets you customize:
- Default settings
- Bar settings
- Dock settings
- Font size & family & border
Essential utilities and dependencies for the Nisfere setup:
fastfetch, bpytop ,code, pipewire, playerctl, networkmanager, brightnessctl,
pkgconf, wf-recorder, thunar, thunar-archive-plugin, xarchiver, zip, unzip,
gvfs, swww, zsh, alacritty, libnotify, python, gtk3, cairo, gtk-layer-shell,
libgirepository, gobject-introspection, gobject-introspection-runtime,
python-pip, python-gobject, python-psutil, python-cairo, python-dbus,
python-pydbus, python-loguru, python-setproctitle, grim, swappy
These will be installed via yay:
python-fabric, swaylock-effects-git, swayidle, gnome-bluetooth-3.0,
fabric-cli-git, slurp, imagemagick
- Fonts copied to
~/.fonts - GTK themes to
~/.themes - Icons to
~/.icons - Cursor set to
Breeze-Adapta-Cursor
Nisfere's panel is powered by Fabric. Please ensure it's installed and accessible from your system PATH.
Panel config is stored in:
~/.config/nisfere/panel-config.json
| Keybind | Action |
|---|---|
| SUPER + Return | Open terminal |
| SUPER + Q | Kill active window |
| SUPER + R | Restart Nisfere panel |
| SUPER + M | Exit Hyprland |
| SUPER + E | Open file manager |
| SUPER + V | Open Firefox |
| SUPER + X | Open power menu via panel |
| SUPER + T | Open theme switcher via panel |
| SUPER + SPACE | Open launcher/menu |
| SUPER + F | Toggle fullscreen |
| SUPER + S | Toggle floating |
| Keybind | Action |
|---|---|
| SUPER + Arrow Keys | Move focus |
| SUPER + SHIFT + Arrows | Resize active window |
| SUPER + P | Toggle pseudo-mode (dwindle) |
| SUPER + J | Toggle split (dwindle) |
| Keybind | Action |
|---|---|
| SUPER + [1-0] | Switch to workspace 1–10 |
| SUPER + SHIFT + [1-0] | Move active window to workspace 1–10 |
| SUPER + Tab | Next workspace |
| SUPER + SHIFT + Tab | Previous workspace |
| Keybind | Action |
|---|---|
| SUPER + S | Toggle scratchpad |
| SUPER + SHIFT + S | Move window to scratchpad |
| Keybind | Action |
|---|---|
| SUPER + Mouse Down | Next workspace |
| SUPER + Mouse Up | Previous workspace |
| SUPER + LMB | Move window |
| SUPER + RMB | Resize window |
| Keybind | Action |
|---|---|
| XF86AudioRaiseVolume | Increase volume |
| XF86AudioLowerVolume | Decrease volume |
| XF86AudioMute | Toggle mute |
| XF86AudioMicMute | Toggle microphone mute |
| XF86MonBrightnessUp | Increase brightness |
| XF86MonBrightnessDown | Decrease brightness |
| XF86Lock | Lock screen |
| Keybind | Action |
|---|---|
| XF86AudioNext | Next track (playerctl) |
| XF86AudioPause | Play/pause (playerctl) |
| XF86AudioPrev | Previous track (playerctl) |
| F3/F2/F4 | Volume control |
| F8/F7/F6 | Media playback control |
~/.nisfere: Nisfere's internal files~/.config/nisfere: Configuration and themes~/.cache/nisfere: Panel notifications cache~/Pictures/screenshots: Screenshot save folder~/Videos/records: Screen recordings save folder
MIT License




