Compare commits

...

4 commits

Author SHA1 Message Date
436c1785a8 Common/syncthing: use key and cert from secrets 2024-02-19 14:02:34 +01:00
2f0230c401 Common: set up secrets 2024-02-19 14:02:34 +01:00
a1f41b6295 WinMax2: mount persist subvolume 2024-02-19 14:02:34 +01:00
8a8b69b79b Flake: add secrets repo 2024-02-19 14:02:28 +01:00
5 changed files with 39 additions and 10 deletions

17
flake.lock generated
View file

@ -411,9 +411,26 @@
"nixpkgs-unstable-raw": "nixpkgs-unstable-raw",
"nur": "nur",
"plasma-manager": "plasma-manager",
"secrets": "secrets",
"vscode-extensions": "vscode-extensions"
}
},
"secrets": {
"flake": false,
"locked": {
"lastModified": 1708347322,
"narHash": "sha256-30rLLNMGvVz8xbklqRpA3uE6UDneAUGFz7dCmH9YbA8=",
"ref": "refs/heads/main",
"rev": "409536f1d2b8ffe741fe47b8701ba28137f9de38",
"revCount": 3,
"type": "git",
"url": "http://git.everest.sable-pancake.ts.net/Toast/nix-secrets"
},
"original": {
"type": "git",
"url": "http://git.everest.sable-pancake.ts.net/Toast/nix-secrets"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,

View file

@ -2,6 +2,10 @@
description = "Configuration for Everest";
inputs = {
secrets = {
url = "git+http://git.everest.sable-pancake.ts.net/Toast/nix-secrets";
flake = false;
};
nixpkgs-raw.url = "nixpkgs/nixos-23.11";
nixpkgs-unstable-raw.url = "nixpkgs/nixos-unstable";

View file

@ -43,12 +43,12 @@ in
fsType = "btrfs";
options = [ "subvol=@" ];
};
/*"btrfs_boot" = {
mountPoint = "/boot";
"btrfs_persist" = {
mountPoint = "/persist";
label = ssdLabel;
fsType = "btrfs";
options = [ "subvol=@boot" ];
};*/
options = [ "subvol=@persist" ];
};
"btrfs_home" = {
mountPoint = "/home";
label = ssdLabel;

View file

@ -105,11 +105,7 @@
# Set up secrets
age = {
identityPaths = [
"/etc/ssh/ssh_host_rsa_key"
"/etc/ssh/ssh_host_ed25519_key"
# This key has a passcode, so if you need to use it you'll have to
# enter the password A LOT of times. Only on the first setup tho
"/tmp/id_ed25519_bootstrap"
"/persist/id_host"
];
};

View file

@ -1,7 +1,19 @@
{ config, ... }:
{ config, flakeSelf, ... }:
let
hostSecrets = "${flakeSelf.inputs.secrets}/" + config.networking.hostName;
in
{
# Get secrets
age.secrets = {
syncthingKey.file = hostSecrets + "/syncthingKey.age";
syncthingCert.file = hostSecrets + "/syncthingCert.age";
};
services.syncthing = {
key = config.age.secrets.syncthingKey.path;
cert = config.age.secrets.syncthingCert.path;
overrideDevices = true;
overrideFolders = true;
openDefaultPorts = true;