These are the files I use to set up my Linux machines with NixOS. Feel free to take anything that interests you.
- configs: special configuration e.g. awesomewm & neovim
- pkgs: package definitions (see next section)
- modules: common pieces of nixos or home-manager configuration
- hosts: nixos configurations
Run packages directly with:
nix run github:ocelik94/dotfiles#pr0ject
Or install from the packages
output. For example:
# flake.nix
{
inputs.ocelik94-dotfiles.url = "github:ocelik94/dotfiles";
# Override my nixpkgs
inputs.ocelik94-dotfiles.inputs.nixpkgs.follows = "nixpkgs";
}
# configuration.nix
{ pkgs, inputs, ... }: {
environment.systemPackages = [
inputs.ocelik94-dotfiles.packages.${pkgs.system}.pr0ject
];
}
There are several other configurations from which I learned and copied, in no particular order: