My systems configuration using Nix/Home Manager.
See outputs.homeConfigurations
section in flake.nix
for available <name>
s.
- Clone or Download the repository
- Run
nix-shell
- Inside the spawned shell, run
home-manager switch --flake .#<name>
- Exit the shell
Without interactive Bash session: nix-shell --run "home-manager switch --flake .#<name>"
.
This is handy and useful especially for initial bootstrap, but less reproducible compared to local installation.
- Make sure Flakes is available on your system
- Run
nix run home-manager/master -- switch --flake github:pocka/system#<name>
First, find the directory that contains Nix profiles. For defaults location, see this page: https://nix.dev/manual/nix/2.18/command-ref/files/profiles.
Then, run nix profile diff-closures --profile <profiles directory>/home-manager
.
Due to each softwares' design limitation, the system needs to have these packages.
sway
... The one installed using Nix does not launch.pantheon-polkit-agent
... The one installed installed using Nix cannot lookuppolkit-agent-helper-1
.
specialisation
activates the given Home Manager specialisation.
# Switch to dark mode
specialisation set dark
# Switch to light mode
specialisation set light
# Switch to non-specialised profile
specialisation unset
# Clean obsolete home-manager generations
specialisation clean