You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
2 years ago | |
---|---|---|
common | 2 years ago | |
external | 2 years ago | |
files | 2 years ago | |
hosts/calembel | 2 years ago | |
ops/home | 2 years ago | |
.gitignore | 2 years ago | |
.gitmodules | 2 years ago | |
.ignore | 2 years ago | |
README.md | 2 years ago |
README.md
Nora's Configs
The evolution of nora/dotfiles
; Nix configs under home-manager
deployed with morph
.
Layout
These files are "organized" as follows:
common/
is the directory where most of the configuration happens. These are the files used in more than one host configuration, now or later.home_manager/
includes allhome-manager
configs, including packagesets. For example,home_manager/rust.nix
includes packages and options related to Rust development.common.nix
contains all configurations common across allhome-manager
deployments. For example, GPG agent configurations and Vim settings.
users/
contains basic user definitions.default.nix
is the core file defining the default nix configuration for all machines.common.nix
contains all the common NixOS definitions that all machines will need.
files/
contains files used byhome-manager
to deploy anything not covered by existinghome-manager
options.hosts/
defines host-specific configurations for NixOS andhome-manager
.calembel/
is my Thelio (thelio-r1)configuration.nix
is the core NixOS configuration file, copied from the installed systemhardware-configuration.nix
is the hardware config, imported inconfiguration.nix
.home.nix
is thehome-manager
config specifically forcalembel
.
ops/
contains all the information needed to deploy usingmorph
.
The import structure goes as follows:
- The
ops/<network>/network.nix
file defining the hosts in a network importscommon/default.nix
for all-machine defaults, which importscommon/common.nix
for common setup, including fonts, nixpkgs setup, and locale, which importscommon/users/*
which sets up usernames, shells, SSH keys, and groups for users.
- the host's
hosts/<host>/configuration.nix
file, which configures NixOS on the host and imports- the hosts's
hosts/<host>/hardware-configuration.nix
file, which configures partitions and drivers.
- the hosts's
- the host's
hosts/<host>/home.nix
file, which configureshome-manager
for that host, by importingcommon/home_manager/common.nix
, which configureshome-manager
for all machines- various
common/home_manager/<packageset>.nix
, which configures a specific use case, like graphical programs or Rust development.