| homeConfig | ||
| sysConfig | ||
| flake.lock | ||
| flake.nix | ||
| LICENSE | ||
| README.md | ||
NixOS / Home-Manager Flake Configuration
This repository is a stash for my current and WIP NixOS and Home-Manager flake setup.
The repository is structured in two main directories: homeConfig and sysConfig. The homeConfig directory contains all the files related to the standalone Home-Manager install and .config files, while the sysConfig directory contains a modular NixOS system configuration.
My personal dotfiles are included in the homeConfig/dotfiles directory.
Feel free to clone/fork and use as you please.
Don't forget to update and/or create new symlinks in homeConfig/home.nix!
Here are useful resources for finding a list of nix packages and options...
Requirements
- nix package manager OR NixOS
- Nix 2.0 (flake and nix-command) enabled
- Home-Manager
Install nix package manager or NixOS here - https://www.nixos.org/ or through your package manager.
If you are on NixOS, nix already comes installed and is the default package manager.
Enabling Flakes and Nix Commands
First you need to enable the flakes and nix-command experimental features.
Add this line anywhere to your nix configuration.
nix = {
package = pkgs.nixFlakes;
extraOptions = "experimental-features = nix-command flakes";
};
If you are using nix on a Linux distro, macOS or Windows WSL your config file defaults to
~/.config/nix/nix.conf
If you are using NixOS add the code snippet to your system configuration instead, located by default in /etc/nixos/configuration.nix
Home-Manager
This is a standalone home-manager install, NOT a NixOS/darwin module. Which is the recommended, more portable and preferred way of using home-manager.
To initialize Home-Manager properly for the first time, run the following command:
nix run home-manager/master -- init
Contributions
Contributions and suggestions are welcome! If you find any issues or have any improvements you'd like to suggest, please feel free to open an issue or submit a pull request!