Welcome to my NixOS configuration built for efficiency and aesthetics. Right now I'm trying to commit something everyday. Let's see how long I can go.
- 🖥️ Multiple Hosts Support: Easy to configure for different hosts.
- 🎨 Gruvbox Theme: A perfect blend of vibrant and subtle colors.
- 🪟 Gnome -- Dash To Panel: Easy navigation across multiple windows and minimal design
- 🏠 Home Manager Integration: lots of stuff configured.
- 🧇 Tmux: with my own hotkeys.
- 🌟 Zsh + starship: Efficient shell setup with lots of aliases.
To get started with this setup, follow these steps:
-
Install NixOS: If you haven't already installed NixOS, follow the NixOS Installation Guide for detailed instructions.
-
Clone the Repository:
git clone https://github.com/ilosrim/dotfiles ~/.dotfiles cd .dotfiles
-
Copy one of the hosts configuration to set up your own:
cd hosts cp -r nixos <your_hostname> cd <your_hostname>
-
Put your
hardware-configuration.nix
file there:cp /etc/nixos/hardware-configuration.nix ./
-
Edit
hosts/<your_hostname>/local-packages.nix
andnixos/packages.nix
files if needed:vim local-packages.nix vim ../../nixos/packages.nix
-
Finally, edit the
flake.nix
file:... outputs = { self, nixpkgs, home-manager, ... }@inputs: let system = "x86_64-linux"; -- homeStateVersion = "24.11"; ++ homeStateVersion = "<your_home_manager_state_version>"; -- user = "ilosrim"; ++ user = "<your_username>"; hosts = [ -- { hostname = "ilosrim"; stateVersion = "24.11"; } ++ { hostname = "<your_hostname>"; stateVersion = "<your_state_version>"; } ]; ...
-
Rebuilding:
cd .dotfiles git add . nixos-rebuild switch --flake ./#<hostname> # or nixos-install --flake ./#<hostname> if you are installing on a fresh system home-manager switch --flake ./#<username>
- Template - Learned from his configurations
Feel free to fork the repository and submit pull requests if you'd like to contribute improvements. Open issues if you encounter any problems with the config or have ideas for new features.