Misterio77 / nix-config

Personal nixos and home-manager configurations.
https://m7.rs/git/nix-config/
MIT License
719 stars 42 forks source link
dotfiles nix nixos

built with nix hydra status

My NixOS configurations

Here's my NixOS/home-manager config files. Requires Nix flakes.

Looking for something simpler to start out with flakes? Try my starter config repo.

Highlights:

Structure

About the installation

All my computers use a single btrfs (encrypted on all except headless systems) partition, with subvolumes for /nix, a /persist directory (which I opt in using impermanence), swap file, and a root subvolume (cleared on every boot).

Home-manager is used in a standalone way, and because of opt-in persistence is activated on every boot with loginShellInit.

How to bootstrap

All you need is nix (any version). Run:

nix-shell

If you already have nix 2.4+, git, and have already enabled flakes and nix-command, you can also use the non-legacy command:

nix develop

nixos-rebuild --flake . To build system configurations

home-manager --flake . To build user configurations

nix build (or shell or run) To build and use packages

sops To manage secrets

Secrets

For deployment secrets (such as user passwords and server service secrets), I'm using the awesome sops-nix. All secrets are encrypted with my personal PGP key (stored on a YubiKey), as well as the relevant systems's SSH host keys.

On my desktop and laptop, I use pass for managing passwords, which are encrypted using (you bet) my PGP key. This same key is also used for mail signing, as well as for SSH'ing around.

Tooling and applications I use

Most relevant user apps daily drivers:

Some of the services I host:

Nixy stuff:

Let me know if you have any questions about them :)

Unixpornish stuff

fakebusy clean

That's how my hyprland desktop setup look like (as of 2022 July).