Compare commits

..

1 Commits

Author SHA1 Message Date
26068a9dc5 feat(programs): add jujutsu(jj) package
All checks were successful
Flake checker / Build Nix targets (push) Successful in 9m27s
2026-02-17 12:05:30 +05:30
48 changed files with 270 additions and 794 deletions

247
flake.lock generated
View File

@@ -217,11 +217,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1770895474, "lastModified": 1770411700,
"narHash": "sha256-JBcrq1Y0uw87VZdYsByVbv+GBuT6ECaCNb9txLX9UuU=", "narHash": "sha256-VpeOlyospHF+vxE+xEGEy0utMN0d/FUDvD2dOg9ZiIo=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "aquamarine", "repo": "aquamarine",
"rev": "a494d50d32b5567956b558437ceaa58a380712f7", "rev": "b91f570bb7885df9e4a512d6e95a13960a5bdca0",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -436,11 +436,11 @@
}, },
"crane_3": { "crane_3": {
"locked": { "locked": {
"lastModified": 1771121070, "lastModified": 1770419512,
"narHash": "sha256-aIlv7FRXF9q70DNJPI237dEDAznSKaXmL5lfK/Id/bI=", "narHash": "sha256-o8Vcdz6B6bkiGUYkZqFwH3Pv1JwZyXht3dMtS7RchIo=",
"owner": "ipetkov", "owner": "ipetkov",
"repo": "crane", "repo": "crane",
"rev": "a2812c19f1ed2e5ed5ce2ef7109798b575c180e1", "rev": "2510f2cbc3ccd237f700bb213756a8f35c32d8d7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -521,10 +521,10 @@
"crates-io-index": { "crates-io-index": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1771515523, "lastModified": 1770742742,
"narHash": "sha256-5S4n9alO7MVlHawzeX0d7vpWzTIULWic3+1MPNUcqVM=", "narHash": "sha256-UbbBZtLHnTEb4uQK6Bq/ISG+awckYSMupZ8xscuFG0E=",
"ref": "refs/heads/master", "ref": "refs/heads/master",
"rev": "bba640d9c272da3c4ad7e8050ee072703cf99567", "rev": "54ba84454081fb1af67158516b80d26ff62ed86c",
"shallow": true, "shallow": true,
"type": "git", "type": "git",
"url": "https://github.com/rust-lang/crates.io-index" "url": "https://github.com/rust-lang/crates.io-index"
@@ -558,11 +558,11 @@
"csshacks": { "csshacks": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1770817581, "lastModified": 1770449357,
"narHash": "sha256-rDuTVA5WvHwYsZTk4GOPQ0zvpynVU0TeuVGeg5ihndE=", "narHash": "sha256-GwF3Z3ZE7zEQiZ8qgUZOVY4TVYdz4V9sKj1b3A0vKxc=",
"owner": "MrOtherGuy", "owner": "MrOtherGuy",
"repo": "firefox-csshacks", "repo": "firefox-csshacks",
"rev": "6fc627e1cb85723fd71dd33004a3e48a13566dd2", "rev": "4d1fbb167913664f8414d0211078ebd271af5762",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -684,11 +684,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771421933, "lastModified": 1770733463,
"narHash": "sha256-Svu784sqcgeb8cmDaV9UZh3IqaFrReTab3TdRuRoyrI=", "narHash": "sha256-LA2SmNxTEP1MM1K44ADc7P+VtXxCJNHYqpIHjWMv//A=",
"owner": "christo-auer", "owner": "christo-auer",
"repo": "eilmeldung", "repo": "eilmeldung",
"rev": "2e4d5a6c29541de57062ee6194edb58e9f570825", "rev": "30b28cbc3795a7f71a137a61cee2c2e76a2b9464",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1527,11 +1527,11 @@
"zon2nix": "zon2nix" "zon2nix": "zon2nix"
}, },
"locked": { "locked": {
"lastModified": 1771513100, "lastModified": 1770681729,
"narHash": "sha256-NbejFbBW+h5RbqKY3DUPaEk1Z+jsgVVwZNcc709RuZA=", "narHash": "sha256-YWvUP9K+K34t8wgEksXfIWjNoAdKaZ2g94chE6ruN1A=",
"owner": "ghostty-org", "owner": "ghostty-org",
"repo": "ghostty", "repo": "ghostty",
"rev": "c11db662e6f514350cbd8fcef06f81dc95260d00", "rev": "41924c2d0ec50a4268250b90cf46d7b4e60b61ba",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1684,11 +1684,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771272718, "lastModified": 1770567116,
"narHash": "sha256-3m/58a0IuON0JRupQnyxhEgp2fHVFVNluRuG1iZVTbg=", "narHash": "sha256-jM6Y8cZJRE62YPekbWn92HJaPBW99ddOXsyaXiLEdxI=",
"owner": "tale", "owner": "tale",
"repo": "headplane", "repo": "headplane",
"rev": "9183ec294244a5a2c2b0c05f4629d7aac68eb120", "rev": "931a7f8d142655744087896dca1b0495a1f94379",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1746,11 +1746,32 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771505064, "lastModified": 1770654520,
"narHash": "sha256-lh9rF+C/nKFyWAqbHIa6tK9L/6N0UaQg7zw15aP4jBM=", "narHash": "sha256-mg5WZMIPGsFu9MxSrUcuJUPMbfMsF77el5yb/7rc10k=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "a0a01d8811fd5e99e003078ed64a0e7b531545dd", "rev": "6c4fdbe1ad198fac36c320fd45c5957324a80b8e",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"home-manager_3": {
"inputs": {
"nixpkgs": [
"zen-browser",
"nixpkgs"
]
},
"locked": {
"lastModified": 1769872935,
"narHash": "sha256-07HMIGQ/WJeAQJooA7Kkg1SDKxhAiV6eodvOwTX6WKI=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "f4ad5068ee8e89e4a7c2e963e10dd35cd77b37b7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1865,11 +1886,11 @@
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1771463568, "lastModified": 1770736405,
"narHash": "sha256-QblR2JnpK8x5oqabLtLTJ7HdmEI7uc57pC3/ZMfd4eA=", "narHash": "sha256-8PO3KC7WRVQLXLgosKY4pgXkh0qTiQFyBVDkE0KiEGE=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "Hyprland", "repo": "Hyprland",
"rev": "a1e62dcb12f5547ccb786b34a46ae60ca78ec5e7", "rev": "5b6c42ca70c3fbc0986760c2d0be8ab7c8b833b9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -2240,11 +2261,11 @@
"nixpkgs": "nixpkgs_4" "nixpkgs": "nixpkgs_4"
}, },
"locked": { "locked": {
"lastModified": 1771348869, "lastModified": 1770408363,
"narHash": "sha256-v6joie0zC6omgEpb6QQxCrNi3psVg3K0SJSJyRGeOpQ=", "narHash": "sha256-ocMI5t0EBxao7dRRnQi7Aa9jpBvtSZmOpPbXx8fbOjw=",
"owner": "JPyke3", "owner": "JPyke3",
"repo": "hytale-launcher-nix", "repo": "hytale-launcher-nix",
"rev": "0e4dfdccdbb0451ea478a19bb6d4d8e2192db9f2", "rev": "89db7a709e20525f145ea8ba729f32f8c6b43ac6",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -2261,11 +2282,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771485349, "lastModified": 1770650416,
"narHash": "sha256-7bLg+n/O8oOf8M9+C1EAlt6sbWAl+Nk4INAIDRt1yo8=", "narHash": "sha256-VlQQjYBxJZs1Xy9MxfCLhsskhmNVhoIvjrnsFFqTnPg=",
"owner": "ikawrakow", "owner": "ikawrakow",
"repo": "ik_llama.cpp", "repo": "ik_llama.cpp",
"rev": "b855bf92de0e5500c0a93160e41d320ba75e8e6c", "rev": "1fdbc0dafed3d3e6fae0adb14e08f262d7f412b8",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -2284,11 +2305,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771406976, "lastModified": 1770318091,
"narHash": "sha256-LEOtGcM8Z7MBGjgJZAQ95+TbFtE1fiM4H8JuiIYWMKo=", "narHash": "sha256-t321ttUF5dPezr7FUXDqAOiyjFq/urmYIZjNKm954Cs=",
"owner": "JakeStanger", "owner": "JakeStanger",
"repo": "ironbar", "repo": "ironbar",
"rev": "d17ee2ac27a30933fc661f8b44822862566e5a6f", "rev": "24369e38ec0bce652d123f8064f99c10ca7b289e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -2307,11 +2328,11 @@
"rust-overlay": "rust-overlay_5" "rust-overlay": "rust-overlay_5"
}, },
"locked": { "locked": {
"lastModified": 1771492583, "lastModified": 1770734117,
"narHash": "sha256-nQzvnU4BGu8dA6BsPPCqmVcab/3ebVmHtX3ZWbW3Hxc=", "narHash": "sha256-PNXSnK507MRj+hYMgnUR7InNJzVCmOfsjHV4YXZgpwQ=",
"owner": "nix-community", "owner": "nix-community",
"repo": "lanzaboote", "repo": "lanzaboote",
"rev": "5e9380994665ef66c87ab8e22c913ff837174ce4", "rev": "2038a9a19adb886eccba775321b055fdbdc5029d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -2502,11 +2523,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771371916, "lastModified": 1770736414,
"narHash": "sha256-G14VTfmzzRYxAhtEBNanQgCNA++Cv0/9iV4h/lkqX9U=", "narHash": "sha256-x5xdJgUxNflO9j2sJHIHnPujDy6eAWJPCMQml5y9XB4=",
"owner": "LnL7", "owner": "LnL7",
"repo": "nix-darwin", "repo": "nix-darwin",
"rev": "aff4c008cec17d6a6760949df641ca0ea9179cac", "rev": "7c952d9a524ffbbd5b5edca38fe6d943499585cc",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -2604,11 +2625,11 @@
"nixpkgs": "nixpkgs_6" "nixpkgs": "nixpkgs_6"
}, },
"locked": { "locked": {
"lastModified": 1771130777, "lastModified": 1770315571,
"narHash": "sha256-UIKOwG0D9XVIJfNWg6+gENAvQP+7LO46eO0Jpe+ItJ0=", "narHash": "sha256-hy0gcAgAcxrnSWKGuNO+Ob0x6jQ2xkR6hoaR0qJBHYs=",
"owner": "Mic92", "owner": "Mic92",
"repo": "nix-index-database", "repo": "nix-index-database",
"rev": "efec7aaad8d43f8e5194df46a007456093c40f88", "rev": "2684bb8080a6f2ca5f9d494de5ef875bc1c4ecdb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -2624,11 +2645,11 @@
"systems": "systems_16" "systems": "systems_16"
}, },
"locked": { "locked": {
"lastModified": 1771469368, "lastModified": 1770520993,
"narHash": "sha256-yGRHre2BINQJBDAyUwxyzvgAce22J4pNdpLS8roo6fY=", "narHash": "sha256-ks1ZFBYlBmQ4CAM4WSmCFUtkUJzbmJ0VJH/JkKVMPqY=",
"owner": "Infinidoge", "owner": "Infinidoge",
"repo": "nix-minecraft", "repo": "nix-minecraft",
"rev": "a708458be9b9421e377c54d86807d3490db53816", "rev": "b32f4325880b4fac47b8736161a8f032dd248b70",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -2787,11 +2808,11 @@
}, },
"nixpkgs-master": { "nixpkgs-master": {
"locked": { "locked": {
"lastModified": 1771514878, "lastModified": 1770742498,
"narHash": "sha256-LD3tS5k3v0/IaRb4zfXfDLzdvC3MfTAYhobzG65dTmA=", "narHash": "sha256-ree7fFZebEUNtRE17RPBLTKba9Q1tzq+8joNVuty3mc=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "4df684f1454215cdd30d33d82eff5762ec302339", "rev": "47ceb79aa04d337054647b4b1340b9224cca4e95",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -2803,11 +2824,11 @@
}, },
"nixpkgs-stable": { "nixpkgs-stable": {
"locked": { "locked": {
"lastModified": 1771419570, "lastModified": 1770617025,
"narHash": "sha256-bxAlQgre3pcQcaRUm/8A0v/X8d2nhfraWSFqVmMcBcU=", "narHash": "sha256-1jZvgZoAagZZB6NwGRv2T2ezPy+X6EFDsJm+YSlsvEs=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "6d41bc27aaf7b6a3ba6b169db3bd5d6159cfaa47", "rev": "2db38e08fdadcc0ce3232f7279bab59a15b94482",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -2829,11 +2850,11 @@
"treefmt-nix": "treefmt-nix_2" "treefmt-nix": "treefmt-nix_2"
}, },
"locked": { "locked": {
"lastModified": 1771467423, "lastModified": 1770545338,
"narHash": "sha256-W0QZgcU34PioiwoSy84usD7En5HIg3TnOta5wli3w38=", "narHash": "sha256-cB/ARkxz+dcGgXJGbBardJdiuzXM/nKbXzZMUDtuD60=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixpkgs-xr", "repo": "nixpkgs-xr",
"rev": "d4e2705e55344cc2c648765eaf63f82731d984d8", "rev": "a491d518a767077a88a8c0c0b512704dc6dccf2e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -2892,11 +2913,11 @@
}, },
"nixpkgs_13": { "nixpkgs_13": {
"locked": { "locked": {
"lastModified": 1771369470, "lastModified": 1770562336,
"narHash": "sha256-0NBlEBKkN3lufyvFegY4TYv5mCNHbi5OmBDrzihbBMQ=", "narHash": "sha256-ub1gpAONMFsT/GU2hV6ZWJjur8rJ6kKxdm9IlCT0j84=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "0182a361324364ae3f436a63005877674cf45efb", "rev": "d6c71932130818840fc8fe9509cf50be8c64634f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -2953,11 +2974,11 @@
}, },
"nixpkgs_4": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1771008912, "lastModified": 1770197578,
"narHash": "sha256-gf2AmWVTs8lEq7z/3ZAsgnZDhWIckkb+ZnAo5RzSxJg=", "narHash": "sha256-AYqlWrX09+HvGs8zM6ebZ1pwUqjkfpnv8mewYwAo+iM=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "a82ccc39b39b621151d6732718e3e250109076fa", "rev": "00c21e4c93d963c50d4c0c89bfa84ed6e0694df2",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -2985,11 +3006,11 @@
}, },
"nixpkgs_6": { "nixpkgs_6": {
"locked": { "locked": {
"lastModified": 1771008912, "lastModified": 1770197578,
"narHash": "sha256-gf2AmWVTs8lEq7z/3ZAsgnZDhWIckkb+ZnAo5RzSxJg=", "narHash": "sha256-AYqlWrX09+HvGs8zM6ebZ1pwUqjkfpnv8mewYwAo+iM=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "a82ccc39b39b621151d6732718e3e250109076fa", "rev": "00c21e4c93d963c50d4c0c89bfa84ed6e0694df2",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -3033,11 +3054,11 @@
}, },
"nixpkgs_9": { "nixpkgs_9": {
"locked": { "locked": {
"lastModified": 1771369470, "lastModified": 1770562336,
"narHash": "sha256-0NBlEBKkN3lufyvFegY4TYv5mCNHbi5OmBDrzihbBMQ=", "narHash": "sha256-ub1gpAONMFsT/GU2hV6ZWJjur8rJ6kKxdm9IlCT0j84=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "0182a361324364ae3f436a63005877674cf45efb", "rev": "d6c71932130818840fc8fe9509cf50be8c64634f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -3054,11 +3075,11 @@
"systems": "systems_18" "systems": "systems_18"
}, },
"locked": { "locked": {
"lastModified": 1771135771, "lastModified": 1770630823,
"narHash": "sha256-wyvBIhDuyCRyjB3yPg77qoyxrlgQtBR1rVW3c9knV3E=", "narHash": "sha256-5SEmOnJ61vmbap39vzWEsCX5UQ+3Ul8J4mXWKdqSn3w=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixvim", "repo": "nixvim",
"rev": "ed0424f0b08d303a7348f52f7850ad1b2704f9ba", "rev": "6acc964664ac916c64fe4e394edd467af4d90790",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -3079,11 +3100,11 @@
"norg-meta": "norg-meta" "norg-meta": "norg-meta"
}, },
"locked": { "locked": {
"lastModified": 1771478418, "lastModified": 1770575720,
"narHash": "sha256-95q1h+3dTOwLIZpLgvdq+OWQVCMgjkLeU1g1UB/3+lY=", "narHash": "sha256-qOY9yiJe7WjqIDS8dqB5rCuOgPz+lsnQ2UOm0R7Um8U=",
"owner": "nvim-neorg", "owner": "nvim-neorg",
"repo": "nixpkgs-neorg-overlay", "repo": "nixpkgs-neorg-overlay",
"rev": "7570f673c169701a42cab9fe952ed36188329c58", "rev": "5d00faace5a0c1829cab8965ec374fc793a395c6",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -3139,11 +3160,11 @@
"nixpkgs": "nixpkgs_13" "nixpkgs": "nixpkgs_13"
}, },
"locked": { "locked": {
"lastModified": 1771512979, "lastModified": 1770739601,
"narHash": "sha256-JFfNy+Lu2xpDF0nXmGcTFoKafamxxFu4hs4yf6aijK0=", "narHash": "sha256-4uVNFZtsvXSHSxA8l6VuoTtOi26R5nociCLwtyGn/b0=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nur", "repo": "nur",
"rev": "b24dba9151bb8d0681c41a7c48041753eb793d9a", "rev": "6218df09299ada44145a6a9a0a5574cde2e76a1b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -3295,11 +3316,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1770726378, "lastModified": 1769939035,
"narHash": "sha256-kck+vIbGOaM/dHea7aTBxdFYpeUl/jHOy5W3eyRvVx8=", "narHash": "sha256-Fok2AmefgVA0+eprw2NDwqKkPGEI5wvR+twiZagBvrg=",
"owner": "cachix", "owner": "cachix",
"repo": "pre-commit-hooks.nix", "repo": "pre-commit-hooks.nix",
"rev": "5eaaedde414f6eb1aea8b8525c466dc37bba95ae", "rev": "a8ca480175326551d6c4121498316261cbb5b260",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -3318,11 +3339,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1770726378, "lastModified": 1769939035,
"narHash": "sha256-kck+vIbGOaM/dHea7aTBxdFYpeUl/jHOy5W3eyRvVx8=", "narHash": "sha256-Fok2AmefgVA0+eprw2NDwqKkPGEI5wvR+twiZagBvrg=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "5eaaedde414f6eb1aea8b8525c466dc37bba95ae", "rev": "a8ca480175326551d6c4121498316261cbb5b260",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -3542,11 +3563,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771125043, "lastModified": 1770520253,
"narHash": "sha256-ldf/s49n6rOAxl7pYLJGGS1N/assoHkCOWdEdLyNZkc=", "narHash": "sha256-6rWuHgSENXKnC6HGGAdRolQrnp/8IzscDn7FQEo1uEQ=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "4912f951a26dc8142b176be2c2ad834319dc06e8", "rev": "ebb8a141f60bb0ec33836333e0ca7928a072217f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -3589,11 +3610,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771470520, "lastModified": 1770693064,
"narHash": "sha256-PvytHcaYN5cPUll7FB70mXv1rRsIBRmu47fFfq3haxA=", "narHash": "sha256-Pomhlz+3/6uRJUhKz/kJwmJUux8GTWbXlCX4/RxlXLo=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "a1d4cc1f264c45d3745af0d2ca5e59d460e58777", "rev": "a5f6d8a6a6868db2a3055cfe2b5dd01422780433",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -3651,11 +3672,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771166946, "lastModified": 1770683991,
"narHash": "sha256-UFc4lfGBr+wJmwgDGJDn1cVD6DTr0/8TdronNUiyXlU=", "narHash": "sha256-xVfPvXDf9QN3Eh9dV+Lw6IkWG42KSuQ1u2260HKvpnc=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "2d0cf89b4404529778bc82de7e42b5754e0fe4fa", "rev": "8b89f44c2cc4581e402111d928869fe7ba9f7033",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -3685,11 +3706,11 @@
"tinted-zed": "tinted-zed" "tinted-zed": "tinted-zed"
}, },
"locked": { "locked": {
"lastModified": 1771428844, "lastModified": 1770587906,
"narHash": "sha256-rTzo6bZEsdT7yHUZ0B4BYe32XQZzm8SiWKvWLJnxerE=", "narHash": "sha256-N9ZTG3ia7l4iQO+9JlOj+sX4yu6gl7a3aozrlhSIJwQ=",
"owner": "nix-community", "owner": "nix-community",
"repo": "stylix", "repo": "stylix",
"rev": "801843d10e9e22d7a00f660d069e2de70aa2980a", "rev": "72e6483a88d51471a6c55e1d43e7ed2bc47a76a4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -3719,11 +3740,11 @@
"tinted-zed": "tinted-zed_2" "tinted-zed": "tinted-zed_2"
}, },
"locked": { "locked": {
"lastModified": 1771429540, "lastModified": 1770308890,
"narHash": "sha256-YKytDx8LOPOvE+dip1ja+1nbIpDVdqTaFbP4MaXwveM=", "narHash": "sha256-7bx8Bn9B2g/loBaz+uLwdKI2rUW+RhDPyP/MqAgvrxU=",
"owner": "nix-community", "owner": "nix-community",
"repo": "stylix", "repo": "stylix",
"rev": "1a5c9d8be82127aeccc929f60b952e8a3df6b63c", "rev": "7e7fa955abac04a8e118b1cedf930a8fd41c34a6",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -4377,11 +4398,11 @@
"tree-sitter-slint": { "tree-sitter-slint": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1770882723, "lastModified": 1770217631,
"narHash": "sha256-A4m3jG7VjGws7pVzd7ulbhINe783shv4pc3tH8EDji0=", "narHash": "sha256-FS1a0N2yiRyBqhxxzUgR4mTnQ81Q8CfNZTb2AQrkBPw=",
"owner": "slint-ui", "owner": "slint-ui",
"repo": "tree-sitter-slint", "repo": "tree-sitter-slint",
"rev": "a6e4e1c656429e5df52dcfcd92da87b642f6678b", "rev": "5dafe6745dd3bb24342acebe478015b642dc7135",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -4469,11 +4490,11 @@
"systems": "systems_24" "systems": "systems_24"
}, },
"locked": { "locked": {
"lastModified": 1771502217, "lastModified": 1770723197,
"narHash": "sha256-Bx9QKfFsC0bVN6O9P8DFpyzC9SJ6nbarMfWzIH/fzIg=", "narHash": "sha256-l7NgMCr9paBM8IhvEb7lthpcxfBbyBJUybBmX9shZ4I=",
"owner": "vicinaehq", "owner": "vicinaehq",
"repo": "vicinae", "repo": "vicinae",
"rev": "54833492742d58428eaad093451fcd3469f0f3e5", "rev": "6fed5fe7c2ec4b9435885b963b8cfc7f9eec5579",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -4578,19 +4599,17 @@
}, },
"zen-browser": { "zen-browser": {
"inputs": { "inputs": {
"home-manager": [ "home-manager": "home-manager_3",
"home-manager"
],
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
] ]
}, },
"locked": { "locked": {
"lastModified": 1771503632, "lastModified": 1770707140,
"narHash": "sha256-qvI2afshgl062MRRpal5s76PWFev0Vm1xv4hl2+wT/8=", "narHash": "sha256-3ZRA2+o5p1+FKWx988WbwB1SQ2Mz5aL95zxhL5iD+O0=",
"owner": "0xc000022070", "owner": "0xc000022070",
"repo": "zen-browser-flake", "repo": "zen-browser-flake",
"rev": "48e35b2df995cf65603f447d5d2e30c34e63cd3f", "rev": "db14437f8667f7f09784e2a4e73c105bdc1c7023",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -4663,11 +4682,11 @@
"rust-overlay": "rust-overlay_10" "rust-overlay": "rust-overlay_10"
}, },
"locked": { "locked": {
"lastModified": 1771148613, "lastModified": 1766016463,
"narHash": "sha256-nLzdw8jskekSRrunxBDCA0NCHr/2aJjcXqZ1Fcqm5eY=", "narHash": "sha256-aWp608krMtk5I+c3GXyuHkb6ugah40cBI0R52fNqMiI=",
"owner": "dj95", "owner": "dj95",
"repo": "zjstatus", "repo": "zjstatus",
"rev": "7a039f56da80681408454d6e175fde3f54b9e592", "rev": "9a4b88fdceee8eb2b8c28111c53e94254d61c994",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@@ -155,9 +155,9 @@
}; };
zen-browser = { zen-browser = {
url = "github:0xc000022070/zen-browser-flake"; url = "github:0xc000022070/zen-browser-flake";
# IMPORTANT: To ensure compatibility with the latest Firefox version, use nixpkgs-unstable. # IMPORTANT: we're using "libgbm" and is only available in unstable so ensure
# to have it up-to-date or simply don't specify the nixpkgs input
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
inputs.home-manager.follows = "home-manager";
}; };
anyrun = { anyrun = {

View File

@@ -5,61 +5,43 @@
}: { }: {
sops = { sops = {
secrets."accounts/mail/fastmail" = {}; secrets."accounts/mail/fastmail" = {};
secrets."accounts/calendar/fastmail" = {};
}; };
accounts = { accounts.email = {
email = { maildirBasePath = "Mail";
maildirBasePath = "Mail"; accounts = {
accounts = { fastmail = rec {
fastmail = rec { maildir = {
maildir = { path = "fastmail";
path = "fastmail";
};
primary = true;
address = "email@uttarayan.me";
aliases = ["servius@darksailor.dev"];
userName = address;
realName = "Uttarayan Mondal";
imap = {
host = "imap.fastmail.com";
port = 993;
tls.enable = true;
# authentication = "login";
};
smtp = {
host = "smtp.fastmail.com";
port = 465;
tls.enable = true;
};
passwordCommand = ["cat" "${config.sops.secrets."accounts/mail/fastmail".path}"];
mbsync = {
enable = true;
create = "both";
};
}; };
}; primary = true;
}; address = "email@uttarayan.me";
calendar = { aliases = ["servius@darksailor.dev"];
basePath = "Calendar"; userName = address;
accounts = { realName = "Uttarayan Mondal";
fastmail = { imap = {
remote = { host = "imap.fastmail.com";
url = "https://caldav.fastmail.com/dav/calendars/user/email@uttarayan.me"; port = 993;
userName = "email@uttarayan.me"; tls.enable = true;
passwordCommand = ["cat" "${config.sops.secrets."accounts/calendar/fastmail".path}"]; # authentication = "login";
type = "caldav"; };
}; smtp = {
khal = { host = "smtp.fastmail.com";
enable = true; port = 465;
addresses = ["email@uttarayan.me"]; tls.enable = true;
}; };
vdirsyncer = { imapnotify = {
enable = true; enable = true;
}; };
passwordCommand = ["cat" "${config.sops.secrets."accounts/mail/fastmail".path}"];
mbsync = {
enable = true;
create = "both";
}; };
}; };
}; };
}; };
programs.mbsync.enable = true;
services.mbsync.enable = pkgs.stdenv.isLinux;
# accounts.email.accounts.<name>.mbsync.create # accounts.email.accounts.<name>.mbsync.create
# services.mbsync.enable = true; # services.mbsync.enable = true;
} }

View File

@@ -1,9 +0,0 @@
{
pkgs,
lib,
...
}: {
home.packages = lib.optionals pkgs.stdenv.isLinux [
pkgs.affine
];
}

View File

@@ -13,21 +13,15 @@ lib.optionalAttrs device.hasGui {
# ./ida.nix # ./ida.nix
# ./jellyflix.nix # ./jellyflix.nix
# ./kicad.nix # ./kicad.nix
# ./lmstudio.nix
# ./neovide.nix # ./neovide.nix
# ./openscad.nix # ./openscad.nix
# ./orcaslicer.nix
# ./pcsx2.nix # ./pcsx2.nix
# ./prismlauncher.nix
# ./rpcs3.nix # ./rpcs3.nix
# ./shadps4.nix
# ./thunderbird.nix # ./thunderbird.nix
# ./tsukimi.nix # ./tsukimi.nix
# ./vial.nix # ./vial.nix
# ./vlc.nix
# ./vscode.nix # ./vscode.nix
./affine.nix
./blueman.nix ./blueman.nix
./chromium.nix ./chromium.nix
./discord.nix ./discord.nix
@@ -35,12 +29,17 @@ lib.optionalAttrs device.hasGui {
./ghostty.nix ./ghostty.nix
./hyprpicker.nix ./hyprpicker.nix
./kitty.nix ./kitty.nix
./matrix.nix ./lmstudio.nix
./mpv.nix ./mpv.nix
./nextcloud.nix ./nextcloud.nix
./matrix.nix
./obs-studio.nix ./obs-studio.nix
./orcaslicer.nix
./prismlauncher.nix
./shadps4.nix
./slack.nix ./slack.nix
./vicinae.nix ./vicinae.nix
./vlc.nix
./wezterm.nix ./wezterm.nix
./zathura.nix ./zathura.nix
./zed.nix ./zed.nix

View File

@@ -8,20 +8,20 @@
loop-playlist = "inf"; loop-playlist = "inf";
}; };
profiles = { profiles = {
# hdr = { hdr = {
# vo = "gpu-next"; vo = "gpu-next";
# gpu-api = "vulkan"; gpu-api = "vulkan";
# hdr-compute-peak = "yes"; hdr-compute-peak = "yes";
# hdr-peak-detect = "yes"; hdr-peak-detect = "yes";
# target-peak = 400; target-peak = 400;
# target-prim = "bt.2020"; target-prim = "bt.2020";
# target-trc = "pq"; target-trc = "pq";
# inverse-tone-mapping = "yes"; inverse-tone-mapping = "yes";
# tone-mapping = "spline"; tone-mapping = "spline";
# tone-mapping-mode = "auto"; tone-mapping-mode = "auto";
# target-colorspace-hint = "auto"; target-colorspace-hint = "auto";
# gamut-mapping = "desaturate"; gamut-mapping = "desaturate";
# }; };
}; };
}; };
} }

View File

@@ -12,9 +12,7 @@
autoStart = true; autoStart = true;
}; };
}; };
home.packages = with pkgs; home.packages = with pkgs; [
lib.optionals (device.is "ryu") [ pulseaudio
# pulseaudio ];
playerctl
];
} }

View File

@@ -2,7 +2,6 @@
pkgs, pkgs,
inputs, inputs,
device, device,
config,
... ...
}: { }: {
imports = [ imports = [
@@ -11,47 +10,6 @@
programs.zen-browser = { programs.zen-browser = {
enable = device.isLinux; enable = device.isLinux;
profiles.default = { profiles.default = {
containersForce = true;
containers = {
Personal = {
color = "purple";
icon = "fingerprint";
id = 1;
};
Work = {
color = "blue";
icon = "briefcase";
id = 2;
};
Shopping = {
color = "yellow";
icon = "dollar";
id = 3;
};
};
spacesForce = true;
spaces = let
containers = config.programs.zen-browser.profiles."default".containers;
in {
"Personal" = {
id = "";
icon = "👤";
container = containers."Personal".id;
position = 1000;
};
"Work" = {
id = "00bdd434-e31b-4e2b-b8f5-fa7055631a64";
icon = "💼";
container = containers."Work".id;
position = 2000;
};
"Shopping" = {
id = "77452260-56e6-4c9e-8d5f-417958bc4fa4";
icon = "💸";
container = containers."Shopping".id;
position = 3000;
};
};
extensions.packages = with pkgs.nur.repos.rycee.firefox-addons; [ extensions.packages = with pkgs.nur.repos.rycee.firefox-addons; [
privacy-badger privacy-badger
violentmonkey violentmonkey
@@ -84,6 +42,5 @@
Fingerprinting = true; Fingerprinting = true;
}; };
}; };
suppressXdgMigrationWarning = true;
}; };
} }

View File

@@ -27,7 +27,6 @@
home-manager = { home-manager = {
enable = true; enable = true;
}; };
man.generateCaches = true;
}; };
fonts.fontconfig.enable = true; fonts.fontconfig.enable = true;

View File

@@ -1,6 +0,0 @@
{pkgs, ...}: {
programs.khal.enable = true;
programs.qcal.enable = true;
programs.vdirsyncer.enable = true;
accounts.calendar.accounts.fastmail.qcal.enable = true;
}

View File

@@ -1,8 +1,13 @@
{...}: { {
pkgs,
lib,
device,
...
}: {
programs. programs.
carapace = { carapace = {
enable = false; enable = false;
enableFishIntegration = false; enableFishIntegration = true;
enableNushellIntegration = true; enableNushellIntegration = true;
}; };
} }

View File

@@ -13,7 +13,6 @@ in
[alias] [alias]
lldb = ["with", "rust-lldb", "--"] lldb = ["with", "rust-lldb", "--"]
t = ["nextest", "run"] t = ["nextest", "run"]
pkgs = ["metadata", "--no-deps", "--format-version", "1"]
[net] [net]
git-fetch-with-cli = true git-fetch-with-cli = true

View File

@@ -28,7 +28,6 @@
./alejandra.nix ./alejandra.nix
./aria2.nix ./aria2.nix
./ast-grep.nix ./ast-grep.nix
./attic.nix
./atuin.nix ./atuin.nix
./bat.nix ./bat.nix
./binwalk.nix ./binwalk.nix
@@ -36,10 +35,8 @@
./bottom.nix ./bottom.nix
./btop.nix ./btop.nix
./cachix.nix ./cachix.nix
./calendar.nix
./carapace.nix ./carapace.nix
./cargo.nix ./cargo.nix
./cfcli.nix
./ddcbacklight.nix ./ddcbacklight.nix
./deploy-rs.nix ./deploy-rs.nix
./direnv.nix ./direnv.nix
@@ -58,7 +55,6 @@
./himalaya.nix ./himalaya.nix
./hyprshade.nix ./hyprshade.nix
./jq.nix ./jq.nix
./jujutsu.nix
./just.nix ./just.nix
./ncpamixer.nix ./ncpamixer.nix
./neomutt.nix ./neomutt.nix
@@ -82,6 +78,8 @@
./yazi.nix ./yazi.nix
./yt-dlp.nix ./yt-dlp.nix
./zoxide.nix ./zoxide.nix
./yq.nix ./attic.nix
./cfcli.nix
./jujutsu.nix
]; ];
} }

View File

@@ -43,7 +43,6 @@
''} ''}
''; '';
}; };
home.shell.enableFishIntegration = true;
} }
// lib.optionalAttrs (!(device.is "tsuba")) { // lib.optionalAttrs (!(device.is "tsuba")) {
stylix.targets.fish.enable = false; stylix.targets.fish.enable = false;

View File

@@ -1,9 +1,4 @@
{pkgs, ...}: let {pkgs, ...}: {
theme = builtins.fetchurl {
url = "https://raw.githubusercontent.com/catppuccin/neomutt/refs/heads/main/neomuttrc";
sha256 = "sha256:1q086p5maqwxa4gh6z8g7h3nfavdmkbql025ibdhglpz46hsq0hs";
};
in {
programs.neomutt = { programs.neomutt = {
enable = true; enable = true;
vimKeys = true; vimKeys = true;
@@ -11,9 +6,6 @@ in {
sidebar = { sidebar = {
enable = true; enable = true;
}; };
extraConfig = ''
source ${theme}
'';
}; };
programs.notmuch = { programs.notmuch = {
enable = true; enable = true;
@@ -25,38 +17,4 @@ in {
enable = true; enable = true;
neomutt.enable = true; neomutt.enable = true;
}; };
services.imapnotify = {
enable = true;
path = [pkgs.coreutils pkgs.isync pkgs.libnotify];
};
accounts.email.accounts.fastmail.imapnotify = {
enable = true;
boxes = ["Inbox"];
onNotify = "${pkgs.writeShellScript "mbsync-notify" ''
${pkgs.isync}/bin/mbsync $1
${pkgs.libnotify}/bin/notify-send "New Mail" "New email in $1"
''} %s";
};
programs.mbsync.enable = true;
services.mbsync.enable = pkgs.stdenv.isLinux;
# launchd.agents.mbsync = {
# enable = true;
# config = {
# # A label for the service
# Label = "dev.darksailor.atuin-daemon";
# # The command to run
# ProgramArguments = [
# "${pkgs.atuin}/bin/atuin"
# "daemon"
# ];
# # Run the service when you log in
# RunAtLoad = true;
# # Keep the process alive, or restart if it dies
# KeepAlive = true;
# # Log files
# StandardOutPath = "${device.home}/Library/Logs/atuin-daemon.log";
# StandardErrorPath = "${device.home}/Library/Logs/atuin-daemon.error.log";
# };
# };
} }

View File

@@ -26,5 +26,4 @@
} }
''; '';
}; };
home.shell.enableNushellIntegration = true;
} }

View File

@@ -6,20 +6,5 @@
lib.optionalAttrs (device.is "ryu" || device.is "kuro") { lib.optionalAttrs (device.is "ryu" || device.is "kuro") {
programs.opencode = { programs.opencode = {
enable = true; enable = true;
settings.provider = {
ollama = {
models = {
"glm-4.7-flash" = {
# "_launch" = true;
name = "glm-4.7-flash";
};
};
name = "Ollama (local)";
npm = "@ai-sdk/openai-compatible";
options = {
baseURL = "https://ollama.darksailor.dev/v1";
};
};
};
}; };
} }

View File

@@ -17,6 +17,5 @@
cache_dir = config.home.homeDirectory + "/.cache/yazi/previews"; cache_dir = config.home.homeDirectory + "/.cache/yazi/previews";
}; };
}; };
shellWrapperName = "yy";
}; };
} }

View File

@@ -1 +0,0 @@
{pkgs, ...}: {home.packages = [pkgs.yq];}

View File

@@ -1,162 +0,0 @@
{
config,
lib,
...
}:
with lib; let
cfg = config.services.affine;
dbName = "affine";
dbUser = "affine";
in {
options.services.affine = {
enable = mkEnableOption "AFFiNE self-hosted workspace";
port = mkOption {
type = types.port;
default = 3010;
description = "Port for the AFFiNE server to listen on";
};
domain = mkOption {
type = types.str;
description = "Public domain for AFFiNE (e.g. notes.darksailor.dev)";
};
imageTag = mkOption {
type = types.str;
default = "stable";
description = "Docker image tag for AFFiNE (stable, beta, canary)";
};
dataDir = mkOption {
type = types.str;
default = "/var/lib/affine";
description = "Base data directory for AFFiNE storage";
};
environmentFiles = mkOption {
type = types.listOf types.path;
default = [];
description = "Environment files containing secrets (DB password, etc.)";
};
};
config = mkIf cfg.enable {
# Create data directories
systemd.tmpfiles.rules = [
"d ${cfg.dataDir} 0755 root root -"
"d ${cfg.dataDir}/storage 0755 root root -"
"d ${cfg.dataDir}/config 0755 root root -"
"d ${cfg.dataDir}/postgres 0700 root root -"
"d ${cfg.dataDir}/redis 0755 root root -"
];
virtualisation.oci-containers = {
backend = "docker";
containers = {
affine-postgres = {
image = "pgvector/pgvector:pg16";
volumes = [
"${cfg.dataDir}/postgres:/var/lib/postgresql/data"
];
environment = {
POSTGRES_USER = dbUser;
POSTGRES_DB = dbName;
POSTGRES_INITDB_ARGS = "--data-checksums";
POSTGRES_HOST_AUTH_METHOD = "trust";
};
environmentFiles = cfg.environmentFiles;
extraOptions = [
"--health-cmd=pg_isready -U ${dbUser} -d ${dbName}"
"--health-interval=10s"
"--health-timeout=5s"
"--health-retries=5"
];
networks = ["affine-net"];
};
affine-redis = {
image = "redis:7";
volumes = [
"${cfg.dataDir}/redis:/data"
];
networks = ["affine-net"];
extraOptions = [
"--health-cmd=redis-cli --raw incr ping"
"--health-interval=10s"
"--health-timeout=5s"
"--health-retries=5"
];
};
affine = {
image = "ghcr.io/toeverything/affine:${cfg.imageTag}";
ports = ["127.0.0.1:${toString cfg.port}:3010"];
dependsOn = [
"affine-postgres"
"affine-redis"
"affine-migration"
];
volumes = [
"${cfg.dataDir}/storage:/root/.affine/storage"
"${cfg.dataDir}/config:/root/.affine/config"
];
environment = {
AFFINE_SERVER_PORT = "3010";
AFFINE_SERVER_HOST = cfg.domain;
AFFINE_SERVER_HTTPS = "true";
AFFINE_SERVER_EXTERNAL_URL = "https://${cfg.domain}";
REDIS_SERVER_HOST = "affine-redis";
DATABASE_URL = "postgresql://${dbUser}:$${AFFINE_DB_PASSWORD:-affine}@affine-postgres:5432/${dbName}";
AFFINE_INDEXER_ENABLED = "false";
};
environmentFiles = cfg.environmentFiles;
networks = ["affine-net"];
};
affine-migration = {
image = "ghcr.io/toeverything/affine:${cfg.imageTag}";
dependsOn = [
"affine-postgres"
"affine-redis"
];
volumes = [
"${cfg.dataDir}/storage:/root/.affine/storage"
"${cfg.dataDir}/config:/root/.affine/config"
];
cmd = ["sh" "-c" "node ./scripts/self-host-predeploy.js"];
environment = {
REDIS_SERVER_HOST = "affine-redis";
DATABASE_URL = "postgresql://${dbUser}:$${AFFINE_DB_PASSWORD:-affine}@affine-postgres:5432/${dbName}";
AFFINE_INDEXER_ENABLED = "false";
};
environmentFiles = cfg.environmentFiles;
networks = ["affine-net"];
};
};
};
# Create the Docker network
# systemd.services.affine-network = {
# description = "Create AFFiNE Docker network";
# after = ["docker.service"];
# wantedBy = ["multi-user.target"];
# serviceConfig = {
# Type = "oneshot";
# RemainAfterExit = true;
# # ExecStart = "${config.virtualisation.docker.package}/bin/docker network create affine-net";
# # ExecStop = "${config.virtualisation.docker.package}/bin/docker network remove affine-net";
# };
# };
#
# Ensure containers start after the network is created
# systemd.services.docker-affine.after = ["affine-network.service"];
# systemd.services.docker-affine.requires = ["affine-network.service"];
# systemd.services.docker-affine-postgres.after = ["affine-network.service"];
# systemd.services.docker-affine-postgres.requires = ["affine-network.service"];
# systemd.services.docker-affine-redis.after = ["affine-network.service"];
# systemd.services.docker-affine-redis.requires = ["affine-network.service"];
# systemd.services.docker-affine-migration.after = ["affine-network.service"];
# systemd.services.docker-affine-migration.requires = ["affine-network.service"];
};
}

View File

@@ -620,21 +620,6 @@ in {
}; };
sources = { sources = {
cmdline = []; cmdline = [];
# default =
# rawLua
# /*
# lua
# */
# ''
# function(ctx)
# local success, node = pcall(vim.treesitter.get_node)
# if success and node and vim.tbl_contains({ 'comment', 'line_comment', 'block_comment' }, node:type()) then
# return { 'buffer' }
# else
# return { 'git', 'lsp', 'path', 'snippets', 'buffer', 'dictionary', 'ripgrep', 'tmux' }
# end
# end
# '';
default = [ default = [
"git" "git"
"lsp" "lsp"
@@ -643,7 +628,6 @@ in {
"path" "path"
"buffer" "buffer"
"ripgrep" "ripgrep"
# "tmux"
]; ];
providers = { providers = {
buffer = { buffer = {
@@ -655,30 +639,23 @@ in {
path = {}; path = {};
dictionary = { dictionary = {
module = "blink-cmp-dictionary"; module = "blink-cmp-dictionary";
name = "dict"; name = "Dict";
min_keyword_length = 3; min_keyword_length = 3;
opts = { opts = {
}; };
}; };
git = { git = {
module = "blink-cmp-git"; module = "blink-cmp-git";
name = "git"; name = "Git";
opts = { opts = {
# -- options for the blink-cmp-git # -- options for the blink-cmp-git
}; };
}; };
ripgrep = { ripgrep = {
module = "blink-ripgrep"; module = "blink-ripgrep";
name = "ripgrep"; name = "Ripgrep";
opts = {}; opts = {};
}; };
# tmux = {
# module = "blink-cmp-tmux";
# name = "tmux";
# opts = {
# triggered_only = false;
# };
# };
}; };
}; };
}; };
@@ -688,7 +665,6 @@ in {
blink-cmp-dictionary.enable = true; blink-cmp-dictionary.enable = true;
blink-cmp-copilot.enable = true; blink-cmp-copilot.enable = true;
blink-cmp-spell.enable = true; blink-cmp-spell.enable = true;
blink-cmp-tmux.enable = true;
blink-compat = { blink-compat = {
enable = true; enable = true;
settings.impersonate_nvim_cmp = true; settings.impersonate_nvim_cmp = true;

View File

@@ -4,5 +4,4 @@
documentation.dev.enable = true; documentation.dev.enable = true;
documentation.doc.enable = true; documentation.doc.enable = true;
documentation.nixos.enable = true; documentation.nixos.enable = true;
documentation.man.generateCaches = true;
} }

View File

@@ -8,10 +8,5 @@
./easyeffects.nix ./easyeffects.nix
./vr.nix ./vr.nix
./helvum.nix ./helvum.nix
# ./wine.nix
# ./virt.nix
./gparted.nix
./nvtop.nix
# ./qpwgraph.nix
]; ];
} }

View File

@@ -1,3 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [gparted];
}

View File

@@ -1,3 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [nvtopPackages.nvidia];
}

View File

@@ -1,3 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [qpwgraph];
}

View File

@@ -1,6 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [
virt-manager
quickemu
];
}

View File

@@ -1,7 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [
wine-wayland
winetricks
wineWowPackages.waylandFull
];
}

View File

@@ -2,7 +2,6 @@
pkgs, pkgs,
lib, lib,
device, device,
config,
... ...
}: { }: {
imports = [ imports = [
@@ -48,7 +47,6 @@
auto-optimise-store = true; auto-optimise-store = true;
extra-experimental-features = "nix-command flakes auto-allocate-uids"; extra-experimental-features = "nix-command flakes auto-allocate-uids";
trusted-users = [device.user]; trusted-users = [device.user];
extra-sandbox-paths = [config.programs.ccache.cacheDir];
}; };
extraOptions = '' extraOptions = ''
build-users-group = nixbld build-users-group = nixbld
@@ -293,6 +291,42 @@
fonts.fontconfig.enable = true; fonts.fontconfig.enable = true;
fonts.fontDir.enable = true; fonts.fontDir.enable = true;
environment = { environment = {
# List packages installed in system profile. To search, run:
# $ nix search wget
systemPackages = with pkgs; [
v4l-utils
polychromatic
openrazer-daemon
cudatoolkit
# Wine
wine-wayland
winetricks
wineWowPackages.waylandFull
virt-manager
gparted
nvtopPackages.nvidia
quickemu
# (nixvim.makeNixvim (import ../../neovim))
qpwgraph
hyprland
xorg.xhost
foot
git
fish
nushell
# (pkgs.wrapFirefox
# (pkgs.firefox-unwrapped.override {pipewireSupport = true;})
# {})
gnumake
python3
nerd-fonts.fira-code
nerd-fonts.hasklug
nerd-fonts.symbols-only
monaspace
ddcutil
libnotify
];
sessionVariables = { sessionVariables = {
WLR_NO_HARDWARE_CURSORS = "1"; WLR_NO_HARDWARE_CURSORS = "1";
NIXOS_OZONE_WL = "1"; NIXOS_OZONE_WL = "1";

View File

@@ -1,5 +1,5 @@
{...}: { {...}: {
imports = [ imports = [
# ./hytale.nix ./hytale.nix
]; ];
} }

View File

@@ -1,6 +0,0 @@
{...}: {
programs.ccache = {
enable = true;
packageNames = ["ollama" "orca-slicer" "opencv" "onnxruntime" "obs-studio" "llama-cpp"];
};
}

View File

@@ -1,3 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [cudatoolkit];
}

View File

@@ -1,3 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [ddcutil];
}

View File

@@ -4,7 +4,7 @@
./steam.nix ./steam.nix
./1password.nix ./1password.nix
./localsend.nix ./localsend.nix
# ./appimage.nix ./appimage.nix
./obs-studio.nix ./obs-studio.nix
./gnome-disks.nix ./gnome-disks.nix
./nix-ld.nix ./nix-ld.nix
@@ -12,15 +12,5 @@
./droidcam.nix ./droidcam.nix
./wireshark.nix ./wireshark.nix
./flatpak.nix ./flatpak.nix
./v4l-utils.nix
./razer.nix
./cuda.nix
./fonts.nix
./dev.nix
./shells.nix
./hyprland.nix
./foot.nix
./ddcutil.nix
./libnotify.nix
]; ];
} }

View File

@@ -1,7 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [
git
gnumake
python3
];
}

View File

@@ -1,8 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [
nerd-fonts.fira-code
nerd-fonts.hasklug
nerd-fonts.symbols-only
monaspace
];
}

View File

@@ -1,3 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [foot];
}

View File

@@ -1,6 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [
hyprland
xorg.xhost
];
}

View File

@@ -1,3 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [libnotify];
}

View File

@@ -1,6 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [
polychromatic
openrazer-daemon
];
}

View File

@@ -1,6 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [
fish
nushell
];
}

View File

@@ -1,3 +0,0 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [v4l-utils];
}

View File

@@ -1,89 +0,0 @@
{config, ...}: let
domain = "notes.darksailor.dev";
in {
imports = [
../../../modules/nixos/affine.nix
];
# SOPS secrets
sops = {
secrets = {
"affine/db_password" = {};
"authelia/oidc/affine/client_id" = {
owner = config.systemd.services.authelia-darksailor.serviceConfig.User;
mode = "0440";
restartUnits = ["authelia-darksailor.service"];
};
"authelia/oidc/affine/client_secret" = {
owner = config.systemd.services.authelia-darksailor.serviceConfig.User;
mode = "0440";
restartUnits = ["authelia-darksailor.service"];
};
};
templates."affine.env".content = ''
AFFINE_DB_PASSWORD=${config.sops.placeholder."affine/db_password"}
POSTGRES_PASSWORD=${config.sops.placeholder."affine/db_password"}
AFFINE_SERVER_EXTERNAL_URL=https://${domain}
'';
};
# Enable AFFiNE service
services.affine = {
enable = true;
inherit domain;
environmentFiles = [
config.sops.templates."affine.env".path
];
};
# Caddy reverse proxy with SSO forward auth
services.caddy.virtualHosts."${domain}".extraConfig = ''
reverse_proxy localhost:${toString config.services.affine.port}
'';
# Authelia access control rules
services.authelia.instances.darksailor.settings = {
access_control.rules = [
{
inherit domain;
policy = "bypass";
resources = [
"^/api/(sync|awareness)([/?].*)?$"
"^/socket\\.io([/?].*)?$"
];
}
{
inherit domain;
policy = "one_factor";
}
];
# OIDC client for AFFiNE
identity_providers.oidc.clients = [
{
client_name = "AFFiNE: Darksailor";
client_id = ''{{ secret "${config.sops.secrets."authelia/oidc/affine/client_id".path}" }}'';
client_secret = ''{{ secret "${config.sops.secrets."authelia/oidc/affine/client_secret".path}" }}'';
public = false;
authorization_policy = "one_factor";
require_pkce = false;
redirect_uris = [
"https://${domain}/oauth/callback"
];
scopes = [
"openid"
"email"
"profile"
];
response_types = ["code"];
grant_types = ["authorization_code"];
userinfo_signed_response_alg = "none";
token_endpoint_auth_method = "client_secret_post";
}
];
};
# Ensure containers start after secrets are available
systemd.services.docker-affine.after = ["sops-install-secrets.service"];
systemd.services.docker-affine-migration.after = ["sops-install-secrets.service"];
systemd.services.docker-affine-postgres.after = ["sops-install-secrets.service"];
}

View File

@@ -1,33 +1,31 @@
{...}: { {...}: {
imports = [ imports = [
./attic.nix
./atuin.nix ./atuin.nix
./authelia.nix ./authelia.nix
./caddy.nix ./caddy.nix
./excalidraw.nix
./fail2ban.nix ./fail2ban.nix
./flaresolverr.nix
./games
./gitea.nix
./homepage.nix ./homepage.nix
./immich.nix
./kellnr.nix
./lldap.nix ./lldap.nix
./llms.nix
./matrix
./monitoring.nix
./navidrome.nix ./navidrome.nix
./nextcloud.nix ./nextcloud.nix
./openssh.nix ./openssh.nix
./resolved.nix
./tailscale.nix
./gitea.nix
./affine.nix
./attic.nix
./excalidraw.nix
./flaresolverr.nix
# ./games
# ./headscale.nix
./immich.nix
./kellnr.nix
# ./llms.nix
./matrix
# ./monitoring.nix
# ./paperless.nix
./prowlarr.nix ./prowlarr.nix
# ./searxng.nix ./resolved.nix
# ./shitpost.nix ./searxng.nix
./shitpost.nix
./tailscale.nix
# ./headscale.nix
# ./paperless.nix
]; ];
services = { services = {
nix-serve = { nix-serve = {

View File

@@ -34,12 +34,12 @@
}; };
}; };
}; };
headplane = { # headplane = {
enable = true; # enable = true;
settings = { # settings = {
server.port = 42562; # server.port = 42562;
}; # };
}; # };
caddy = { caddy = {
virtualHosts."headscale.darksailor.dev".extraConfig = '' virtualHosts."headscale.darksailor.dev".extraConfig = ''
reverse_proxy localhost:${toString config.services.headplane.settings.server.port} reverse_proxy localhost:${toString config.services.headplane.settings.server.port}

View File

@@ -6,8 +6,6 @@
port = 6167; port = 6167;
base_domain = "darksailor.dev"; base_domain = "darksailor.dev";
client_id = "tuwunel"; client_id = "tuwunel";
rtc_domain = "matrix-rtc.${base_domain}";
jwt_port = 8081;
elementConfig = builtins.toJSON { elementConfig = builtins.toJSON {
default_server_config = { default_server_config = {
"m.homeserver" = { "m.homeserver" = {
@@ -34,11 +32,6 @@ in {
mode = "0440"; mode = "0440";
}; };
secrets."tuwunel/registration_token".owner = config.services.matrix-tuwunel.user; secrets."tuwunel/registration_token".owner = config.services.matrix-tuwunel.user;
secrets."livekit/key_name" = {};
secrets."livekit/key_secret" = {};
templates."livekit-keys".content = ''
${config.sops.placeholder."livekit/key_name"}: ${config.sops.placeholder."livekit/key_secret"}
'';
}; };
services.matrix-tuwunel = { services.matrix-tuwunel = {
enable = true; enable = true;
@@ -63,12 +56,6 @@ in {
well_known = { well_known = {
client = "https://matrix.${base_domain}"; client = "https://matrix.${base_domain}";
server = "matrix.${base_domain}:443"; server = "matrix.${base_domain}:443";
rtc_transports = [
{
type = "livekit";
livekit_service_url = "https://${rtc_domain}";
}
];
}; };
}; };
package = pkgs.matrix-tuwunel; package = pkgs.matrix-tuwunel;
@@ -86,63 +73,14 @@ in {
"${base_domain}".extraConfig = '' "${base_domain}".extraConfig = ''
reverse_proxy /.well-known/* localhost:${toString port} reverse_proxy /.well-known/* localhost:${toString port}
''; '';
"${rtc_domain}".extraConfig = '' # "matrix.${base_domain}:8448".extraConfig = ''
@jwt_service { # reverse_proxy /_matrix/* localhost:${toString port}
path /sfu/get* /healthz* # '';
}
handle @jwt_service {
reverse_proxy localhost:${toString jwt_port}
}
handle {
reverse_proxy localhost:${toString config.services.livekit.settings.port} {
header_up Connection "upgrade"
header_up Upgrade {http.request.header.Upgrade}
}
}
'';
};
networking.firewall = {
allowedTCPPorts = [8448 7881];
allowedUDPPorts = [3478];
allowedUDPPortRanges = [
{
from = 50300;
to = 65535;
}
];
}; };
networking.firewall.allowedTCPPorts = [8448];
users.users.${config.services.caddy.user}.extraGroups = [config.services.matrix-tuwunel.group]; users.users.${config.services.caddy.user}.extraGroups = [config.services.matrix-tuwunel.group];
services.livekit = {
enable = true;
keyFile = config.sops.templates."livekit-keys".path;
openFirewall = true;
settings = {
rtc = {
tcp_port = 7881;
port_range_start = 50100;
port_range_end = 50200;
use_external_ip = true;
enable_loopback_candidate = false;
};
turn = {
enabled = true;
udp_port = 3478;
relay_range_start = 50300;
relay_range_end = 65535;
domain = rtc_domain;
};
};
};
services.lk-jwt-service = {
enable = true;
port = jwt_port;
livekitUrl = "wss://${rtc_domain}";
keyFile = config.sops.templates."livekit-keys".path;
};
services = { services = {
authelia = { authelia = {
instances.darksailor = { instances.darksailor = {

View File

@@ -2,6 +2,6 @@
services.openssh = { services.openssh = {
enable = true; enable = true;
settings.PasswordAuthentication = false; settings.PasswordAuthentication = false;
settings.PermitRootLogin = "no"; settings.PermitRootLogin = "prohibit-password";
}; };
} }

View File

@@ -6,8 +6,6 @@ paperless:
accounts: accounts:
mail: mail:
fastmail: ENC[AES256_GCM,data:WCqmJqUjJz/mUdVB9xDvYQ==,iv:uU3X7/doSz6v0c8eHfB6riOkxWoWqYhbsoexaZwdb4Q=,tag:0oSRXo93siNQDlOgPA3Hsw==,type:str] fastmail: ENC[AES256_GCM,data:WCqmJqUjJz/mUdVB9xDvYQ==,iv:uU3X7/doSz6v0c8eHfB6riOkxWoWqYhbsoexaZwdb4Q=,tag:0oSRXo93siNQDlOgPA3Hsw==,type:str]
calendar:
fastmail: ENC[AES256_GCM,data:pjTLouC7hVSdjb14UmCM7g==,iv:YdznLQUxf5YFl1AhdZE1sj1MiIOPEBhCbxM8EB4ye8c=,tag:H55Nk8rAsDkSsPJRm+9L5Q==,type:str]
gitea: gitea:
registration: ENC[AES256_GCM,data:1FVvZF6e4AQK09Qd/hTqCvAEsnKyNztcQ6gFWHprMSNHkodNoyAyZg==,iv:ftnk06e9XV8+ZFupnV4I4a4he1ne9jAzmihli5Vt6h8=,tag:5+Tqzh/dSSWB221h01ftyQ==,type:str] registration: ENC[AES256_GCM,data:1FVvZF6e4AQK09Qd/hTqCvAEsnKyNztcQ6gFWHprMSNHkodNoyAyZg==,iv:ftnk06e9XV8+ZFupnV4I4a4he1ne9jAzmihli5Vt6h8=,tag:5+Tqzh/dSSWB221h01ftyQ==,type:str]
llama: llama:
@@ -55,9 +53,6 @@ authelia:
excalidraw: excalidraw:
client_id: ENC[AES256_GCM,data:ANaCFTiPnR/bP51lSMfiTRX7ZGZ2pmX3Guamsyj7KRzD34G18E+UUgXi0YdbDfmFxcEj+nvoerf7wWhtvIzO1Q==,iv:CyNiLA0PH0p1Zwdf8B6/Ysb6GODClnXkPctbtZnoddw=,tag:X3kAkBKD407QFg/Se33Flg==,type:str] client_id: ENC[AES256_GCM,data:ANaCFTiPnR/bP51lSMfiTRX7ZGZ2pmX3Guamsyj7KRzD34G18E+UUgXi0YdbDfmFxcEj+nvoerf7wWhtvIzO1Q==,iv:CyNiLA0PH0p1Zwdf8B6/Ysb6GODClnXkPctbtZnoddw=,tag:X3kAkBKD407QFg/Se33Flg==,type:str]
client_secret: ENC[AES256_GCM,data:VHIbKjHWXfQCUp3wh2dsMpMaDdCabmVlLMHcMnTCXPr5ZNIS1zpyGD6keapoOYywwvDFenICf73vpHun5aFhLw==,iv:HjRTwREC2jMsW1VrVYe4iywGc9apWZWLwh5aHOjvde0=,tag:Jl9kDI8C9VjSm6SiePk7Ow==,type:str] client_secret: ENC[AES256_GCM,data:VHIbKjHWXfQCUp3wh2dsMpMaDdCabmVlLMHcMnTCXPr5ZNIS1zpyGD6keapoOYywwvDFenICf73vpHun5aFhLw==,iv:HjRTwREC2jMsW1VrVYe4iywGc9apWZWLwh5aHOjvde0=,tag:Jl9kDI8C9VjSm6SiePk7Ow==,type:str]
affine:
client_id: ENC[AES256_GCM,data:riwC/9GuHamkV7U80+qCXP/F2wP0volVmRXtkVOQu7NfBb9OlSnamMvVh1pRNHj4c3AZWHpYIIHpkhuNKUuD+A==,iv:gi70CRZqRYfvHq7JhY+N3rX3Trb7eLqgmUlFqLk7p+4=,tag:M6MzyKRTJpZsznXzvxQINQ==,type:str]
client_secret: ENC[AES256_GCM,data:/4+606H4s50+E25LOaVRi5Vt0rpzg9mAHSonYaLASPW/jEwAxwTNunWGvOg4ydjF+D9VBUbYcp1krZnlrhDp9sRR81vf+1G9aA69mWVPF7aMjBx5wA44tBszjLc/KKx804qbopG1m4y828aPrFvknx2d7Rox/YkvhLoq5jPjyVU=,iv:9s4OQNTtPBcN+7kvtH9u9kkPadFG7MG0LdlHAhMR5sw=,tag:BV0G1f/5qGAfrdRMshHzYw==,type:str]
lldap: lldap:
jwt: ENC[AES256_GCM,data:61dwC1ElOOGaf0CmalzXZnxImEyufKjUUWcNaEcOuv3TEODhQyHK7g==,iv:CVEJVuaCc2gDmSYWHS3fPL8FjbvblF6IladAzGoGb0o=,tag:OMm/OdKjliHjsGqJripLbg==,type:str] jwt: ENC[AES256_GCM,data:61dwC1ElOOGaf0CmalzXZnxImEyufKjUUWcNaEcOuv3TEODhQyHK7g==,iv:CVEJVuaCc2gDmSYWHS3fPL8FjbvblF6IladAzGoGb0o=,tag:OMm/OdKjliHjsGqJripLbg==,type:str]
seed: ENC[AES256_GCM,data:jJPutPkhFVFxLbbQNZznHHiilP/cN2r+/vT4ArQVRQSqPMnkkwgc3LNk4sUTrT9V,iv:LD1IJ1CgtDfYf1gSyyaU+hir0InuDEq0u7ppMmwGJRY=,tag:cK4l4Evr7V9WEUEL7V9jtQ==,type:str] seed: ENC[AES256_GCM,data:jJPutPkhFVFxLbbQNZznHHiilP/cN2r+/vT4ArQVRQSqPMnkkwgc3LNk4sUTrT9V,iv:LD1IJ1CgtDfYf1gSyyaU+hir0InuDEq0u7ppMmwGJRY=,tag:cK4l4Evr7V9WEUEL7V9jtQ==,type:str]
@@ -106,8 +101,6 @@ livekit:
key_secret: ENC[AES256_GCM,data:n0SH6SLYXOwdjJ5nNku0Pg6/DZxmYG7iLfNNDbKlvF9DiCDxfn2ag1fToxWGz0qrAvqV6b3PdD123BURDzJ+gQ==,iv:1Pix12Pxr/kX/SqRWHOaSdccIZTQsSoFVGXYNyx2Rfo=,tag:QG1qDJPBUUtlih+TcXXsRQ==,type:str] key_secret: ENC[AES256_GCM,data:n0SH6SLYXOwdjJ5nNku0Pg6/DZxmYG7iLfNNDbKlvF9DiCDxfn2ag1fToxWGz0qrAvqV6b3PdD123BURDzJ+gQ==,iv:1Pix12Pxr/kX/SqRWHOaSdccIZTQsSoFVGXYNyx2Rfo=,tag:QG1qDJPBUUtlih+TcXXsRQ==,type:str]
coturn: coturn:
static_auth_secret: ENC[AES256_GCM,data:osEBYgWGZl+SnqVV1G9IxMys/qDm6WTtj4nILYVw0klDjiB6vd21yA0ik/rLv9E6Y539uMCk3oB0NS7I72U1hQ==,iv:jruS3vfe0fVHY67qNhEgaCEp/9cR57UIu8a/LhdTC1o=,tag:vhxXhh9u4bOSu/lxINjvew==,type:str] static_auth_secret: ENC[AES256_GCM,data:osEBYgWGZl+SnqVV1G9IxMys/qDm6WTtj4nILYVw0klDjiB6vd21yA0ik/rLv9E6Y539uMCk3oB0NS7I72U1hQ==,iv:jruS3vfe0fVHY67qNhEgaCEp/9cR57UIu8a/LhdTC1o=,tag:vhxXhh9u4bOSu/lxINjvew==,type:str]
affine:
db_password: ENC[AES256_GCM,data:AbpoEbmeihtVIoRaWxVL8+v3oCk5iiia9qZLKgyy98qTuNZruiaV3kQN6clYvWgHbzJta5/H9e+xocrEtw8C/A==,iv:2vPeDAJuVujPgM+kr6AFAvat2MCJnsblebx23Ey7YNA=,tag:ukuK30aZ//MKabhSRtLNXw==,type:str]
sops: sops:
age: age:
- recipient: age1pw7kluxp7872c63ne4jecq75glj060jkmqwzkk6esatuyck9egfswufdpk - recipient: age1pw7kluxp7872c63ne4jecq75glj060jkmqwzkk6esatuyck9egfswufdpk
@@ -119,7 +112,7 @@ sops:
VGZKdHpVeFRpQUxtSEkyaEhLMlBJcGsKLb0DvPNZosPBUuiX6qz1s5IO5INQh8CK VGZKdHpVeFRpQUxtSEkyaEhLMlBJcGsKLb0DvPNZosPBUuiX6qz1s5IO5INQh8CK
ZtXTVClwMSmaUYhdSB2gKFrKVZHXTJZ4oAL5t/BpC0pOHyr+o96T3Q== ZtXTVClwMSmaUYhdSB2gKFrKVZHXTJZ4oAL5t/BpC0pOHyr+o96T3Q==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
lastmodified: "2026-02-19T21:23:49Z" lastmodified: "2026-02-12T13:19:01Z"
mac: ENC[AES256_GCM,data:Pey0VPpH1lZazbAqHrrwuoEHZL2Pi7uMV/tR8aLGI958JHDxuHZK41YEOsMa+aiOtiJclgRvO8iOb0oDESsVO5hDTCou7/sJe2Epk62lEclTiho+QnjhnEmP2qYcuWfR1PVwk/n/wkPWm+rBsYGH7PpQZeYUznWQaHPZPFNnIPw=,iv:KTe0Quu/MJA17BivQDCTnBi5IAGtq6x0GKaqm4MuUUo=,tag:IPehj8blXzuEr0HN85y4eg==,type:str] mac: ENC[AES256_GCM,data:IVU1PbDwH1JKG3qPOtmfMZr7BJ7zR/UGQ167Tyf62w5V1gaiVoeqjD8/MR6OSvhMDNYxjJXRKg9E9N8q4JRxok34v5zOfqWchnXEP9wIS39kgsYJ1Hra7hOryd5n49/Xkwyen6f1VSe1nkKtldWS9XHwDBZRrSE+kaXcZTQmKIY=,iv:WLRVIEzR0MFsY6EAgyXZCHQz/xD4cSaeikA8nZqHy38=,tag:+TyOvwWkHa4fHYonKBfxyg==,type:str]
unencrypted_suffix: _unencrypted unencrypted_suffix: _unencrypted
version: 3.11.0 version: 3.11.0