Remove uses of home-manager repo, merge home-manager README entries
Remove system-update-all script
This commit is contained in:
parent
f53fdbad4c
commit
f8782068d2
73
README.org
73
README.org
|
@ -1,10 +1,75 @@
|
||||||
#+title: README
|
#+title: README
|
||||||
#+author: Evie Litherland-Smith
|
#+author: Evie Litherland-Smith
|
||||||
#+email: evie@xenia.me.uk
|
#+email: evie@xenia.me.uk
|
||||||
System configuration files for NixOS.
|
My personal NixOS + home-manager configuration files.
|
||||||
|
|
||||||
Fairly minimal setup and installation, to be paired with [[https://git.xenia.me.uk/pixelifytica/home-manager.git][a
|
To set up without cloning the repository (assuming an already running
|
||||||
home-manager config]] to get the full user setup.
|
NixOS system), run:
|
||||||
|
#+begin_src bash
|
||||||
|
sudo nixos-rebuild switch --flake "git+https://git.xenia.me.uk/pixelifytica/nixos.git?ref=main"\#$(hostname)
|
||||||
|
#+end_src
|
||||||
|
|
||||||
Further reading:
|
* Password store setup
|
||||||
|
** Transfer GPG key(s)
|
||||||
|
#+begin_src bash
|
||||||
|
# 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
|
||||||
|
#+end_src
|
||||||
|
** Clone password-store repository
|
||||||
|
#+begin_src bash
|
||||||
|
git -c credential.helper='' clone https://git.xenia.me.uk/pixelifytica/pass $PASSWORD_STORE_DIR
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
* 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~:
|
||||||
|
#+begin_src bash
|
||||||
|
pass insert mbsync/$(hostname)/proton
|
||||||
|
# Insert pass at prompt
|
||||||
|
#+end_src
|
||||||
|
** iCloud
|
||||||
|
*** Password
|
||||||
|
If not already done, save password to ~password-store~:
|
||||||
|
#+begin_src bash
|
||||||
|
pass insert mbsync/$(hostname)/icloud
|
||||||
|
# Insert pass at prompt
|
||||||
|
#+end_src
|
||||||
|
This will be synced across devices so only needs doing once
|
||||||
|
** Outlook
|
||||||
|
*** Password
|
||||||
|
If not already done, save password to ~password-store~:
|
||||||
|
#+begin_src bash
|
||||||
|
pass insert mbsync/$(hostname)/outlook
|
||||||
|
# Insert pass at prompt
|
||||||
|
#+end_src
|
||||||
|
This will be synced across devices so only needs doing once
|
||||||
|
*** Configuration
|
||||||
|
Run src_bash{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).
|
||||||
|
#+begin_src bash
|
||||||
|
# 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
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
* Flathub setup
|
||||||
|
#+begin_src bash
|
||||||
|
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
* Further reading:
|
||||||
- https://nixos.org/
|
- https://nixos.org/
|
||||||
|
|
|
@ -1,7 +1,5 @@
|
||||||
{pkgs, ...}: {
|
{pkgs, ...}: {
|
||||||
home.packages = [
|
home.packages = [
|
||||||
(pkgs.writeShellScriptBin "system-update-all"
|
|
||||||
(builtins.readFile ./shell/system-update-all.sh))
|
|
||||||
(pkgs.writeShellScriptBin "git-sync-all"
|
(pkgs.writeShellScriptBin "git-sync-all"
|
||||||
(builtins.readFile ./shell/git-sync-all.sh))
|
(builtins.readFile ./shell/git-sync-all.sh))
|
||||||
(pkgs.writeShellScriptBin "rsync-local-config"
|
(pkgs.writeShellScriptBin "rsync-local-config"
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
NIXOS_CONFIGURATION="/etc/nixos"
|
|
||||||
HOME_MANAGER_CONFIGURATION="$HOME/.config/home-manager"
|
|
||||||
|
|
||||||
(
|
|
||||||
cd "$NIXOS_CONFIGURATION" || exit 1
|
|
||||||
git pull --ff --ff-only || exit 1
|
|
||||||
sudo nixos-rebuild switch
|
|
||||||
)
|
|
||||||
|
|
||||||
(
|
|
||||||
cd "$HOME_MANAGER_CONFIGURATION" || exit 1
|
|
||||||
git pull --ff --ff-only || exit 1
|
|
||||||
home-manager switch
|
|
||||||
)
|
|
|
@ -19,26 +19,14 @@
|
||||||
options = "--delete-older-than 7d";
|
options = "--delete-older-than 7d";
|
||||||
};
|
};
|
||||||
optimise.automatic = true;
|
optimise.automatic = true;
|
||||||
registry = {
|
registry.my-nixos = {
|
||||||
my-nixos = {
|
from = {
|
||||||
from = {
|
type = "indirect";
|
||||||
type = "indirect";
|
id = "my-nixos";
|
||||||
id = "my-nixos";
|
|
||||||
};
|
|
||||||
to = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://git.xenia.me.uk/pixelifytica/nixos.git?ref=main";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
my-home-manager = {
|
to = {
|
||||||
from = {
|
type = "git";
|
||||||
type = "indirect";
|
url = "https://git.xenia.me.uk/pixelifytica/nixos.git?ref=main";
|
||||||
id = "my-home-manager";
|
|
||||||
};
|
|
||||||
to = {
|
|
||||||
type = "git";
|
|
||||||
url = "https://git.xenia.me.uk/pixelifytica/home-manager.git?ref=main";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
extraOptions = ''
|
extraOptions = ''
|
||||||
|
|
Loading…
Reference in a new issue