Refactor structure

Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
2025-01-09 13:50:26 +00:00
parent c8c34c40e5
commit b355f72b2e
30 changed files with 362 additions and 202 deletions

View File

@@ -0,0 +1,28 @@
{
user ? throw "user argument is required",
home ? throw "home argument is required",
}:
{ ... }:
{
home-manager.users.${user} = {
sops.secrets = {
"git/credentials" = {
sopsFile = ../../../../../../../secrets/personal/secrets.yaml;
path = "${home}/.config/git/credentials";
};
"git/cookies" = {
sopsFile = ../../../../../../../secrets/personal/secrets.yaml;
path = "${home}/.config/git/cookies";
};
};
programs.ssh.matchBlocks = {
"github.com" = {
hostname = "github.com";
user = "git";
identityFile = "${home}/.ssh/ssh_personal_ed25519_key";
extraOptions.StrictHostKeyChecking = "no";
};
};
};
}

View File

@@ -8,6 +8,7 @@ in
{
imports = [
../../../common/configs/user/options.nix
(import ../../../common/configs/user/console/bashmount { inherit user home; })
(import ../../../common/configs/user/console/btop { inherit user home; })
(import ../../../common/configs/user/console/fastfetch { inherit user home; })
@@ -27,6 +28,8 @@ in
(import ../../../common/configs/user/console/wget { inherit user home; })
(import ../../../common/configs/user/console/xdg { inherit user home; })
(import ../../../common/configs/user/console/zsh { inherit user home; })
(import ./configs/console/git { inherit user home; })
];
# echo "password" | mkpasswd -s
@@ -57,32 +60,14 @@ in
};
sops.secrets = {
"git/credentials" = {
"ssh/personal/key" = {
sopsFile = ../../../../secrets/personal/secrets.yaml;
path = "${home}/.config/git/credentials";
path = "${home}/.ssh/ssh_personal_ed25519_key";
};
"git/cookies" = {
sopsFile = ../../../../secrets/personal/secrets.yaml;
path = "${home}/.config/git/cookies";
};
"ssh/personal/git/key" = {
sopsFile = ../../../../secrets/personal/secrets.yaml;
path = "${home}/.ssh/ssh_git_personal_ed25519_key";
};
"ssh/personal/git/pass".sopsFile = ../../../../secrets/personal/secrets.yaml;
"ssh/personal/pass".sopsFile = ../../../../secrets/personal/secrets.yaml;
"gpg/personal/key".sopsFile = ../../../../secrets/personal/secrets.yaml;
"gpg/personal/pass".sopsFile = ../../../../secrets/personal/secrets.yaml;
};
programs.ssh.matchBlocks = {
"github.com" = {
hostname = "github.com";
user = "git";
identityFile = "${home}/.ssh/ssh_git_personal_ed25519_key";
extraOptions.StrictHostKeyChecking = "no";
};
};
};
}