My personal NixOS configuration
Find a file
Evie Litherland-Smith efb4ee6680 flake.lock: Update
Flake lock file updates:

• Updated input 'base16':
    'github:SenchoPens/base16.nix/4e9b16c8b44958bc6bf46d99c3bb1b59c9c9c764' (2024-02-27)
  → 'github:SenchoPens/base16.nix/c89c8123310257f3ddc04cc59aa4b5573c6d515f' (2024-07-17)
• Updated input 'base16/fromYaml':
    'github:SenchoPens/fromYaml/11fbbbfb32e3289d3c631e0134a23854e7865c84' (2023-07-16)
  → 'github:SenchoPens/fromYaml/93bad85d1633b8b27287b438c0bd394094c24d06' (2024-07-17)
• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/a046c1202e11b62cbede5385ba64908feb7bfac4' (2024-07-11)
  → 'github:nixos/nixpkgs/0c53b6b8c2a3e46c68e04417e247bba660689c9d' (2024-07-19)
• Updated input 'plasma-manager':
    'github:nix-community/plasma-manager/565bb9f4562e65c7e390537702b7efc8de73cc3a' (2024-07-13)
  → 'github:nix-community/plasma-manager/460b48dc3dcd05df568e27cbb90581d23baec8dc' (2024-07-14)
2024-07-21 08:10:40 +01:00
home Remove powerdevilrc config since it doesn't currently work 2024-07-20 09:00:51 +01:00
pfp Move picrew to pfp directory (as personal), add work profile pic 2024-07-11 14:52:38 +01:00
system More plasma desktop customisation 2024-07-19 08:52:17 +01:00
.envrc Add pre-commit hook to run gitleaks 2024-06-24 07:31:02 +01:00
.gitignore Update Makefile 2024-06-22 09:41:24 +01:00
.pre-commit-config.yaml Add pre-commit hook to run gitleaks 2024-06-24 07:31:02 +01:00
flake.lock flake.lock: Update 2024-07-21 08:10:40 +01:00
flake.nix More plasma desktop customisation 2024-07-19 08:52:17 +01:00
Makefile Remove copy directive from Makefile 2024-06-22 16:39:30 +01:00
README.org Use libsecret for mbsync and git-credential-helper 2024-07-08 08:58:32 +01:00

README

My personal NixOS + home-manager configuration files.

To set up without cloning the repository (assuming an already running NixOS system), run:

  sudo nixos-rebuild switch --flake "git+https://git.xenia.me.uk/pixelifytica/nixos.git?ref=main"\#$(hostname)

Password store setup

Transfer GPG key(s)

  # Export keys on existing machine
  gpg -a --export > publickeys.asc
  gpg -a --export-secret-keys > privatekeys.asc
  # Import key on new machine
  gpg --import privatekeys.asc; gpg --import publickeys.asc
  # Edit (for each key) to set trust
  gpg --edit-key evie@xenia.me.uk

Clone password-store repository

  git clone https://git.xenia.me.uk/pixelifytica/pass $PASSWORD_STORE_DIR

Email setup

Passwords for mbsync

Run

mbsync-ensure-pass
to check for passwords required by mbsync, and query for missing passwords.

Static app-specific passwords are stored in password-store, fetch from there to add to secret service.

Proton

Bridge

Start Proton Mail Bridge application, if needed configure to store using SecretService and log in. Application will auto-start with desktop session.

Use password from Bridge for mbsync.

Outlook

Davmail

Run

davmail-setup
to automate this process.

On first run (or if token expires), stop systemd service and run manually to complete manual auth. Token will stay valid for a little while (no idea how long specifically).

  # Restart service to ensure ~/.davmail.properties exists
  systemctl --user restart davmail.service
  # Run to use manual authentication
  systemctl --user stop davmail.service && davmail -notray ~/.davmail.properties
  # Restart again so that service picks up available ports
  systemctl --user restart davmail.service

Flathub setup

  flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

Further reading: