Skip to content

Latest commit

 

History

History
56 lines (47 loc) · 1.88 KB

README.md

File metadata and controls

56 lines (47 loc) · 1.88 KB

nix-cfg

NixOS and home-manager configuration files.

Inspired from:

System-level configuration

After editing files, run:

$ sudo cp -r system/* /etc/nixos
$ sudo nixos-rebuild switch --repair --upgrade

Folder structure and file content

system
├── configuration.nix
├── emacs.nix
├── fonts.nix
├── machine
│   └── pulsedemon.nix
├── overlays-compat
│   └── overlays.nix
├── services.nix
├── users.nix
└── wm
    └── i3.nix
  • configuration.nix is the main file. It imports everything else, including hardware-configuration.nix. The latter is autogenerated during NixOS installation as a result of the hardware scan. It's machine-dependent, saved in /etc/nixos during installation, and not kept under version control.
  • emacs.nix defines my overridden version of Emacs.
  • fonts.nix contains the configuration of the fonts and the list of font packages to install.
  • machine/ contains machine-dependent configuration of global options, including hardware (e.g. pulseaudio) and services (e.g. bolt).
  • overlays-compat/overlays.nix: a way of Using nixpkgs.overlays from configuration.nix as <nixpkgs-overlays> in my NIX_PATH. See here: https://tinyurl.com/hb7v8hnf
  • services.nix configures services that I would like to have available on all machines I use. For example, borgbackup and thermald.
  • users.nix defines the user(s) and their groups.
  • wm/ contains configurations for display, desktop, and window managers. At the moment only the configuration for i3 is available.