Compare commits

..

15 Commits

Author SHA1 Message Date
kurogeek 77b487a709 clancore bumped, zerotier migration 2026-06-16 15:01:21 +07:00
kurogeek 2b239eb162 hm/emmie: use hunspell dictionary with systemd user session variables, libreoffice -> libreoffice-qt 2026-06-16 11:20:05 +07:00
kurogeek 8e64e88d8f inputs: bump home-manager 2026-06-16 11:18:34 +07:00
kurogeek 6276d9aee0 inputs: bump nixpkgs, frappix. migrate inventree 2026-06-15 16:36:18 +07:00
kurogeek 9471d1a4e6 machines/bosona: nix fmt 2026-06-15 15:55:04 +07:00
kurogeek 77d8e42ec2 hm/emmie: add hunspellDicts en and th 2026-06-15 13:28:58 +07:00
kurogeek 0dafb8cd52 clanService/wordpress: nginx clientMaxBodySize is 128m 2026-06-12 12:22:27 +07:00
kurogeek 8b12656149 clanService/wordpress: phpfpm options and wp-config.php are configurable from inventory interface 2026-06-12 12:09:56 +07:00
kurogeek d622040d30 hm/emmie: rm DnsOverHttpsMode and DnsOverHttpsTemplates 2026-06-11 13:54:17 +07:00
kurogeek 2bc05c2d6d clanService/wordpress: test vars 2026-06-10 18:59:30 +07:00
kurogeek 5fa8444112 clanService/wordpress: security.acme.acceptTerms = true and nginx is in acme group 2026-06-10 18:59:01 +07:00
kurogeek 8874b33a5d greaterchiangmai: nodejs_20 -> nodejs 2026-06-10 18:56:48 +07:00
kurogeek 521ccdc886 clanService/personal-computer: rm services.displayManager.gdm.wayland 2026-06-10 18:53:46 +07:00
kurogeek 07b648db9a clanService/headscale: magic_dns is disabled 2026-06-10 15:11:26 +07:00
kurogeek da6be4946f machines/tangra: poyfestival.com website 2026-06-01 10:42:03 +07:00
201 changed files with 3577 additions and 4125 deletions
Generated
+33 -32
View File
@@ -72,11 +72,11 @@
]
},
"locked": {
"lastModified": 1772411144,
"narHash": "sha256-WhXudztwPNnKXaqGX4DOqNfHzHdBSiGCvKGHM20pscw=",
"lastModified": 1781517972,
"narHash": "sha256-G8bIXFqifs/y62GNPwg20Ksf71raYwzmyN99gf1tXak=",
"ref": "refs/heads/main",
"rev": "92cc85bc24eb31ce5725e1e72753129810ce3fe9",
"revCount": 13201,
"rev": "7fc62d0c25c7a97d7027a9c248e21c97c9b3acc1",
"revCount": 14604,
"type": "git",
"url": "https://git.clan.lol/clan/clan-core"
},
@@ -101,11 +101,11 @@
]
},
"locked": {
"lastModified": 1772273147,
"narHash": "sha256-Wzhoc6ifjTDZi8aVRH3fuLJPdd4ouNTTwwVhgoMcMek=",
"rev": "d5de7a8d9e5726e678c94e62fe8ac3a809fee5da",
"lastModified": 1778718524,
"narHash": "sha256-pXLoI6Ax0EnUK6r34UM1vibVC7CfTu6j72R2692ZzPs=",
"rev": "12c552ad547d87254f33f33bddd1a2cdbeac754d",
"type": "tarball",
"url": "https://git.clan.lol/api/v1/repos/clan/data-mesher/archive/d5de7a8d9e5726e678c94e62fe8ac3a809fee5da.tar.gz"
"url": "https://git.clan.lol/api/v1/repos/clan/data-mesher/archive/12c552ad547d87254f33f33bddd1a2cdbeac754d.tar.gz"
},
"original": {
"type": "tarball",
@@ -140,11 +140,11 @@
]
},
"locked": {
"lastModified": 1771881364,
"narHash": "sha256-A5uE/hMium5of/QGC6JwF5TGoDAfpNtW00T0s9u/PN8=",
"lastModified": 1781152676,
"narHash": "sha256-RxWs5ND31KzTG7wvMM+PMfUjyNpmIEr999lqNARaM5o=",
"owner": "nix-community",
"repo": "disko",
"rev": "a4cb7bf73f264d40560ba527f9280469f1f081c6",
"rev": "ff8702b4de27f72b4c78573dfb89ec74e36abdf1",
"type": "github"
},
"original": {
@@ -294,11 +294,11 @@
"std": "std"
},
"locked": {
"lastModified": 1779175997,
"narHash": "sha256-Ps/4s3jwaZdLVEpO+1cRs54VbPbgMeXJUqa4CWSPJSY=",
"lastModified": 1780907315,
"narHash": "sha256-MR859lKVKeItsC5wnd1oniBar2lBTA+FJ7Bx4xN1Wpk=",
"owner": "kurogeek",
"repo": "frappix",
"rev": "0f1b4bcfb8c3b976e808a57e491d10857a1a45ac",
"rev": "9c2bc4152bce6d91305bcf0563a8a715860c405d",
"type": "github"
},
"original": {
@@ -353,11 +353,11 @@
]
},
"locked": {
"lastModified": 1768068402,
"narHash": "sha256-bAXnnJZKJiF7Xr6eNW6+PhBf1lg2P1aFUO9+xgWkXfA=",
"lastModified": 1781557312,
"narHash": "sha256-QOIRYSUFSq7L5mY3dZymaVhcnne3tPgoR9riB0WocjA=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "8bc5473b6bc2b6e1529a9c4040411e1199c43b4c",
"rev": "c03e4752899e55705dfa63979abd885c582a5c48",
"type": "github"
},
"original": {
@@ -484,11 +484,11 @@
]
},
"locked": {
"lastModified": 1772379624,
"narHash": "sha256-NG9LLTWlz4YiaTAiRGChbrzbVxBfX+Auq4Ab/SWmk4A=",
"lastModified": 1781242433,
"narHash": "sha256-bchLZZ3sRn740zyvD2icZSnNoTaanN0nw7l6fjVXO+E=",
"owner": "nix-darwin",
"repo": "nix-darwin",
"rev": "52d061516108769656a8bd9c6e811c677ec5b462",
"rev": "aabb2037edfc0f210723b72cd5f528aab5dd3f0b",
"type": "github"
},
"original": {
@@ -522,11 +522,11 @@
]
},
"locked": {
"lastModified": 1714086354,
"narHash": "sha256-yKVQMxL9p7zCWUhnGhDzRVT8sDgHoI3V595lBK0C2YA=",
"lastModified": 1746801636,
"narHash": "sha256-dlcKfIXp/eqFHzFm+DzseXAWWlpVwyk9cTvCKGtVKkw=",
"owner": "nix-community",
"repo": "nixago",
"rev": "5133633e9fe6b144c8e00e3b212cdbd5a173b63d",
"rev": "8cc33f973ab3a891d8a41391e73ef451a783960b",
"type": "github"
},
"original": {
@@ -552,11 +552,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1778458615,
"narHash": "sha256-cY07EsdhBJ8tFXPzDYevgqxRev9ZLxFonuq9wmq5kwg=",
"lastModified": 1781359544,
"narHash": "sha256-iUuzKQcyXvopYDDzFpMK5eQKP3WIJExYny2kJtbgUcE=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "c6e5ca3c836a5f4dd9af9f2c1fc1c38f0fac988a",
"rev": "9f11f828c213641c2369a9f1fa31fe31557e3156",
"type": "github"
},
"original": {
@@ -673,11 +673,11 @@
]
},
"locked": {
"lastModified": 1772340640,
"narHash": "sha256-1nq7+Kt5IUBD8Hu3nptVPbMf+22rNJoHT0t9L1X+GKA=",
"lastModified": 1780547341,
"narHash": "sha256-Gq8KNx5A7hBB3uGJaj6eQfLDIz5YdLu92gqBcvHvoUo=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "dec4d8eac700dcd2fe3c020857d3ee220ec147f1",
"rev": "9ed65852b6257fbeae4355bc24ecfea307ca759a",
"type": "github"
},
"original": {
@@ -764,15 +764,16 @@
},
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"lastModified": 1774449309,
"narHash": "sha256-brhZ8DmuGtzkCYHJg4HEd602amKm89Y9ytsFZ5uWD1w=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"rev": "c29398b59d2048c4ab79345812849c9bd15e9150",
"type": "github"
},
"original": {
"owner": "nix-systems",
"ref": "future-26.11",
"repo": "default",
"type": "github"
}
-7
View File
@@ -56,7 +56,6 @@
./shell.nix
./overlays
./modules/nixos
./machines
./routers
./inventories
@@ -72,18 +71,12 @@
inherit system;
overlays = [
inputs.self.overlays.packagesOverlay
inputs.self.overlays.frappixFrappeOverlay
inputs.self.overlays.frappixLibsOverlay
inputs.self.overlays.frappixPythonOverlay
inputs.self.overlays.frappixToolsOverlay
];
config = { };
};
packages.think = pkgs.think-gtcm;
packages.think-be = pkgs.think-backend-gtcm;
packages.file-uploader = pkgs.gtcm-file-uploader;
packages.erpnext_thailand = pkgs.erpnext_thailand;
packages.thai_payroll = pkgs.thai_payroll;
};
}
);
+36 -2
View File
@@ -102,7 +102,13 @@
name = "zerotier";
input = "clan-core";
};
roles.controller.machines."vega" = { };
roles.controller.machines."vega" = {
settings.allowedIds = [
"dbe44c0287" # Alex-gateway
"b0e0b84fd3" # Alex
"2bd36db8cc" # kurogeek-thinkpad
];
};
roles.peer.tags.glom = { };
};
@@ -111,7 +117,13 @@
name = "zerotier";
input = "clan-core";
};
roles.controller.machines."rigel" = { };
roles.controller.machines."rigel" = {
settings.allowedIds = [
"dbe44c0287" # Alex-gateway
"b0e0b84fd3" # Alex
"2bd36db8cc" # kurogeek-thinkpad
];
};
roles.peer.tags.b4l = { };
};
@@ -277,6 +289,28 @@
dataDir = "/mnt/hdd/samba";
};
};
wordpress = {
module = {
name = "wordpress";
input = "self";
};
roles.server.machines."tangra".settings = {
tenants = [
"poyfestival.com"
];
phpfpmOptions = ''
upload_max_filesize=64M
post_max_size=128M
'';
wpExtraConfig = ''
define('WP_MEMORY_LIMIT', '256M');
define('WP_DEBUG', false);
define('WP_DEBUG_DISPLAY', false);
define('WP_DEBUG_LOG', false);
'';
};
};
};
};
};
+2 -2
View File
@@ -48,8 +48,8 @@
"bosona": {
"installedAt": 1779098893
},
"saturn": {
"installedAt": 1779766873
"tangra": {
"installedAt": 1779958921
}
}
}
+64 -215
View File
@@ -25,10 +25,7 @@
{
"index": 8,
"attached_to": 0,
"class_list": [
"pci",
"bridge"
],
"class_list": ["pci", "bridge"],
"bus_type": {
"hex": "0004",
"name": "PCI",
@@ -76,10 +73,7 @@
{
"index": 9,
"attached_to": 0,
"class_list": [
"pci",
"bridge"
],
"class_list": ["pci", "bridge"],
"bus_type": {
"hex": "0004",
"name": "PCI",
@@ -131,10 +125,7 @@
{
"index": 10,
"attached_to": 0,
"class_list": [
"pci",
"bridge"
],
"class_list": ["pci", "bridge"],
"bus_type": {
"hex": "0004",
"name": "PCI",
@@ -182,10 +173,7 @@
{
"index": 11,
"attached_to": 0,
"class_list": [
"pci",
"bridge"
],
"class_list": ["pci", "bridge"],
"bus_type": {
"hex": "0004",
"name": "PCI",
@@ -241,10 +229,7 @@
{
"index": 12,
"attached_to": 0,
"class_list": [
"pci",
"bridge"
],
"class_list": ["pci", "bridge"],
"bus_type": {
"hex": "0004",
"name": "PCI",
@@ -297,21 +282,14 @@
},
"driver": "piix4_smbus",
"driver_module": "i2c_piix4",
"drivers": [
"piix4_smbus"
],
"driver_modules": [
"i2c_piix4"
],
"drivers": ["piix4_smbus"],
"driver_modules": ["i2c_piix4"],
"module_alias": "pci:v00008086d00007113sv00001AF4sd00001100bc06sc80i00"
},
{
"index": 17,
"attached_to": 0,
"class_list": [
"pci",
"bridge"
],
"class_list": ["pci", "bridge"],
"bus_type": {
"hex": "0004",
"name": "PCI",
@@ -361,11 +339,7 @@
{
"index": 22,
"attached_to": 15,
"class_list": [
"cdrom",
"scsi",
"block_device"
],
"class_list": ["cdrom", "scsi", "block_device"],
"bus_type": {
"hex": "0084",
"name": "SCSI",
@@ -422,14 +396,8 @@
"unix_device_name2": "/dev/sg1",
"driver": "ata_piix",
"driver_module": "ata_piix",
"drivers": [
"ata_piix",
"sr"
],
"driver_modules": [
"ata_piix",
"sr_mod"
]
"drivers": ["ata_piix", "sr"],
"driver_modules": ["ata_piix", "sr_mod"]
}
],
"cpu": [
@@ -496,9 +464,7 @@
"spectre_v2_user",
"its"
],
"power_management": [
""
],
"power_management": [""],
"bogo": 4224,
"cache": 16384,
"page_size": 4096,
@@ -580,9 +546,7 @@
"spectre_v2_user",
"its"
],
"power_management": [
""
],
"power_management": [""],
"bogo": 4224,
"cache": 16384,
"page_size": 4096,
@@ -606,11 +570,7 @@
{
"index": 23,
"attached_to": 19,
"class_list": [
"disk",
"scsi",
"block_device"
],
"class_list": ["disk", "scsi", "block_device"],
"bus_type": {
"hex": "0084",
"name": "SCSI",
@@ -674,24 +634,15 @@
],
"driver": "virtio_scsi",
"driver_module": "virtio_scsi",
"drivers": [
"sd",
"virtio_scsi"
],
"driver_modules": [
"sd_mod",
"virtio_scsi"
]
"drivers": ["sd", "virtio_scsi"],
"driver_modules": ["sd_mod", "virtio_scsi"]
}
],
"graphics_card": [
{
"index": 16,
"attached_to": 0,
"class_list": [
"graphics_card",
"pci"
],
"class_list": ["graphics_card", "pci"],
"bus_type": {
"hex": "0004",
"name": "PCI",
@@ -748,12 +699,8 @@
},
"driver": "bochs-drm",
"driver_module": "bochs",
"drivers": [
"bochs-drm"
],
"driver_modules": [
"bochs"
],
"drivers": ["bochs-drm"],
"driver_modules": ["bochs"],
"module_alias": "pci:v00001234d00001111sv00001AF4sd00001100bc03sc00i00"
}
],
@@ -761,10 +708,7 @@
{
"index": 24,
"attached_to": 7,
"class_list": [
"usb",
"hub"
],
"class_list": ["usb", "hub"],
"bus_type": {
"hex": "0086",
"name": "USB",
@@ -837,12 +781,8 @@
"hotplug": "usb",
"driver": "hub",
"driver_module": "usbcore",
"drivers": [
"hub"
],
"driver_modules": [
"usbcore"
],
"drivers": ["hub"],
"driver_modules": ["usbcore"],
"module_alias": "usb:v1D6Bp0001d0618dc09dsc00dp00ic09isc00ip00in00"
}
],
@@ -850,9 +790,7 @@
{
"index": 5,
"attached_to": 0,
"class_list": [
"memory"
],
"class_list": ["memory"],
"base_class": {
"hex": "0101",
"name": "Internally Used Class",
@@ -876,9 +814,7 @@
{
"index": 21,
"attached_to": 16,
"class_list": [
"monitor"
],
"class_list": ["monitor"],
"base_class": {
"hex": "0100",
"name": "Monitor",
@@ -1024,10 +960,7 @@
{
"index": 25,
"attached_to": 24,
"class_list": [
"mouse",
"usb"
],
"class_list": ["mouse", "usb"],
"bus_type": {
"hex": "0086",
"name": "USB",
@@ -1063,9 +996,7 @@
"model": "QEMU USB Tablet",
"sysfs_id": "/devices/pci0000:00/0000:00:01.2/usb1/1-1/1-1:1.0",
"sysfs_bus_id": "1-1:1.0",
"unix_device_names": [
"/dev/input/mice"
],
"unix_device_names": ["/dev/input/mice"],
"unix_device_name2": "/dev/input/mouse0",
"resources": [
{
@@ -1106,18 +1037,11 @@
"hotplug": "usb",
"driver": "usbhid",
"driver_module": "usbhid",
"drivers": [
"usbhid"
],
"driver_modules": [
"usbhid"
],
"drivers": ["usbhid"],
"driver_modules": ["usbhid"],
"driver_info": {
"type": "mouse",
"db_entry_0": [
"explorerps/2",
"exps2"
],
"db_entry_0": ["explorerps/2", "exps2"],
"xf86": "explorerps/2",
"gpm": "exps2",
"buttons": -1,
@@ -1130,9 +1054,7 @@
{
"index": 18,
"attached_to": 13,
"class_list": [
"network_controller"
],
"class_list": ["network_controller"],
"bus_type": {
"hex": "008f",
"name": "Virtio",
@@ -1157,9 +1079,7 @@
"model": "Virtio Ethernet Card 0",
"sysfs_id": "/devices/pci0000:00/0000:00:12.0/virtio1",
"sysfs_bus_id": "virtio1",
"unix_device_names": [
"ens18"
],
"unix_device_names": ["ens18"],
"resources": [
{
"type": "hwaddr",
@@ -1172,12 +1092,8 @@
],
"driver": "virtio_net",
"driver_module": "virtio_net",
"drivers": [
"virtio_net"
],
"driver_modules": [
"virtio_net"
],
"drivers": ["virtio_net"],
"driver_modules": ["virtio_net"],
"module_alias": "virtio:d00000001v00001AF4"
}
],
@@ -1185,9 +1101,7 @@
{
"index": 26,
"attached_to": 18,
"class_list": [
"network_interface"
],
"class_list": ["network_interface"],
"base_class": {
"hex": "0107",
"name": "Network Interface",
@@ -1201,9 +1115,7 @@
"model": "Ethernet network interface",
"sysfs_id": "/class/net/ens18",
"sysfs_device_link": "/devices/pci0000:00/0000:00:12.0/virtio1",
"unix_device_names": [
"ens18"
],
"unix_device_names": ["ens18"],
"resources": [
{
"type": "hwaddr",
@@ -1216,19 +1128,13 @@
],
"driver": "virtio_net",
"driver_module": "virtio_net",
"drivers": [
"virtio_net"
],
"driver_modules": [
"virtio_net"
]
"drivers": ["virtio_net"],
"driver_modules": ["virtio_net"]
},
{
"index": 27,
"attached_to": 0,
"class_list": [
"network_interface"
],
"class_list": ["network_interface"],
"base_class": {
"hex": "0107",
"name": "Network Interface",
@@ -1241,19 +1147,14 @@
},
"model": "Loopback network interface",
"sysfs_id": "/class/net/lo",
"unix_device_names": [
"lo"
]
"unix_device_names": ["lo"]
}
],
"pci": [
{
"index": 13,
"attached_to": 0,
"class_list": [
"pci",
"unknown"
],
"class_list": ["pci", "unknown"],
"bus_type": {
"hex": "0004",
"name": "PCI",
@@ -1310,21 +1211,14 @@
},
"driver": "virtio-pci",
"driver_module": "virtio_pci",
"drivers": [
"virtio-pci"
],
"driver_modules": [
"virtio_pci"
],
"drivers": ["virtio-pci"],
"driver_modules": ["virtio_pci"],
"module_alias": "pci:v00001AF4d00001000sv00001AF4sd00000001bc02sc00i00"
},
{
"index": 14,
"attached_to": 0,
"class_list": [
"pci",
"unknown"
],
"class_list": ["pci", "unknown"],
"bus_type": {
"hex": "0004",
"name": "PCI",
@@ -1380,12 +1274,8 @@
},
"driver": "virtio-pci",
"driver_module": "virtio_pci",
"drivers": [
"virtio-pci"
],
"driver_modules": [
"virtio_pci"
],
"drivers": ["virtio-pci"],
"driver_modules": ["virtio_pci"],
"module_alias": "pci:v00001AF4d00001002sv00001AF4sd00000005bc00scFFi00"
}
],
@@ -1393,10 +1283,7 @@
{
"index": 6,
"attached_to": 17,
"class_list": [
"storage_controller",
"pci"
],
"class_list": ["storage_controller", "pci"],
"bus_type": {
"hex": "0004",
"name": "PCI",
@@ -1453,21 +1340,14 @@
},
"driver": "virtio-pci",
"driver_module": "virtio_pci",
"drivers": [
"virtio-pci"
],
"driver_modules": [
"virtio_pci"
],
"drivers": ["virtio-pci"],
"driver_modules": ["virtio_pci"],
"module_alias": "pci:v00001AF4d00001004sv00001AF4sd00000008bc01sc00i00"
},
{
"index": 15,
"attached_to": 0,
"class_list": [
"storage_controller",
"pci"
],
"class_list": ["storage_controller", "pci"],
"bus_type": {
"hex": "0004",
"name": "PCI",
@@ -1557,12 +1437,8 @@
},
"driver": "ata_piix",
"driver_module": "ata_piix",
"drivers": [
"ata_piix"
],
"driver_modules": [
"ata_piix"
],
"drivers": ["ata_piix"],
"driver_modules": ["ata_piix"],
"module_alias": "pci:v00008086d00007010sv00001AF4sd00001100bc01sc01i80"
}
],
@@ -1573,9 +1449,7 @@
{
"index": 19,
"attached_to": 6,
"class_list": [
"unknown"
],
"class_list": ["unknown"],
"base_class": {
"hex": "0000",
"name": "Unclassified device",
@@ -1593,20 +1467,14 @@
"sysfs_bus_id": "virtio2",
"driver": "virtio_scsi",
"driver_module": "virtio_scsi",
"drivers": [
"virtio_scsi"
],
"driver_modules": [
"virtio_scsi"
],
"drivers": ["virtio_scsi"],
"driver_modules": ["virtio_scsi"],
"module_alias": "virtio:d00000008v00001AF4"
},
{
"index": 20,
"attached_to": 14,
"class_list": [
"unknown"
],
"class_list": ["unknown"],
"base_class": {
"hex": "0000",
"name": "Unclassified device",
@@ -1624,12 +1492,8 @@
"sysfs_bus_id": "virtio0",
"driver": "virtio_balloon",
"driver_module": "virtio_balloon",
"drivers": [
"virtio_balloon"
],
"driver_modules": [
"virtio_balloon"
],
"drivers": ["virtio_balloon"],
"driver_modules": ["virtio_balloon"],
"module_alias": "virtio:d00000005v00001AF4"
}
],
@@ -1637,10 +1501,7 @@
{
"index": 7,
"attached_to": 0,
"class_list": [
"usb_controller",
"pci"
],
"class_list": ["usb_controller", "pci"],
"bus_type": {
"hex": "0004",
"name": "PCI",
@@ -1707,25 +1568,15 @@
},
"driver": "uhci_hcd",
"driver_module": "uhci_hcd",
"drivers": [
"uhci_hcd"
],
"driver_modules": [
"uhci_hcd"
],
"drivers": ["uhci_hcd"],
"driver_modules": ["uhci_hcd"],
"driver_info": {
"type": "module",
"db_entry_0": [
"uhci-hcd"
],
"db_entry_0": ["uhci-hcd"],
"active": true,
"modprobe": true,
"names": [
"uhci-hcd"
],
"module_args": [
""
],
"names": ["uhci-hcd"],
"module_args": [""],
"conf": ""
},
"module_alias": "pci:v00008086d00007020sv00001AF4sd00001100bc0Csc03i00"
@@ -1838,9 +1689,7 @@
"name": "RAM",
"value": 7
},
"memory_type_details": [
"Other"
],
"memory_type_details": ["Other"],
"speed": 0
}
],
-1
View File
@@ -13,7 +13,6 @@ in
imports = [ inputs.frappix.nixosModules.x86_64-linux.frappix ];
nixpkgs.overlays = [
inputs.self.overlays.packagesOverlay
inputs.self.overlays.frappixFrappeOverlay
inputs.self.overlays.frappixLibsOverlay
inputs.self.overlays.frappixPythonOverlay
+3 -17
View File
@@ -9,13 +9,6 @@ let
in
{
clan.core.settings.machine.description = "VM machine that host Inventree system for Poy";
imports = [
inputs.self.nixosModules.inventree
];
nixpkgs.overlays = [
inputs.self.overlays.packagesOverlay
];
nixpkgs.hostPlatform = {
system = "x86_64-linux";
@@ -82,19 +75,12 @@ in
services.inventree = {
enable = true;
hostName = "${domain}";
config.site_url = "https://${config.services.inventree.hostName}";
inherit domain;
secretKeyFile = config.clan.core.vars.generators.inventree.files.secret-key.path;
config.oidc_private_key_file = config.clan.core.vars.generators.inventree.files.oidc-key.path;
config.adminPasswordFile = config.clan.core.vars.generators.inventree.files.admin-password.path;
adminPasswordFile = config.clan.core.vars.generators.inventree.files.admin-password.path;
settings.INVENTREE_SITE_URL = "https://${domain}";
};
# services.nginx.virtualHosts."${domain}" = {
# forceSSL = true;
# sslCertificate = config.clan.core.vars.generators.nginx.files.sslCert.path;
# sslCertificateKey = config.clan.core.vars.generators.nginx.files.sslKey.path;
# };
system.stateVersion = "25.11";
clan.core.sops.defaultGroups = [ "admins" ];
}
-1
View File
@@ -10,7 +10,6 @@
};
system.stateVersion = "25.11";
clan.core.sops.defaultGroups = [ "admins" ];
clan.core.networking.targetHost = "root@[${config.clan.core.vars.generators.zerotier.files.zerotier-ip.value}]";
networking.interfaces.enx00e04c106368.useDHCP = true; # recovery
+3 -17
View File
@@ -9,13 +9,6 @@ let
in
{
clan.core.settings.machine.description = "VM machine that host Inventree system for Glom";
imports = [
inputs.self.nixosModules.inventree
];
nixpkgs.overlays = [
inputs.self.overlays.packagesOverlay
];
nixpkgs.hostPlatform = {
system = "x86_64-linux";
@@ -82,19 +75,12 @@ in
services.inventree = {
enable = true;
hostName = "${domain}";
config.site_url = "https://${config.services.inventree.hostName}";
inherit domain;
secretKeyFile = config.clan.core.vars.generators.inventree.files.secret-key.path;
config.oidc_private_key_file = config.clan.core.vars.generators.inventree.files.oidc-key.path;
config.adminPasswordFile = config.clan.core.vars.generators.inventree.files.admin-password.path;
adminPasswordFile = config.clan.core.vars.generators.inventree.files.admin-password.path;
settings.INVENTREE_SITE_URL = "https://${domain}";
};
# services.nginx.virtualHosts."${domain}" = {
# forceSSL = true;
# sslCertificate = config.clan.core.vars.generators.nginx.files.sslCert.path;
# sslCertificateKey = config.clan.core.vars.generators.nginx.files.sslKey.path;
# };
system.stateVersion = "25.11";
clan.core.sops.defaultGroups = [ "admins" ];
}
-1
View File
@@ -9,7 +9,6 @@
clan.core.settings.machine.description = "A Hetzner VPS machine own by Alex.";
clan.core.sops.defaultGroups = [ "admins" ];
clan.core.networking.targetHost = "root@[${config.clan.core.vars.generators.zerotier.files.zerotier-ip.value}]";
clan.core.vars.generators.acme = {
share = true;
-11
View File
@@ -1,18 +1,7 @@
{ config, ... }:
{
imports = [
(import ../../lib/auto-accept-zerotier-members.nix {
memberIds = [
"dbe44c0287" # Alex-gateway
"b0e0b84fd3" # Alex
"2bd36db8cc" # kurogeek-thinkpad
];
})
];
system.stateVersion = "25.11";
clan.core.sops.defaultGroups = [ "admins" ];
clan.core.networking.targetHost = "root@[${config.clan.core.vars.generators.zerotier.files.zerotier-ip.value}]";
clan.core.settings.machine.description = "Zima board computer for testing in B4L";
}
-107
View File
@@ -1,107 +0,0 @@
{
inputs,
pkgs,
config,
...
}:
let
sitename = "test.newedge.house";
in
{
clan.core.settings.machine.description = "VM machine for test things";
imports = [ inputs.frappix.nixosModules.x86_64-linux.frappix ];
nixpkgs.overlays = [
inputs.self.overlays.packagesOverlay
inputs.self.overlays.frappixFrappeOverlay
inputs.self.overlays.frappixLibsOverlay
inputs.self.overlays.frappixPythonOverlay
inputs.self.overlays.frappixToolsOverlay
];
clan.core.vars.generators.frappix = {
files = {
sslCertificate.secret = false;
sslCertificateKey = {
owner = "nginx";
group = "nginx";
secret = true;
};
adminPassword.secret = true;
};
runtimeInputs = with pkgs; [
openssl
xkcdpass
];
script = ''
openssl req -x509 -newkey rsa:4096 -keyout $out/sslCertificateKey -out $out/sslCertificate -sha256 -days 3650 -nodes -subj "/C=TH/ST=ChiangMai/L=ChiangMai/O=localhost/CN=localhost"
xkcdpass --numwords 4 --delimiter - --count 1 | tr -d "\n" > "$out"/adminPassword
'';
};
services.frappe = {
enable = true;
project = "glomerp";
gunicorn_workers = 2;
adminPassword = config.clan.core.vars.generators.frappix.files.adminPassword.path;
apps = [
pkgs.frappix.erpnext
pkgs.frappix.hrms
pkgs.erpnext_thailand
pkgs.thai_payroll
];
sites = {
"${sitename}" = {
domains = [ sitename ];
apps = [
"frappe"
"erpnext"
"hrms"
"erpnext_thailand"
"thai_payroll"
];
};
};
};
services.nginx.virtualHosts."${sitename}" = {
sslCertificate = config.clan.core.vars.generators.frappix.files.sslCertificate.path;
sslCertificateKey = config.clan.core.vars.generators.frappix.files.sslCertificateKey.path;
};
nixpkgs.hostPlatform = {
system = "x86_64-linux";
};
clan.core.vars.generators.nginx = {
files = {
sslCert = {
owner = "nginx";
group = "nginx";
secret = true;
};
sslKey = {
owner = "nginx";
group = "nginx";
secret = true;
};
};
runtimeInputs = [
pkgs.openssl
];
script = ''
openssl req -x509 -nodes -days 3650 -newkey rsa:2048 \
-keyout $out/sslKey \
-out $out/sslCert \
-subj "/CN=localhost"
'';
};
networking.firewall.allowedTCPPorts = [
80
443
];
system.stateVersion = "25.11";
clan.core.sops.defaultGroups = [ "admins" ];
}
File diff suppressed because it is too large Load Diff
+32
View File
@@ -0,0 +1,32 @@
{
system.stateVersion = "25.11";
nixpkgs.hostPlatform = {
system = "x86_64-linux";
};
clan.core.settings.name = "tangra";
clan.core.settings.machine.description =
"A Hetzner VPS machine own by Alex. This is a machine for poyfestival.com";
clan.core.sops.defaultGroups = [ "admins" ];
clan.core.vars.generators.acme = {
share = true;
files.email.secret = false;
prompts.email = {
type = "line";
description = "Email for ACME registeration";
};
script = ''
cat $prompts/email > $out/email
'';
};
users.users.nginx.extraGroups = [ "acme" ];
security.acme.acceptTerms = true;
imports = [ ];
}
@@ -1,6 +1,7 @@
{ ... }:
let
hashDisk = disk: "os-${builtins.substring 0 5 (builtins.hashString "sha256" disk)}";
os = "/dev/disk/by-id/scsi-0QEMU_QEMU_HARDDISK_drive-scsi0";
os = "/dev/disk/by-id/scsi-0QEMU_QEMU_HARDDISK_119349241";
in
{
File diff suppressed because it is too large Load Diff
-8
View File
@@ -10,17 +10,9 @@
(inputs.import-tree ./services)
(import ../../lib/auto-accept-zerotier-members.nix {
memberIds = [
"dbe44c0287" # Alex-gateway
"b0e0b84fd3" # Alex
"2bd36db8cc" # kurogeek-thinkpad
];
})
];
clan.core.sops.defaultGroups = [ "admins" ];
clan.core.networking.targetHost = "root@[${config.clan.core.vars.generators.zerotier.files.zerotier-ip.value}]";
clan.core.settings.machine.description = "Glom NAS";
+1
View File
@@ -173,6 +173,7 @@
base_domain = settings.base_domain;
override_local_dns = true;
nameservers.global = settings.nameservers;
magic_dns = false;
};
};
+19 -3
View File
@@ -66,8 +66,6 @@
"AutofillAddressEnabled" = false;
"AutofillCreditCardEnabled" = false;
"TranslateEnabled" = false;
"DnsOverHttpsMode" = "secure";
"DnsOverHttpsTemplates" = "https://dns.adguard-dns.com/dns-query";
};
};
@@ -81,14 +79,32 @@
inputs,
...
}:
let
dictionaries =
with pkgs;
(hunspellWithDicts (
with hunspellDicts;
[
en-us-large
th-th
]
));
in
{
imports = [ inputs.plasma-manager.homeModules.plasma-manager ];
systemd.user.sessionVariables = {
DICPATH = "${dictionaries}/share/hunspell";
};
home = {
homeDirectory = lib.mkForce "/home/${username}";
stateVersion = osConfig.system.stateVersion;
packages = with pkgs; [
libreoffice-fresh
libreoffice-qt6
dictionaries
element-desktop
signal-desktop
brave
@@ -5,5 +5,4 @@
services.displayManager.sddm.enable = lib.mkForce false;
services.displayManager.gdm.enable = true;
services.displayManager.gdm.wayland = true;
}
+168
View File
@@ -0,0 +1,168 @@
{ ... }:
{
_class = "clan.service";
manifest.name = "wordpress";
manifest.description = "wordpress with multi-tenant support and state of plugins and themes are allowed";
manifest.readme = "wordpress with multi-tenant support and state of plugins and themes are allowed";
manifest.categories = [ "System" ];
roles.server = {
description = "A default server role";
interface =
{ lib, ... }:
{
options = {
tenants = lib.mkOption {
type = with lib.types; listOf str;
default = [ "localhost" ];
description = "List of tenants website to host on the instance";
example = [ "example.com" ];
};
phpfpmOptions = lib.mkOption {
type = with lib.types; lines;
default = "";
description = "options appended to the PHP configuration file";
};
wpExtraConfig = lib.mkOption {
type = with lib.types; lines;
default = "";
description = "Any additional text to be appended to the wp-config.php";
};
};
};
perInstance =
{ settings, ... }:
{
nixosModule =
{
pkgs,
lib,
config,
...
}:
let
user = "wordpress";
mkSafeDBName = domain: "wp_${builtins.replaceStrings [ "." ] [ "_" ] domain}";
mkWordpressSite = domain: {
database = {
name = mkSafeDBName domain;
user = user;
};
package = wp-pkg domain;
extraConfig = ''
define('FS_METHOD', 'direct');
''
+ settings.wpExtraConfig;
themes = { };
};
stateDir = hostName: "/var/lib/wordpress/${hostName}";
wp-pkg =
hostName:
let
upStreamSrc = pkgs.wordpress;
in
pkgs.stdenv.mkDerivation {
pname = "wordpress-custom";
version = upStreamSrc.version;
src = upStreamSrc;
installPhase = ''
mkdir -p $out
cp -r * $out/
rm -rf $out/share/wordpress/wp-content/plugins
rm -rf $out/share/wordpress/wp-content/themes
# symlink uploads directory
ln -s "${stateDir hostName}"/wp-content/themes $out/share/wordpress/wp-content/themes
ln -s "${stateDir hostName}"/wp-content/plugins $out/share/wordpress/wp-content/plugins
ln -s "${stateDir hostName}"/wp-content/upgrade $out/share/wordpress/wp-content/upgrade
'';
};
webserver = config.services.${config.services.wordpress.webserver};
in
{
services.wordpress.webserver = "nginx";
services.wordpress.sites = builtins.listToAttrs (
map (tenant: {
name = tenant;
value = mkWordpressSite tenant;
}) settings.tenants
);
systemd.tmpfiles.rules = lib.flatten (
map (tenant: [
"d '${stateDir tenant}/wp-content' 0750 ${user} ${webserver.group} - -"
"d '${stateDir tenant}/wp-content/themes' 0750 ${user} ${webserver.group} - -"
"Z '${stateDir tenant}/wp-content/themes' 0750 ${user} ${webserver.group} - -"
"d '${stateDir tenant}/wp-content/plugins' 0750 ${user} ${webserver.group} - -"
"Z '${stateDir tenant}/wp-content/plugins' 0750 ${user} ${webserver.group} - -"
"d '${stateDir tenant}/wp-content/upgrade' 0750 ${user} ${webserver.group} - -"
"Z '${stateDir tenant}/wp-content/upgrade' 0750 ${user} ${webserver.group} - -"
]) settings.tenants
);
networking.firewall.allowedTCPPorts = [
80
443
];
services.phpfpm.pools = builtins.listToAttrs (
map (
tenant: lib.nameValuePair "wordpress-${tenant}" { phpOptions = settings.phpfpmOptions; }
) settings.tenants
);
security.acme.acceptTerms = true;
users.users.nginx.extraGroups = [ "acme" ];
security.acme.certs = lib.listToAttrs (
map (
tenant:
(lib.nameValuePair tenant {
email = config.clan.core.vars.generators.acme.files.email.value;
webroot = "/var/lib/acme/acme-challenge/${tenant}";
})
) settings.tenants
);
services.nginx.clientMaxBodySize = "128m";
services.nginx.virtualHosts = lib.listToAttrs (
map (
tenant:
(lib.nameValuePair tenant {
forceSSL = true;
useACMEHost = tenant;
acmeRoot = config.security.acme.certs.${tenant}.webroot;
})
) settings.tenants
);
clan.core.vars.generators.acme = {
share = true;
files.email.secret = false;
prompts.email = {
type = "line";
description = "Email for ACME registeration";
};
script = ''
cat $prompts/email > $out/email
'';
};
};
};
};
}
+19
View File
@@ -0,0 +1,19 @@
{ self, inputs, ... }:
let
module = ./default.nix;
in
{
clan.modules = {
wordpress = module;
};
perSystem =
{ ... }:
{
clan.nixosTests.service-wordpress = {
imports = [ ./tests/vm/default.nix ];
_module.args = { inherit self inputs; };
clan.modules."@clan/wordpress" = module;
};
};
}
@@ -0,0 +1,59 @@
{
self,
config,
lib,
hostPkgs,
...
}:
{
name = "service-wordpress";
result.update-vars =
let
relativeDir = lib.removePrefix "${self}/" (toString config.clan.directory);
in
hostPkgs.writeShellScriptBin "update-vars" ''
set -x
export PRJ_ROOT=$(git rev-parse --show-toplevel)
${
self.inputs.clan-core.packages.${hostPkgs.system}.clan-cli
}/bin/clan-generate-test-vars $PRJ_ROOT/${relativeDir} ${config.name}
'';
clan = {
test.useContainers = false;
directory = ./.;
inventory = {
machines.server = { };
instances = {
wordpress-test = {
module.name = "@clan/wordpress";
module.input = "self";
roles.server.machines."server".settings = {
tenants = [
"localhost"
"site2.localhost"
];
};
};
};
};
};
nodes = {
server = { };
};
testScript = ''
start_all()
server.wait_for_unit("phpfpm-wordpress-localhost.service")
server.wait_for_unit("phpfpm-wordpress-site2.localhost.service")
server.succeed("systemctl status phpfpm-wordpress-localhost.service")
server.succeed("systemctl status phpfpm-wordpress-site2.localhost.service")
server.wait_for_open_port(80)
server.succeed("curl -H \"Host: localhost\" http://127.0.0.1:80 ")
server.succeed("curl -H \"Host: site2.localhost\" http://127.0.0.1:80 ")
'';
}
@@ -0,0 +1,4 @@
{
"publickey": "age1qm0p4vf9jvcnn43s6l4prk8zn6cx0ep9gzvevxecv729xz540v8qa742eg",
"type": "age"
}
@@ -0,0 +1 @@
fake_line_value
-5
View File
@@ -1,5 +0,0 @@
{
flake.nixosModules = {
inventree = import ../nixos/inventree;
};
}
-334
View File
@@ -1,334 +0,0 @@
{
lib,
config,
pkgs,
...
}:
let
inherit (lib)
mkEnableOption
mkOption
types
mkIf
;
configFormat = pkgs.formats.json { };
cfg = config.services.inventree;
pkg = cfg.package;
configFile = "${cfg.dataDir}/config.json";
env = {
INVENTREE_CONFIG_FILE = configFile;
INVENTREE_SECRET_KEY_FILE = cfg.secretKeyFile;
INVENTREE_AUTO_UPDATE = "1";
INVENTREE_PLUGINS_ENABLED = "1";
INVENTREE_PLUGIN_NOINSTALL = "0";
INVENTREE_STATIC_ROOT = cfg.config.static_root;
INVENTREE_MEDIA_ROOT = cfg.config.media_root;
INVENTREE_BACKUP_DIR = cfg.config.backup_dir;
INVENTREE_OIDC_PRIVATE_KEY_FILE = cfg.config.oidc_private_key_file;
INVENTREE_DB_ENGINE = cfg.config.database.ENGINE;
INVENTREE_DB_NAME = cfg.config.database.NAME;
INVENTREE_DB_HOST = cfg.config.database.HOST;
INVENTREE_DB_USER = "inventree";
INVENTREE_ADMIN_USER = cfg.config.adminUser;
INVENTREE_ADMIN_PASSWORD_FILE = cfg.config.adminPasswordFile;
INVENTREE_USE_X_FORWARDED_HOST = "1";
INVENTREE_CORS_ORIGIN_ALLOW_ALL = "1";
INVENTREE_FRONTEND_SETTINGS = ''{"mobile_mode":"allow-always"}'';
INVENTREE_SITE_URL = cfg.config.site_url;
PYTHONPATH = pkg.pythonPath;
};
inventree-invoke = pkgs.writeShellApplication {
name = "inventree-invoke";
text = ''
export INVENTREE_CONFIG_FILE=${configFile}
export INVENTREE_SECRET_KEY_FILE=${cfg.secretKeyFile}
export PYTHONPATH=${pkg.pythonPath}
exec -a "$0" ${pkgs.python3Packages.invoke}/bin/invoke -r ${cfg.package}/opt/inventree "$@"
'';
};
in
{
options.services.inventree = {
enable = mkEnableOption "InvenTree parts manager";
package = lib.mkOption {
type = types.package;
default = pkgs.inventree;
description = ''
InvenTree package to use
'';
};
hostName = mkOption {
type = types.str;
description = "FQDN for the InvenTree instance.";
};
dataDir = mkOption {
type = types.path;
default = "/var/lib/inventree";
example = "/var/lib/inventree";
description = ''
The default path for all inventree data.
'';
};
secretKeyFile = mkOption {
type = types.path;
default = "${cfg.dataDir}/secret_key.txt";
description = ''
Path to a file containing the secret key
'';
};
config = mkOption {
type = types.submodule ({
freeformType = configFormat.type;
options = {
adminUser = mkOption {
type = types.str;
default = "admin";
};
adminPasswordFile = mkOption {
type = types.path;
description = "Path to password file for user `admin`";
};
site_url = mkOption {
type = types.str;
default = "https://${cfg.hostName}";
};
static_root = mkOption {
type = types.path;
default = "${cfg.dataDir}/static";
description = ''
Static file storage
'';
};
media_root = mkOption {
type = types.path;
default = "${cfg.dataDir}/media_root";
description = "Media root directory";
};
backup_dir = mkOption {
type = types.path;
default = "${cfg.dataDir}/backups";
description = "Backup directory";
};
oidc_private_key_file = mkOption {
type = types.path;
default = "${cfg.dataDir}/oidc.key";
};
};
});
default = { };
description = ''
Config options, see https://docs.inventree.org/en/stable/start/config/
for details
'';
};
serverStartTimeout = mkOption {
type = types.str;
default = "10min";
description = ''
TimeoutStartSec for the server systemd service.
See https://www.freedesktop.org/software/systemd/man/latest/systemd.service.html#TimeoutStartSec=
for more details
'';
};
serverStopTimeout = mkOption {
type = types.str;
default = "5min";
description = ''
TimeoutStopSec for the server systemd service.
See https://www.freedesktop.org/software/systemd/man/latest/systemd.service.html#TimeoutStopSec=
for more details
'';
};
};
config = mkIf cfg.enable {
environment.systemPackages = [ inventree-invoke ];
systemd.tmpfiles.rules = (
map (dir: "d ${dir} 0755 inventree inventree") [
"${cfg.dataDir}"
"${cfg.dataDir}/static"
"${cfg.dataDir}/media_root"
"${cfg.dataDir}/backups"
]
);
services.inventree.config = {
plugins_enabled = false;
plugin_file = "${cfg.dataDir}/plugins.txt";
plugin_dir = "${cfg.dataDir}/plugins";
database = {
ENGINE = "postgresql";
NAME = "inventree";
HOST = "/run/postgresql";
};
};
services.postgresql = {
enable = true;
ensureDatabases = [ "inventree" ];
ensureUsers = [
{
name = "inventree";
ensureDBOwnership = true;
}
];
};
users.users.inventree = {
group = "inventree";
isSystemUser = true;
description = "InvenTree daemon user";
};
users.groups.inventree = { };
services.nginx.enable = true;
services.nginx.virtualHosts.${cfg.hostName} = {
locations =
let
unixPath = config.systemd.sockets.inventree-gunicorn.socketConfig.ListenStream;
in
{
"/" = {
extraConfig = ''
client_max_body_size 100M;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
'';
proxyPass = "http://unix:${unixPath}";
};
"/static/" = {
alias = "${cfg.config.static_root}/";
extraConfig = ''
expires 30d;
'';
};
"/media/" = {
alias = "${cfg.config.media_root}/";
extraConfig = ''
auth_request /auth;
'';
};
"/auth" = {
extraConfig = ''
internal;
'';
proxyPass = "http://unix:${unixPath}:/auth/";
};
};
};
systemd.targets.inventree = {
description = "Target for all InvenTree services";
wantedBy = [ "multi-user.target" ];
wants = [ "network-online.target" ];
after = [ "network-online.target" ];
};
systemd.services.inventree-config = {
description = "Inventree config generation";
wantedBy = [ "inventree.target" ];
partOf = [ "inventree.target" ];
before = [
"inventree-static.service"
"inventree-gunicorn.service"
"inventree-qcluster.service"
];
serviceConfig = {
# User = "root";
# Group = "root";
User = "inventree";
Group = "inventree";
Type = "oneshot";
RemainAfterExit = true;
PrivateTmp = true;
};
environment = env;
script = ''
set -euo pipefail
umask u=rwx,g=,o=
# chown inventree:inventree ${configFile}
${pkg}/opt/inventree/src/backend/InvenTree/manage.py migrate
'';
};
systemd.services.inventree-static = {
description = "InvenTree static migration";
wantedBy = [ "inventree.target" ];
partOf = [ "inventree.target" ];
before = [ "inventree-gunicorn.service" ];
environment = env;
serviceConfig = {
User = "inventree";
Group = "inventree";
StateDirectory = "inventree";
#RuntimeDirectory = "inventree";
PrivateTmp = true;
ExecStart = ''
${pkg}/opt/inventree/src/backend/InvenTree/manage.py collectstatic --no-input
'';
};
};
systemd.services.inventree-gunicorn = {
description = "InvenTree Gunicorn server";
requiredBy = [ "inventree.target" ];
partOf = [ "inventree.target" ];
#wantedBy = [ "inventree.target" ];
environment = env;
serviceConfig = {
User = "inventree";
Group = "inventree";
StateDirectory = "inventree";
#RuntimeDirectory = "inventree";
PrivateTmp = true;
ExecStart = ''
${pkg.gunicorn}/bin/gunicorn InvenTree.wsgi \
--pythonpath ${pkg}/opt/inventree/src/backend/InvenTree
'';
};
};
systemd.sockets.inventree-gunicorn = {
wantedBy = [ "sockets.target" ];
partOf = [ "inventree.target" ];
socketConfig.ListenStream = "/run/inventree/gunicorn.socket";
};
systemd.services.inventree-qcluster = {
description = "InvenTree qcluster server";
requiredBy = [ "inventree.target" ];
wantedBy = [ "inventree.target" ];
partOf = [ "inventree.target" ];
environment = env;
serviceConfig = {
User = "inventree";
Group = "inventree";
StateDirectory = "inventree";
#RuntimeDirectory = "inventree";
PrivateTmp = true;
ExecStart = ''
${pkg}/opt/inventree/src/backend/InvenTree/manage.py qcluster
'';
};
};
};
}
+2 -2
View File
@@ -173,10 +173,10 @@ in
serviceConfig = {
User = cfg.user;
WorkingDirectory = "${file-uploader}";
ExecStart = "${lib.getExe pkgs.nodejs_20} ${file-uploader}/src/be/index.js";
ExecStart = "${lib.getExe pkgs.nodejs} ${file-uploader}/src/be/index.js";
Restart = "on-failure";
};
path = [ pkgs.nodejs_20 ];
path = [ pkgs.nodejs ];
};
environment.systemPackages = [
-37
View File
@@ -1,37 +0,0 @@
{
buildPythonPackage,
pythonRelaxDepsHook,
flit-core,
fetchFromGitHub,
mkAssets,
pandas,
}:
buildPythonPackage (finalAttrs: {
pname = "erpnext_thailand";
version = "1.0.2";
format = "pyproject";
src =
let
erpnext_thailand_src = fetchFromGitHub {
owner = "ecosoft-frappe";
repo = "erpnext_thailand";
rev = "69ebd41b6e616a96677f79f57019a4bcd310b638";
hash = "sha256-72acMrJQKEQKp/u3gcUSBZ6mYbAKCD240j2zMARwUEc=";
};
in
mkAssets {
src = erpnext_thailand_src;
inherit (finalAttrs) pname version;
yarnHash = "";
};
dependencies = [ pandas ];
nativeBuildInputs = [
pythonRelaxDepsHook
flit-core
];
})
-37
View File
@@ -1,37 +0,0 @@
{
buildPythonPackage,
pythonRelaxDepsHook,
flit-core,
fetchFromGitHub,
mkAssets,
pandas,
}:
buildPythonPackage (finalAttrs: {
pname = "thai_payroll";
version = "0.0.1";
format = "pyproject";
src =
let
erpnext_thailand_src = fetchFromGitHub {
owner = "ecosoft-frappe";
repo = "thai_payroll";
rev = "c3ceefb0fc6f29ed05c1086bb6dfb4eeaf59f779";
hash = "sha256-tYJU6EmIqa8hZ1eNaOVvJUjg8S+ANqZVAqWnnjY/2oY=";
};
in
mkAssets {
src = erpnext_thailand_src;
inherit (finalAttrs) pname version;
yarnHash = "";
};
dependencies = [ pandas ];
nativeBuildInputs = [
pythonRelaxDepsHook
flit-core
];
})
+1 -1
View File
@@ -17,7 +17,7 @@ buildNpmPackage {
version = "1.0.0";
nativeBuildInputs = with pkgs; [
nodejs_20
nodejs
breakpointHook
];
-161
View File
@@ -1,161 +0,0 @@
{
stdenvNoCC,
python3,
fetchFromGitHub,
fetchYarnDeps,
yarnConfigHook,
nodejs,
}:
let
version = "1.1.0";
src = fetchFromGitHub {
owner = "inventree";
repo = "InvenTree";
tag = "${version}";
hash = "sha256-GAATo5zkkNCes9fCQsYUsZ9auhgYEUnevN4obWj3ZRA=";
};
frontend = stdenvNoCC.mkDerivation {
name = "inventree-frontend";
inherit version src;
yarnOfflineCache = fetchYarnDeps {
yarnLock = "${src}/src/frontend/yarn.lock";
hash = "sha256-Ijbkx+INZgsvMhkzo8h/FUY75W3UHnKAdUjQRD8kJZw=";
};
nativeBuildInputs = [
yarnConfigHook
nodejs
];
patchPhase = ''
runHook prePatch
cd src/frontend
runHook postPatch
'';
buildPhase = ''
echo "Running lingui"
./node_modules/.bin/lingui compile --typescript
echo building lib
./node_modules/.bin/tsc --p ./tsconfig.lib.json
./node_modules/.bin/vite --config vite.lib.config.ts build
echo "Running tsc"
./node_modules/.bin/tsc
echo "Running vite"
./node_modules/.bin/vite build --emptyOutDir --outDir $out
'';
};
in
python3.pkgs.buildPythonApplication rec {
pname = "InvenTree";
inherit version src;
format = "other";
dependencies =
with python3.pkgs;
[
coreapi
cryptography
distutils
dj-rest-auth
django
django-allauth
django-allauth.optional-dependencies.openid
django-allauth.optional-dependencies.mfa
django-allauth.optional-dependencies.socialaccount
django-cleanup
django-cors-headers
django-dbbackup
django-error-report-2
django-filter
django-flags
django-formtools
django-ical
django-js-asset
django-maintenance-mode
django-markdownify
django-money
django-mptt
django-mailbox
django-anymail
django-redis
django-oauth-toolkit
django-otp
django-q-sentry
django-q2
django-redis
django-sesame
django-sql-utils
django-structlog
django-stdimage
django-taggit
django-user-sessions
django-weasyprint
djangorestframework
djangorestframework-simplejwt
djangorestframework-simplejwt.optional-dependencies.crypto
django-xforwardedfor-middleware
django-storages
drf-spectacular
dulwich
feedparser
gunicorn
pdf2image
pillow
pint
pip-licenses
pypdf
python-barcode
python-barcode.optional-dependencies.images
python-dotenv
pyyaml
qrcode
qrcode.optional-dependencies.pil
rapidfuzz
sentry-sdk
tablib
tablib.optional-dependencies.xls
tablib.optional-dependencies.xlsx
tablib.optional-dependencies.yaml
weasyprint
whitenoise
psycopg2
fido2
opentelemetry-api
opentelemetry-sdk
opentelemetry-exporter-otlp
opentelemetry-instrumentation-django
opentelemetry-instrumentation-requests
opentelemetry-instrumentation-redis
opentelemetry-instrumentation-sqlite3
opentelemetry-instrumentation-system-metrics
opentelemetry-instrumentation-wsgi
]
++ django-anymail.optional-dependencies.amazon-ses;
installPhase = ''
substituteInPlace src/backend/InvenTree/InvenTree/settings.py --replace-fail "django_slowtests.testrunner.DiscoverSlowestTestsRunner" "django.test.runner.DiscoverRunner"
mkdir -p $out/opt/inventree
cp -r . $out/opt/inventree
echo "Installing frontend"
mkdir -p $out/opt/inventree/src/backend/InvenTree/web/static/web
cp -r ${frontend}/* $out/opt/inventree/src/backend/InvenTree/web/static/web/
cp -r ${frontend}/.* $out/opt/inventree/src/backend/InvenTree/web/static/web/
'';
passthru = {
pythonPath = python3.pkgs.makePythonPath dependencies;
gunicorn = python3.pkgs.gunicorn;
inherit frontend;
};
}
-26
View File
@@ -2,30 +2,4 @@ final: prev: {
think-gtcm = final.callPackage ./think-gtcm.nix { };
think-backend-gtcm = final.callPackage ./think-backend-gtcm.nix { php = final.php83; };
gtcm-file-uploader = final.callPackage ./gtcm-file-uploader.nix { };
pythonPackagesExtensions = prev.pythonPackagesExtensions ++ [
(py-final: py-prev: {
django-dbbackup = py-final.callPackage ./python/django-dbbackup { };
django-error-report-2 = py-final.callPackage ./python/django-error-report-2 { };
django-flags = py-final.callPackage ./python/django-flags { };
django-ical = py-final.callPackage ./python/django-ical { };
django-markdownify = py-final.callPackage ./python/django-markdownify { };
django-money = py-final.callPackage ./python/django-money { };
django-q-sentry = py-final.callPackage ./python/django-q-sentry { };
django-recurrence = py-final.callPackage ./python/django-recurrence { };
django-slowtests = py-final.callPackage ./python/django-slowtests { };
django-structlog = py-final.callPackage ./python/django-structlog { };
django-stdimage = py-final.callPackage ./python/django-stdimage { };
django-user-sessions = py-final.callPackage ./python/django-user-sessions { };
django-weasyprint = py-final.callPackage ./python/django-weasyprint { };
django-xforwardedfor-middleware = py-final.callPackage ./python/django-xforwardedfor-middleware { };
pip-licenses = py-final.callPackage ./python/pip-licenses { };
py-moneyed = py-final.callPackage ./python/py-moneyed { };
pytest-pycodestyle = py-final.callPackage ./python/pytest-codestyle { };
sentry-sdk = py-final.callPackage ./python/sentry-sdk { };
})
];
inventree = final.callPackage ./inventree { python3 = final.python312; };
erpnext_thailand = final.python3.pkgs.callPackage ./frappe/erpnext_thailand/default.nix { };
thai_payroll = final.python3.pkgs.callPackage ./frappe/thai_payroll/default.nix { };
}
-42
View File
@@ -1,42 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
wheel,
django,
pytz,
}:
buildPythonPackage rec {
pname = "django-dbbackup";
version = "4.2.1";
pyproject = true;
src = fetchFromGitHub {
owner = "jazzband";
repo = "django-dbbackup";
rev = version;
hash = "sha256-GD+f9mbImGPQ6MOUK3ftHqiGv7TT39jNQsFvd0dnnWU=";
};
build-system = [
setuptools
wheel
];
dependencies = [
django
pytz
];
pythonImportsCheck = [ "dbbackup" ];
meta = {
description = "Management commands to help backup and restore your project database and media files";
homepage = "https://github.com/jazzband/django-dbbackup";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ ];
mainProgram = "django-dbbackup";
};
}
@@ -1,37 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
wheel,
django,
}:
buildPythonPackage rec {
pname = "django-error-report-2";
version = "0.4.2";
pyproject = true;
src = fetchFromGitHub {
owner = "matmair";
repo = "django-error-report-2";
rev = version;
hash = "sha256-ZCaslqgruJxM8345/jSlZGruM+27H9hvwL0wtPkUzc0=";
};
build-system = [
setuptools
wheel
];
dependencies = [ django ];
pythonImportsCheck = [ "error_report" ];
meta = {
description = "Log/View Django server errors";
homepage = "https://github.com/matmair/django-error-report-2";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ ];
};
}
-37
View File
@@ -1,37 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
wheel,
django,
}:
buildPythonPackage rec {
pname = "django-flags";
version = "5.0.13";
pyproject = true;
src = fetchFromGitHub {
owner = "cfpb";
repo = "django-flags";
rev = version;
hash = "sha256-WPMfFYoP6WaVzZmVtqAz4LlY761aCRyPhd5npc8bOOI=";
};
build-system = [
setuptools
wheel
];
dependencies = [ django ];
pythonImportsCheck = [ "flags" ];
meta = {
description = "Feature flags for Django projects";
homepage = "https://github.com/cfpb/django-flags";
license = lib.licenses.cc0;
maintainers = with lib.maintainers; [ ];
};
}
-46
View File
@@ -1,46 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
setuptools-scm,
wheel,
django,
django-recurrence,
icalendar,
}:
buildPythonPackage rec {
pname = "django-ical";
version = "1.9.2";
pyproject = true;
src = fetchFromGitHub {
owner = "jazzband";
repo = "django-ical";
rev = version;
hash = "sha256-DUe0loayGcUS7MTyLn+g0KBxbIY7VsaoQNHGSMbMI3U=";
};
build-system = [
setuptools
setuptools-scm
wheel
];
dependencies = [
django
django-recurrence
icalendar
];
pythonImportsCheck = [ "django_ical" ];
meta = {
description = "ICal feeds for Django based on Django's syndication feed framework";
homepage = "https://github.com/jazzband/django-ical";
changelog = "https://github.com/jazzband/django-ical/blob/${src.rev}/CHANGES.rst";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ ];
};
}
@@ -1,39 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
bleach,
django,
markdown,
}:
buildPythonPackage rec {
pname = "django-markdownify";
version = "0.9.5";
pyproject = true;
src = fetchFromGitHub {
owner = "erwinmatijsen";
repo = "django-markdownify";
rev = version;
hash = "sha256-KYU8p8NRD4EIS/KhOk9nvmXCf0RWEc+IFZ57YtsDSWE=";
};
build-system = [ setuptools ];
dependencies = [
bleach
django
markdown
];
pythonImportsCheck = [ "markdownify" ];
meta = {
description = "Markdown template filter for Django";
homepage = "https://github.com/erwinmatijsen/django-markdownify";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ ];
};
}
-41
View File
@@ -1,41 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
wheel,
django,
py-moneyed,
}:
buildPythonPackage rec {
pname = "django-money";
version = "3.2";
pyproject = true;
src = fetchFromGitHub {
owner = "django-money";
repo = "django-money";
rev = version;
hash = "sha256-eL26NsreUqtMJ26TmvmB53EJI4Sjs7qjFDnnt4N0vdI=";
};
build-system = [
setuptools
wheel
];
dependencies = [
django
py-moneyed
];
pythonImportsCheck = [ "djmoney" ];
meta = {
description = "Money fields for Django forms and models";
homepage = "https://github.com/django-money/django-money";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ ];
};
}
-37
View File
@@ -1,37 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
poetry-core,
setuptools,
sentry-sdk,
}:
buildPythonPackage rec {
pname = "django-q-sentry";
version = "0.1.6";
pyproject = true;
src = fetchFromGitHub {
owner = "danielwelch";
repo = "django-q-sentry";
rev = "d3a43a90c82734244d5ebf3295652223053f1354";
hash = "sha256-3C7A+X18c7p19HWD/uPRtAMf29VjmrfXXh2z5PPOREY=";
};
build-system = [
poetry-core
setuptools
];
dependencies = [ sentry-sdk ];
pythonImportsCheck = [ "django_q_sentry" ];
meta = {
description = "Bringing Sentry error tracking to Django Q";
homepage = "https://github.com/danielwelch/django-q-sentry";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ ];
};
}
-56
View File
@@ -1,56 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
pdm-backend,
django,
flake8,
pytest,
pytest-cov,
pytest-django,
pytest-sugar,
python-dateutil,
sphinx,
sphinx-rtd-theme,
tox,
}:
buildPythonPackage rec {
pname = "django-recurrence";
version = "1.12.1";
pyproject = true;
src = fetchFromGitHub {
owner = "jazzband";
repo = "django-recurrence";
rev = version;
hash = "sha256-Q33zyMa1wI13RNLxynGAJHlagahpnFHCmZbHp0aPC/w=";
};
build-system = [ pdm-backend ];
dependencies = [
django
flake8
pytest
pytest-cov
pytest-django
pytest-sugar
python-dateutil
sphinx
sphinx-rtd-theme
tox
];
pythonRelaxDeps = true;
pythonImportsCheck = [ "recurrence" ];
meta = {
description = "Utility for working with recurring dates in Django";
homepage = "https://github.com/django-recurrence/django-recurrence";
changelog = "https://github.com/django-recurrence/django-recurrence/blob/${src.rev}/CHANGES.rst";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ ];
};
}
-38
View File
@@ -1,38 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
wheel,
django,
}:
buildPythonPackage rec {
pname = "django-slowtests";
version = "1.1.1";
pyproject = true;
src = fetchFromGitHub {
owner = "realpython";
repo = "django-slow-tests";
rev = version;
hash = "sha256-gW9AZiMpXJp1m2X1cbm6GdZ9cH+TFqjNLQJFmsvGjB0=";
};
build-system = [
setuptools
wheel
];
dependencies = [ django ];
pythonImportsCheck = [ "django_slowtests" ];
meta = {
description = "Locate your slowest tests";
homepage = "https://github.com/realpython/django-slow-tests";
changelog = "https://github.com/realpython/django-slow-tests/blob/${src.rev}/CHANGELOG.rst";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ ];
};
}
-51
View File
@@ -1,51 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
setuptools-scm,
wheel,
django,
pillow,
gettext,
}:
buildPythonPackage rec {
pname = "django-stdimage";
version = "6.0.2";
pyproject = true;
src = fetchFromGitHub {
owner = "codingjoe";
repo = "django-stdimage";
rev = version;
hash = "sha256-uwVU3Huc5fitAweShJjcMW//GBeIpJcxqKKLGo/EdIs=";
};
build-system = [
setuptools
setuptools-scm
wheel
];
dependencies = [
django
pillow
];
nativeBuildInputs = [ gettext ];
preBuild = ''
echo "bla bla"
echo $PATH
'';
pythonImportsCheck = [ "stdimage" ];
meta = {
description = "";
homepage = "https://github.com/codingjoe/django-stdimage";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ ];
};
}
-48
View File
@@ -1,48 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
asgiref,
django,
django-ipware,
structlog,
celery,
django-extensions,
}:
buildPythonPackage rec {
pname = "django-structlog";
version = "9.1.1";
pyproject = true;
src = fetchFromGitHub {
owner = "jrobichaud";
repo = "django-structlog";
rev = version;
hash = "sha256-SEigOdlXZtfLAgRgGkv/eDNDAiiHd7YthRJ/H6e1v5U=";
};
build-system = [ setuptools ];
dependencies = [
asgiref
django
django-ipware
structlog
];
optional-dependencies = {
celery = [ celery ];
commands = [ django-extensions ];
};
pythonImportsCheck = [ "django_structlog" ];
meta = {
description = "";
homepage = "https://github.com/jrobichaud/django-structlog";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ ];
};
}
@@ -1,39 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
setuptools-scm,
wheel,
django,
}:
buildPythonPackage rec {
pname = "django-user-sessions";
version = "2.0.0";
pyproject = true;
src = fetchFromGitHub {
owner = "jazzband";
repo = "django-user-sessions";
rev = version;
hash = "sha256-Wexy6G2pZ8LTnqtJkBZIePV7qhQW8gu/mKiQfZtgf/o=";
};
build-system = [
setuptools
setuptools-scm
wheel
];
dependencies = [ django ];
pythonImportsCheck = [ "user_sessions" ];
meta = {
description = "Extend Django sessions with a foreign key back to the user, allowing enumerating all user's sessions";
homepage = "http://github.com/jazzband/django-user-sessions";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ ];
};
}
-38
View File
@@ -1,38 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
django,
weasyprint,
}:
buildPythonPackage rec {
pname = "django-weasyprint";
version = "2.4.0";
pyproject = true;
src = fetchFromGitHub {
owner = "fdemmer";
repo = "django-weasyprint";
rev = "v${version}";
hash = "sha256-eSh1p+5MyYb6GIEgSdlFxPzVCenlkwSCTkTzgKjezIg=";
};
build-system = [ setuptools ];
dependencies = [
django
weasyprint
];
pythonImportsCheck = [ "django_weasyprint" ];
meta = {
description = "A Django class-based view generating PDF resposes using WeasyPrint";
homepage = "https://github.com/fdemmer/django-weasyprint";
changelog = "https://github.com/fdemmer/django-weasyprint/blob/${src.rev}/CHANGELOG.md";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ ];
};
}
@@ -1,37 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
wheel,
django,
}:
buildPythonPackage rec {
pname = "django-xforwardedfor-middleware";
version = "2.0";
pyproject = true;
src = fetchFromGitHub {
owner = "allo-";
repo = "django-xforwardedfor-middleware";
rev = "v${version}";
hash = "sha256-dDXSb17kXOSeIgY6wid1QFHhUjrapasWgCEb/El51eA=";
};
build-system = [
setuptools
wheel
];
dependencies = [ django ];
pythonImportsCheck = [ "x_forwarded_for" ];
meta = {
description = "Use the X-Forwarded-For header to get the real ip of a request";
homepage = "https://github.com/allo-/django-xforwardedfor-middleware";
license = lib.licenses.publicDomain;
maintainers = with lib.maintainers; [ ];
};
}
-74
View File
@@ -1,74 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
setuptools-scm,
wheel,
prettytable,
tomli,
autopep8,
black,
docutils,
isort,
mypy,
pip-tools,
pypandoc,
pytest-cov,
pytest-pycodestyle,
pytestrunner,
tomli-w,
twine,
}:
buildPythonPackage rec {
pname = "pip-licenses";
version = "5.0.0";
pyproject = true;
src = fetchFromGitHub {
owner = "raimon49";
repo = "pip-licenses";
rev = "v-${version}";
hash = "sha256-6xw6BCuXSzNcwkpHaEFC5UPpubPUwhx/pg6vZq2er7A=";
};
build-system = [
setuptools
setuptools-scm
wheel
];
dependencies = [
prettytable
tomli
];
optional-dependencies = {
dev = [
autopep8
black
docutils
isort
mypy
pip-tools
pypandoc
pytest-cov
pytest-pycodestyle
pytestrunner
tomli-w
twine
wheel
];
};
pythonImportsCheck = [ "piplicenses" ];
meta = {
description = "Dump the license list of packages installed with pip";
homepage = "https://github.com/raimon49/pip-licenses";
changelog = "https://github.com/raimon49/pip-licenses/blob/${src.rev}/CHANGELOG.md";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ ];
};
}
-42
View File
@@ -1,42 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
wheel,
babel,
typing-extensions,
}:
buildPythonPackage rec {
pname = "py-moneyed";
version = "3.0";
pyproject = true;
src = fetchFromGitHub {
owner = "py-moneyed";
repo = "py-moneyed";
rev = "v${version}";
hash = "sha256-k0ZbLwog6TYxKDLZV7eH1Br8buMPfpOkgp+pMN/qdB8=";
};
build-system = [
setuptools
wheel
];
dependencies = [
babel
typing-extensions
];
pythonImportsCheck = [ "moneyed" ];
meta = {
description = "Provides Currency and Money classes for use in your Python code";
homepage = "http://github.com/py-moneyed/py-moneyed";
changelog = "https://github.com/py-moneyed/py-moneyed/blob/${src.rev}/CHANGES.rst";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ ];
};
}
-43
View File
@@ -1,43 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
wheel,
certifi,
urllib3,
}:
buildPythonPackage rec {
pname = "sentry-sdk";
version = "2.26.1";
pyproject = true;
src = fetchFromGitHub {
owner = "getsentry";
repo = "sentry-python";
rev = version;
hash = "sha256-Wl8yq2X9GuPcqaS93hkKXs2cDzz282Xceaai4NjbVZY=";
fetchSubmodules = true;
};
build-system = [
setuptools
wheel
];
dependencies = [
certifi
urllib3
];
pythonImportsCheck = [ "sentry_sdk" ];
meta = {
description = "The official Python SDK for Sentry.io";
homepage = "https://github.com/getsentry/sentry-python";
changelog = "https://github.com/getsentry/sentry-python/blob/${src.rev}/CHANGELOG.md";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ ];
};
}
-6
View File
@@ -1,6 +0,0 @@
[
{
"publickey": "age1rwjdv7w6c3pcjx3wctk9xekclml8zwtj39m4hfhsprrx5x2lqphq6tuham",
"type": "age"
}
]
+6
View File
@@ -0,0 +1,6 @@
[
{
"publickey": "age14pdszyzzu9lwzhxs7xz7k94knvgensay9qr4p6j9z8qnqnvqup8qpvk6ra",
"type": "age"
}
]
-46
View File
@@ -1,46 +0,0 @@
{
"data": "ENC[AES256_GCM,data:gsyH0BD1k8zqui8vSRCMROcBpoIccV6BivkPABMG/CySKbFBFBUJ5++rQ0TIYs6G3B2kaDf5X3eYGVL7en0xexrmX0azSEq18qw=,iv:n3fbfFW4zXsuk/Kj41B5gD6P4SNxpgv4xOGmNV3Cvuw=,tag:bOg16Mf+XLdCn5e0Ez4BEQ==,type:str]",
"sops": {
"age": [
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBWNlJzTlNqNkJIK1g2WTcv\nY2t2dzZOQXNodzRoSmxJZHFkdy9LR3I5eGlNCklFeFg4ZThXQkw4aGsvUGlsRVdY\nYVlDbVUxRHF6RGhVZTB6aktIdU5VeVUKLS0tIEZuNjJXTGVjMDlmc1dNdys2OW9Q\nL3JxaXUwMTIrSTFJSUppVGZBT3JXTEkKDLSRXTbGD4EOfS7VpFmYV1x9RCb+0O+o\nuViSHBKCgArHIgie+EHsgtX85TUXbhDqVGpfF72+/++Bry/Kz16Mlw==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age134vt63pjqpd0m7702fyn8vhdlzyj2deqc2q78sp9uw9052kxsgwq6d25ez"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBITVRGaDJVVEszQ05VbE05\nL1hqT0ljVit4azErN0gyNVIxZkxNVjBpTWp3CmNPbmJHVzVjb1d0VFpXNUhieElJ\nWEZYQjRQT0JCUTd6Z0hScnc1TUQwMHcKLS0tIC82aTNRTFRJemlsaktCdWg4eHVP\nZEtmTTRUWEJSQjhJZk9yeE1kZThUOTgKnO8Xl0s/ACOCrY3MG2Rh4Bi0K3lArKCs\nDmS5Q9fP1IfYrrA745JLBM5WwgALco51I9WEI72J/7SY+4RJ6eMp3A==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age17d4qt0n9edq57tgcqyk8eu5mrendl59yt6z2y3a4vkq7el8krqtq6lq28g"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIEZaVG56djhE\nN2dBbnpoM0hkZlIxdmoxdDhrOTVyWkliaVdsSnBOOEQwUmMgQVEgd0l6SlBCVW1v\neDl5N0lHYmVrajZzVzVTYjd4WVdNVjZoZVlkUEtmVXlMdyBIdmtoczF0dmhxL1py\nS1hsc0ErckdoVVB0bE02RGdCNW5raERXT1ZJMTkzNjRGNHd2T3ZSTVYrKzZlbEll\nVTZKc2JVN1B2SzRuNkpaekhwSWJQaFZVQQpYSjdEYUxqTzgwbnAzRlptRDFzdEVx\nV0ZpQWZocDFucVhQSyt5UnJpVjRjCi0tLSBQWER1Q1RzSzlDaHJldS9Dd0owdVVM\nMlpUZTNKYXdXTk1QMEE5YW1OUE1rCr5MMqhC+1c4he+RiJnl2OIOQOmiQvzZiLDD\nl41rVavmfF2Y1r7iDpr5EyX+wTg3MKBhImKF5JUP8xVyMvl8Y+E=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqpf43tgcfjm048lsqskvq34w2t4uvrm5qy6m2eg6zjj82ctca8wctgpczxvj0q4y6337uhvsxdh5j86k9h9ymautpvv2759ucwnef75ez7pa7fpkddklp40mxk2tedsp74359g0kefn5rsq0x0yss6cu4yd0h06up0rp08t6yc4l0hfa9y8jn5fkx6nk0hjhz06ykwv0fyxe7z42q683jy0"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIExBejlnT01O\nblNOZEpDckdqWlJ4NWR0aVNWNzgrVXdSanU1L0RKdFRBWDggQVEgZlFBRFNyWkNS\nRDJQaUJ3WWowTEcwaTk0Z0tiRHpQNmhkMTJZUlZHbHlEMCBtMzE5bzVQb1JmZkpy\nY0orbEs2RzBSVXA3UmZYZkRRanNnc2pHSnJjK1pLVmZOWGR4d0IwZjh1YXlkakRx\nTm5EMXR3ZjNHWGl0Ty8rcHpQbkcxRTZmZwpSYjVNdnBvMFNhQzZZZ1hRRnhRTTZY\nbFBjbllyTmppS1hhL04vS1ZwcWlVCi0tLSB6Q3ovWGNnY1YwakxOcFlKU1ZhOTRK\ncFg5eWlPSkkwdlZXMCtIUlRocE1JChVA7BG/70m6M2pzM/BJtPlYVx/xNBOKGdaV\no9P5aju2PyZ12EIt7+tiNWTHvKRgT7yL0PnmyqZU2TOOC/g2JUU=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqprw0vfpc8wzsu78quc777kmee54ln6nnsjrnrhl7nr33eh4kvkksqp05qqxj4kgfzrmrugrsvg7skx6ghh3q9xc0x0agthtkvy25d9eq7eklta5wf7s30hexkuyl5546rdz9ffa5tawlp5yweqkgccntw0ny540n2am3cqw3luhxkfmrp63kwr6mwplhr9u26wll48x0n3k5f60c7hg9a3"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIFlGeHNJRlNV\nRTBJbTE1QUZKZ0hpbzhYWXZsbUlGbGcwSGZCNVk5QisvaUEgQVEgZUh4S2o1R2RE\nV0svbnErTmxodXE2bUxJK3lla2lvajB3OXVwZHJtcHU5dyBKU3I4WFJnK3BOQXl0\nZDh5NTB5ZFlteFJIM2FVTVp5cmNyRXZqL1V0c0l6L0tSb0c5ZU9jbmRXMTIwb2c1\nQjZsREgzWUxaOXBUd2pQK2NncDZuUmZkZwpuWEF6RTZkc2I2bEJVa2lEV3BOTURr\nV0NxL29aNVViMUprbVh6ZDZPTnJ3Ci0tLSBmU3V4TWxFV0dEc3Y4cFhsbG1ZM0R1\neUxOWHJOWWNSNU9EbGlqc1dHaS9BCmGIHjtt507spJhXy7WGyNQedPOcYv0CviWN\ne4WlBoZnd0gn8+Mt1OPkwLzlr8AwAjj6Xsw2YR5/fE/81rO5LiY=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqpyewum3q8dfcumfgec8nn958aec9f4q9aqy0k06kw5kq27d6fdqdgp0p7y4ru3n5xk90u747xevxa2af3v37e85j9g3axrmw5hdwdfh0wz22hut5vrafxsx26a7vh8fjwkymz3ramfgvvu4detztu075kmpr8l9ydqda0rnjwatdwmfgswg849p37astvld98s3nleeq575azlwc2hhpuh"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBRdEZqQ1FlMTlGdktIMW9U\nMTUwMHV4b2xNbkJ0dHF4N2JYREFsQ3dPaXhjCkRuZTZsWjJFQncybFJsVXp0WWJl\nLzV1SGE2d2d2Q1hteCtxbGJaTXJOZkEKLS0tIEN5ZzZlaVdnajhDL0g4a2lvRVFL\ndkpFN0xpRTFtRkk4YjhtaUFGY2Q5M3MKs1mPSVRRFm9ZP2tBf3cS5LZuDXplNTdB\nf8M4vQR+eKDLwwwGF//Zb1TzUp383EsXPZCzL/gheB3RykNAUbSZNA==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1hlzrpqqgndcthq5m5yj9egfgyet2fzrxwa6ynjzwx2r22uy6m3hqr3rd06"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBjNGI5WTZxMmNkSWFFRjNG\nMnFZKyt4ZlBZT2VvNkZ3RFdnSlhDZWZjckM0Ck0xY1BDK1gyRXNwQzFkcW10Z1lP\nYzB4Tld5VWpkTGRBYklIZTZla0JZUzQKLS0tIEpFQWFBWlFpdlhVS2p1QXB0T25a\nancrTWFiV2JJaFp2OHV0RmJsNjh6aXcKnp4Nbw7C7XmpjuF1qxXAat2OtXbVd3ph\nlR1Q6hH6hvq++2m2L3FYHxqLC7S8XiXlxVlJstZFnHZOG4kU2HUZLQ==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1sg0rvgyetdcqw7j2x983fh69kdkvqsngpe5x36e5920qa7fze3cqhj4wgx"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBzOTBRUHFEclpVZ3MwbjUz\nMkVrZG4yZ2FKTG4rb2tTU3N5UitxbTlyVzFVCi9JYTh2UXRJK0FENEozRS9VR3pJ\nNy80UUgvbDNrYmRQRmE0T3cyK3FpOUUKLS0tIFZQb1ZYM1ZYY0hBTy9pTFZzWk93\nbUlGSDNjKzZYOGNxakhKajJ6RjdtV0UKQ7xGhrPy1GOvePazcxNUskV1uLRXEN3N\n7DBzUqhpo2Me5nOIgcYT/YrT8drxWc4shNfpz7XxzciK+/goNvczig==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1swlyyk2rzvevqawyeekv75nx2dz34zpe3xqhkqme26gcgeavy4dqrfpcd8"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB0MWlGNG0wcjZhb3lJNXlV\nNU1uZVhNUzlBRGtGMWhjc1Zhc1BhclVGM3hFCk9FNkcxaXl1TEZ5dy9qRXNHbWVK\nQ3o1ckJCVG96UUJaNDMxNitFT0U1TnMKLS0tIGhaZ3NXL3M3WGd5M05sVHNyYlBh\nTUNuakMvM1JXbmNIUnJHRjVMb2NucjAKRF5fVTCr5Jix/JDd9D5wehZmPC1UJ+3W\nhKVhFgyhildxofU6+BHmQCBfJ/O8uBMC2Kxk6Ba439y5gWs5ULz0lg==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1vphy2sr6uw4ptsua3gh9khrm2cqyt65t46tusmt44z98qa7q6ymq6prrdl"
}
],
"lastmodified": "2026-05-26T03:25:37Z",
"mac": "ENC[AES256_GCM,data:S7nhnTGyvMxex5jG/bXxhQQJwJl3KRa8KaOVTH5CxH9cl7JI2z7WvekstJvCZdpaUxoNzBYIogXWtbXPziTbm8zVqMGL35c94KWjJ1pLxih0hncSIi8rs/9X0dGVl9fWGsDoQI8fgu8rjtHLpl+mxM3Mv/JPHC0cH6wiG12cR7I=,iv:ILymhUa+nrWQvyKvxOZ5kmpE57X2eG68wcLHF18DQJU=,tag:Z7MBh3Yzd5rPbRqGJlHQ4Q==,type:str]",
"version": "3.13.0"
}
}
+46
View File
@@ -0,0 +1,46 @@
{
"data": "ENC[AES256_GCM,data:H6zKr5xrPfHM7L1PAA3yHY2T9K6/IPfPshUncIldSW/9mMFMbLz0d4E+hp5IZCm50fLl5PHFOjIK5h390knrH3fz0zzmCgE3kn4=,iv:5XiZsewvqB8Z5v+0IDrdHl2YjrpwX9BVOg63U5ME6Zc=,tag:L1S/TgS3Rq8Pp5EC1VITgQ==,type:str]",
"sops": {
"age": [
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBYZ1NobkZOY3V3bm5JNHdx\nZjhTbXkzVXNvUkE4UnNJRjFhc1dGc1loMndJCnBkWkZxM0Y2TDZORFVxek8zZWdG\nQ1h3Qy9pZmpWSzdmcE5RZlRaY3hBNWcKLS0tIG0wK01ya2pnT0NrMWdTRnp2WTI4\neFA3Ujk3N3VaNVpOQzNiSDVpNThGdWMKii698kqkazUHyoFmRogEAOuTwcjeQS/c\nhU2Hm4AAzb41G6KqH2LKxDhF3j4TZaKennSkC2bH5ruTbMHxNup7CQ==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age134vt63pjqpd0m7702fyn8vhdlzyj2deqc2q78sp9uw9052kxsgwq6d25ez"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA5R1lURmRWOTVyTU00SktX\nb1RaYWtpZHRleDdObC90VWhMemp0MDBBRmtVCi9iQ0dpaGFPQm9sUURwS2JGL1gr\nYmEzdHp4S0VNaHpVMFBwUmxweGE4RGsKLS0tIHFhUDh5QjFaVktzRloxMkhQVmk4\nbXNTczhoVmpZY28rRjZqbXBOYjNXcDgKGxmMonIfC9kgzIrkL3SQkiAPSPloZIDM\nT1+f4ydepFm0hPYn+/Bv/tdKkgpErRIT5xU+EE/Rt2WrxiyJzRSZyQ==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age17d4qt0n9edq57tgcqyk8eu5mrendl59yt6z2y3a4vkq7el8krqtq6lq28g"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIEZZa044T252\nUXdGMVhTRzBxVGd1U1c4WktXeDRwQnRaNndOWUZKNUJ6eXcgQVEgd0l6SlBCVW1v\neDl5N0lHYmVrajZzVzVTYjd4WVdNVjZoZVlkUEtmVXlMdyBIdmtoczF0dmhxL1py\nS1hsc0ErckdoVVB0bE02RGdCNW5raERXT1ZJMTkzNjRGNHd2T3ZSTVYrKzZlbEll\nVTZKc2JVN1B2SzRuNkpaekhwSWJQaFZVQQpTMlZOeklYYUxVNERvQktxM29DMkVE\nd3NIRUpDcUpicVhnVEtKaXM1RU1nCi0tLSBFelMyYTVxaU40K0FKMXUzbGdvWUxH\nMUFyQkxNT0N5RE0zdHRxR2RkanZvCvyZswq45eIaE2IKLtx1Z2ayjAKthvmc9uQ/\nO5lIEaC44kgxrLXPJqk93fY2q1d0FaJMdBPRmQ5n5Y+T6yaqF0Y=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqpf43tgcfjm048lsqskvq34w2t4uvrm5qy6m2eg6zjj82ctca8wctgpczxvj0q4y6337uhvsxdh5j86k9h9ymautpvv2759ucwnef75ez7pa7fpkddklp40mxk2tedsp74359g0kefn5rsq0x0yss6cu4yd0h06up0rp08t6yc4l0hfa9y8jn5fkx6nk0hjhz06ykwv0fyxe7z42q683jy0"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIGVKUWM4dXY2\nNW5QK1VmN1I2dDhINnNDUXpMUmFsbDZXazlyZEI4WC9JVHMgQVEgZlFBRFNyWkNS\nRDJQaUJ3WWowTEcwaTk0Z0tiRHpQNmhkMTJZUlZHbHlEMCBtMzE5bzVQb1JmZkpy\nY0orbEs2RzBSVXA3UmZYZkRRanNnc2pHSnJjK1pLVmZOWGR4d0IwZjh1YXlkakRx\nTm5EMXR3ZjNHWGl0Ty8rcHpQbkcxRTZmZwpwSTN4TEdXQzJ6Q3pQLzA0VFV3YThy\nc0xQM2FKT2RkckNqRXFNRzZVU29rCi0tLSBOUEhTTWpmcy9TelE0YWZuM2RGdER1\nRi9EQXkrd2krUGNyc3drNXJsSnE4Cmyrlx1n0/TGV3ebUYYe/7zB0tpmAGyaTLER\nUshbqgbybtLAfiEyq9ZAolHhVmkQ1GCJbOaIzZUneOi5NYem1+k=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqprw0vfpc8wzsu78quc777kmee54ln6nnsjrnrhl7nr33eh4kvkksqp05qqxj4kgfzrmrugrsvg7skx6ghh3q9xc0x0agthtkvy25d9eq7eklta5wf7s30hexkuyl5546rdz9ffa5tawlp5yweqkgccntw0ny540n2am3cqw3luhxkfmrp63kwr6mwplhr9u26wll48x0n3k5f60c7hg9a3"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIHNJSVlBQXAw\nQWdDUVRuNUdhdkxORXFGc050Y3pKVWRuTlVTbURROS9wMTggQVEgZUh4S2o1R2RE\nV0svbnErTmxodXE2bUxJK3lla2lvajB3OXVwZHJtcHU5dyBKU3I4WFJnK3BOQXl0\nZDh5NTB5ZFlteFJIM2FVTVp5cmNyRXZqL1V0c0l6L0tSb0c5ZU9jbmRXMTIwb2c1\nQjZsREgzWUxaOXBUd2pQK2NncDZuUmZkZwpWNGllcTZtdmVoY2lTSHhOMkNtam9w\nb2dmOWlGdWsvcWZXN2pRMUJEcGZvCi0tLSBPTFA3OVdPK2hLd0pIZVJkbW50WkIw\nSmtPZXFkcTNoazVnTXYrR0NxVnA0Cu++kUfu1nrTWaa+p4KaRUpVa16L9xXkubQS\ntiRwmxYBhXgZn+jLPvDWqkBwNbbezD8QoY5bJsOaCoFvPoAB3sI=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqpyewum3q8dfcumfgec8nn958aec9f4q9aqy0k06kw5kq27d6fdqdgp0p7y4ru3n5xk90u747xevxa2af3v37e85j9g3axrmw5hdwdfh0wz22hut5vrafxsx26a7vh8fjwkymz3ramfgvvu4detztu075kmpr8l9ydqda0rnjwatdwmfgswg849p37astvld98s3nleeq575azlwc2hhpuh"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB0Ry9uaE04UzNLc2Mxbmgy\nRDFNNEtnTVh3U2xoZ08wVmxPSUV1cXpSTERZCjlEL1R0UWUyd0FiN1FtbnRuYnpV\nUUVoT0JzUDUwTzNvWVNic0hvaTFCZzQKLS0tIDF2UVp5WTJFRUxZN1B5SU5Uc3h6\neTBiMFo4ZnBSMFJBSHE4ejMwMFp5SzQKzaGWhdQJ70djvkOv0CMCyzBpWtgoyNog\nfXlSb1nEnx0S4n7BbQeUMcbNZR0Gz8BzfovJIokGeN2VI/CNc9NijA==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1hlzrpqqgndcthq5m5yj9egfgyet2fzrxwa6ynjzwx2r22uy6m3hqr3rd06"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA5UGJSY0VEa01BVitIeTdu\ndGFXajF4WU5GUTFTT0hrL1B5RWtSTG9JSXp3Ck5SMFZFUDV1ZXNhNGRIenNFQU9N\ndlR1OVMyNnA0eC9RaVN5K0hGdVRXbjgKLS0tIDBsdFpnZGF2cWN3MEptN0M1TWhS\nUFdDbHVEWDhzYmUwRlRYWVMza0kreWMKpwl8k1XM+6czx+zWG5A2dTy6BIb6AxTw\nr04mzDlMG4M8KZAQ9n/ZhVJgAEIdyMckahQThpLDKPTY2PJvJF5/FQ==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1sg0rvgyetdcqw7j2x983fh69kdkvqsngpe5x36e5920qa7fze3cqhj4wgx"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBMZnQ0NjRQUExUVmpUekl3\nMk9HS2VDOU5FS0drZGZocTZNc3VRZmpEMnlJCmJ4S1cvY3RoRHErcUpxYUdaZmJn\nYlAwQ3c4VGV0MGkxT2NVMjJ2eUNEYncKLS0tIDNTVDRNN0NZaWJiMDk2WTR2aWov\nSzRsQm9wcWx3R2ZmZnZ4bnlmNmhtR0EK7KHcKUBvAEFB/65Pv/55POguBOOMw+t+\nFwlvTxPo5Ec94XAc/lqvOz/RfYF73Os4qiGzkZ8WXft7FHl9kkqfBg==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1swlyyk2rzvevqawyeekv75nx2dz34zpe3xqhkqme26gcgeavy4dqrfpcd8"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBIOFpnZWltdWIrRU1LblNt\nQ21xRE92a1FXQThkVkI4bk9WWFB6dzhkeFJVCnVjK2cxdUlyS2xYTTFKVm5mc3Fv\ndHVHQXBVRzJqQTBDMUxTVFkvczNnMlUKLS0tIEU1ZlFvcmFtdDJKcDJHYnRiMnZv\naHlCOEJKNmh3bHFhcHFMM2lhRC9GcDgK1vvGk+P2/DriuNi9pdwgsr99GAvZdPAp\nDWBG6cH9pSbLGu2+rsrOGPdQ+kgp7pz/XNEDFMMzL3Nh5LNk6+r3uQ==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1vphy2sr6uw4ptsua3gh9khrm2cqyt65t46tusmt44z98qa7q6ymq6prrdl"
}
],
"lastmodified": "2026-05-28T06:47:03Z",
"mac": "ENC[AES256_GCM,data:XZLMRmecN1YpFNph8UgUzztJaKN71udV8bBsiTc+eyRD0BOdFBbCQ13sVf7YzGXthlyTG6jWSJRRWSQ0G+0B88GGIMzGDnxXafbQdd0swF6Ff41KftKvKtxAsUg3nMErUo+oQ7JM4RzOFsowi5qmdM/ANZokCc6c4xzVR6DZTAo=,iv:gwuk9sbxuWdKUyRE/rUcQ1WnoqKFfZFvCDwxxPQpQL8=,tag:Qqcmc354g7DuU4q0SSEiFw==,type:str]",
"version": "3.13.0"
}
}
@@ -1 +0,0 @@
../../../../../../sops/machines/alasia
@@ -1 +0,0 @@
../../../../../../sops/machines/bosona
@@ -1 +0,0 @@
../../../../../../sops/machines/canopus
@@ -1 +0,0 @@
../../../../../../sops/machines/deneb
@@ -1 +0,0 @@
../../../../../../sops/machines/neptune
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/petra
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/ramus
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/rana
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/rigel
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/saturn
@@ -1,50 +0,0 @@
{
"data": "ENC[AES256_GCM,data:NG2YflrDeuLWnSVXyGmlLNs10Vi0JV0B5Avf9OyFe91JMQ==,iv:xH9UHfVUSaX/css62sSqsmy/hEbsqRHbkg1p3zw9DLA=,tag:QqyEkpKJkhkJUk9apaupIQ==,type:str]",
"sops": {
"age": [
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBtcENnOTVJVVJuWi9Tc2di\nbDgrV3NsYWJyWnVNVk10YlBWVXVsYnBlMERNClNXUS9xQzZxczlMOEk4S1VYc1lD\nSEpENENpTVJNVlMvbnJ0Ui9ZM1dtU0UKLS0tIGdCTVFOeHBSdTVBQmN3RDl4eW9O\nUWJCb202dDlqZHV6K1NjYzJHb2FHTkkKhyMt7X7cETCmWrIvgHAJFWRUhpDtpluy\nGuoydX/vw8Sa2Jsrl9QTI9WSY8HGkdHPU7BrP2MWFsvM5+x1goLxqw==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age134vt63pjqpd0m7702fyn8vhdlzyj2deqc2q78sp9uw9052kxsgwq6d25ez"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBmRnBTTXlnMWNDOGsvbWF0\ncWpJOGJlNFE5eEFaVU1SYXV4YjF4UXJNUEhJCkY2SUZjRXprL0NrZnhPNGcrbWxp\nbUJTb2tIcVlEM1dsZ21zTGhjWTBXYWMKLS0tIDFjM2NnVjlLZHUvVmVvTzlncnYv\nSjc1SnVraGtNN1BpY3BrWXJQV0hYUzQKKecZbQL2qjJDqXAX4wu2L4YSKW2eXIUE\nLSa/jlOiu43AonvE4BLBlrWNNuAWYG30EC1GURnpD5ZFxMrRlTg3lQ==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age17d4qt0n9edq57tgcqyk8eu5mrendl59yt6z2y3a4vkq7el8krqtq6lq28g"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIGFiRTRzRkRL\nQVZLVVBYNU1EelltMFNlTG12MUhFSXh6dUJWOGxWa2hpd2cgQVEgd0l6SlBCVW1v\neDl5N0lHYmVrajZzVzVTYjd4WVdNVjZoZVlkUEtmVXlMdyBIdmtoczF0dmhxL1py\nS1hsc0ErckdoVVB0bE02RGdCNW5raERXT1ZJMTkzNjRGNHd2T3ZSTVYrKzZlbEll\nVTZKc2JVN1B2SzRuNkpaekhwSWJQaFZVQQo0TGdnNi85VUJMVnIrYmhybkRxOEEr\nMys5YzRXaStVWmhVaHg0TWdscHI4Ci0tLSAybTBRaHE2aUVmNDR4V0V5dy9hdnp4\nVlVtb1crdFlWSU1KeGY1N0dQT2VJCp7IBYMCorCo8mhGM6rkeRAGM5ICMfG01WQY\nrgjC91+szPfeRSWfqtTSBAADI9JntX9zg8mZy+TAwUgYcBP2mAk=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqpf43tgcfjm048lsqskvq34w2t4uvrm5qy6m2eg6zjj82ctca8wctgpczxvj0q4y6337uhvsxdh5j86k9h9ymautpvv2759ucwnef75ez7pa7fpkddklp40mxk2tedsp74359g0kefn5rsq0x0yss6cu4yd0h06up0rp08t6yc4l0hfa9y8jn5fkx6nk0hjhz06ykwv0fyxe7z42q683jy0"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIDVwbHFiY2xN\nL3lRdUV5VVZaeWVkb0NXQnNISjJTUGpLZE81RjJXMDNqREEgQVEgZlFBRFNyWkNS\nRDJQaUJ3WWowTEcwaTk0Z0tiRHpQNmhkMTJZUlZHbHlEMCBtMzE5bzVQb1JmZkpy\nY0orbEs2RzBSVXA3UmZYZkRRanNnc2pHSnJjK1pLVmZOWGR4d0IwZjh1YXlkakRx\nTm5EMXR3ZjNHWGl0Ty8rcHpQbkcxRTZmZwo1N29UdnlEZXdobnpPZFJzUHBVbXVz\nc2c3QlRjZE9HSnFYN2d0ZDlyNXdjCi0tLSBNK2JNK2NUREQ2V252TWJTMmNBZHRD\nUHB1SGFaeTBKekZia082UWw5THRrCknderyahXQr7cf6pCRCjeYU1BrmjZ6Zwzuq\nH+UYDcv1Oc4r9r1aVtp6qYEWFJjQB1qOucBIqoykznzbtXr5XJQ=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqprw0vfpc8wzsu78quc777kmee54ln6nnsjrnrhl7nr33eh4kvkksqp05qqxj4kgfzrmrugrsvg7skx6ghh3q9xc0x0agthtkvy25d9eq7eklta5wf7s30hexkuyl5546rdz9ffa5tawlp5yweqkgccntw0ny540n2am3cqw3luhxkfmrp63kwr6mwplhr9u26wll48x0n3k5f60c7hg9a3"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIEZBMjVsWHl6\neVdZNE5mc0dGbXppVTVzbHdoYUl2aVc1bW1CRy80dGVoeFEgQVEgZUh4S2o1R2RE\nV0svbnErTmxodXE2bUxJK3lla2lvajB3OXVwZHJtcHU5dyBKU3I4WFJnK3BOQXl0\nZDh5NTB5ZFlteFJIM2FVTVp5cmNyRXZqL1V0c0l6L0tSb0c5ZU9jbmRXMTIwb2c1\nQjZsREgzWUxaOXBUd2pQK2NncDZuUmZkZwpHci82T0NXbDI4Q1pKZ1kybzM3Vm1Q\nOG82SmpkT1dieWJkZWRtWEZmUE53Ci0tLSBNWHBoM01sSzJwUXN2Y2Vta3paK3NG\nNm5oTENRWnlaN2NrYngvVGhxYXNVCiakrs516FSqyx57YAxuCQ5Rfe3AnCyQ9uIb\nPf7P0ic5xcP3nag13YJ6eCRyM/86s2lyKac/ZBpD0DH7zrqacLA=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqpyewum3q8dfcumfgec8nn958aec9f4q9aqy0k06kw5kq27d6fdqdgp0p7y4ru3n5xk90u747xevxa2af3v37e85j9g3axrmw5hdwdfh0wz22hut5vrafxsx26a7vh8fjwkymz3ramfgvvu4detztu075kmpr8l9ydqda0rnjwatdwmfgswg849p37astvld98s3nleeq575azlwc2hhpuh"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBhYVBqRjJyRU5oaE02N2xs\nUEdjdjdacG1aZEFaTFVBVGducHo3NEdUK2hjCktqcko0aUZodUNPVkhUejNic2JY\nbnRIUVdXOHdzM3F2NkZXcXBLUkxKTDQKLS0tIHdKOE1IdjNlb2Z3bXJsOCs2Sit5\nSFFDVW5jOXdEYjNnVUtHTmJ4TnZNdE0KAEjxuujE68qT27OmH0tWml6sjnMQ6A4v\nN+5RWQbddq7/x6I6UfMPvAx6psVaMi7qIEjVaMegZrupOwLeuRTG7A==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1hlzrpqqgndcthq5m5yj9egfgyet2fzrxwa6ynjzwx2r22uy6m3hqr3rd06"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBWOWdpZ1YrN0xWS2Zjekkv\nd0FTcVJQc2lvVSt2bGJjRDBqVmI1SjdwTFVjCndkaWJ4WVFPZytpdS9hcVQ3b3RC\nUGpSOWF4bGtjR3BsYVZNVFdiQkpUY2sKLS0tIFFDbUF2MVRPNEhBdWk1TzhYeG9F\ncGtwVGhobGV2TlpiM1hRcjMwVW85NUkKFcpn8t5rJ6xuU8l/S3sAAn5AG+lHz1x0\nNv23KWEdmXzg3DYHq32cjOFmtiWHepx+/3tn3e/Jch8bdPb5Qxos3A==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1rwjdv7w6c3pcjx3wctk9xekclml8zwtj39m4hfhsprrx5x2lqphq6tuham"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA1Tit5WUFUZ1dVckZTMERB\nL0cvMVEyenNuelVrcHRkUEE4eEszaDdOeHhZCmNQZGxCRWRRcUVIWVJWQys3RGM1\naVROUkVWVlBhTlhTTndGZXVYSTFFamcKLS0tIGgrajJmSThta0F0MkgzT0dxZW1v\nVEhIWHpEUGprUnlrZ3dKMFdLWFRLU0UKf7TuQCBeHws/IoA9EjTaxmC+3sojLoRm\nOtJRSsvTkEcehclHNDxiM7p+RMW57KV2NpBOLqCbK1MVWP+pcH2p4A==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1sg0rvgyetdcqw7j2x983fh69kdkvqsngpe5x36e5920qa7fze3cqhj4wgx"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBWdDlPSThUL2RQTzUxd0ZY\nNTc3cjZIUmE4U0JEai9jOVJkSlZTcU53cjBrCnJFY2dhaFJmSityTHc5YlllS3Z5\neHdXVHFuUzZmcE1RaDd2U0dEMU9JREEKLS0tIFY4cExTYllEWWI4cVNtd3Q4b3My\nMzVLVTJESlI2K1pNZWg4U0VOdWFZQWsKrBIYzUZ9DjAWtS9hpXzhkPiFWc7/7Aj8\nxDqlLJ/LOx00YWoGft+Bz/Z5Iz8mfqqWliZCwK+q2VXmYODqx+kvag==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1swlyyk2rzvevqawyeekv75nx2dz34zpe3xqhkqme26gcgeavy4dqrfpcd8"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBvYjlnTFh2UVJkVVNuaTE5\ncnBNWlhBY0huekd2NzhHdXlVdXJhMythTEc4Cm1QQXFZcVBmQm16TmR0UXZMUHVZ\nYm1PWktXMDE0MEdiUldUSTV2Wk00TVEKLS0tIEtQbXFUd0xQU1hPVDNWYmJHNUpL\naGlFM05GUzhuRTd1U3dHWS9ncjRjZzAKAiyOx7SwrgULiadLgcD9hOem5aqpOVn8\nLKgDNAllS/oT8Kguy5g+tmBbR0I49oKeGbBzN+OnTyFU9Kq28ApnAA==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1vphy2sr6uw4ptsua3gh9khrm2cqyt65t46tusmt44z98qa7q6ymq6prrdl"
}
],
"lastmodified": "2026-05-26T03:26:03Z",
"mac": "ENC[AES256_GCM,data:GIvsT/uMRBtEqgPdeJlx8MiGxvUck6LcKeTO4XDLt54CiUISB8xans9Pd8rfOCASGomHbIONFvMyGoGR40wOopGA5UDo/miNzkXaf77zfRnWmaLQ5d+1WaLmlJnERDdQDrbv7F0hOX4oPSxEjRFahKq05YTQNv+SEGvAodGfrls=,iv:QI/NDC8RZpKedU/2ZeVIP1L5iqqyFgdb+ao9bP7BTYk=,tag:ooVWulbB1bK9zWhLU5RhHg==,type:str]",
"version": "3.13.0"
}
}
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1,32 +0,0 @@
-----BEGIN CERTIFICATE-----
MIIFmzCCA4OgAwIBAgIUbdmEHN0QFwhfqo7ALy7wtAUvhZUwDQYJKoZIhvcNAQEL
BQAwXTELMAkGA1UEBhMCVEgxEjAQBgNVBAgMCUNoaWFuZ01haTESMBAGA1UEBwwJ
Q2hpYW5nTWFpMRIwEAYDVQQKDAlsb2NhbGhvc3QxEjAQBgNVBAMMCWxvY2FsaG9z
dDAeFw0yNjA1MjYwMzI1MTFaFw0zNjA1MjMwMzI1MTFaMF0xCzAJBgNVBAYTAlRI
MRIwEAYDVQQIDAlDaGlhbmdNYWkxEjAQBgNVBAcMCUNoaWFuZ01haTESMBAGA1UE
CgwJbG9jYWxob3N0MRIwEAYDVQQDDAlsb2NhbGhvc3QwggIiMA0GCSqGSIb3DQEB
AQUAA4ICDwAwggIKAoICAQDuZdMSS0i/8dH0/2twybalAx23nPQQcPqB0S2qPtMw
6U4t0nyPjV0F0lVh8VuYDwATPV3rHbIIxD/oClbAkO3gotGHKTwhkDTKNculTdTh
TS1QnvTtMsRqDOg1gdelLuD2xwydHOYayNUmibeklFIfZ9Vg0QQOh6Evhcj4DglE
+n/+fSCmiTCFR4AD1N4uCmNKcKaHII8JaW+Siw0GgbDyGYhBd8ZF2vEKeS6un2IP
Z1LPfociIqjdRFttI6B6QGzHuQuhigB3s9FmTwgyU2opRJtCV4XvtU9rorusVEJa
CV5U7VwdTTK3DNg8KvIGGSfwYNx8HfTAkrMfHr/p3C1l++5Ivx+uAfqUnUUjMshj
JkRwb7f3k7zNgeSf2qbOzk0/lNMUgOHqUcOPHbmL4ZSL7VL8zIuLP6qX+Cixb5dN
4j3miVWrFeWRK8b2EPg6+kyj7h4RnBvMwKicVdF00y9Ms8YKx+ucHuzZ2c61Wmvl
3zOJ9OruWdMEvzdYxLjZA+ARH3LlmFT8TYuzrB5bl0qkq713IEcornlehIPcimf/
TaXMFo3M1ZvkBqtF9VFhaJImF+0DaWmxyu2jf+dltCwvijqiSMLjXocwCYA+Fkpt
EJb/EFfIO+jxDAZkuWncJQZ5WdX84ZBtvhY4VISfcl3C+1XPmE0OF2fxRSdiN67I
dwIDAQABo1MwUTAdBgNVHQ4EFgQUD4GGxOg3lwcdZx0VarVGUbShS0YwHwYDVR0j
BBgwFoAUD4GGxOg3lwcdZx0VarVGUbShS0YwDwYDVR0TAQH/BAUwAwEB/zANBgkq
hkiG9w0BAQsFAAOCAgEAy/vUdVuf2o37TSiKTqHqdzmfwI1f4UEmsYbC3ysAN2we
vTxFNjKsSu4WnpGFXOJBlN/AAjqXw/Qi6jcWliduJO43gW7oKF9ox8Vp0Bqj6f2w
Ugr+8mpoN2hPgE/6uPBTDQrmz6B4cCrJjmVhnVd0btGAfZTL8MnJnGEuQ0+OxBPi
FUrvNnuUbZ1vIt2MnZhSkg54Qx0VE6baekkCVn05V+pmTC5YbUAiOaW4emvyjw5a
9xjNCSPfgXv6vPaaqcFztZU7pILdbwK2F6qUEihJ1Rt1CZcwYKXFB4JN2cyFmER2
uqQi+cMugDogNiLTJubKz2rMPJcLIphIz+hOlzBs2LxK9a/weG2ZRVMKw9gerzQr
UnIrdeAi7Dpe9wJPvI3cZHGSPddIOVIV/4ad3XN2ub5wSB2pqFJmrab7eZGlGmeW
EPAmnBXE2yMx4eQGoWRjqpV/xANr7ndGXnkx7c1jctFUN47V5zjEJ8Cx6fbgPoiC
OgVSIK0kpWgSGvKcm59l9XbXuC/RytH5ArAAyGFJhSKUw+h50nBQazasX9sjSVZB
SH+lFLf7W5xsJKxhYHdxBP8cGQOaITzHYD81nyJTSu8nvYen82EquR3sgUPK1tCH
pu2i3FzxS8hUW7y6SdvSJYA3DOWpO902d74U7Ic1kHh9xn1909WWFiorJZas5zM=
-----END CERTIFICATE-----
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/saturn
@@ -1,50 +0,0 @@
{
"data": "ENC[AES256_GCM,data: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,iv:lbRLSIKXwNrlFw1IhGHDNTOJ5ENlWmZU3GxKyxYrs4Q=,tag:CXgsI68O026rYxEXzCGdGw==,type:str]",
"sops": {
"age": [
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBNQUQvTm9XMSs1bGI1VU5C\nNG5McW9RZ29vbVVmb3oydmJkRStNckpSU1Y4CjVralhQWkluZXkwOFIvSTBORGFx\nNVdpek8rVjUzOGRFc3BCa1A2M2JwbUEKLS0tIHpoTWRqRDJDaDhBVk9JaGRGcE9S\nL3M3WEpqTTNYSEw0VnRReHRDdWlNd00Kb7EVCN5OKS9NEE0svBd6rpOt27+PdeDb\ntz42ESnVS35sqwUA/HAlQ3zxcPxtb7n5RKQj76JMbygItyqQOg1fzw==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age134vt63pjqpd0m7702fyn8vhdlzyj2deqc2q78sp9uw9052kxsgwq6d25ez"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBCbUZheWtOYmNQZzNrUzV2\nSGpRZHBrVkFkeTBOa0Yvb3hCaDViQWltakY0CkM1N1MyS3R2ZUFIOEViaEpZMG1R\ncml6emFxZ3NIRm5UVzNsdWVobVBZUVUKLS0tIGI1bVNHV1NVVWVlK3VLeEVIZzlq\ndWdlMUVqeVBia2pNUnVMYjNTVTJuQmcKMm74lRouXsPoJT9BowMSF/8+/HnQiH8v\nXObc6nl9+frgQW7WBpr/+BoJesD4AE2shI7WpeLR+7OBU8C2wte9Kw==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age17d4qt0n9edq57tgcqyk8eu5mrendl59yt6z2y3a4vkq7el8krqtq6lq28g"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIDNDd3U4QzRG\nSkRLSVBoUTgwZVVrWTY5SkNBZEQzd2FWdDBibml6ZUVyUlEgQVEgd0l6SlBCVW1v\neDl5N0lHYmVrajZzVzVTYjd4WVdNVjZoZVlkUEtmVXlMdyBIdmtoczF0dmhxL1py\nS1hsc0ErckdoVVB0bE02RGdCNW5raERXT1ZJMTkzNjRGNHd2T3ZSTVYrKzZlbEll\nVTZKc2JVN1B2SzRuNkpaekhwSWJQaFZVQQo1NEN5VFZvRmZhcm1FK1FUdi8yRVRi\neVJOSzQ3dW9XWkRscWxKSnVSUWNBCi0tLSBQV09oaE9lcDZMcytkL05qbGFXTUIx\nelVvVkhPbzdrOHRqRU43MEx0NFM4ChJPomouPNJsYKrY55eHs1guUKLfy0nekHjw\nr6dKzgpop6dGSuLGfzVA/iPnYEvkSh3FeG9k6F7ijh+fDNaeoYA=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqpf43tgcfjm048lsqskvq34w2t4uvrm5qy6m2eg6zjj82ctca8wctgpczxvj0q4y6337uhvsxdh5j86k9h9ymautpvv2759ucwnef75ez7pa7fpkddklp40mxk2tedsp74359g0kefn5rsq0x0yss6cu4yd0h06up0rp08t6yc4l0hfa9y8jn5fkx6nk0hjhz06ykwv0fyxe7z42q683jy0"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIFMxS0FWaGZE\nbWQ1Vjg3aWY2b1JOZE5NbDhVS3lqZ3hES3drdStTcmlKelEgQVEgZlFBRFNyWkNS\nRDJQaUJ3WWowTEcwaTk0Z0tiRHpQNmhkMTJZUlZHbHlEMCBtMzE5bzVQb1JmZkpy\nY0orbEs2RzBSVXA3UmZYZkRRanNnc2pHSnJjK1pLVmZOWGR4d0IwZjh1YXlkakRx\nTm5EMXR3ZjNHWGl0Ty8rcHpQbkcxRTZmZwpWQ1g0ZnVIcUk0b0dCdy9tSWhpWDA5\nazNOczJIZVhKRmJoS2dtM1dtVkhJCi0tLSBKQ0doaFB3WW5uQlRKZWVLOHRBUzZ2\na3Uxb29tTHFyNkUybXBXVVB1ZFJNCvXyHGoy790HuOah13Ag+HA6OAcJwEamqNzv\nn54W2I96PoMYAanZCxZu0tJLAkCm1NqTE2sAX9ZRoWGDPhSep2o=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqprw0vfpc8wzsu78quc777kmee54ln6nnsjrnrhl7nr33eh4kvkksqp05qqxj4kgfzrmrugrsvg7skx6ghh3q9xc0x0agthtkvy25d9eq7eklta5wf7s30hexkuyl5546rdz9ffa5tawlp5yweqkgccntw0ny540n2am3cqw3luhxkfmrp63kwr6mwplhr9u26wll48x0n3k5f60c7hg9a3"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIHZVYW5RaThK\nNHJ6MjRwZTI1V3FhZG1rSjNIRVI4U014UFl4RXFHeWxXZ0kgQVEgZUh4S2o1R2RE\nV0svbnErTmxodXE2bUxJK3lla2lvajB3OXVwZHJtcHU5dyBKU3I4WFJnK3BOQXl0\nZDh5NTB5ZFlteFJIM2FVTVp5cmNyRXZqL1V0c0l6L0tSb0c5ZU9jbmRXMTIwb2c1\nQjZsREgzWUxaOXBUd2pQK2NncDZuUmZkZwpBQlZjWnpPUGhsb2h4ZFhzQlBPdU14\nWWdjaW5iUEc5U0ZLdEJiZmRpRmVJCi0tLSA5UTBBTVFLWGFlZ2QyaTBNNXhxYlpv\nbkExMlZrZWREUjJFcFVrRDhUclE4CrszDAFCa8eDC4ELRw2DJd/XAbTQ/KQ+oYlA\nl2IbRfM2L1pJ+WUN7DwEufO6eETBWHeLE+mqWm3jEKRT7s2CgaI=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqpyewum3q8dfcumfgec8nn958aec9f4q9aqy0k06kw5kq27d6fdqdgp0p7y4ru3n5xk90u747xevxa2af3v37e85j9g3axrmw5hdwdfh0wz22hut5vrafxsx26a7vh8fjwkymz3ramfgvvu4detztu075kmpr8l9ydqda0rnjwatdwmfgswg849p37astvld98s3nleeq575azlwc2hhpuh"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAyWXA1d1lFY3c4UjNET2hK\nMG9xM2pTK1A2VWR1SCthejkyQzJ4eFRHNWlnCnF3d01XUFAyL2QvQWcxNE12YWgr\ndk05anZ2S2Q4dnYxV2pidmJBU25acTgKLS0tIERaQnppNDJXZnVXTFVhTFk5ZUZ5\nNzR6alVVaFpaU2V4MkJNNDdjcDVmU0EKPoQRKARWf3BwxDzATpM/kCI0O+hy5bWc\nTU/HAyoYIntPZBXgACzUsz+CWmNm1ZRNmF6vMzL/CwAZ0mxbHaXvHw==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1hlzrpqqgndcthq5m5yj9egfgyet2fzrxwa6ynjzwx2r22uy6m3hqr3rd06"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBSSzNndVFkci8wWWFocnMv\nbnA1dDRxTktxODNWZ1VOUmVlNklDc3RYMlZNCnRHck41cTcrbC8zUXVOV0EzaDFB\nYk1HWTF2RENVZkFKWUhNVTVJeXA0OUEKLS0tIDRGOFFDNWoxTXVaamR6eDNXRk5z\na2FKQm1QMUJqTURPdEQvR2NRdFJTZTgKNqW4xBtwpE5ghSkcA29wMjyySziRkfIU\nxd2/jEpo1kaswtHG1iM0qFfAxQmi99AkS6qh+MdWJiADr9eU97o5XA==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1rwjdv7w6c3pcjx3wctk9xekclml8zwtj39m4hfhsprrx5x2lqphq6tuham"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB6NVNrNHcxYXU5Mk8yd2JK\nSm9UdGUzVGNmK1BlU2xReXpRM1FNeFBtTmdFCjlpTkxSc2xXVS90dDhxeUJOL29W\nT2w1SnRzcEpjbytYUnZlN3c1VnJHeHcKLS0tIDZrN01DclZkc2NwbW1lN3lrakE5\nZ2RJSnlCWUg1WGhvczhna2lvSmZTNVUK4QkTLV0ZykUY0f0xRbFNmh9lHAYtq5Ly\njBsq4mN2G1n9N+OPkJIiC9IYkyWrWXZsackYLwPZJWTXn69vn/d3tg==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1sg0rvgyetdcqw7j2x983fh69kdkvqsngpe5x36e5920qa7fze3cqhj4wgx"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBKQzdUZ082MDNjMnJ4Z0dF\ncXVDVGFLekg4SHlyL0d1Ty9PYmlzSmtnZFIwCmgrdDU3djg5U0l4RG9lNCtoNUli\nQ3htNU5GWElxdHlOUUlyR1JGRUhlbDgKLS0tIHNZbm1lSVR4S1RuYXJEOHRzWkNu\nYWRuVTBrL2VlR0xBRzJjMEg1SVZ4aTQKlbS14lVB0tzoMKpPSub//vRgtcqMGBkS\nNs+6HSMq6kBPOffWoOXjp/HS7YilWyiTn5919gM5sZqyTpik9J/B6g==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1swlyyk2rzvevqawyeekv75nx2dz34zpe3xqhkqme26gcgeavy4dqrfpcd8"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBuQUR5L2N4bmNja2svTjZz\nWkp4dDNMWTk1TVpZYzlUSExtbHRTVXNmakNFCm0wRGptcExWNUpPd2hKUDAxdlp4\nQUYzNzhYQW9nNGdERXdIZTNnYlpvWXMKLS0tIFB1TlF3MTZLS1ZYRHo4dVR3NXl5\nWUw1YzVKNUZHZFpneGR4U1FWdk5CdE0KwFpTCfMUVAghorH4Em9o9odfCNf0fc7j\n8Ckxw7ae4lUuZmtdMTJ7Evd4dQjtUj/+djdj/mS9eat9yvT5FjQ+qA==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1vphy2sr6uw4ptsua3gh9khrm2cqyt65t46tusmt44z98qa7q6ymq6prrdl"
}
],
"lastmodified": "2026-05-26T03:26:29Z",
"mac": "ENC[AES256_GCM,data:5UfHv0iJAyB2NbadfFZ41ECpZsEfld1NvUipyEcsoE9cqA7dIcawWUdwe+a3ylCQkoSHqrzFZikSPir6d7GhvZwmx3OV8Yoz/xFfxhtuJ7CtPM519C4eQkEbvf+DI7OkCobg6SOT3E2T5+iunoGU2HykQnHoWJIlSB1+xQcbfEc=,iv:V9H05IW5VVqYRshubhcXmi1R3wmPaB4LFi8WuDoisRQ=,tag:sAlcR/q16Wienub9B+W1cQ==,type:str]",
"version": "3.13.0"
}
}
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/saturn
@@ -1,50 +0,0 @@
{
"data": "ENC[AES256_GCM,data:fPFiKBTMcxnP3JFigcLMSq2/Qykcd31bZhoSH97fB2/R4h0des5U+sNRDnFfbPs5iZhoZpO5e+BJDAolec9m8lSmt95pvytLl4rFBPjy4Uyx8Z5OqHNw1/L+Q+GZJ2mCwON+9rveFgkkhTBUuSArEU/VueXJ8dVaWzdrLY+Cfy+YVPQmESlq4RMywz/TBfZmu3sU6UgeIo6wJN9XBBPNZqHwZilOZsJ3UsgZl8EutsixFPQuFWzmHMMP3YdWIHeCTRlYtCW4Q/VKvoi9VBgEEML0VJnBDc3gJHFwsQYv6rXw9wEEE/xHfMGIbJn9vk0PHL0RQIwjhXo0M4mp58efn5k0jbQHsQ50IfZs79y2NPSLtbyKtyzTB18nuBteQSoJPQrMoHWtdxIaoEqGwcujfYxr/ba9MyOo/q+D1PITlRb3OMQokY0vsSTepdyXIOyGwMVECbKOLW5RKFPYnMonP0WQQdCao3JYRCpQ9MiGxt14zlLYLtv3oEKBARJbOzGw2Rzr3zvcO1sMxRDhcMtQTsSIHyEhfAUFe/EdA2lr5pKZY+K8zPZX1M4YV1dth9I4AWWnVlc2IZqkR2oRuSGgYLu0rpfVfcjuBy4l+o+gQKEod5fuMNHDqM00jhszl4BCQO3pPGtI6A3X6e/hkLFOrsswJflltjnzY1LXrBBov35svb03zkzL34rHp+P5gRCXebG4nexxAbbVKfz3iqQBkYKcPzS3qXx9QEJ8XLahkdONxc1RrJAnzLGJsDzg8WdOv6hBLPJo9P7ZHcDeNYigYzgDZR3DI1MM1m5JoPV9naF8vv6zU9yhGSLZ8hPxBiE2RjMIWo6lehdOOSdST3zjq1gRjVbJn4BlC1QDQxJ/R4X2ReUy/r0fAErzsTRA4QPfy86nngcQqh4Mn+uTcdccn9KPqZcGSFU2llKPcFyBC6+PUQ89E3OpiD7bEsXLNgCkGkIiQ0Bc3B6vZyEOWyrMjBLdBeDOL189ocFUUPsdJ20+aRewBpW7bLzJug2u1GFEMoyqRWdrW/hT0F1yAFjbO5s8ZwN1jZqUPrPalAa68e/4yaUtDdL9UJeSDi7LYvpMrAYqEJR2przbhZidHnWeDoYjLSlS+OvII3cuZBZA9b8HRRUqdSR0PJk4/cDtMsRbRSr4W4kMQTitK9nkpRRHgP3Oq/NWR8k/XojaW7Ikoieszzx+VDUfzcPyolwfqfPtNaqvfK56VMJu52dDJy9pEXRJ1smT+OsOv3RdgBT+xIwg1Ve3R6POn70tpZntIGOiAW0srpiEwk1cZXIAbwSPnx1jo1zH8CdUwfdWM2xzQxzS+Q20cEXJXOyoW7laimyVKcPteFUZxtFDQ51+/pY/OKxcW28/J6FwHDc92qj100Aye4aAa/M7O81R9lYZTI9Gg8ea0sNHXiiUL+gJokd6dcVqNrj7t1LQYE7Ltane6I5VwPKN+0c7EION5/1SIC/1par4MSjYl99pdf8=,iv:ReKElXxMeZIkTb7CF9IFWv1aNcorBwvoMI4sE74h9wA=,tag:n/G+hLpzDRAg01wktsDPJw==,type:str]",
"sops": {
"age": [
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBKZUdlTEsyUmQya2U3Ukhl\nWVhOYTdUVXJ5bGQ1QkpZeXNJNDRMQ1dQTVRrCmoxMUE1KzFJeTcxOS8yMWg1Rkw2\nQk1jdUtKNTNXMmRCOHRhZzIxWDhwQzQKLS0tIHdzUTJaVXhhcmx1MXQ5Q3VYeFJS\nMml6QXA4b201aW1CUmJLRzJXRnlSOGsKYhN84P4QPWuzLoMYfoEHGGxn0TtHOt+4\nMgmRhwaANmXxnDrDVqR9tWvNI+kpZwqT0jY6CtkggzHNK1cCOFT4Ng==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age134vt63pjqpd0m7702fyn8vhdlzyj2deqc2q78sp9uw9052kxsgwq6d25ez"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBtZTdJRkRQSEdNc0k5Tmkr\nbFBQVXRpL2VNMGtiN3FUay9sWTA5SUhMVzM0CnN2V05HWTBvTzFTNC9NdUZxaTJG\ncHUyb1BVc3V4bE8yMkdhMFl0Ky9YVEEKLS0tIHdOV0RTRk81TVhnbjBXZ1c4UjBG\nZWpBRFB2QWo0TW5Celd3eDdDbldnTmsKg/iqpF7dBoo1UbrEZKum3F9H2JOYXWpD\nhM+It1xxoaCtcxiBfY5XwY49Rv4nTQ6D9LZb+xjB3bk/yTX1L5mGxQ==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age17d4qt0n9edq57tgcqyk8eu5mrendl59yt6z2y3a4vkq7el8krqtq6lq28g"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIGkrUUNvVEh2\nNVlvaXBmYzN3WERFbG5hTzk1YWl0VEJiekltUVNIbm9NQmMgQVEgd0l6SlBCVW1v\neDl5N0lHYmVrajZzVzVTYjd4WVdNVjZoZVlkUEtmVXlMdyBIdmtoczF0dmhxL1py\nS1hsc0ErckdoVVB0bE02RGdCNW5raERXT1ZJMTkzNjRGNHd2T3ZSTVYrKzZlbEll\nVTZKc2JVN1B2SzRuNkpaekhwSWJQaFZVQQpNYUx6eTBKNFNRTVM3bkRzR2hmUEth\ndGkrSkVYcU9QVXRkNUhJb3RGNkJjCi0tLSA0Sm1BQTFSNmFRNU5iTjNHcHdTU2l5\na3J1QWFGMXdLUFdRdGYvUVluancwCrWjR7bshtwq+m2aIoExKSkuVmd0hMgXfV6C\n+VFN1bAnaYwKewbeSj3dqnsvV+eWqXhcNDlkdNKa2vu73UDRyPM=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqpf43tgcfjm048lsqskvq34w2t4uvrm5qy6m2eg6zjj82ctca8wctgpczxvj0q4y6337uhvsxdh5j86k9h9ymautpvv2759ucwnef75ez7pa7fpkddklp40mxk2tedsp74359g0kefn5rsq0x0yss6cu4yd0h06up0rp08t6yc4l0hfa9y8jn5fkx6nk0hjhz06ykwv0fyxe7z42q683jy0"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIEE1L0w4QW1G\nZVNBOEc3VndDTGFrTXFIMEhhRkZCbHpaQWdkMmxLdWd4Z2cgQVEgZlFBRFNyWkNS\nRDJQaUJ3WWowTEcwaTk0Z0tiRHpQNmhkMTJZUlZHbHlEMCBtMzE5bzVQb1JmZkpy\nY0orbEs2RzBSVXA3UmZYZkRRanNnc2pHSnJjK1pLVmZOWGR4d0IwZjh1YXlkakRx\nTm5EMXR3ZjNHWGl0Ty8rcHpQbkcxRTZmZwpZalBDU3hVTng0Unl4YXk0WnJoUDU3\nbkhFbVFYcUtGR0FyUEd0NXdkT3pFCi0tLSB5ei9CMzgzYjhNSEtkSzJQaVBYLzVp\nc0tGSkFTQ2VIMXRiVzZ2R0EvdnFBChC0QaYUNWtN+cdOyBNTr018hSEF2HKsJKNt\n+8M+OWxSuuEoBOjsRLzPzCZkNAS7oltZnx3ykGCvvFmDDAYgdRk=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqprw0vfpc8wzsu78quc777kmee54ln6nnsjrnrhl7nr33eh4kvkksqp05qqxj4kgfzrmrugrsvg7skx6ghh3q9xc0x0agthtkvy25d9eq7eklta5wf7s30hexkuyl5546rdz9ffa5tawlp5yweqkgccntw0ny540n2am3cqw3luhxkfmrp63kwr6mwplhr9u26wll48x0n3k5f60c7hg9a3"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIDZwdTMxUDJ2\nUUVyaTBKckhZeXhZaDhCTXRlMklrcVlSRTNEaUhkY2ZCMFkgQVEgZUh4S2o1R2RE\nV0svbnErTmxodXE2bUxJK3lla2lvajB3OXVwZHJtcHU5dyBKU3I4WFJnK3BOQXl0\nZDh5NTB5ZFlteFJIM2FVTVp5cmNyRXZqL1V0c0l6L0tSb0c5ZU9jbmRXMTIwb2c1\nQjZsREgzWUxaOXBUd2pQK2NncDZuUmZkZwp6dFcya2g1ZDhGUFBoNmpUbHZXM3J2\nWlJQZk5pK0phenFFSC9Wd0EyZkNBCi0tLSBteUt1SWl1RUxlKy8ybzFOdjF6RWR5\nRWJHaE82cFJndVp1Mm9KY2Q2eVhJCutrqRxeYIAc+DOifV/mQY5ulJu1GiC1h1Si\nHAwNDb1htxx2sNagbptTY9p+xLDq8K7a3hsz0QVpaBsJNoxWKgE=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqpyewum3q8dfcumfgec8nn958aec9f4q9aqy0k06kw5kq27d6fdqdgp0p7y4ru3n5xk90u747xevxa2af3v37e85j9g3axrmw5hdwdfh0wz22hut5vrafxsx26a7vh8fjwkymz3ramfgvvu4detztu075kmpr8l9ydqda0rnjwatdwmfgswg849p37astvld98s3nleeq575azlwc2hhpuh"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQWlVjRnRVU3d3RVBKN05G\nNzhLWVZYT2hvenVRaVBDV2RCVytFT0JZYmhFClNHQXZkSzJLOVh5L1RvVTlwcUd2\nc2lnUlphRTVuM2NRQlFvc1pmZVVOazgKLS0tIExZY2JMdURsOXRMUFZHZTNidkJm\ncUh3WDlCZldBQ25xUGNlZjJVVkdHa2MKndrWE2TeZWoYq+Kxp522uYjR4YvirLBr\ne0frL7CACO98TOMq49L0hh6Juxe5KQ5k2G44Cf1hhD7Y1/Qcz1szGw==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1hlzrpqqgndcthq5m5yj9egfgyet2fzrxwa6ynjzwx2r22uy6m3hqr3rd06"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAvejJCaEZ4b2txMGROWjhU\ncmxHZlVjb3QwajF2ODIyaEpCQ2FwdUFpTFg0CkYzeGZxOTNIN2hzOGxpckxRWDZz\nbzRUbDlhd0ZhQjJBTEJlbFM4bU8vdncKLS0tIHN0bXQwK1hGUndMdUlKdmo5d3Az\nYUo0OXN3NlJHdm0vNWdISzVJSmV4bzAK6EVUa2EMsnHbHGHDQtfQsevKKnRh9wX2\nwCrhpQ3xfKCTWmQSQP/Dv+RBWxnpVYFp3GfEwdrk5eDNflwcUKaaRA==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1rwjdv7w6c3pcjx3wctk9xekclml8zwtj39m4hfhsprrx5x2lqphq6tuham"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBDS2sxUnhpcW5ONXduZ0Zx\ncHVySDF4SzN3YXpkZ3NtbVlBck11QmNxQjE0Clc0allyY3lGWUVOZmxMTjRnbits\nekJhQVJIRWdJV0s4bDE1TzVmTEFPRUEKLS0tIFRlTkRaRTluSWNmSHc4T3VTS1d2\nN0FnQ1Y1MXN5UUMyUFJ0ZTdYU0djaDgKonF9QvcEBkn6UUgFiAdo+CMSt31711aw\nP9M1NXsE0PJONO7UwVNV6Wvn/zdTEIpuGX69iVYUoKou/01k39Abig==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1sg0rvgyetdcqw7j2x983fh69kdkvqsngpe5x36e5920qa7fze3cqhj4wgx"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBieGppait2ejNzWmZzWXp3\nbWw4MmQ1MUR4MGhoc29Yck1RaVpvcjF0d2lZCnVweXNsZHpmQ0NLSFdpRWZ4OEk5\nUU1iRitlaXRGaEVzUGNTeFFXekljT0EKLS0tIHFLUksvSHRmVHNlTWZtK0pXc0xv\nK1h1TFNtR3kwMFJYNE8yWWpOTWNuTUEKdOYdTaFtZaz+EZ1E8K1nhunMNtyeHRcu\n8xlKlPqgpj4mwYM0Oz+fQpspMC7tAAA7BMyP5AaEkscVBYXXj1PCxQ==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1swlyyk2rzvevqawyeekv75nx2dz34zpe3xqhkqme26gcgeavy4dqrfpcd8"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBaZ1Awb0lLbnNMdDBXUDFH\nbllJMHdWNzRKSzdQUkZOVDFZeHFnZzFyTERnCmh4QVQ4SHdmSVUyRWJmVmxBcTBU\neUpxYWhzWGxmNzVUeWVjdm9UZHBtWUUKLS0tIHB3TVNvRWxMV0MwSzhTRnJ2U1No\nRTA3WFZtbFZWWTB5T00xTW5YYURmbjAK8m1P48FewozGCrto96P3nRPMKRjDhr82\nh1ECEV9qT3qeNVPVFH3tUBpMORRje3u/aGy5B69miWmCXADUUVoTfA==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1vphy2sr6uw4ptsua3gh9khrm2cqyt65t46tusmt44z98qa7q6ymq6prrdl"
}
],
"lastmodified": "2026-05-26T03:27:07Z",
"mac": "ENC[AES256_GCM,data:gX8e9W1nDaYOUN6/O0X742Zxm7YMdFN1AGyPTnyu/9ux3TAOxui4MqTBVFCLBX1MtyC/l/UHIElQq75MpAn2YJOix8gsFpEKU8RTFf9WkUdwlgoEtKgX2ufRCSCbb0uNngl2U3dQmNtKqJsTsbTSH+PAKci1gJBTxUqfRDeCTP4=,iv:0dRb3r3OfWhqQCCUp05dVygLPUH44Wfo96O8tW+O1D0=,tag:g1TRzqvu63sJU29baqHiBg==,type:str]",
"version": "3.13.0"
}
}
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/saturn
@@ -1,50 +0,0 @@
{
"data": "ENC[AES256_GCM,data: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,iv:4w8T3AQsc2DIkIPoZYFbu0VD0vF3C9YT1eLMRUfeafw=,tag:8Tp6HN8JwnnetgL8GqHvJg==,type:str]",
"sops": {
"age": [
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBVV3UvQUR4eGpkclQ3Zmxh\nK3I0aFJBODB3RXM0WWFHOWk4VWNGOUg4WWljCnlPMTJHZlQ1MVJjT2RFMHZIYlN5\nWHRldS9wQkVlUEZSMEhJNGJCVjhaQ1UKLS0tIFRYdkFrck1aQlFjTXBvUUd2OW4x\nQTV0ekRKdVhjQ1didmJUTTNMcGMwaDAKULrPt6GFK2G1Csqb6jnYBe0dbbnRlNPh\nztvfd28VAQ9ggcho8+lBZrJ+419QKAWNuc5uBThpTNBYwSP91l1HMQ==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age134vt63pjqpd0m7702fyn8vhdlzyj2deqc2q78sp9uw9052kxsgwq6d25ez"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBTR1c2b2prWGZob3djTnRw\nTDRzZ0tBUmFTOWxVZmcvanFnR0xIdnJjRGhjCkVQNjZhQjdXSEpXYTBpdlBiVWV1\ncHlMT01NQUc2Mmh1dnZkNVVEd1p0ZEUKLS0tIDJwZlNpR1dqRExXYzFYTEJBQkk5\nQXhKaUVQWlBpbk1NZmFpcWpIRStDWHcK9uD+tFaTqeBRn6a6YL5pHKUrkMX2cprF\nzQrD1j6CtqfyiNx1rlhH2RXyGxkKA9uzH5l2V0dkmTywPephd/RzAw==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age17d4qt0n9edq57tgcqyk8eu5mrendl59yt6z2y3a4vkq7el8krqtq6lq28g"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIGhlRlFER0E3\nbVdFc3ZFeS9GY2dHRzNaZ2RXWVlFL2wxQkVObE44Y0tva28gQVEgd0l6SlBCVW1v\neDl5N0lHYmVrajZzVzVTYjd4WVdNVjZoZVlkUEtmVXlMdyBIdmtoczF0dmhxL1py\nS1hsc0ErckdoVVB0bE02RGdCNW5raERXT1ZJMTkzNjRGNHd2T3ZSTVYrKzZlbEll\nVTZKc2JVN1B2SzRuNkpaekhwSWJQaFZVQQpHdm1NL1ZORVJYQlBuUjJOZzJxZUYw\nVklUMW5sOE94Ri85WEU5Vk12bGNRCi0tLSBLUE56MXlOSHlzU04xblZHZHMxd3kw\nOFBVeEFxcDMxcUpQL1hsOWFranNZCnicIoSdWq971/V6CoVicFoOPBXhZTUwOeT3\n9Ro+utdXO15lJNqlnwWEk/WIZ34hgYoNx0eY+fP7cNvlkfBIBpU=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqpf43tgcfjm048lsqskvq34w2t4uvrm5qy6m2eg6zjj82ctca8wctgpczxvj0q4y6337uhvsxdh5j86k9h9ymautpvv2759ucwnef75ez7pa7fpkddklp40mxk2tedsp74359g0kefn5rsq0x0yss6cu4yd0h06up0rp08t6yc4l0hfa9y8jn5fkx6nk0hjhz06ykwv0fyxe7z42q683jy0"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIGFRTEI2T0lS\nM1JkVC9HZHA3QjAxVTVSQVI4SXRnVHdxM1RhdXRrSDdBV1UgQVEgZlFBRFNyWkNS\nRDJQaUJ3WWowTEcwaTk0Z0tiRHpQNmhkMTJZUlZHbHlEMCBtMzE5bzVQb1JmZkpy\nY0orbEs2RzBSVXA3UmZYZkRRanNnc2pHSnJjK1pLVmZOWGR4d0IwZjh1YXlkakRx\nTm5EMXR3ZjNHWGl0Ty8rcHpQbkcxRTZmZwo4WS9hZDk3RGxRMjgwZTRIcWUyM1c4\nY1ltaUdVRDZoUzRkNzNkZTl1ZHZvCi0tLSBVaStabFBRR3ZSZHdhN1NTaG1kZFcw\nYjJVUkxUcDdYMnFISjdBZDl0TGY0CpUjouggcmDscgaFW3Nn7dLnHsifbx1iX1FY\nIdm+bkmEcyIpU3WoZrQP/l380xb+qfu2zgaCoSijtqiO2zfavZs=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqprw0vfpc8wzsu78quc777kmee54ln6nnsjrnrhl7nr33eh4kvkksqp05qqxj4kgfzrmrugrsvg7skx6ghh3q9xc0x0agthtkvy25d9eq7eklta5wf7s30hexkuyl5546rdz9ffa5tawlp5yweqkgccntw0ny540n2am3cqw3luhxkfmrp63kwr6mwplhr9u26wll48x0n3k5f60c7hg9a3"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIERNVUQ5bGhO\ndEVyRW9Oc1oyNXNFK3htWW9GOFhyYks1Y0VGcTdWRWJBRTggQVEgZUh4S2o1R2RE\nV0svbnErTmxodXE2bUxJK3lla2lvajB3OXVwZHJtcHU5dyBKU3I4WFJnK3BOQXl0\nZDh5NTB5ZFlteFJIM2FVTVp5cmNyRXZqL1V0c0l6L0tSb0c5ZU9jbmRXMTIwb2c1\nQjZsREgzWUxaOXBUd2pQK2NncDZuUmZkZwo2RFNnRXQ4dS9jWDNDMEtwZDYrNUNx\nSXZnUjllLy9KTWM4UXcrWURER1hzCi0tLSBSY2ZGK0lwT0xISE1WMysxdlZvMUdw\nZEQ2WXUxVnU5c2NkV3BCRHBjVFc0CsrhRu9UfTcYjXhuTyNeIdcSWPlIfyEDYbkP\nco0a51q8aAcFdR+KAiK9Rm5zjEe5GQdQyTuT76CQrpjN/Kn+T1E=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqpyewum3q8dfcumfgec8nn958aec9f4q9aqy0k06kw5kq27d6fdqdgp0p7y4ru3n5xk90u747xevxa2af3v37e85j9g3axrmw5hdwdfh0wz22hut5vrafxsx26a7vh8fjwkymz3ramfgvvu4detztu075kmpr8l9ydqda0rnjwatdwmfgswg849p37astvld98s3nleeq575azlwc2hhpuh"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBZT0thTnowbDlENFRlWU1o\nYzQ1Z3pVUCtKTGFGOS95emZYMW15NXNtaWswCmxzTFJFYVUxS2lZY3F1Q1ZUYi93\nb09sK0xVQUIyNHFwRmw5YXhiTmdDYmcKLS0tIFkwRUR4MGdPd0cyWjZRTHAxSld0\ncWRYZkwyZFlRMnlpdnoya0FzUzhOdzgK9UJTNPLfiTbr4lu8/18DkFjg/VB09QPL\nTfmsTfUfQL1I4XsIr5pNE1OsK/flQW+cuyHgp2CFW0A2L/SUNhr1aA==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1hlzrpqqgndcthq5m5yj9egfgyet2fzrxwa6ynjzwx2r22uy6m3hqr3rd06"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBoTGREVFRLMStrQkI3RHQx\nek1KcW9zTkNNZG9pcSs1T1FpMFQrZStGQ2t3Ckp1QlVrQ0NQQkg3VGVJRUMramNh\nTUpHditqMFZvMjc0UisxUi9aVmJTQTgKLS0tIDAzMTk0dExLY0lheEkwQ1RGclNj\ndE02NkZwZEpESUdXUXJmMzNaTGhPR0kKxhvfkmaw7y+/1yJ7R1EE5GfHhjZkOmAm\n/VHPJmPh8vM+bCiNa3SCajbQx2JR8ieuDlCvmDF6xh4FY78t3WL3qw==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1rwjdv7w6c3pcjx3wctk9xekclml8zwtj39m4hfhsprrx5x2lqphq6tuham"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBLWVlHbTVyZEJtZ01NL2hN\nRjNFbnZjNm1QWXBjbkZaTmNCTUZEUkhQaHhFClBuYlZBOE9haEJGSDlxbWxWb0F4\naEtXNXI5ZWxNM2RIcEN4UWRGNWRMQ0UKLS0tIGZYMWUrQXNNNlF5UDl3RlJwVlA5\nRjNFYTdyTG4wbnFYRVBXL3pPMnR5VkkKV1VbMhBt/FDPlqPwmWTeyx53UVET85Uk\noWsSo9uCdoop2u8uuUlx4F6YfJKrAycfjlkdlsYaYzjpSvnj3iUEkA==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1sg0rvgyetdcqw7j2x983fh69kdkvqsngpe5x36e5920qa7fze3cqhj4wgx"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBvU1h0cmJqdVpvZUpBaElr\nQXMyUkpiQ0NjaW42ODNSaCtrR0o4K0Z3MkN3CkM4WGtJUEk3Ykl2VUZEUURpcW1X\nd2tDS1AzbGd2WjF5Y2U3T05HbmVpS2cKLS0tIGVSV0IzQUtSQVpUTGRtZ1FOeGIx\nWHZEMkpqVXVaV0RjTGZIbjhNNlFvZjQKv0mMDLmTjZoOHvTtf2zgCYFdMNpvj+3A\nkkw3UmhB21HgAGQkmzd8UGAygxa1qImx6VaHnStDNDm0XyGG3W7PAA==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1swlyyk2rzvevqawyeekv75nx2dz34zpe3xqhkqme26gcgeavy4dqrfpcd8"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA4aTl3dHdIb0gxNWlWUlVz\ndCswWm85RGtZNjFiM28zU3pCdlE2cUxNZ1h3CjI3TXNPOUNnbDJmL3J5Sk5HUDZh\nc1p3Rjd1U2lKR3ByZk1WRThRQWFZL2cKLS0tIFY4UzZzbkpIS3R6TnZkMzNkSXpp\nbFlHWkZUTWVZM2VtYTFsWk1uUzM4WlEK4yMWsHUXj0OZ6VCYrLcs6WN5B43+v3OM\nZbj+fpO5skBEECJiLFl+j/R8QmxSxK39XDhok58qzKdTmbOcwgCzFA==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1vphy2sr6uw4ptsua3gh9khrm2cqyt65t46tusmt44z98qa7q6ymq6prrdl"
}
],
"lastmodified": "2026-05-26T03:27:33Z",
"mac": "ENC[AES256_GCM,data:njDuzpdCsv89fDOYu3Io/18+0RaqieZYTDyiyyXTcoKcUC3YBqEnStkIRs8ZvcnrxQy9BrwfgF//duuVIbfqhcJ0bIAsFh8zEVeY2ngk/ZX0z67bwyaBOcmdNt++ko02ErmBE2+J30SnBwh9QDIgd5Kvwqo5oT8TdInyc1Cy8XY=,iv:20ASPKRmRmg55KHqB7eJPslA7pjdHXSDeCmmGOgJEfw=,tag:aDmt+KLfzJUK7E54C6cekQ==,type:str]",
"version": "3.13.0"
}
}
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
bf85ac49a9ca2ef42c1fecb96aaf75f70ede8066d7143f47e8823c156a20f625
@@ -1 +0,0 @@
ssh-ed25519-cert-v01@openssh.com AAAAIHNzaC1lZDI1NTE5LWNlcnQtdjAxQG9wZW5zc2guY29tAAAAILzi5upsOE57cZ/QHbpKnusxdIihsk9mUwn8bzNcYKJCAAAAIOjTCeip5Z5y2GX4iCg5oD9Tu1QDdUuqHpGvNekdIBv6AAAAAAAAAAAAAAACAAAABnNhdHVybgAAAA8AAAALc2F0dXJuLmNsYW4AAAAAAAAAAP//////////AAAAAAAAAAAAAAAAAAAAMwAAAAtzc2gtZWQyNTUxOQAAACCH0ihJXtD/Ff8S+ANZV8eZbgwjI6/H3sfP3NZdzzJ6sAAAAFMAAAALc3NoLWVkMjU1MTkAAABArn26JYf+p+y5mU2GNEAdU6253KDluEFH3fpX7KD9QFFT7wAp8cOADRvUM0j2QmOyDQ6Us0XJKcocloFWUTPXBA== /tmp/vars-gzwzfdn0/in/openssh/ssh.id_ed25519.pub
@@ -1 +0,0 @@
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOjTCeip5Z5y2GX4iCg5oD9Tu1QDdUuqHpGvNekdIBv6
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/saturn
@@ -1,50 +0,0 @@
{
"data": "ENC[AES256_GCM,data:iPpqJYfHaHwQMP2V3UIuS8kqKYWay6i/BvNPtzj5qQtZ/groDI/dEmaTZWffDlU2Qh2roDM4HC2J2ZlxFcFgnKPUYbFQzLX72OZpT/nbFsFaLOWSCr4TaBckiAgxp+xqMZiyJIpSKwlAs+z57WrFQDqi/9fW7mnFu0vYc7/t7SrhLqB4JA9BprH4r6eyBC+wln1sSYHM1Lk1szvYBj3Q3MmqhDAgazjRb7tKKthwahYfB9B842YXOGa7/3He7DMZe1iv3wbpJUgmHEcRptZ2hALGQzIwGnp/tin/OflwPLf91//E/8VPmW1UIiOEd/iDZDYD6Pe4GDCnQM3i58j6/c4ka/IS1YFIbx+0Ng1BG5pkcxTrGUOwITJtltqF9F/nnB6K9FQLR3wan5tB+QoE/0VBO7aRZkUrhYlCtmTOQmNf3y9snztWIAs5T3m7eYoYXIe+qYDACUtn5x27VNGJnfhGPQlJuMucV04mx+UIxKxEVi63Z2wPj654qm62wg9Jxqx/,iv:ojmIUk+Bq6gRhJE0uL9i/eLp58SflWpFF3djfsYUsA8=,tag:3ljSh1+Rjd9VWUaqs6pB6g==,type:str]",
"sops": {
"age": [
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQUlVGclp4WUkwRWhMOWxK\nOXFvVXhPU3NUdEExRkQwdnRWMFc1cXgwRGlFCkkwZ2V3aW5XWDVvZWhxZUt3aXpx\nZ3RHWXA1UEZ1OWcxYnNoTDBOemgyMzAKLS0tIEdIVU1YOEYwMjBVZjNrTE9rWHZv\nT0dDUVl5L0tvbXFFTEZZTGx3Zi9vQlUKJ3ZIDwBV/MLIE3h+mmU9IOhbPvEgY2PK\nqF/8lj2TllNjSojGfRhRneu8rdfJN7wdzz8OAIpY7FHG0btl91Wy1g==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age134vt63pjqpd0m7702fyn8vhdlzyj2deqc2q78sp9uw9052kxsgwq6d25ez"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBOeUxkTmJBNDNYTDErSEwv\nQytNSnZhdTVXMEJUVXhGRndMUmh2VWhEcGlrClBMaXVpMFU1Yzd5ZTcxcXk2NkFU\nRVhoM3lEV0J2dWtlcFZyeHpicmhWYW8KLS0tIGdwaFh2blRNdjhkR1g1RUFxaFFs\nWTdQTzY4aUh5aHR1Ly9Ca1VzQTFHY00KlTK93OZ8hYQB5HeaiEaIUd2Zv3VQEaUX\npMZ1jhogXp1xYAHZVJg0xZMKzDH9Z34URrsmNcd4U/zyOr9MTrlkCA==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age17d4qt0n9edq57tgcqyk8eu5mrendl59yt6z2y3a4vkq7el8krqtq6lq28g"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIFY4b0xDdlZD\nRS9iZkpBSTFtRDRDd1JOc29aTlExK0ZrSkFRWDRML08vQTAgQVEgd0l6SlBCVW1v\neDl5N0lHYmVrajZzVzVTYjd4WVdNVjZoZVlkUEtmVXlMdyBIdmtoczF0dmhxL1py\nS1hsc0ErckdoVVB0bE02RGdCNW5raERXT1ZJMTkzNjRGNHd2T3ZSTVYrKzZlbEll\nVTZKc2JVN1B2SzRuNkpaekhwSWJQaFZVQQpWVlIvbjdQcFZUNGp3d1g4cHA4OTZn\nUEZna1R4UFlsazdiamk4N0pUekFrCi0tLSBRSkltNFI2cUlXUXAzYlMrRm5aRWd6\najhLd2lnclhaYXpaTWZQL2JTb3I4Cp7nfTx5aXdIS1Ue91Oa1amCcw1E7BKoEJ8B\nynyV4ukkR9fzlpcmMhP2R/pQkQXIpJYzA1NCmT/juVfknVerQlg=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqpf43tgcfjm048lsqskvq34w2t4uvrm5qy6m2eg6zjj82ctca8wctgpczxvj0q4y6337uhvsxdh5j86k9h9ymautpvv2759ucwnef75ez7pa7fpkddklp40mxk2tedsp74359g0kefn5rsq0x0yss6cu4yd0h06up0rp08t6yc4l0hfa9y8jn5fkx6nk0hjhz06ykwv0fyxe7z42q683jy0"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIGlHdmN2WFRz\nR0FkVFczK0poOWhESnhaSnlFaytIKzBaNDhCL0QrRjlTMTggQVEgZlFBRFNyWkNS\nRDJQaUJ3WWowTEcwaTk0Z0tiRHpQNmhkMTJZUlZHbHlEMCBtMzE5bzVQb1JmZkpy\nY0orbEs2RzBSVXA3UmZYZkRRanNnc2pHSnJjK1pLVmZOWGR4d0IwZjh1YXlkakRx\nTm5EMXR3ZjNHWGl0Ty8rcHpQbkcxRTZmZworOVBENCtCdXlhUUdVcCtsRGptVmpK\nTnJFNnpJUVZKVjdqVVljQk9tV3hrCi0tLSBVc21IVGt2ODlYbkQ4emdzbUgvTi9n\nOUorNjhLdmg5NVFpSE81Q3FPVElNCn2RrXMgyg/JJMwyNrVoAmoxfuYwQlpErPp9\nrk2i59aJmGy8FTkW1fNjm5GCXp8oAije5jc2QWiS8R4r6UlMWO0=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqprw0vfpc8wzsu78quc777kmee54ln6nnsjrnrhl7nr33eh4kvkksqp05qqxj4kgfzrmrugrsvg7skx6ghh3q9xc0x0agthtkvy25d9eq7eklta5wf7s30hexkuyl5546rdz9ffa5tawlp5yweqkgccntw0ny540n2am3cqw3luhxkfmrp63kwr6mwplhr9u26wll48x0n3k5f60c7hg9a3"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IGZpZG8yLWhtYWMgQUFJIHZZRHpwMGs3\nYlJaejA5VmNtR3ZZT3NqODdOWmhaS3phWFhhaW0zUUNjRWcgQVEgZUh4S2o1R2RE\nV0svbnErTmxodXE2bUxJK3lla2lvajB3OXVwZHJtcHU5dyBKU3I4WFJnK3BOQXl0\nZDh5NTB5ZFlteFJIM2FVTVp5cmNyRXZqL1V0c0l6L0tSb0c5ZU9jbmRXMTIwb2c1\nQjZsREgzWUxaOXBUd2pQK2NncDZuUmZkZwpoNGFobnJ4VXdSOWpOVmdXNHlMVUds\neFp1Wk9SQ2o0VFdFeGEzbDJkZ2FZCi0tLSBRd2ZZamtBU0Z1SnVaVWhqQmlkSllE\nbi8rOHBHMkVnL1V5djJFTlhlV29NCshp+t6BEHuP7JrdxOeSzB0XEqyOYgajgr0V\n7BvJZowucAuJ6nyzdiKdITUDgi1rSFoJGdhlVWH0qcxI7k9chfI=\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1fido2-hmac1qqpyewum3q8dfcumfgec8nn958aec9f4q9aqy0k06kw5kq27d6fdqdgp0p7y4ru3n5xk90u747xevxa2af3v37e85j9g3axrmw5hdwdfh0wz22hut5vrafxsx26a7vh8fjwkymz3ramfgvvu4detztu075kmpr8l9ydqda0rnjwatdwmfgswg849p37astvld98s3nleeq575azlwc2hhpuh"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA2RVhUamNOak9vNmU0cFh6\nUWRyTitFRTk5UzB0WlJNdHN3NHNoT0V4T0VrCjdTMVhucmNvd1RqRWRqcDIwVW1Q\nSkNXM09McTVyQTFCYkZZVVMyQ3FQbFkKLS0tIHdvWUVxVnJYS2hyeG5uZ1ljMVlG\nckkwU1NMdVJIOFVlUk1LMTNUYysvbDgKUyM3bTgzTIpUCbykR4wnH68FM+U7DZW9\n493MqTbUmzDUDkujxaxo1epuSJPwqA4o5vIFVs0GJakBrH1m/ZtPmw==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1hlzrpqqgndcthq5m5yj9egfgyet2fzrxwa6ynjzwx2r22uy6m3hqr3rd06"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA4UEdFMWFrdzNtaDNseTNs\nem9UWVd1TlBOUHVOSFF2L2JjekFYMDlFVmpBCjlWSlM5b3Rwd1pheFh0YWtQTEt4\nQ2JMcTMyZXhiVWh3TVhhUGtDaExrS2sKLS0tIFJ5TjcyRmEvZ0RFMVc0RUhlV3FP\ncG54YWlMUnFzWTNpZWZmUkRmb0dGS3cK0Hetmvc0ZkavkzM5yHOCZTCveEoGC8ez\n64WTB2uN4oxZTcozCNgF1l1x5VSEA2RV3W8LJs3AV+PWd44dIGJsZg==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1rwjdv7w6c3pcjx3wctk9xekclml8zwtj39m4hfhsprrx5x2lqphq6tuham"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBZZFJldTRHTnA0NVBtekcy\nYmlBRzA5T0pvZnlTWUk1eG1rV0haVmFDVFRJCmZzaXAwT3pSN1pnVFRPQVRBNFg1\nSXVtQXVFZlFVNU96bjRIZ3I2QUMvSG8KLS0tIHd0anc3TGNxdDgwK3dVWlRRTVVJ\nRCtYY1R6ZEVGSHMySHh4eGtrZVpBNmcKAagooATeupLASfQJ3C5vR97UGB44T/2z\nqJYkO7l/5x2JEyOUgdp13vCbeb3Q7/vrQkXLvTLuejDPllWmgixlFQ==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1sg0rvgyetdcqw7j2x983fh69kdkvqsngpe5x36e5920qa7fze3cqhj4wgx"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBucmxVTTd6NHl3alNVOTNo\nWUFabmRJNG92WW5TN21PYzZlalJmVlQ3eGswClZCazVuN3lNZTFKUUsvYXllbTJF\nUkVuazhsUk1iaUxwRW01bFVJUkxqVlEKLS0tIG1Mb1JzK3EzVWxyWENFTVZWUDJG\nQmpRUkpJa0pmUDZmZnhuSVV5VzNMVmMK0T65wlOgUrXhfJro3pKWsPnQuMatS/H6\n2zTVkMEHayQuYIyLVZfs/OUHVAZeDqHVATNNw8oDvI+IrmHEy7WUKw==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1swlyyk2rzvevqawyeekv75nx2dz34zpe3xqhkqme26gcgeavy4dqrfpcd8"
},
{
"enc": "-----BEGIN AGE ENCRYPTED FILE-----\nYWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBsOFVPV0VmR2luSnlIMndB\nai9wT3lKdml0QzZVMWhNYzdRd0JsNC9pMzN3ClVmQ2REMmpWWVdLR2ZISlprdGJG\nNW9tSTFRZmNCeVlGcC9kb3JSSDFJZWcKLS0tIGZsMVoxQTBwSVROT0xlYm9wQXRz\namRZUUYxQ04wZExlK1NjUWdBRmdENlUKaw4O+Cuuibu7PDf2TRV2qp2ryJwD2ZFs\nNdFqr05uAWNCEFuF3wRf3dXp/hb5UiGT8NYQCSuBUcQtQRbLMpzURw==\n-----END AGE ENCRYPTED FILE-----\n",
"recipient": "age1vphy2sr6uw4ptsua3gh9khrm2cqyt65t46tusmt44z98qa7q6ymq6prrdl"
}
],
"lastmodified": "2026-05-26T03:28:11Z",
"mac": "ENC[AES256_GCM,data:j71mzYIMIwf1gdpoUOlyYorltmsM/9VczuW/Khl9cd35eMszH/Z8BSO+WZp7b0P91XRvBv+OZWRCMAZpxB+7QpYaXE1q7Yj/BTTWHI4ew5nCrIOsLdvKWcuahVoiwsm8mOSrT/GNkG1hOIASn4/oeL7dYUvbIkmhXHbmw4xC5Ys=,iv:fOei5X/uX0SFPP3tyktYkVRNW+ErJ6aglB3jTAIw6bg=,tag:WLV7CfZ5fOGFvA1APQYE9A==,type:str]",
"version": "3.13.0"
}
}
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/saturn

Some files were not shown because too many files have changed in this diff Show More