My personal NixOS configuration
Find a file
Evie Litherland-Smith e9d27ba414 Don't install NYXT by default
Keep config though, will mostly use the flatpak version if testing to
keep up to date with rapid releases
2024-07-06 06:32:00 +01:00
home Don't install NYXT by default 2024-07-06 06:32:00 +01:00
system Remove uses of home-manager repo, merge home-manager README entries 2024-07-03 07:26:09 +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 Merge home-manager config back in to nixos config 2024-07-03 07:15:39 +01:00
flake.nix Add home-manager backupFileExtension 2024-07-03 08:02:31 +01:00
Makefile Remove copy directive from Makefile 2024-06-22 16:39:30 +01:00
picrew.png Merge home-manager config back in to nixos config 2024-07-03 07:15:39 +01:00
README.org Remove uses of home-manager repo, merge home-manager README entries 2024-07-03 07:26:09 +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 -c credential.helper='' clone https://git.xenia.me.uk/pixelifytica/pass $PASSWORD_STORE_DIR

Email setup

Proton

Bridge

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

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

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: