My NixOS and home-manager config using Flakes ❄️. I like to call it FruesOS.
| .github/assets | ||
| hosts/nixos | ||
| modules | ||
| pkgs | ||
| wallpapers | ||
| flake.lock | ||
| flake.nix | ||
| install.sh | ||
| LICENSE | ||
| README.md | ||
Frost-Phoenix's Flakes
Screeenshot last updated 2024-01-12
🖼️ Gallery
EXPAND
🗃️ Overview
📚 Layout
- flake.nix base of the configuration
- hosts 🌳 per-host configurations that contain machine specific configurations
- nixos 🖥️ Default host
- modules 🍱 modularized NixOS configurations
- core ⚙️ Core NixOS configuration
- homes 🏠 my Home-Manager config
- pkgs 📦 packages exported by my flake
- wallpapers 🌄 wallpapers collection
📓 Components
| NixOS + Hyprland | |
|---|---|
| Window Manager | Hyprland |
| Bar | Waybar |
| Application Launcher | wofi |
| Notification Daemon | Mako |
| Terminal Emulator | Kitty |
| Shell | zsh + oh-my-zsh + Starship |
| Text Editor | VSCodium + Neovim |
| network management tool | NetworkManager + network-manager-applet |
| System resource monitor | Btop |
| File Manager | nemo + yazi |
| Fonts | Nerd fonts |
| Color Scheme | Catppuccin |
| Cursor | Nordzy-cursors |
| Icons | catppuccin-papirus-folders |
| Lockscreen | Swaylock-effects |
| Image Viewer | imv |
| Media Player | mpv |
| Music Player | audacious |
| Screenshot Software | grimblast |
| Screen Recording | wf-recorder |
| Clipboard | wl-clipboard |
| Color Picker | hyprpicker |
🔧 Shell aliases
Utils (EXPAND)
c\rightarrowclearvim\rightarrownvimcat\rightarrowbatnano\rightarrowmicroicat\rightarrowkitten icatdsize\rightarrowdu -hsfindw\rightarrowgrep -rll\rightarroweza --icons -a --group-directories-first -1ll\rightarroweza --icons -a --group-directories-first -1 --no-user --longtree\rightarroweza --icons --tree --group-directories-first
Nixos (EXPAND)
cdnix\rightarrowcd ~/nixos-config && codium ~/nixos-confignix-shell\rightarrownix-shell --run zshnix-switch\rightarrowsudo nixos-rebuild switch --flake ~/nixos-config#nixosnix-switchu\rightarrowsudo nixos-rebuild switch --upgrade --flake ~/nixos-config#nixosnix-flake-update\rightarrowsudo nix flake update ~/nixos-config#nix-clean\rightarrowsudo nix-collect-garbage && sudo nix-collect-garbage -d && sudo rm /nix/var/nix/gcroots/auto/* && nix-collect-garbage && nix-collect-garbage -d
Git (EXPAND)
ga\rightarrowgit addgaa\rightarrowgit add --allgs\rightarrowgit statusgb\rightarrowgit branchgm\rightarrowgit mergegpl\rightarrowgit pullgplo\rightarrowgit pull origingps\rightarrowgit pushgpso\rightarrowgit push origingc\rightarrowgit commitgcm\rightarrowgit commit -mgch\rightarrowgit checkoutgchb\rightarrowgit checkout -bgcoe\rightarrowgit config user.emailgcon\rightarrowgit config user.nameg\rightarrowlazygit
📝 Scripts
All the scripts are in modules/home/scripts/scripts/ and are exported as packages in modules/home/scripts/default.nix
⌨️ Keybinds
View all keybinds by pressing $mainMod F1
Complete list (EXPAND)
Keybindings
bind = $mainMod, Return, exec, kittybind = ALT, Return, exec, kitty --title float_kittybind = $mainMod SHIFT, Return, exec, kitty --start-as=fullscreen -o 'font_size=16'bind = $mainMod, B, exec, firefoxbind = $mainMod, Q, killactive,bind = $mainMod, F, fullscreen, 0bind = $mainMod SHIFT, F, fullscreen, 1bind = $mainMod, Space, togglefloating,bind = $mainMod, D, exec, pkill wofi || wofi --show drunbind = $mainMod, Escape, exec, swaylockbind = $mainMod SHIFT, Escape, exec, shutdown-scriptbind = $mainMod, P, pseudo,bind = $mainMod, J, togglesplit,bind = $mainMod, E, exec, nemobind = $mainMod SHIFT, B, exec, pkill -SIGUSR1 .waybar-wrappedbind = $mainMod, C ,exec, hyprpicker -abind = $mainMod, G,exec, $HOME/.local/bin/toggle_layoutbind = $mainMod, W,exec, pkill wofi || wallpaper-picker
Screenshot
bind = $mainMod, Print, exec, grimblast --notify --cursor save area ~/Pictures/$(date +'%Y-%m-%d-At-%Ih%Mm%Ss').pngbind = ,Print, exec, grimblast --notify --cursor copy area
Switch window focus
bind = $mainMod, left, movefocus, lbind = $mainMod, right, movefocus, rbind = $mainMod, up, movefocus, ubind = $mainMod, down, movefocus, d
Switch workspace
bind = $mainMod, 1, workspace, 1bind = $mainMod, 2, workspace, 2bind = $mainMod, 3, workspace, 3bind = $mainMod, 4, workspace, 4bind = $mainMod, 5, workspace, 5bind = $mainMod, 6, workspace, 6bind = $mainMod, 7, workspace, 7bind = $mainMod, 8, workspace, 8bind = $mainMod, 9, workspace, 9bind = $mainMod, 0, workspace, 10
Switch window to workspace
bind = $mainMod SHIFT, 1, movetoworkspace, 1bind = $mainMod SHIFT, 2, movetoworkspace, 2bind = $mainMod SHIFT, 3, movetoworkspace, 3bind = $mainMod SHIFT, 4, movetoworkspace, 4bind = $mainMod SHIFT, 5, movetoworkspace, 5bind = $mainMod SHIFT, 6, movetoworkspace, 6bind = $mainMod SHIFT, 7, movetoworkspace, 7bind = $mainMod SHIFT, 8, movetoworkspace, 8bind = $mainMod SHIFT, 9, movetoworkspace, 9bind = $mainMod SHIFT, 0, movetoworkspace, 10bind = $mainMod CTRL, c, movetoworkspace, empty
Window control
bind = SUPER SHIFT, left, movewindow, lbind = SUPER SHIFT, right, movewindow, rbind = SUPER SHIFT, up, movewindow, ubind = SUPER SHIFT, down, movewindow, dbind = SUPER CTRL, left, resizeactive, -80 0bind = SUPER CTRL, right, resizeactive, 80 0bind = SUPER CTRL, up, resizeactive, 0 -80bind = SUPER CTRL, down, resizeactive, 0 80bind = SUPER ALT, left, moveactive, -80 0bind = SUPER ALT, right, moveactive, 80 0bind = SUPER ALT, up, moveactive, 0 -80bind = SUPER ALT, down, moveactive, 0 80
Media and volume controls
bind = ,XF86AudioRaiseVolume,exec, pamixer -i 2bind = ,XF86AudioLowerVolume,exec, pamixer -d 2bind = ,XF86AudioMute,exec, pamixer -tbind = ,XF86AudioPlay,exec, playerctl play-pausebind = ,XF86AudioNext,exec, playerctl nextbind = ,XF86AudioPrev,exec, playerctl previousbind = , XF86AudioStop, exec, playerctl stopbind = $mainMod, mouse_down, workspace, e-1bind = $mainMod, mouse_up, workspace, e+1
Mouse binding
bindm = $mainMod, mouse:272, movewindowbindm = $mainMod, mouse:273, resizewindow
🛠️ Instalation
👥 Credits
Other dotfiles that I learned / copy from:
-
Nix Flakes
- nomadics9/NixOS-Flake: This is where I start my nixos / hyprland journey.
- samiulbasirfahim/Flakes: General flake / files structure
- justinlime/dotfiles: Mainly waybar
- skiletro/nixfiles: Vscodium config (that prevent it to crash)
- fufexan/dotfiles
-
README