home | ||
programs | ||
scripts | ||
services | ||
.envrc | ||
.gitignore | ||
.stylua.toml | ||
flake.lock | ||
flake.nix | ||
Makefile | ||
picrew.png | ||
README.org |
README
Nix home-manager configuration files.
Can be used on any Linux-based system if the nix package manager is installed, but works best with a NixOS system.
To set up without cloning the repository, run:
nix run "git+https://git.xenia.me.uk/pixelifytica/home-manager.git?ref=main" -- switch --flake "git+https://git.xenia.me.uk/pixelifytica/home-manager.git?ref=main"
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
Run
protonmail-setup-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 swaymsg
:
nix shell nixpkgs#protonmail-bridge -c swaymsg exec "protonmail-bridge -n"
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
Run
davmail-setup
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