My personal NixOS configuration
Find a file
Evie Litherland-Smith e6873dbd77 Add pyshell.nix helper function for making wrapped python shells
Just import, optionally changing python version or adding extra
packages (e.g. poetry) to the shell

Update default python env

Remove pyshell template from Emacs templates due to new change
2024-12-17 11:54:22 +00:00
system Add pyshell.nix helper function for making wrapped python shells 2024-12-17 11:54:22 +00: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 Switch to DejaVu font family as main fonts 2024-12-12 08:19:16 +00:00
flake.nix Switch to DejaVu font family as main fonts 2024-12-12 08:19:16 +00:00
Makefile Makefile: don't make out link by default 2024-12-03 10:37:45 +00:00
README.org Use libsecret for mbsync and git-credential-helper 2024-07-08 08:58:32 +01:00
treefmt.nix Add treefmt with config, reformat nix files for nixfmt updates 2024-12-12 07:26:01 +00: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: