Pegasus Config
A configuration for NixOS + Hyprland
An opinionated setup for programmers who don't believe in auto complete
Installation • Customization • Docs
Look at showcase/ for images of the rice
Installation
Adjust username, hostname and download destination in flake.nix according to your needs
then
chmod +x install.sh
./install.sh
Then for any changes in nixos/ would require
chmod +x nix.sh
./nix.sh
For system update
nix flake update
./nix.sh
Customization
You can use this project outside of NixOS as well, just by ignoring the nixos directory.
But make sure you download all the dependencies that are used in nixos/desktop-environment.nix
Docs
Features
- ly Display Manager for login
- hyprland as desktop environment
- tmux for terminal sessions
- foot as terminal
- quickshell for top bar & elements
- hyprsunset for nightlight
- hyprlock for lock screen
- nvim using NvChad
- tmux
- yazi for file exploring
Hyprland
Low battery warning notifications
- 30% (Low)
- 15% (Critical)
Change these values in quickshell/shell.qml(look for "redBatteryPoint" & "orangeBatteryPoint") & hypr/battery-notif.sh
Quickshell
Configure in quickshell/shell.qml
| Label | Description |
|---|---|
| Radio | Network info, clicking it will open NetworkManager |
| Low Energy | Bluetooth, clicking it will open blue-tui |
| Electrons | Battery %, When charging the % will be wrapped in "AC/DC()", e.g. AC/DC(50) |
| Waves | Volume, clicking it will mute |
| Photons | Brightness % |
| Photons Bracket | Red shift (Night light), 6000 is normal, lower value is redder, higher value is bluer |
| Radiation | CPU Temperature in Kelvin |
| Latch | RAM Usage |
| Data Bus | CPU Speed |
| Spin | Time |
Keyboard shortcuts
Configure in hypr/hyprland/keybinds.conf
I am left handed so my mouse is in left handed mode
IF YOU ARE NOT LEFT HANDED, change this in hypr/hyprland/input.conf:input:left_handed
| Keybind | Description |
|---|---|
| Win + T | Spawn Terminal (foot) |
| Win + Q | Kill active window |
| Win + Shift + L | Sign out |
| Win + L | Lock |
| Win + E | Spawn File Explorer (yazi) |
| Win + F | Make active window floating |
| Win + R | Spawn App Menu |
| Win + P | Pseudo ??? (I don't know what this is used for) |
| Win + J | Toggle window split |
| Ctrl + Shift + Escape | Spawn Task Manager (btop) |
| Win + arrow keys | Move focus of window |
| Win + [1-9] | Switch workspace |
| Win + S | Switch to Special workspace |
| Win + Shift + S | Move current window to Special workspace |
| Win + Ctrl + S | Move current window from Special workspace to current workspace |
| Win + Left click | Resize window |
| Win + Right click | Move window |
| PrintSrc | Take a fullscreen screenshot and save it in ~/Pictures/Screenshots |
| Shift + PrintSrc | Take a partial screen screenshot and save it in ~/Pictures/Screenshots |
| Win + PrintSrc | Take a partial screen screenshot and copy it to clipboard |
| Win + Shift + R | Start/Stop screen recording (without audio) |
| Win + = | Zoom in/out |
| Win + [ | Increase red shift (night light) |
| Win + ] | Decrease red shift |
Fonts
Jetbrains Mono Nerd Font
Programming Language setup
Configure in nixos/languages
- Zig
- Elixir & Erlang
- C
- Go
- Javascript & Typescript
- Lua
- Python
- Rust
Programming Tools
Configure in nixos/environment.nix
- clang-tools
- android-tools
- Vim & Nvim
- git & git-lfs
- nmap
- lazygit
- fzf
Applications
Configure in nixos/apps.nix
- Google Chrome
- Gimp
- Localsend
- Obsidian
- OBS Studio
- Wine
- Libreoffice
- Dolphin
- Zen Browser
- VLC
Games
Configure in nixos/games
- Minecraft (Prism Launcher)
- Steam (Comes installed with the Assetto Corsa compatible Proton version)
