Nix home-manager
Find a file
Lorenzo Setale 97faba3e95
All checks were successful
Nix Builder / home-manager (personal) (push) Successful in 1m41s
Nix Builder / home-manager (remote) (push) Successful in 34s
Nix Builder / home-manager (steamdeck) (push) Successful in 1m2s
Nix Builder / home-manager (work) (push) Successful in 1m26s
gives lower priority to tenv so opentofu to be there
Signed-off-by: Lorenzo Setale <lorenzo.setale@LEGO.com>
2026-06-16 11:35:14 +02:00
.forgejo/workflows also runs when the flake.lock file is updated 2026-05-17 11:23:03 +02:00
modules gives lower priority to tenv so opentofu to be there 2026-06-16 11:35:14 +02:00
.gitignore inport from chezmoi 2025-06-01 14:52:21 +02:00
.sops.yaml uses ssh keys instead of age keys derived 2026-06-02 18:34:36 +02:00
flake.lock update lock files 2026-06-15 22:22:22 +02:00
flake.nix update home-manager to release 26.05 2026-06-12 15:07:46 +02:00
home.nix update state version and fix gtk4 legacy behaviour 2026-06-13 19:09:04 +02:00
README.md adds lix as an extra Nix installer/tool 2025-09-14 22:49:58 +02:00

Home Manager

First setup

mkdir -p ~/.config
cd ~/.config
git clone https://git.elates.it/koalalorenzo/home-manager.git

# Install Nix
curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install
# OR Install Lix
curl -sSf -L https://install.lix.systems/lix | sh -s -- install

Start a development shell with dev tools to bootstrap tools/cli

# Create a temporary shell with the dependencies
nix develop

Setup Yubikey with GPG too (required for sops later)

## Install GPG Key, get it from setale.me
curl https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x73880ecaf69ec2ed44ce5889502bfb12d0b5295f | gpg --import

## Check if the Yubikey works:
gpg --card-status

Prepare now sops-nix to decrypt the secrets and update the keys:

## Generate a valid SSH key
ssh-keygen -t ed25519 -a 128

## Extract the age key from ssh
cat ~/.ssh/id_ed25519.pub | ssh-to-age

## Add the key to sops:
hx .sops.yaml

## Rotate all the keys (requires Yubikey)
find . -type f -name "*.sops.*" -exec sops updatekeys {} \;

Install:

nix run home-manager -- init
nix run home-manager -- switch --flake ~/.config/home-manager#personal

Then you can restart your shell!

Post-Install

Homebrew Install

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Install from the bundle (requires reload/restart)
brew bundle install --global

Atuin Login

atuin login -u koalalorenzo
atuin import auto
atuin sync

NixOS Config

# macOS group is @admin
trusted-users = @admin

Uninstall

To uninstall home manager and Nix use these commands:

hm uninstall

sudo /nix/nix-installer uninstall