nixos-config/README.md
2024-01-12 19:08:30 +01:00

13 KiB


Frost-Phoenix's Flakes



Screeenshot last updated 2024-01-12

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
  • 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 \rightarrow clear
  • vim \rightarrow nvim
  • cat \rightarrow bat
  • nano \rightarrow micro
  • icat \rightarrow kitten icat
  • dsize \rightarrow du -hs
  • findw \rightarrow grep -rl
  • l \rightarrow eza --icons -a --group-directories-first -1
  • ll \rightarrow eza --icons -a --group-directories-first -1 --no-user --long
  • tree \rightarrow eza --icons --tree --group-directories-first
Nixos (EXPAND)
  • cdnix \rightarrow cd ~/nixos-config && codium ~/nixos-config
  • nix-shell \rightarrow nix-shell --run zsh
  • nix-switch \rightarrow sudo nixos-rebuild switch --flake ~/nixos-config#nixos
  • nix-switchu \rightarrow sudo nixos-rebuild switch --upgrade --flake ~/nixos-config#nixos
  • nix-flake-update \rightarrow sudo nix flake update ~/nixos-config#
  • nix-clean \rightarrow sudo 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 \rightarrow git add
  • gaa \rightarrow git add --all
  • gs \rightarrow git status
  • gb \rightarrow git branch
  • gm \rightarrow git merge
  • gpl \rightarrow git pull
  • gplo \rightarrow git pull origin
  • gps \rightarrow git push
  • gpso \rightarrow git push origin
  • gc \rightarrow git commit
  • gcm \rightarrow git commit -m
  • gch \rightarrow git checkout
  • gchb \rightarrow git checkout -b
  • gcoe \rightarrow git config user.email
  • gcon \rightarrow git config user.name
  • g \rightarrow lazygit

📝 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. By default $mainMod is SUPER

Complete list (EXPAND)
Keybindings
  • bind = $mainMod, Return, exec, kitty
  • bind = ALT, Return, exec, kitty --title float_kitty
  • bind = $mainMod SHIFT, Return, exec, kitty --start-as=fullscreen -o 'font_size=16'
  • bind = $mainMod, B, exec, firefox
  • bind = $mainMod, Q, killactive,
  • bind = $mainMod, F, fullscreen, 0
  • bind = $mainMod SHIFT, F, fullscreen, 1
  • bind = $mainMod, Space, togglefloating,
  • bind = $mainMod, D, exec, pkill wofi || wofi --show drun
  • bind = $mainMod, Escape, exec, swaylock
  • bind = $mainMod SHIFT, Escape, exec, shutdown-script
  • bind = $mainMod, P, pseudo,
  • bind = $mainMod, J, togglesplit,
  • bind = $mainMod, E, exec, nemo
  • bind = $mainMod SHIFT, B, exec, pkill -SIGUSR1 .waybar-wrapped
  • bind = $mainMod, C ,exec, hyprpicker -a
  • bind = $mainMod, G,exec, $HOME/.local/bin/toggle_layout
  • bind = $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').png
  • bind = ,Print, exec, grimblast --notify --cursor copy area
Switch window focus
  • bind = $mainMod, left, movefocus, l
  • bind = $mainMod, right, movefocus, r
  • bind = $mainMod, up, movefocus, u
  • bind = $mainMod, down, movefocus, d
Switch workspace
  • bind = $mainMod, 1, workspace, 1
  • bind = $mainMod, 2, workspace, 2
  • bind = $mainMod, 3, workspace, 3
  • bind = $mainMod, 4, workspace, 4
  • bind = $mainMod, 5, workspace, 5
  • bind = $mainMod, 6, workspace, 6
  • bind = $mainMod, 7, workspace, 7
  • bind = $mainMod, 8, workspace, 8
  • bind = $mainMod, 9, workspace, 9
  • bind = $mainMod, 0, workspace, 10
Switch window to workspace
  • bind = $mainMod SHIFT, 1, movetoworkspace, 1
  • bind = $mainMod SHIFT, 2, movetoworkspace, 2
  • bind = $mainMod SHIFT, 3, movetoworkspace, 3
  • bind = $mainMod SHIFT, 4, movetoworkspace, 4
  • bind = $mainMod SHIFT, 5, movetoworkspace, 5
  • bind = $mainMod SHIFT, 6, movetoworkspace, 6
  • bind = $mainMod SHIFT, 7, movetoworkspace, 7
  • bind = $mainMod SHIFT, 8, movetoworkspace, 8
  • bind = $mainMod SHIFT, 9, movetoworkspace, 9
  • bind = $mainMod SHIFT, 0, movetoworkspace, 10
  • bind = $mainMod CTRL, c, movetoworkspace, empty
Window control
  • bind = $mainMod SHIFT, left, movewindow, l
  • bind = $mainMod SHIFT, right, movewindow, r
  • bind = $mainMod SHIFT, up, movewindow, u
  • bind = $mainMod SHIFT, down, movewindow, d
  • bind = $mainMod CTRL, left, resizeactive, -80 0
  • bind = $mainMod CTRL, right, resizeactive, 80 0
  • bind = $mainMod CTRL, up, resizeactive, 0 -80
  • bind = $mainMod CTRL, down, resizeactive, 0 80
  • bind = $mainMod ALT, left, moveactive, -80 0
  • bind = $mainMod ALT, right, moveactive, 80 0
  • bind = $mainMod ALT, up, moveactive, 0 -80
  • bind = $mainMod ALT, down, moveactive, 0 80
Media and volume controls
  • bind = ,XF86AudioRaiseVolume,exec, pamixer -i 2
  • bind = ,XF86AudioLowerVolume,exec, pamixer -d 2
  • bind = ,XF86AudioMute,exec, pamixer -t
  • bind = ,XF86AudioPlay,exec, playerctl play-pause
  • bind = ,XF86AudioNext,exec, playerctl next
  • bind = ,XF86AudioPrev,exec, playerctl previous
  • bind = , XF86AudioStop, exec, playerctl stop
  • bind = $mainMod, mouse_down, workspace, e-1
  • bind = $mainMod, mouse_up, workspace, e+1
Mouse binding
  • bindm = $mainMod, mouse:272, movewindow
  • bindm = $mainMod, mouse:273, resizewindow

🛠️ Instalation

👥 Credits

Other dotfiles that I learned / copy from: