A minimal and fully declarative setup utilising NixOS, with a personalised setup for each machine.
- Browser: Brave
- Terminal: Foot
- Launcher: BeMenu
- UX: Hyprland + Waybar
- Productivity: LibreOffice
- Text Editor: Gnome Text Editor
- Alternative: Helix
- FOSS YouTube Frontend: FreeTube
flake.nix
│
├/Options
│
├/Users
│ │
│ └/Dependencies
│
└/System
│
├/Programs
│
├/Settings
│
├/Configuration
│ ├/Disk
│ ├/General
│ └/Packages
│
└/UI
└/Hyprland_WayBar
Options
defines custom options which toggle certain programs and enable customisation of both fonts colors used throughout the system, as well as the cursor.
`` defines custom options which toggle certain programs and enable customisation of both fonts colors used throughout the system, as well as the cursor.
Users
is used for user-specific configuration.
System
contains all needed settings for a functional system.
User-specific hardware options are automatically configured.
<user> = mkSystem <bool> toggle TLP
<bool> toggle printing capabilities
<bool> toggle latest kernel
<string> keyboard language
<string> language locale
<string> username
<string> password, encoded using `mkpasswd`
<list> extra NixOS modules
<list> extra groups for the user
<list> extra kernel modules
<list> extra kernel parameters
<list> packages
<attribute set> user-specific configuration
-
- These two NixOS configurations helped lay the groundwork for my own, this likely wouldn't have been possible without them!
-
- Allows for CLI arguments to be passed to the flake. This allows for necessary user-specific CPU/GPU configuration options, as well as the loading of necessary kernel modules. It is used every time the
update
andcheck
commands are invoked. The implementation can be found inSystem/Configuration/General
.
- Allows for CLI arguments to be passed to the flake. This allows for necessary user-specific CPU/GPU configuration options, as well as the loading of necessary kernel modules. It is used every time the
-
- No longer applicable.
-
Declarative Gnome Configuration
- No longer applicable.