Find a file
2025-02-17 15:35:45 +01:00
common more fixes 2025-02-17 15:35:45 +01:00
crypto aaaaaaa 2025-02-02 22:45:03 +01:00
dotfiles fix idle inhibitor char 2025-02-01 22:46:26 +01:00
home more fixes 2025-02-17 15:35:45 +01:00
hosts more fixes 2025-02-17 15:35:45 +01:00
modules/nixos vedirect-reader is packaged in its own flake 2024-06-01 13:17:17 +02:00
overlays cracking prismlauncher for good reasons (i have bought minecraft) 2024-05-23 13:43:28 +02:00
pkgs stuff 2024-06-07 14:57:57 +02:00
stuff uhh 2024-06-24 10:16:41 +02:00
.gitignore Initial commit 2024-04-08 20:32:17 +02:00
flake.lock more fixes 2025-02-17 15:35:45 +01:00
flake.nix jo config 2025-02-02 20:49:01 +01:00
README.md vaultwarden test 2025-02-03 00:09:35 +01:00

My NixOS config

File system structure

this is outdated

  • common: stores all Nix files which are shared by all system configs
    • de: Desktop environments and their parameters
    • hardware: self-explenatory
    • locales: localization options
    • packages: services & packages with common configurations
    • base.nix: The minimum configuration that a machine needs
    • full-install.nix: if this machine has a DE or is going to be used by a human
    • tasia-packages.nix: Collection of additional packages
  • common: SSH keys, secrets, ...
  • dotfiles: all my dotfiles
  • home: user-specific settings.
  • hosts: Machine-specific configurations
  • modules/nixos: Custom NixOS modules
  • overlays: Custom NixOS overlays
  • pkgs: Custom NixOS packages
  • stuff: Random stuff that doesn't belong anywhere else

Memo

Update channels: nix flake update

Build a configuration: sudo nixos-rebuild switch --flake .#$(cat /etc/hostname)

Build enry and upload a generation: nixos-rebuild switch --use-remote-sudo --flake .#enry --target-host tasia@enry -L

To do on a new machine

  • Install NixOS
  • Clone this repo git clone https://git.vulpecula.zone/tasiaiso/nixos-config.git && cd nixos-config
  • export HOSTNAME=<your-hostname> && mkdir hosts/$HOSTNAME && cd hosts/$HOSTNAME && touch configuration.nix
  • Fill out configuration.nix
  • add your key in common/programs/ssh.nix
  • sudo nixos-generate-config --show-hardware-config > hosts/$HOSTNAME/hardare-configuration.nix
  • `sudo nixos-rebuild switch --flake .#$HOSTNAME"
  • If usbguard is enabled, check allowed devices.

git

generate an ssh key: ssh-keygen -t ed25519

add to ssh-agent: ssh-add .ssh/id_ed25519

add to git: git config --global user.signingkey ~/.ssh/id_ed25519

google-authenticator

  • google-authenticator -td -r 5 -R 60 -w 2

Hosts

theseus

My main PC. Mostly unused because of power constraints

phoenix

My old laptop.

stuff

Another person's laptop.

enry

This is my Raspberry Pi 3B+ inside my electrical cabinet.

cave

New laptop. Main driver.