From 83f565ba8ceb10a1efd220800933dd7f52f6f868 Mon Sep 17 00:00:00 2001 From: bogale Date: Thu, 17 Sep 2026 11:41:39 +0900 Subject: [PATCH] sops-nix --- .sops.yaml | 7 +++++++ common.nix | 1 + home/common.nix | 4 ---- home/server/bogale.nix | 2 +- home/server/common.nix | 7 +++++++ home/server/root.nix | 2 +- server/configuration.nix | 3 +++ server/flake.lock | 23 ++++++++++++++++++++++- server/flake.nix | 7 ++++++- 9 files changed, 48 insertions(+), 8 deletions(-) create mode 100644 .sops.yaml create mode 100644 home/server/common.nix diff --git a/.sops.yaml b/.sops.yaml new file mode 100644 index 0000000..edf9919 --- /dev/null +++ b/.sops.yaml @@ -0,0 +1,7 @@ +keys: + - &age age18uvtlgx442kkufwp6g42lfxk2ft3e4ksjhumdugjcc7uclyzj9vqk9f8fw +creation_rules: + - path_regex: secrets/[^/]+\.(yaml|json|env|ini)$ + key_groups: + - age: + - *age diff --git a/common.nix b/common.nix index 759a349..e7c64c4 100644 --- a/common.nix +++ b/common.nix @@ -50,6 +50,7 @@ amneziawg-go amneziawg-tools sbctl + sops ]; services = { logind.settings.Login.HandleLidSwitch = "ignore"; diff --git a/home/common.nix b/home/common.nix index b789ab6..fdc2d90 100644 --- a/home/common.nix +++ b/home/common.nix @@ -39,13 +39,9 @@ extraConfig = '' unbind C-b set -g mouse on - set -g prefix M-d - set -g prefix M-f set-option -g focus-events on set -s set-clipboard external set-option -a terminal-features "xterm-256color:RGB" - bind f send-prefix - bind d send-prefix bind h select-pane -L bind j select-pane -D bind k select-pane -U diff --git a/home/server/bogale.nix b/home/server/bogale.nix index f6bd6f1..bcb97f6 100644 --- a/home/server/bogale.nix +++ b/home/server/bogale.nix @@ -1,4 +1,4 @@ { config, pkgs, ... }: { - imports = [ ../bogale.nix ]; + imports = [ ./common.nix ../bogale.nix ]; } diff --git a/home/server/common.nix b/home/server/common.nix new file mode 100644 index 0000000..4c8896f --- /dev/null +++ b/home/server/common.nix @@ -0,0 +1,7 @@ +{ config, pkgs, ... }: +{ + programs.tmux.extraConfig = '' + set -g prefix M-d + bind d send-prefix + ''; +} diff --git a/home/server/root.nix b/home/server/root.nix index 8998624..517ada8 100644 --- a/home/server/root.nix +++ b/home/server/root.nix @@ -1,6 +1,6 @@ { config, pkgs, ... }: { - imports = [ ../root.nix ]; + imports = [ ./common.nix ../root.nix ]; programs.bash = { shellAliases = { "nixos-rebuild" = "nixos-rebuild --impure --flake /etc/nixos/server#nixos-server"; }; }; diff --git a/server/configuration.nix b/server/configuration.nix index c572485..8e8891e 100644 --- a/server/configuration.nix +++ b/server/configuration.nix @@ -2,6 +2,9 @@ { imports = [ ../common.nix ./hardware-configuration.nix ]; boot.kernelParams = [ "memmap=0x4000%0xbfb76000-4" "memmap=0x4000%0xbfb7a000-4" ]; + users.users.bogale.openssh.authorizedKeys.keys = [ + "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKH8f3tKQQFFCkLS76TcY7oPzmbVrTkMZN7KSDHPX4o1" + ]; networking = { hostName = "nixos-server"; networkmanager.ensureProfiles.profiles.home-wifi = { diff --git a/server/flake.lock b/server/flake.lock index 0a16ff3..0c03c52 100644 --- a/server/flake.lock +++ b/server/flake.lock @@ -40,7 +40,28 @@ "root": { "inputs": { "home-manager": "home-manager", - "nixpkgs": "nixpkgs" + "nixpkgs": "nixpkgs", + "sops-nix": "sops-nix" + } + }, + "sops-nix": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1788914643, + "narHash": "sha256-4GuMPW90JSxXWDPUB9M+1m7fYbe3H0apOd86/zBQ2Kw=", + "owner": "Mic92", + "repo": "sops-nix", + "rev": "13616fff713a9f94055c66f15687ebdc17a335df", + "type": "github" + }, + "original": { + "owner": "Mic92", + "repo": "sops-nix", + "type": "github" } } }, diff --git a/server/flake.nix b/server/flake.nix index 705a8a3..6000b63 100644 --- a/server/flake.nix +++ b/server/flake.nix @@ -1,15 +1,20 @@ { inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-26.05"; + sops-nix = { + url = "github:Mic92/sops-nix"; + inputs.nixpkgs.follows = "nixpkgs"; + }; home-manager = { url = "github:nix-community/home-manager/release-26.05"; inputs.nixpkgs.follows = "nixpkgs"; }; }; - outputs = inputs@{ self, nixpkgs, home-manager, ... }: { + outputs = inputs@{ self, nixpkgs, sops-nix, home-manager, ... }: { nixosConfigurations.nixos-server = nixpkgs.lib.nixosSystem { modules = [ ./configuration.nix + sops-nix.nixosModules.sops home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true;