My personal NixOS configuration
Find a file
2024-03-20 10:43:07 +00:00
home Remove firefox and thunar binds 2024-03-20 10:43:07 +00:00
hosts Add obs to Vanguard monitor rules 2024-03-17 08:03:24 +00:00
schemes Add regular modus-vivendi as theme option 2024-02-27 15:22:26 +00:00
services File cleanup 2024-03-17 11:45:50 +00:00
specialisations Start adding specialisations to consider 2024-03-15 11:22:01 +00:00
system Adjust opacity values a bit (again) 2024-03-19 15:04:27 +00:00
wallpapers Add some hyprland wallpapers to collection 2024-01-29 06:41:39 +00:00
.gitignore Update gitignore rules 2023-10-24 09:21:23 +01:00
.stylua.toml Add custom styling to wezterm tab bar, move stylua.toml to top level directory 2023-02-19 12:16:22 +00:00
flake.lock Update nixpkgs 2024-03-18 08:15:43 +00:00
flake.nix Remove emacs from server 2024-03-17 11:03:59 +00:00
Makefile Remove git pull step from make all 2024-03-15 11:44:09 +00:00
picrew.png Add custom picrew 2024-03-10 08:11:00 +00:00
README.org Update README for new script 2024-02-05 09:15:18 +00:00

README

Password store setup

Transfer GPG key(s)

  # Export key on existing machine
  gpg --export-secret-keys > key.gpg
  # Import key on new machine
  gpg --import key.gpg
  # Edit (for each key) to set trust
  gpg --edit-key ...

Clone password-store repository

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

Email setup

Proton

Bridge

Run bridge in CLI mode to login, wait for initial sync and get app password

  nix run nixpkgs#protonmail-bridge -- -c
  # Follow prompts to login and get password

Restart using hyprctl:

  nix shell nixpkgs#protonmail-bridge -c hyprctl dispatch exec "protonmail-bridge -n"

Script protonmail-setup-bridge (provided with NixOS config) handles all of this

uidvalidity issue

Remove uid lines from .mbsyncrc (in each mail directory) and delete .uidvalidity, re-run mbsync to fix Above might be duplicating mail, faster to just delete local maildirs and let them re-sync.

Password

Get password from protonmail-bridge, save to password-store:

  pass insert mbsync/$(hostname)/proton
  # Insert pass at prompt

iCloud

Password

If not already done, save password to password-store:

  pass insert mbsync/$(hostname)/icloud
  # Insert pass at prompt

This will be synced across devices so only needs doing once

Outlook

Password

If not already done, save password to password-store:

  pass insert mbsync/$(hostname)/outlook
  # Insert pass at prompt

This will be synced across devices so only needs doing once

Configuration

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