571 current 1970-01-01 01:00:00 24.11.20250221.11415c7 6.6.79 *
This commit is contained in:
parent
238db043b4
commit
0fc344416c
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,2 +1,3 @@
|
||||
.null-ls*
|
||||
nixos-switch.log
|
||||
result
|
||||
|
@ -57,6 +57,9 @@
|
||||
{
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.sharedModules = [
|
||||
sops-nix.homeManagerModules.sops
|
||||
];
|
||||
}
|
||||
musnix.nixosModules.musnix
|
||||
];
|
||||
|
@ -6,7 +6,7 @@
|
||||
}: let
|
||||
cfg = config.myConfig.programs;
|
||||
in {
|
||||
imports = [./foot.nix ./thunderbird.nix ./nextcloud.nix ./udiskie.nix ./wezterm.nix];
|
||||
imports = [./foot.nix ./thunderbird.nix ./nextcloud.nix ./udiskie.nix ./wezterm.nix ./rclone.nix];
|
||||
|
||||
options.myConfig.programs = {
|
||||
enable = lib.mkEnableOption "programs for desktop use";
|
||||
@ -17,7 +17,7 @@ in {
|
||||
foot.enable = lib.mkDefault true;
|
||||
wezterm.enable = lib.mkDefault true;
|
||||
thunderbird.enable = lib.mkDefault true;
|
||||
nextcloud.enable = lib.mkDefault true;
|
||||
rclone.enable = lib.mkDefault true;
|
||||
udiskie.enable = lib.mkDefault true;
|
||||
};
|
||||
|
||||
|
73
modules/home/programs/rclone.nix
Normal file
73
modules/home/programs/rclone.nix
Normal file
@ -0,0 +1,73 @@
|
||||
{
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
cfg = config.myConfig.programs.rclone;
|
||||
in {
|
||||
options.myConfig.programs.rclone = {
|
||||
enable = lib.mkEnableOption "nextcloud sync using rclone";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
sops = {
|
||||
age.keyFile = "/home/max/.config/sops/age/keys.txt";
|
||||
secrets = {
|
||||
"cloud/url" = {
|
||||
sopsFile = ../../../secrets/rclone.yaml;
|
||||
};
|
||||
"cloud/user" = {
|
||||
sopsFile = ../../../secrets/rclone.yaml;
|
||||
};
|
||||
"cloud/pass" = {
|
||||
sopsFile = ../../../secrets/rclone.yaml;
|
||||
};
|
||||
"luhbots/url" = {
|
||||
sopsFile = ../../../secrets/rclone.yaml;
|
||||
};
|
||||
"luhbots/user" = {
|
||||
sopsFile = ../../../secrets/rclone.yaml;
|
||||
};
|
||||
"luhbots/pass" = {
|
||||
sopsFile = ../../../secrets/rclone.yaml;
|
||||
};
|
||||
};
|
||||
|
||||
templates."rclone.conf".content = ''
|
||||
[cloud]
|
||||
type = webdav
|
||||
url = ${config.sops.placeholder."cloud/url"}
|
||||
vendor = nextcloud
|
||||
user = ${config.sops.placeholder."cloud/user"}
|
||||
pass = ${config.sops.placeholder."cloud/pass"}
|
||||
nextcloud_chunk_size = 512M
|
||||
|
||||
[luhbots]
|
||||
type = webdav
|
||||
url = ${config.sops.placeholder."luhbots/url"}
|
||||
vendor = nextcloud
|
||||
user = ${config.sops.placeholder."luhbots/user"}
|
||||
pass = ${config.sops.placeholder."luhbots/pass"}
|
||||
'';
|
||||
};
|
||||
|
||||
home.packages = [pkgs.rclone];
|
||||
|
||||
systemd.user.services = {
|
||||
luhbots-mount = {
|
||||
Unit = {
|
||||
Description = "Mount the luhbots nextcloud";
|
||||
After = ["network-online.target"];
|
||||
};
|
||||
Service = {
|
||||
Type = "notify";
|
||||
ExecStartPre = "${pkgs.coreutils}/bin/mkdir -p \"%h/luhbots Nextcloud\"";
|
||||
ExecStart = "${pkgs.rclone}/bin/rclone --config=${config.sops.templates."rclone.conf".path} --vfs-cache-mode full mount \"luhbots:\" \"%h/luhbots Nextcloud\"";
|
||||
ExecStop = "${pkgs.fuse}/bin/fusermount -u \"%h/luhbots Nextcloud\"";
|
||||
};
|
||||
Install.WantedBy = ["default.target"];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
28
secrets/rclone.yaml
Normal file
28
secrets/rclone.yaml
Normal file
@ -0,0 +1,28 @@
|
||||
cloud:
|
||||
url: ENC[AES256_GCM,data:BoSdQrtLNKYpaHIWUj5Ak8PGMJz3hj/z88XVBgN6AbyT2K/bC412p3oi+X9MmYATR3A=,iv:wez+v5kEN+niZmZXzaJoygHf4mqKVI6CINktAZe8WTs=,tag:20W87Kcn94smiLtX9mMdOw==,type:str]
|
||||
user: ENC[AES256_GCM,data:kFza,iv:OrDNF/h+xLuuyq2cpaHnQuRM1lwuXhe8Ue0rm/wRmkY=,tag:9t+hEx38r/yBIzWIFD0GnQ==,type:str]
|
||||
pass: ENC[AES256_GCM,data:V+I4N5bDSDeTaubUKWK5sWQnTojqg3Afahgvd02LbkjpW/7VMjtLOyxtR5g3vzswcUFFZzOe4P1Y/MdH,iv:TEHPa1mbj6ODtDSnMvKdUUeyd+WcX5CIT+x7V9+FgNU=,tag:z5d95/hy9YFYrhaTG7r+Yw==,type:str]
|
||||
luhbots:
|
||||
url: ENC[AES256_GCM,data:5hnCSyNcr3un83FaNGYaiZdbxCJe87+hzpoRtWozbn0OW31pxONIEQnSikXh59/OlVJN9TEmv+bd3uO210NPoKUL0D2MWw==,iv:fvY7fLbiAVGq0hh4ifs/LRgixlZsIDczw0hpiUvFSw0=,tag:gXNgNWMDXnRMdyhTjnG6oA==,type:str]
|
||||
user: ENC[AES256_GCM,data:ucJ21fRmDKvHtyA=,iv:IYfNwBBWYxVb7ptwhfBiBgXwaoj5oCWg6gCI3WD8sjE=,tag:sB6/PJuquUL/GugpfzNMRw==,type:str]
|
||||
pass: ENC[AES256_GCM,data:3gkyN51YvL/SrtP3kbG4OVhc5KBzu33dYVx4u8pJs9h3GJ9Wh1A5NCaBFJa7VFWfKuysNmr4CQwQEYBX,iv:U5foeasbN/TrrR0mA1mNcqYWZFXHYIAqXLmP/RvC+Os=,tag:x7ck7quJG7npMGwi/ss3ZA==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
gcp_kms: []
|
||||
azure_kv: []
|
||||
hc_vault: []
|
||||
age:
|
||||
- recipient: age1d6ze98387f0gryqwvrdlcxgz3wgs607ach4duwmnp72dzaa63cxqchc78n
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBVQ0hJN2R0V1NJNnZEeHRD
|
||||
SDVxVmRFbXRVMjlSUkRKTHExY2I5S1BqVm1zCjRjM1J4Nm5xVG4wWVZLN2tMWGxH
|
||||
Qi90UEpZdmROdkE0RzRoUmt0cDVFRlEKLS0tIHN1ZjQ4VUM5aGNjN3RZcUVieW9C
|
||||
cVV3dFpNbjY1bkZtUlltanpSNDlPd28KQ4FQrC6KyZEzzkmByh07q1RAGnWnCNtr
|
||||
XTDQhlbSq/LdptpqNbUD2g9H9vC2CAC0av39ExvT55JiK4dEWmrwUA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-02-28T13:54:09Z"
|
||||
mac: ENC[AES256_GCM,data:1KKWA9F1kfwcvvbTNwFH/Cp0QGFGAJZOWCZX16Qi8g9ncBeX8xY8ZXq9jWtgOXO1wDeB7gPQj2nanZSzFvvjaq44h/gJRDu72L9H5KOrhJbJTG2K8yLWKnvzuLet8dPlaMkZKermCRcN31W9cQBLj7+31lUznTSLvd0B9uJxdu8=,iv:KImOEnxVrRnDtM7w3Xa23L6j495WQlSvqJgmRii4WSQ=,tag:Ck6u78WVnjkUDUCJnKyUhQ==,type:str]
|
||||
pgp: []
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.9.4
|
Loading…
x
Reference in New Issue
Block a user