Skip to content
This repository was archived by the owner on Nov 16, 2025. It is now read-only.

pocka/system

Repository files navigation

pocka/system

My systems configuration using Nix/Home Manager.

Screenshot of the configured Wayland desktop

Usage

See outputs.homeConfigurations section in flake.nix for available <name>s.

Local install

  1. Clone or Download the repository
  2. Run nix-shell
  3. Inside the spawned shell, run home-manager switch --flake .#<name>
  4. Exit the shell

Without interactive Bash session: nix-shell --run "home-manager switch --flake .#<name>".

Remote install

This is handy and useful especially for initial bootstrap, but less reproducible compared to local installation.

  1. Make sure Flakes is available on your system
  2. Run nix run home-manager/master -- switch --flake github:pocka/system#<name>

Display changes between Home Manager generations

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.

Requirements

dev-linux

Due to each softwares' design limitation, the system needs to have these packages.

  • niri
  • pantheon-polkit-agent ... The one installed installed using Nix cannot lookup polkit-agent-helper-1.
  • swaylock ... access to PAM required, which is not possible with regular user Nix installation.

A custom Swaybar module assumes Markdown file placed at $XDG_DATA_HOME/todo.md. Create a symbolic link or normal file there (module tries to read in 10s interval if the file does not exist.)

Programs

hm-clean

hm-clean removes obsolete Home Manager generations.

# Clean obsolete home-manager generations.
hm-clean

# with verbose logging.
hm-clean --verbose

License

This project is compliant with REUSE specification. Commentable files have copyright and license header and uncommentable files (e.g. binary, JSON) have an adjacent text file named <filename>.license.

  • Files under programs/ are licensed under Apache-2.0.
  • Media files are licensed under CC BY-ND 4.0.
  • Files under vendor/ are licensed differently: see each files' license header or adjacent .license file.
  • Other files, including Nix config files, are licensed under Zero-Clause BSD.

About

My system configuration, dotfiles (Nix + Home Manager)

Topics

Resources

Stars

Watchers

Forks