mirror of
https://github.com/kittywitch/nixfiles.git
synced 2026-02-09 04:19:19 -08:00
feat: niri, and so much more o.o
This commit is contained in:
parent
f61eca52be
commit
79bf49841b
61 changed files with 1412 additions and 1683 deletions
449
flake.lock
generated
449
flake.lock
generated
|
|
@ -354,6 +354,22 @@
|
|||
}
|
||||
},
|
||||
"flake-compat_5": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1747046372,
|
||||
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_6": {
|
||||
"locked": {
|
||||
"lastModified": 1733328505,
|
||||
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
||||
|
|
@ -367,7 +383,7 @@
|
|||
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
||||
}
|
||||
},
|
||||
"flake-compat_6": {
|
||||
"flake-compat_7": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1733328505,
|
||||
|
|
@ -383,7 +399,7 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_7": {
|
||||
"flake-compat_8": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1650374568,
|
||||
|
|
@ -478,11 +494,11 @@
|
|||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1701680307,
|
||||
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -493,7 +509,7 @@
|
|||
},
|
||||
"flake-utils-plus": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_6"
|
||||
"flake-utils": "flake-utils_8"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1715533576,
|
||||
|
|
@ -515,11 +531,11 @@
|
|||
"systems": "systems_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"lastModified": 1701680307,
|
||||
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -529,12 +545,15 @@
|
|||
}
|
||||
},
|
||||
"flake-utils_3": {
|
||||
"inputs": {
|
||||
"systems": "systems_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1644229661,
|
||||
"narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=",
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -559,8 +578,23 @@
|
|||
}
|
||||
},
|
||||
"flake-utils_5": {
|
||||
"locked": {
|
||||
"lastModified": 1644229661,
|
||||
"narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_6": {
|
||||
"inputs": {
|
||||
"systems": "systems_4"
|
||||
"systems": "systems_5"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
|
|
@ -576,9 +610,27 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_6": {
|
||||
"flake-utils_7": {
|
||||
"inputs": {
|
||||
"systems": "systems_5"
|
||||
"systems": "systems_6"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_8": {
|
||||
"inputs": {
|
||||
"systems": "systems_7"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1694529238,
|
||||
|
|
@ -654,6 +706,21 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flakey-profile": {
|
||||
"locked": {
|
||||
"lastModified": 1712898590,
|
||||
"narHash": "sha256-FhGIEU93VHAChKEXx905TSiPZKga69bWl1VB37FK//I=",
|
||||
"owner": "lf-",
|
||||
"repo": "flakey-profile",
|
||||
"rev": "243c903fd8eadc0f63d205665a92d4df91d42d9d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "lf-",
|
||||
"repo": "flakey-profile",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"freetype2": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
|
|
@ -1258,11 +1325,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1743972087,
|
||||
"narHash": "sha256-eHr2RYh4xIZvCBLchrXxfMJy70EXtpgztH+/2wod2QQ=",
|
||||
"lastModified": 1752404418,
|
||||
"narHash": "sha256-uf5+w/i0w+2VbNEll9ZRxYSfAbfBC+xfmKjjgREiPro=",
|
||||
"owner": "kittywitch",
|
||||
"repo": "konawall-py",
|
||||
"rev": "55c51028af579813641da3e91e02cbf11ab9d87d",
|
||||
"rev": "9ca077bc1ebc2d0a36176716950db719e9e075c0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1316,6 +1383,41 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"lix": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1751235704,
|
||||
"narHash": "sha256-J4ycLoXHPsoBoQtEXFCelL4xlq5pT8U9tNWNKm43+YI=",
|
||||
"rev": "1d7368585eebaa2c4bdbcb88fe600cfb2239b2c6",
|
||||
"type": "tarball",
|
||||
"url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/1d7368585eebaa2c4bdbcb88fe600cfb2239b2c6.tar.gz?rev=1d7368585eebaa2c4bdbcb88fe600cfb2239b2c6"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://git.lix.systems/lix-project/lix/archive/release-2.93.tar.gz"
|
||||
}
|
||||
},
|
||||
"lix-module": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"flakey-profile": "flakey-profile",
|
||||
"lix": "lix",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1751240025,
|
||||
"narHash": "sha256-SXUAlxpjPRkArRMHy5+Hdi+PiC+ND9yzzIjiaHmTvQU=",
|
||||
"rev": "8b1094356f4723d6e89d3f8a95b333ee16d9ab02",
|
||||
"type": "tarball",
|
||||
"url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/8b1094356f4723d6e89d3f8a95b333ee16d9ab02.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://git.lix.systems/lix-project/nixos-module/archive/2.93.2-1.tar.gz"
|
||||
}
|
||||
},
|
||||
"minecraft": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
|
|
@ -1344,17 +1446,17 @@
|
|||
},
|
||||
"moonlight": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"flake-utils": "flake-utils_2",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1750621684,
|
||||
"narHash": "sha256-E8iHTYK9iUtIjYgBNj54Xeulj9WaxSGDbzOLLFhCSqA=",
|
||||
"lastModified": 1752099881,
|
||||
"narHash": "sha256-mn6f4ci5C2jkyxgmBHQ4dI9V0/20DlyS6EbQz4w7znc=",
|
||||
"owner": "moonlight-mod",
|
||||
"repo": "moonlight",
|
||||
"rev": "9398874e59f5e2b8485c489ce6c0f6c9c7d210a0",
|
||||
"rev": "dbef0c38e1c0066de5ec35a4d4219026b1bd7010",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1365,7 +1467,7 @@
|
|||
},
|
||||
"naersk": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_12"
|
||||
"nixpkgs": "nixpkgs_13"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1717067539,
|
||||
|
|
@ -1400,7 +1502,7 @@
|
|||
},
|
||||
"neorg-overlay": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_2",
|
||||
"flake-utils": "flake-utils_3",
|
||||
"neorg": "neorg",
|
||||
"neorg-telescope": "neorg-telescope",
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
|
|
@ -1457,18 +1559,63 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-filter": {
|
||||
"niri": {
|
||||
"inputs": {
|
||||
"niri-stable": "niri-stable",
|
||||
"niri-unstable": "niri-unstable",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"nixpkgs-stable": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"xwayland-satellite-stable": "xwayland-satellite-stable",
|
||||
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1693833173,
|
||||
"narHash": "sha256-hlMABKrGbEiJD5dwUSfnw1CQ3bG7KKwDV+Nx3bEZd7U=",
|
||||
"owner": "numtide",
|
||||
"repo": "nix-filter",
|
||||
"rev": "ac030bd9ba98e318e1f4c4328d60766ade8ebe8b",
|
||||
"lastModified": 1752291616,
|
||||
"narHash": "sha256-zpPFo4cgr5tOy8DCLIoD++idsKjnzgVPnBeZLmazYc4=",
|
||||
"owner": "sodiboo",
|
||||
"repo": "niri-flake",
|
||||
"rev": "30962469e2e8fb93c3672ee605316b89b8e9a198",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "nix-filter",
|
||||
"owner": "sodiboo",
|
||||
"repo": "niri-flake",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"niri-stable": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1748151941,
|
||||
"narHash": "sha256-z4viQZLgC2bIJ3VrzQnR+q2F3gAOEQpU1H5xHtX/2fs=",
|
||||
"owner": "YaLTeR",
|
||||
"repo": "niri",
|
||||
"rev": "8ba57fcf25d2fc9565131684a839d58703f1dae7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "YaLTeR",
|
||||
"ref": "v25.05.1",
|
||||
"repo": "niri",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"niri-unstable": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1750791124,
|
||||
"narHash": "sha256-F5iVU/hjoSHSSe0gllxm0PcAaseEtGNanYK5Ha3k2Tg=",
|
||||
"owner": "YaLTeR",
|
||||
"repo": "niri",
|
||||
"rev": "37458d94b288945f6cfbd3c5c233f634d59f246c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "YaLTeR",
|
||||
"repo": "niri",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
|
|
@ -1534,6 +1681,27 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-options-doc": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_6",
|
||||
"nixpkgs": "nixpkgs_9",
|
||||
"rust-overlay": "rust-overlay_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1742115705,
|
||||
"narHash": "sha256-RfXwJPWBoWswIU68+y/XZfTWtFHd/fK14bKvOlRmfPo=",
|
||||
"owner": "Thunderbottom",
|
||||
"repo": "nix-options-doc",
|
||||
"rev": "2caa4b5756a8666d65d70122f413e295f56886e7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Thunderbottom",
|
||||
"ref": "v0.2.0",
|
||||
"repo": "nix-options-doc",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-std": {
|
||||
"locked": {
|
||||
"lastModified": 1701658249,
|
||||
|
|
@ -1564,6 +1732,28 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixos-cli": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_5",
|
||||
"nix-options-doc": "nix-options-doc",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1752359519,
|
||||
"narHash": "sha256-ksd2Gu1JpKU3rKvbkpiUlrkY72M8VAln1w4W7pj77WQ=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixos-cli",
|
||||
"rev": "c2778572d75bc27ae2234653c5ce9489930d0c7d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nixos-cli",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1751432711,
|
||||
|
|
@ -1642,9 +1832,9 @@
|
|||
},
|
||||
"nixpkgs-xr": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_5",
|
||||
"flake-utils": "flake-utils_5",
|
||||
"nixpkgs": "nixpkgs_10",
|
||||
"flake-compat": "flake-compat_6",
|
||||
"flake-utils": "flake-utils_7",
|
||||
"nixpkgs": "nixpkgs_11",
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
},
|
||||
"locked": {
|
||||
|
|
@ -1662,6 +1852,22 @@
|
|||
}
|
||||
},
|
||||
"nixpkgs_10": {
|
||||
"locked": {
|
||||
"lastModified": 1751271578,
|
||||
"narHash": "sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU+tt4YY=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "3016b4b15d13f3089db8a41ef937b13a9e33a8df",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_11": {
|
||||
"locked": {
|
||||
"lastModified": 1751271578,
|
||||
"narHash": "sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU+tt4YY=",
|
||||
|
|
@ -1677,7 +1883,7 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_11": {
|
||||
"nixpkgs_12": {
|
||||
"locked": {
|
||||
"lastModified": 1751271578,
|
||||
"narHash": "sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU+tt4YY=",
|
||||
|
|
@ -1693,7 +1899,7 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_12": {
|
||||
"nixpkgs_13": {
|
||||
"locked": {
|
||||
"lastModified": 0,
|
||||
"narHash": "sha256-9YrUjdztqi4Gz8n3mBuqvCkMo4ojrA6nASwyIKWMpus=",
|
||||
|
|
@ -1705,7 +1911,7 @@
|
|||
"type": "indirect"
|
||||
}
|
||||
},
|
||||
"nixpkgs_13": {
|
||||
"nixpkgs_14": {
|
||||
"locked": {
|
||||
"lastModified": 1724517639,
|
||||
"narHash": "sha256-3eTrclsS5OYShbw0MRiiF3GJ8emUTwVzAZo96pdD7hM=",
|
||||
|
|
@ -1719,7 +1925,7 @@
|
|||
"type": "indirect"
|
||||
}
|
||||
},
|
||||
"nixpkgs_14": {
|
||||
"nixpkgs_15": {
|
||||
"locked": {
|
||||
"lastModified": 1751011381,
|
||||
"narHash": "sha256-krGXKxvkBhnrSC/kGBmg5MyupUUT5R6IBCLEzx9jhMM=",
|
||||
|
|
@ -1849,11 +2055,11 @@
|
|||
},
|
||||
"nixpkgs_9": {
|
||||
"locked": {
|
||||
"lastModified": 1751271578,
|
||||
"narHash": "sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU+tt4YY=",
|
||||
"lastModified": 1740695751,
|
||||
"narHash": "sha256-D+R+kFxy1KsheiIzkkx/6L63wEHBYX21OIwlFV8JvDs=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "3016b4b15d13f3089db8a41ef937b13a9e33a8df",
|
||||
"rev": "6313551cd05425cd5b3e63fe47dbc324eabb15e4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1866,7 +2072,7 @@
|
|||
"norg": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_3",
|
||||
"flake-utils": "flake-utils_3",
|
||||
"flake-utils": "flake-utils_4",
|
||||
"nixpkgs": "nixpkgs_6"
|
||||
},
|
||||
"locked": {
|
||||
|
|
@ -1887,7 +2093,7 @@
|
|||
"norg-meta": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_4",
|
||||
"flake-utils": "flake-utils_4",
|
||||
"flake-utils": "flake-utils_5",
|
||||
"nixpkgs": "nixpkgs_7"
|
||||
},
|
||||
"locked": {
|
||||
|
|
@ -1907,7 +2113,7 @@
|
|||
"nur": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts_3",
|
||||
"nixpkgs": "nixpkgs_11",
|
||||
"nixpkgs": "nixpkgs_12",
|
||||
"treefmt-nix": "treefmt-nix_2"
|
||||
},
|
||||
"locked": {
|
||||
|
|
@ -2025,7 +2231,7 @@
|
|||
"rbw-bitw": {
|
||||
"inputs": {
|
||||
"flakelib": "flakelib_2",
|
||||
"nixpkgs": "nixpkgs_13",
|
||||
"nixpkgs": "nixpkgs_14",
|
||||
"rust": "rust_2"
|
||||
},
|
||||
"locked": {
|
||||
|
|
@ -2064,27 +2270,28 @@
|
|||
"infrastructure": "infrastructure",
|
||||
"konawall-py": "konawall-py",
|
||||
"lanzaboote": "lanzaboote",
|
||||
"lix-module": "lix-module",
|
||||
"minecraft": "minecraft",
|
||||
"moonlight": "moonlight",
|
||||
"neorg-overlay": "neorg-overlay",
|
||||
"nh": "nh",
|
||||
"niri": "niri",
|
||||
"nix-gaming": "nix-gaming",
|
||||
"nix-index-database": "nix-index-database",
|
||||
"nixos-cli": "nixos-cli",
|
||||
"nixos-hardware": "nixos-hardware",
|
||||
"nixpkgs": "nixpkgs_9",
|
||||
"nixpkgs": "nixpkgs_10",
|
||||
"nixpkgs-xr": "nixpkgs-xr",
|
||||
"nur": "nur",
|
||||
"plasma-manager": "plasma-manager",
|
||||
"push2talk": "push2talk",
|
||||
"rbw-bitw": "rbw-bitw",
|
||||
"scalpel": "scalpel",
|
||||
"solaar": "solaar",
|
||||
"sops-nix": "sops-nix",
|
||||
"spacebar": "spacebar",
|
||||
"spicetify-nix": "spicetify-nix",
|
||||
"split-monitor-workspaces": "split-monitor-workspaces",
|
||||
"std": "std_2",
|
||||
"systems": "systems_7",
|
||||
"systems": "systems_9",
|
||||
"tree": "tree_2",
|
||||
"utils": "utils",
|
||||
"wezterm": "wezterm",
|
||||
|
|
@ -2156,6 +2363,28 @@
|
|||
}
|
||||
},
|
||||
"rust-overlay_3": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixos-cli",
|
||||
"nix-options-doc",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1740796337,
|
||||
"narHash": "sha256-FuoXrXZPoJEZQ3PF7t85tEpfBVID9JQIOnVKMNfTAb0=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "bbac9527bc6b28b6330b13043d0e76eac11720dc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"rust-overlay_4": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"wezterm",
|
||||
|
|
@ -2197,35 +2426,9 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"scalpel": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
"utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"sops-nix": [
|
||||
"sops-nix"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1728502146,
|
||||
"narHash": "sha256-W5/1J7F49hfGnb/yK8WF5NUcNsjNIcDCNyYnRT0NgKQ=",
|
||||
"owner": "kittywitch",
|
||||
"repo": "scalpel",
|
||||
"rev": "5fbeec42ab00ecc5d99fc82c65c5d903ad14d3ba",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "kittywitch",
|
||||
"repo": "scalpel",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"snowfall-lib": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_7",
|
||||
"flake-compat": "flake-compat_8",
|
||||
"flake-utils-plus": "flake-utils-plus",
|
||||
"nixpkgs": [
|
||||
"solaar",
|
||||
|
|
@ -2249,7 +2452,7 @@
|
|||
},
|
||||
"solaar": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_6",
|
||||
"flake-compat": "flake-compat_7",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
|
|
@ -2314,8 +2517,8 @@
|
|||
},
|
||||
"spicetify-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_14",
|
||||
"systems": "systems_6"
|
||||
"nixpkgs": "nixpkgs_15",
|
||||
"systems": "systems_8"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1751171964,
|
||||
|
|
@ -2331,27 +2534,6 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"split-monitor-workspaces": {
|
||||
"inputs": {
|
||||
"hyprland": [
|
||||
"hyprland"
|
||||
],
|
||||
"nix-filter": "nix-filter"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1751646985,
|
||||
"narHash": "sha256-QQQr6iyOh8Mn6+sze9+mg57C/7aVA4na5gfVTHJ2WGY=",
|
||||
"owner": "Duckonaut",
|
||||
"repo": "split-monitor-workspaces",
|
||||
"rev": "e9acfbc08f443f98c691e22f0a89b035eb060070",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Duckonaut",
|
||||
"repo": "split-monitor-workspaces",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"std": {
|
||||
"inputs": {
|
||||
"nix-std": "nix-std_2"
|
||||
|
|
@ -2534,6 +2716,36 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_8": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_9": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tree": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
|
@ -2656,7 +2868,7 @@
|
|||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"rust-overlay": "rust-overlay_3",
|
||||
"rust-overlay": "rust-overlay_4",
|
||||
"zlib": "zlib"
|
||||
},
|
||||
"locked": {
|
||||
|
|
@ -2740,6 +2952,39 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"xwayland-satellite-stable": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1748488455,
|
||||
"narHash": "sha256-IiLr1alzKFIy5tGGpDlabQbe6LV1c9ABvkH6T5WmyRI=",
|
||||
"owner": "Supreeeme",
|
||||
"repo": "xwayland-satellite",
|
||||
"rev": "3ba30b149f9eb2bbf42cf4758d2158ca8cceef73",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Supreeeme",
|
||||
"ref": "v0.6",
|
||||
"repo": "xwayland-satellite",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"xwayland-satellite-unstable": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1751228685,
|
||||
"narHash": "sha256-MENtauGBhJ+kDeFaawvWGXaFG3Il6qQzjaP0RmtfM0k=",
|
||||
"owner": "Supreeeme",
|
||||
"repo": "xwayland-satellite",
|
||||
"rev": "557ebeb616e03d5e4a8049862bbbd1f02c6f020b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Supreeeme",
|
||||
"repo": "xwayland-satellite",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"zlib": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
|
|
|
|||
31
flake.nix
31
flake.nix
|
|
@ -1,6 +1,10 @@
|
|||
{
|
||||
description = "Kat's Infrastructure";
|
||||
inputs = {
|
||||
lix-module = {
|
||||
url = "https://git.lix.systems/lix-project/nixos-module/archive/2.93.2-1.tar.gz";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
systems.url = "github:nix-systems/default";
|
||||
# TODO: https://github.com/catppuccin/nix/issues/601
|
||||
catppuccin.url = "github:catppuccin/nix";#/194881dd2ad6303bc2d49f9ce484d127372d7465";
|
||||
|
|
@ -22,10 +26,6 @@
|
|||
nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
split-monitor-workspaces = {
|
||||
url = "github:Duckonaut/split-monitor-workspaces";
|
||||
inputs.hyprland.follows = "hyprland"; # <- make sure this line is present for the plugin to work as intended
|
||||
};
|
||||
# used for overriding unwanted flake inputs
|
||||
empty.url = "github:input-output-hk/empty-flake";
|
||||
# self-explanatory
|
||||
|
|
@ -50,6 +50,12 @@
|
|||
barcodebuddy.follows = "empty";
|
||||
};
|
||||
};
|
||||
nixos-cli = {
|
||||
type = "github";
|
||||
owner = "nix-community";
|
||||
repo = "nixos-cli";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
chaotic.url = "github:chaotic-cx/nyx/nyxpkgs-unstable";
|
||||
solaar = {
|
||||
# ewww flakehub ;;
|
||||
|
|
@ -60,7 +66,13 @@
|
|||
url = "github:nix-community/nh";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
niri = {
|
||||
url = "github:sodiboo/niri-flake";
|
||||
inputs = {
|
||||
nixpkgs.follows = "nixpkgs";
|
||||
nixpkgs-stable.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
moonlight = {
|
||||
url = "github:moonlight-mod/moonlight";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
|
@ -178,15 +190,6 @@
|
|||
nixpkgs-stable.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
# secrets templating
|
||||
scalpel = {
|
||||
url = "github:kittywitch/scalpel";
|
||||
inputs = {
|
||||
flake-utils.follows = "utils";
|
||||
nixpkgs.follows = "nixpkgs";
|
||||
sops-nix.follows = "sops-nix";
|
||||
};
|
||||
};
|
||||
# pre-computed nix-index
|
||||
nix-index-database = {
|
||||
url = "github:Mic92/nix-index-database";
|
||||
|
|
|
|||
|
|
@ -54,9 +54,6 @@ ${pkgs.glib}/bin/gsettings set "$gnome_schema" font-name "$font_name"
|
|||
};
|
||||
xwayland.enable = true;
|
||||
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
|
||||
plugins = [
|
||||
inputs.split-monitor-workspaces.packages.${pkgs.system}.split-monitor-workspaces
|
||||
];
|
||||
settings = {
|
||||
# TODO: break it up
|
||||
windowrule = let
|
||||
|
|
@ -128,12 +125,6 @@ ${pkgs.glib}/bin/gsettings set "$gnome_schema" font-name "$font_name"
|
|||
"legcord --enable-features=WaylandLinuxDrmSyncobj,UseOzonePlatform --ozone-platform=wayland"
|
||||
"spotify --enable-features=WaylandLinuxDrmSyncobj,UseOzonePlatform --ozone-platform=wayland"
|
||||
];
|
||||
plugin.split-monitor-workspaces = {
|
||||
count = 10;
|
||||
keep_focused = 0;
|
||||
enable_notifications = 0;
|
||||
enable_persistent_workspaces = 1;
|
||||
};
|
||||
group.groupbar = {
|
||||
font_family = "Monaspace Krypton";
|
||||
font_size = 12;
|
||||
|
|
@ -239,9 +230,6 @@ ${pkgs.glib}/bin/gsettings set "$gnome_schema" font-name "$font_name"
|
|||
"$mod SHIFT, F${if ws == "0" then "10" else ws}, movetoworkspacesilent, ${toString (x + 11)}"
|
||||
|
||||
"$mod ALT, ${ws}, split-workspace, ${toString (x + 1)}"
|
||||
"$mod SHIFT ALT, ${ws}, split-movetoworkspacesilent, ${toString (x + 1)}"
|
||||
"$mod ALT, F${if ws == "0" then "10" else ws}, split-workspace, ${toString (x + 11)}"
|
||||
"$mod SHIFT ALT, F${if ws == "0" then "10" else ws}, split-movetoworkspacesilent, ${toString (x + 11)}"
|
||||
]
|
||||
)
|
||||
10)
|
||||
|
|
|
|||
65
home/environments/niri/autostart.nix
Normal file
65
home/environments/niri/autostart.nix
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
{ pkgs, config, ... }: {
|
||||
programs.niri.settings.spawn-at-startup = let
|
||||
import-gsettings = pkgs.writeShellScriptBin "import-gsettings" ''
|
||||
# usage: import-gsettings
|
||||
config="''${XDG_CONFIG_HOME:-$HOME/.config}/gtk-3.0/settings.ini"
|
||||
if [ ! -f "$config" ]; then exit 1; fi
|
||||
|
||||
gnome_schema="org.gnome.desktop.interface"
|
||||
gtk_theme="$(grep 'gtk-theme-name' "$config" | sed 's/.*\s*=\s*//')"
|
||||
icon_theme="$(grep 'gtk-icon-theme-name' "$config" | sed 's/.*\s*=\s*//')"
|
||||
cursor_theme="$(grep 'gtk-cursor-theme-name' "$config" | sed 's/.*\s*=\s*//')"
|
||||
font_name="$(grep 'gtk-font-name' "$config" | sed 's/.*\s*=\s*//')"
|
||||
${pkgs.glib}/bin/gsettings set "$gnome_schema" gtk-theme "$gtk_theme"
|
||||
${pkgs.glib}/bin/gsettings set "$gnome_schema" icon-theme "$icon_theme"
|
||||
${pkgs.glib}/bin/gsettings set "$gnome_schema" cursor-theme "$cursor_theme"
|
||||
${pkgs.glib}/bin/gsettings set "$gnome_schema" font-name "$font_name"
|
||||
'';
|
||||
in [
|
||||
{
|
||||
command = [
|
||||
"${import-gsettings}/bin/import-gsettings"
|
||||
];
|
||||
}
|
||||
{
|
||||
command = [
|
||||
"${pkgs.systemd}/bin/systemctl"
|
||||
"--user"
|
||||
"start"
|
||||
"waybar.service"
|
||||
];
|
||||
}
|
||||
{
|
||||
command = [
|
||||
"${pkgs.systemd}/bin/systemctl"
|
||||
"--user"
|
||||
"restart"
|
||||
"konawall-py.service"
|
||||
];
|
||||
}
|
||||
{
|
||||
command = [
|
||||
"${pkgs.systemd}/bin/systemctl"
|
||||
"--user"
|
||||
"start"
|
||||
"mako.service"
|
||||
];
|
||||
}
|
||||
#{
|
||||
# command = [
|
||||
# "${pkgs.xwayland-satellite}/bin/xwayland-satellite"
|
||||
# ];
|
||||
#}
|
||||
# program autostart
|
||||
{
|
||||
command = [
|
||||
"firefox"
|
||||
];
|
||||
}
|
||||
{
|
||||
command = [
|
||||
"discord"
|
||||
];
|
||||
}
|
||||
];
|
||||
}
|
||||
21
home/environments/niri/avizo.nix
Normal file
21
home/environments/niri/avizo.nix
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
{ config, ... }: {
|
||||
services.avizo = {
|
||||
enable = true;
|
||||
settings = {
|
||||
default = {
|
||||
block-count = 100;
|
||||
block-spacing = 0;
|
||||
border-radius = 8;
|
||||
border-width = 2;
|
||||
background = "rgba(${builtins.toString config.palette.mantle.rgb.r}, ${builtins.toString config.palette.mantle.rgb.g}, ${builtins.toString config.palette.mantle.rgb.b}, 1)";
|
||||
border-color = "rgba(${builtins.toString config.palette.${config.catppuccin.accent}.rgb.r}, ${
|
||||
builtins.toString config.palette.${config.catppuccin.accent}.rgb.g
|
||||
}, ${builtins.toString config.palette.${config.catppuccin.accent}.rgb.b}, 1)";
|
||||
bar-fg-color = "rgba(${builtins.toString config.palette.${config.catppuccin.accent}.rgb.r}, ${
|
||||
builtins.toString config.palette.${config.catppuccin.accent}.rgb.g
|
||||
}, ${builtins.toString config.palette.${config.catppuccin.accent}.rgb.b}, 1)";
|
||||
bar-bg-color = "rgba(${builtins.toString config.palette.mantle.rgb.r}, ${builtins.toString config.palette.mantle.rgb.g}, ${builtins.toString config.palette.mantle.rgb.b}, 1)";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
145
home/environments/niri/binds.nix
Normal file
145
home/environments/niri/binds.nix
Normal file
|
|
@ -0,0 +1,145 @@
|
|||
{ config, pkgs, lib, std, ... }: let
|
||||
inherit (std) list;
|
||||
inherit (lib.modules) mkMerge;
|
||||
in {
|
||||
programs.niri.settings.binds = let
|
||||
bindWorkspace = key: workspace: {
|
||||
"Mod+${key}".action.focus-workspace = workspace;
|
||||
"Mod+Ctrl+${key}".action.move-column-to-workspace = workspace;
|
||||
};
|
||||
workspaceBindings =
|
||||
list.map (v: bindWorkspace (builtins.toString v) v) (list.range 1 9)
|
||||
++ [
|
||||
(
|
||||
bindWorkspace "0" 10
|
||||
)
|
||||
];
|
||||
in mkMerge (workspaceBindings ++ [{
|
||||
# Transcribed: https://github.com/sodiboo/niri-flake/issues/483
|
||||
# thank you Pacman99 you chad :3
|
||||
"Mod+Q".action.close-window = {};
|
||||
"Mod+O".action.toggle-overview = {};
|
||||
|
||||
"Mod+Left".action.focus-column-left = {};
|
||||
"Mod+Down".action.focus-window-down = {};
|
||||
"Mod+Up".action.focus-window-up = {};
|
||||
"Mod+Right".action.focus-column-right = {};
|
||||
"Mod+H".action.focus-column-left = {};
|
||||
"Mod+J".action.focus-window-down = {};
|
||||
"Mod+K".action.focus-window-up = {};
|
||||
"Mod+L".action.focus-column-right = {};
|
||||
|
||||
"Mod+Ctrl+Left".action.move-column-left = {};
|
||||
"Mod+Ctrl+Down".action.move-window-down = {};
|
||||
"Mod+Ctrl+Up".action.move-window-up = {};
|
||||
"Mod+Ctrl+Right".action.move-column-right = {};
|
||||
"Mod+Ctrl+H".action.move-column-left = {};
|
||||
"Mod+Ctrl+J".action.move-window-down = {};
|
||||
"Mod+Ctrl+K".action.move-window-up = {};
|
||||
"Mod+Ctrl+L".action.move-column-right = {};
|
||||
|
||||
"Mod+Home".action.focus-column-first = {};
|
||||
"Mod+End".action.focus-column-last = {};
|
||||
"Mod+Ctrl+Home".action.move-column-to-first = {};
|
||||
"Mod+Ctrl+End".action.move-column-to-last = {};
|
||||
|
||||
"Mod+Shift+Left".action.focus-monitor-left = {};
|
||||
"Mod+Shift+Down".action.focus-monitor-down = {};
|
||||
"Mod+Shift+Up".action.focus-monitor-up = {};
|
||||
"Mod+Shift+Right".action.focus-monitor-right = {};
|
||||
"Mod+Shift+H".action.focus-monitor-left = {};
|
||||
"Mod+Shift+J".action.focus-monitor-down = {};
|
||||
"Mod+Shift+K".action.focus-monitor-up = {};
|
||||
"Mod+Shift+L".action.focus-monitor-right = {};
|
||||
|
||||
"Mod+Shift+Ctrl+Left".action.move-column-to-monitor-left = {};
|
||||
"Mod+Shift+Ctrl+Down".action.move-column-to-monitor-down = {};
|
||||
"Mod+Shift+Ctrl+Up".action.move-column-to-monitor-up = {};
|
||||
"Mod+Shift+Ctrl+Right".action.move-column-to-monitor-right = {};
|
||||
"Mod+Shift+Ctrl+H".action.move-column-to-monitor-left = {};
|
||||
"Mod+Shift+Ctrl+J".action.move-column-to-monitor-down = {};
|
||||
"Mod+Shift+Ctrl+K".action.move-column-to-monitor-up = {};
|
||||
"Mod+Shift+Ctrl+L".action.move-column-to-monitor-right = {};
|
||||
|
||||
"Mod+Page_Down".action.focus-workspace-down = {};
|
||||
"Mod+Page_Up".action.focus-workspace-up = {};
|
||||
"Mod+U".action.focus-workspace-down = {};
|
||||
"Mod+I".action.focus-workspace-up = {};
|
||||
"Mod+Ctrl+Page_Down".action.move-column-to-workspace-down = {};
|
||||
"Mod+Ctrl+Page_Up".action.move-column-to-workspace-up = {};
|
||||
"Mod+Ctrl+U".action.move-column-to-workspace-down = {};
|
||||
"Mod+Ctrl+I".action.move-column-to-workspace-up = {};
|
||||
|
||||
"Mod+Shift+Page_Down".action.move-workspace-down = {};
|
||||
"Mod+Shift+Page_Up".action.move-workspace-up = {};
|
||||
"Mod+Shift+U".action.move-workspace-down = {};
|
||||
"Mod+Shift+I".action.move-workspace-up = {};
|
||||
|
||||
"Mod+WheelScrollDown" = {
|
||||
cooldown-ms = 150;
|
||||
action.focus-workspace-down = {};
|
||||
};
|
||||
"Mod+WheelScrollUp" = {
|
||||
cooldown-ms = 150;
|
||||
action.focus-workspace-up = {};
|
||||
};
|
||||
"Mod+Ctrl+WheelScrollDown" = {
|
||||
cooldown-ms = 150;
|
||||
action.move-column-to-workspace-down = {};
|
||||
};
|
||||
"Mod+Ctrl+WheelScrollUp" = {
|
||||
cooldown-ms = 150;
|
||||
action.move-column-to-workspace-up = {};
|
||||
};
|
||||
|
||||
"Mod+WheelScrollRight".action.focus-column-right = {};
|
||||
"Mod+WheelScrollLeft".action.focus-column-left = {};
|
||||
"Mod+Ctrl+WheelScrollRight".action.move-column-right = {};
|
||||
"Mod+Ctrl+WheelScrollLeft".action.move-column-left = {};
|
||||
|
||||
"Mod+Shift+WheelScrollDown".action.focus-column-right = {};
|
||||
"Mod+Shift+WheelScrollUp".action.focus-column-left = {};
|
||||
"Mod+Ctrl+Shift+WheelScrollDown".action.move-column-right = {};
|
||||
"Mod+Ctrl+Shift+WheelScrollUp".action.move-column-left = {};
|
||||
|
||||
"Mod+Comma".action.consume-window-into-column = {};
|
||||
"Mod+Period".action.expel-window-from-column = {};
|
||||
|
||||
"Mod+R".action.switch-preset-column-width = {};
|
||||
"Mod+Shift+R".action.reset-window-height = {};
|
||||
"Mod+F".action.maximize-column = {};
|
||||
"Mod+Shift+F".action.fullscreen-window = {};
|
||||
"Mod+C".action.center-column = {};
|
||||
|
||||
"Mod+Minus".action.set-column-width = "-10%";
|
||||
"Mod+Equal".action.set-column-width = "+10%";
|
||||
|
||||
"Mod+Shift+Minus".action.set-window-height = "-10%";
|
||||
"Mod+Shift+Equal".action.set-window-height = "+10%";
|
||||
|
||||
"Print".action.screenshot = {};
|
||||
"Ctrl+Print".action.screenshot-screen = {};
|
||||
"Alt+Print".action.screenshot-window = {};
|
||||
|
||||
# The quit action will show a confirmation dialog to avoid accidental exits.
|
||||
"Mod+Shift+E".action.quit = {};
|
||||
|
||||
# Powers off the monitors. To turn them back on, do any input like
|
||||
# moving the mouse or pressing any other key.
|
||||
"Mod+Shift+P".action.power-off-monitors = {};
|
||||
|
||||
# Kat
|
||||
"XF86AudioRaiseVolume".action.spawn = ["wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1+"];
|
||||
"XF86AudioLowerVolume".action.spawn = ["wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1-"];
|
||||
"XF86AudioMute".action.spawn = ["wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"];
|
||||
"XF86AudioPlay".action.spawn = ["${pkgs.playerctl}/bin/playerctl" "play-pause"];
|
||||
"XF86AudioNext".action.spawn = ["${pkgs.playerctl}/bin/playerctl" "next"];
|
||||
"XF86AudioPrev".action.spawn = ["${pkgs.playerctl}/bin/playerctl" "prev"];
|
||||
"Mod+T".action.spawn = ["${config.programs.wezterm.package}/bin/wezterm"];
|
||||
"Mod+D".action.spawn = ["${config.programs.wofi.package}/bin/wofi" "-t" "wezterm" "-IS" "drun"];
|
||||
"Mod+Shift+D".action.spawn = ["${config.programs.wofi.package}/bin/wofi" "-t" "wezterm" "-IS" "run"];
|
||||
"Mod+Escape".action.spawn = ["${config.programs.wlogout.package}/bin/wlogout" "-p" "layer-shell"];
|
||||
"Mod+Shift+Escape".action.spawn = ["${config.programs.swaylock.package}/bin/swaylock" "-f"];
|
||||
#"Print".action.spawn = ["${pkgs.grimblast}/bin/grimblast" "copy" "area"];
|
||||
}]);
|
||||
}
|
||||
12
home/environments/niri/cursor.nix
Normal file
12
home/environments/niri/cursor.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{ config, pkgs, ... }: {
|
||||
catppuccin.cursors.enable = true;
|
||||
home.pointerCursor = {
|
||||
dotIcons.enable = true;
|
||||
x11 = {
|
||||
enable = true;
|
||||
defaultCursor = config.home.pointerCursor.name;
|
||||
};
|
||||
gtk.enable = true;
|
||||
size = 32;
|
||||
};
|
||||
}
|
||||
65
home/environments/niri/konawall.nix
Normal file
65
home/environments/niri/konawall.nix
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
{
|
||||
inputs,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
konawallConfig = {
|
||||
interval = 30 * 60;
|
||||
rotate = true;
|
||||
source = "e621";
|
||||
tags = [
|
||||
"-rating:s"
|
||||
"-male/male"
|
||||
"-five_nights_at_freddy's"
|
||||
#"touhou"
|
||||
"-male"
|
||||
"-large_breasts"
|
||||
"-scalie"
|
||||
#"-my_little_pony"
|
||||
"-sonic_the_hedgehog"
|
||||
"-amputee"
|
||||
"-inflation"
|
||||
"-pool_toy"
|
||||
"-cuckold"
|
||||
"-gore"
|
||||
"-human"
|
||||
"-animated"
|
||||
"-hyper"
|
||||
"-death"
|
||||
"ratio:>=1.3"
|
||||
"-muscular_male"
|
||||
"-model_sheet"
|
||||
"score:>=100"
|
||||
"width:>=1500"
|
||||
];
|
||||
logging = {
|
||||
file = "INFO";
|
||||
console = "DEBUG";
|
||||
};
|
||||
};
|
||||
in {
|
||||
sops.secrets.konawall-py-env = {
|
||||
sopsFile = ./konawall.yaml;
|
||||
};
|
||||
home.packages = [
|
||||
inputs.konawall-py.packages.${pkgs.system}.konawall-py
|
||||
];
|
||||
xdg.configFile = {
|
||||
"konawall/config.toml".source = (pkgs.formats.toml {}).generate "konawall-config" konawallConfig;
|
||||
};
|
||||
systemd.user.services.konawall-py = {
|
||||
Unit = {
|
||||
Description = "konawall-py";
|
||||
X-Restart-Triggers = [(toString config.xdg.configFile."konawall/config.toml".source)];
|
||||
After = ["graphical-session.target" "network-online.target"];
|
||||
};
|
||||
Service = {
|
||||
ExecStart = "${inputs.konawall-py.packages.${pkgs.system}.konawall-py}/bin/konawall";
|
||||
Restart = "on-failure";
|
||||
RestartSec = "1s";
|
||||
EnvironmentFile = config.sops.secrets.konawall-py-env.path;
|
||||
};
|
||||
Install = {WantedBy = ["graphical-session.target"];};
|
||||
};
|
||||
}
|
||||
110
home/environments/niri/konawall.yaml
Normal file
110
home/environments/niri/konawall.yaml
Normal file
|
|
@ -0,0 +1,110 @@
|
|||
konawall-py-env: ENC[AES256_GCM,data:8SWQgZkKXffy+GfhbIkZAB3ZJ9a+q5yPmMdt3lgrzezguX23p7vqgRac9AHq1x8=,iv:K5Pj9FuLWbpah8WaD5TZwmomZUgJnuaCdzFlu7K4n/w=,tag:qTlbMlsTeTnXSm+lyDe1iw==,type:str]
|
||||
sops:
|
||||
shamir_threshold: 1
|
||||
age:
|
||||
- recipient: age1n4kdchmkk3rfkaknxhveqr2ftprdpgwckutt23y6u8639lazzuks77tgav
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBSQ2twMTY4UGhEZzNjRG1P
|
||||
UDhPV1RzcnBwdG9aaVdjV1FxU0dsNzRURVJJCmwvbXRUVFExNjBRb09GTXREZmd4
|
||||
WS9CclFlbXdhUkNITFI0bW9EVS9YNTQKLS0tIGxPS3JvNEJZSCswYlRZdHJkN2lH
|
||||
ZHBDblNCN3RmbUtrdTEzVDFQdzI3eDQKY/Q+zAs4cTr2fWDdVqNR+fYRnSIO6s6a
|
||||
1UOqkFAIZOMmrYMiBu132zgBNT0HU0avvEkZ85Wp72HPv1bUz2QJ4g==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1cnu37d5fqyahh9vvc4hj6z6k8ur9ksuefln7sr6g3emmn927eutqxdawuh
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQNUF0NXRNRTAzRzc1ZnUv
|
||||
cTdmNm8zRTN5WUJ2WUl4aDVmbUNUbzdxd0djCjg3SkF1bmZITW1GNVJ1cHl2QWRP
|
||||
QitpRHAzNUhWLzNQZUxLeitKQmkyNGsKLS0tIDJkTEVrOS9tZlg1bi9EeXFzSkNz
|
||||
M2FzNFg4TDc5d0pWOHhUSjJ3Vko2Q0kKDDOhuMe57zE8GSWja37WJrm+dlSROzde
|
||||
2+RwG6OjDAltWtPpmiLmFCnnGLu3VGYZupbwOtWfBxWiZFQfaYsW9w==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1a0m73qr8hhuz8xemv4vymf4wmpghm2hst8wgrn3pn65ext5mf4ksk0vsdm
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBuWmh0Y3hpcXF1RzYvMEJZ
|
||||
dms2akl4SHBSU1dPaERtM1l5NlJGQjBkc2xnCjM1UEFJZVBSK2ZMaE5GM3lTTlov
|
||||
RlJxK3kyd0FWYlZncVowd2t1amp2UlEKLS0tIEZwRVVoak90bXVvSlhqenRYMldN
|
||||
ZDdPOUh0SkFMdDlRV2pIby9ObFZlNXcKleHAiVFw8B6axyOUBhA3nhh+5Q6q82WI
|
||||
IlOK9nsFJ4yYCU+IZ6TRkAbu7m8xCC24yBOMY3cUZzYc+3HxjIByDw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age18hpxz0ghvswv9k30cle73prvnzrsuczqh87jjdk9fl50j3ddndmq9xae0n
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBWQ01DWDZtVHpKbFlmREJk
|
||||
Q2hUdkRUQ1dOWVRaL1NQU3Y1a2NneXpiaVNnClZrZGo5RnIwSk1UbFJ3K1lIZDl3
|
||||
bmxWUGR2ZTNxaG9aZEhBQlhrQ0g5TUkKLS0tIDM4bHZWTFR2YUZlT3QrSms2SElB
|
||||
R01tUEJxRy9mQkNlQUloOFk4b0JyOEUKihPiTr07wiT32FBA3KQplBq21EgzyjEA
|
||||
iXkJDTX5cBn62P53UO/3Gkgi3CG9BjxposrAq5Jmvylej6EgCF13NQ==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1xgy03g3vjydsxcl0qpdgm8rahjcjq95ucxfwlgr22zwjx3p7jf2s9jk6u5
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAxdktCby9jdG4yR0tIZ2JE
|
||||
N2F2TkRsaXpuOHNXYVBid3NHU21HWFpQOEVFClRIbXVBNm9GMTVyQno5eGNwRkFU
|
||||
NDhZZDBZT0p1SDh5SW1ycjM2SXZ3R3MKLS0tIGJ2R01TaFFHNnU2cG1wcHA3WkI3
|
||||
NWxYRDZzZS9Bc25qbW9BUXZaL09rZXMKdpveRhf73CNVCiU+Xjo9TNxW+NTHLJNq
|
||||
EhYYMnIEtzWDWQOJBzed8+4dpVpjLxJ1Z4EATdRV/vSNLuH+2NENOg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1fv5dafs4n3r5n83qm2hfz7xmnflsz0xf9r3saralrptpgf8mvuxq4t8k3u
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAwZUlsZmJZU1JXS1ZxdFNq
|
||||
emoxdEY3dzZ4ajdWZ1IwTHJhNjZTdUFwR1EwCmo2M3FNaGw0M3phWGFHbThlRnAw
|
||||
aTFJT3Zkd0RRUTBub3RyTWRhUWl5UTAKLS0tIEpmRlFVeWZILzkzR2hFUG9UbHFS
|
||||
R0dsOGpPWVJQNkFOd0FHbnBWZ1ZvL1EKsTb8ToKytd5VPig7+koYsMYIKyglIuZm
|
||||
KvyEgYScynYRiYCjVH92NUo2VaNV+i2g+syUIrcgDvzGa98fgnFITw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age120530yclr75k6nrzp6k5jjftj8j4q9v3533guupzk4ct86mjxszqg9e5t5
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB1eEN6MS9kVkMySTFpVnNZ
|
||||
YytlVjJhdUxWQ1I0UkgrWnM0REFUakkvYkJrCkUrRkpXa09rUnByemdJdEljcW10
|
||||
R01uRkF1WnQ5OTBFOWRuMmtGSkZmT3MKLS0tIFZhNms3blpHWGtJM203Wk5RT1R6
|
||||
emE2VjJPcnNLTnNNOCtYMFRLd3VuV3cKYdupODU2h9PQN0nXlAkZaaJE+fUNQGmV
|
||||
TKv6OP8MiWdle50eMvEJCy7sEPTcq02Xwm3cKJCo3k+N2rUPfyf2BQ==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1c4atxfp05u7zm875s6q8p82ve96rqqpq9smktxlur8pk2yc3qvgql46dp9
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBTZHZKcHBOWDZROWc5ZEVS
|
||||
dW9oT01zR00rUlZOVGhFQXJSS3A4cGZUR21rCkVmUWRvZ3BpMllSdUY4SkNiSDhs
|
||||
bmt6KzkwWnVObkdJeXV3WWFRdGxlc28KLS0tIDdaNTVSWjNxazhVanA2Mk9QTmlr
|
||||
cEdOZTlKeWdHREpJQ0VDVlN4eG5LWkEKO9sLRqGxtJUKjeQsvZAodBv1Cvs4z1ut
|
||||
LptNfGOJQxxwHazKb5VdoXe6Z6qOxciQ1ngNetLC7yEPzEs51smFOg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1rjldv3fn3q686647exmcukthr32gmp6s3axs0lhyenvru9ajp9rs24ukvz
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBveEE2Y0d4RFp2Q1NQV2g3
|
||||
K1pSSFRNeXlzWlo2U211SzM5Rjg5MG5EUmpRCkhYMVhuS2tONnpVdHJNZ3NGS3kz
|
||||
Y09KWitzRHIwZnQ4MmR5elZiSGVZdzQKLS0tIFJIcGR1ZTBjSUREeVIvSnlEdzNZ
|
||||
Q2JJNi9EMG5RMi94WFpncThCdExmM3cKUD+TsPY0T5YilXlpRw4W1cQLeDhOyo1K
|
||||
TKvcIWq/+vfVa8Smcg2L/9tX5B2uHXDB0UXDpaMfazgsFu4ja7nvSg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-02-28T21:15:38Z"
|
||||
mac: ENC[AES256_GCM,data:2QggqmZhRgx+kpvDZOBU/KBLruwxbD4F3NHTiNK2N8Ux133pgLDjP88HDmBy8ZRXmGFdkUK0IqOSx1Axy3qpy14DlSdOw9L/WQhOCybEX21ib+ANb90275FtD+7J8luIvOPbCtus9c9gpqYQIirlQMqwkMZ1QADv62ewmVUJD6w=,iv:4V9KA9oq1TR5+cFtZdEop7haPOavRaRd6wwgJDyJeXQ=,tag:MXwB98KN5kit4Oyl+qQFLw==,type:str]
|
||||
pgp:
|
||||
- created_at: "2025-06-27T20:11:04Z"
|
||||
enc: |-
|
||||
-----BEGIN PGP MESSAGE-----
|
||||
|
||||
hQIMA82M54yws73UARAAiUcVShX8Vuf1EW/5Z0OrkBLoMVRaF8FV/CvHmdNZNnIz
|
||||
K0e0XTyNRSFBwy530VSSgJ5m/db+fQ6SAVEPIJWd22g4yKsHUZOuApQQtdVDQsPB
|
||||
UG7zKJEtDVDmcMzoKuZx5M/TQhWdGCP1Ut3vYJZ1scDhxuum5RKLzO4bZyHx0NPy
|
||||
q3U0TRo4RQHtrOGiiBLJnCJhYWqgfGZe3M/Q6VakX5CF0Yy1CmvyCrmHBgjQJ1Br
|
||||
lMdMpXyTIwkCXOGQYocYOERg1DxcM6eEo4O65tuo0nLG5BExa5Oy5f35O3j73fq9
|
||||
DHpM7UjSOnsDAuQY0oMpjIaXRPvH/7yBk0hKV1XI9PuC8dDAe25jLvL82UAaMvRC
|
||||
FKQkLBezYVZB+g8JH0a+ki9ibMk8hpcSQQPaengbiKHROxIXg6L4wZKXs3jFAjVE
|
||||
xy0NfgLxrBrAXnx0exNl/gokU+LISZ95XgGN6nkjdOllonEOHq78q5kLHwD5KCoy
|
||||
6qm4Mmv4YdiClRy7NA0lpIRjFeHprj7ZF57tt0vS3yNTaBtVKcUWRwphQvSmcnlF
|
||||
g5TPWu7x8qQ0gaB5BY+J6oJguqQI7kqWoq1xG2FUWq6klBGumFBWJ/ajd7z3ZyOM
|
||||
RwUei6PNsXdBcKeQG8dBKK4D0RUakXWjbTyQYHElr0CH06eoNmKcNQlGc4ACrTnS
|
||||
XgHbkY8kbowDgSx0e7YR4wdtqwgYH7xdcuDyc07iYwL4dWseu8UK5NvSHlXHXvFS
|
||||
C/h8Z0qOalE1ogzL/gW9kgkfWm7O+EOIm1VqgO1Edv15iFySLTynA6bV9lmzLDw=
|
||||
=i4jk
|
||||
-----END PGP MESSAGE-----
|
||||
fp: CD8CE78CB0B3BDD4
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.9.4
|
||||
32
home/environments/niri/mako.nix
Normal file
32
home/environments/niri/mako.nix
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
inherit (config.base16) palette;
|
||||
inherit (lib.modules) mkForce;
|
||||
in {
|
||||
systemd.user.services = {
|
||||
mako = {
|
||||
Unit = {
|
||||
Description = "mako";
|
||||
X-Restart-Triggers = [(toString config.xdg.configFile."mako/config".source)];
|
||||
};
|
||||
Service = {
|
||||
ExecStart = "${pkgs.mako}/bin/mako";
|
||||
Restart = "always";
|
||||
};
|
||||
Install = {WantedBy = ["graphical-session.target"];};
|
||||
};
|
||||
};
|
||||
|
||||
services.mako = mkForce {
|
||||
enable = true;
|
||||
font = "Monaspace Krypton 10";
|
||||
defaultTimeout = 3000;
|
||||
borderColor = palette.base08;
|
||||
backgroundColor = "${palette.base00}BF";
|
||||
textColor = palette.base05;
|
||||
};
|
||||
}
|
||||
89
home/environments/niri/niri.nix
Normal file
89
home/environments/niri/niri.nix
Normal file
|
|
@ -0,0 +1,89 @@
|
|||
{ config, pkgs, lib, ... }: let
|
||||
inherit (lib.meta) getExe;
|
||||
in {
|
||||
home.packages = with pkgs; [
|
||||
wl-clipboard
|
||||
wlr-randr
|
||||
wl-screenrec
|
||||
slurp
|
||||
grim
|
||||
pavucontrol
|
||||
brightnessctl
|
||||
playerctl
|
||||
glib
|
||||
pcmanfm
|
||||
];
|
||||
programs.niri = {
|
||||
settings = {
|
||||
cursor = {
|
||||
inherit (config.home.pointerCursor) size;
|
||||
theme = config.home.pointerCursor.name;
|
||||
};
|
||||
gestures.hot-corners.enable = false;
|
||||
input = {
|
||||
keyboard = {
|
||||
xkb = {
|
||||
options = "compose:rctrl,ctrl:nocaps";
|
||||
};
|
||||
};
|
||||
mouse = {
|
||||
accel-profile = "flat";
|
||||
};
|
||||
touchpad = {
|
||||
dwt = true;
|
||||
dwtp = true;
|
||||
};
|
||||
focus-follows-mouse.enable = true;
|
||||
};
|
||||
layout = {
|
||||
background-color = config.palette.base.hex;
|
||||
gaps = 10;
|
||||
always-center-single-column = true;
|
||||
preset-column-widths = [
|
||||
{ proportion = 0.33333; }
|
||||
{ proportion = 0.5; }
|
||||
{ proportion = 0.66667; }
|
||||
{ proportion = 1.0; }
|
||||
];
|
||||
default-column-width = {
|
||||
proportion = 1.0;
|
||||
};
|
||||
border = {
|
||||
enable = true;
|
||||
width = 2;
|
||||
active.color = config.palette.surface0.hex;
|
||||
inactive.color = config.palette.surface0.hex;
|
||||
urgent.color = config.palette.red.hex;
|
||||
};
|
||||
focus-ring = {
|
||||
enable = false;
|
||||
width = 2;
|
||||
active.color = config.palette.${config.catppuccin.accent}.hex;
|
||||
};
|
||||
shadow = {
|
||||
enable = true;
|
||||
color = config.palette.crust.hex;
|
||||
};
|
||||
};
|
||||
workspaces = {
|
||||
browser = {};
|
||||
chat = {};
|
||||
vidya = {};
|
||||
media = {};
|
||||
};
|
||||
environment = {
|
||||
MOZ_ENABLE_WAYLAND = "1";
|
||||
XDG_CURRENT_DESKTOP = "niri";
|
||||
GDK_BACKEND = "wayland,x11";
|
||||
CLUTTER_BACKEND = "wayland";
|
||||
};
|
||||
xwayland-satellite = {
|
||||
enable = true;
|
||||
path = getExe pkgs.xwayland-satellite-unstable;
|
||||
};
|
||||
prefer-no-csd = true;
|
||||
clipboard.disable-primary = true;
|
||||
hotkey-overlay.skip-at-startup = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
25
home/environments/niri/swayidle.nix
Normal file
25
home/environments/niri/swayidle.nix
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
{ pkgs, config, ... }: {
|
||||
services.swayidle = {
|
||||
enable = true;
|
||||
timeouts = [
|
||||
{
|
||||
timeout = 180;
|
||||
command = "${pkgs.libnotify}/bin/notify-send 'Locking in 5 seconds from now.'";
|
||||
}
|
||||
{
|
||||
timeout = 185;
|
||||
command = "${config.programs.swaylock.package}/bin/swaylock* -f";
|
||||
}
|
||||
{
|
||||
timeout = 600;
|
||||
command = "${config.programs.niri.package}/bin/niri msg action power-off-monitors";
|
||||
}
|
||||
];
|
||||
events = [
|
||||
{
|
||||
event = "before-sleep";
|
||||
command = "${config.programs.swaylock.package}/bin/swaylock* -f";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
17
home/environments/niri/swaylock.nix
Normal file
17
home/environments/niri/swaylock.nix
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
{ pkgs, ... }: {
|
||||
programs.swaylock = {
|
||||
enable = true;
|
||||
package = pkgs.swaylock-effects;
|
||||
settings = {
|
||||
screenshots = true;
|
||||
indicator = true;
|
||||
clock = true;
|
||||
grace = 2;
|
||||
fade-in = 2;
|
||||
effect-blur = "7x5";
|
||||
effect-vignette = "0.5:0.5";
|
||||
show-failed-attempts = true;
|
||||
font = "Monaspace Krypton";
|
||||
};
|
||||
};
|
||||
}
|
||||
3
home/environments/niri/swww.nix
Normal file
3
home/environments/niri/swww.nix
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
_: {
|
||||
services.swww.enable = true;
|
||||
}
|
||||
211
home/environments/niri/waybar.nix
Normal file
211
home/environments/niri/waybar.nix
Normal file
|
|
@ -0,0 +1,211 @@
|
|||
_: {
|
||||
programs.waybar = {
|
||||
enable = true;
|
||||
systemd.enable = true;
|
||||
style = ''
|
||||
* {
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
font-family: Monaspace Krypton, monospace;
|
||||
font-size: 13px;
|
||||
min-height: 0;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
all:unset;
|
||||
}
|
||||
|
||||
|
||||
.modules-left, .modules-right, .modules-center {
|
||||
background: alpha(@base, 0.9);
|
||||
box-shadow: 0px 0px 2px rgba(0,0,0,0.6);
|
||||
color: @text;
|
||||
padding: 5px;
|
||||
margin: 2px 4px;
|
||||
border: 1px solid @lavender;
|
||||
}
|
||||
|
||||
tooltip {
|
||||
background: rgba(43, 48, 59, 0.5);
|
||||
border: 1px solid rgba(100, 114, 125, 0.5);
|
||||
}
|
||||
tooltip label {
|
||||
color: white;
|
||||
}
|
||||
|
||||
#workspaces {
|
||||
border-right: 1px solid @surface2;
|
||||
}
|
||||
|
||||
|
||||
#workspaces button.persistent {
|
||||
background: @theme_unfocused_bg_color;
|
||||
color: @subtext1;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
padding: 2px 5px;
|
||||
background: @surface0;
|
||||
border-bottom: 3px solid transparent;
|
||||
}
|
||||
|
||||
#workspaces button.empty {
|
||||
background: @crust;
|
||||
color: @subtext1;
|
||||
}
|
||||
|
||||
#workspaces button.visible {
|
||||
background: @pink;
|
||||
color: @theme_selected_fg_color;
|
||||
border-bottom: 3px solid @rosewater;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
background: @red;
|
||||
color: @theme_selected_fg_color;
|
||||
}
|
||||
|
||||
#workspaces button.active, #workspaces button.focused {
|
||||
background: @theme_selected_bg_color;
|
||||
color: @theme_selected_fg_color;
|
||||
border-bottom: 3px solid white;
|
||||
}
|
||||
|
||||
#window {
|
||||
padding: 0 10px;
|
||||
}
|
||||
|
||||
window#waybar.empty #window {
|
||||
padding: 0px;
|
||||
margin: 0px;
|
||||
}
|
||||
|
||||
#mode, #clock, #battery, #idle_inhibitor, #tray, #wireplumber, #bluetooth, #backlight, #mpris {
|
||||
padding: 0 5px;
|
||||
margin: 0 5px;
|
||||
}
|
||||
|
||||
#mpris {
|
||||
color: @mantle;
|
||||
}
|
||||
|
||||
#mpris.playing {
|
||||
background-color: @lavender;
|
||||
}
|
||||
|
||||
#mpris.paused {
|
||||
background-color: @mauve;
|
||||
}
|
||||
|
||||
#mpris.stopped {
|
||||
background-color: @rosewater;
|
||||
}
|
||||
|
||||
#mode {
|
||||
background: #64727D;
|
||||
border-bottom: 3px solid white;
|
||||
}
|
||||
|
||||
#clock {
|
||||
}
|
||||
|
||||
#battery {
|
||||
}
|
||||
|
||||
#battery.charging {
|
||||
color: white;
|
||||
background-color: #26A65B;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: #ffffff;
|
||||
color: black;
|
||||
}
|
||||
}
|
||||
|
||||
#battery.warning:not(.charging) {
|
||||
background: #f53c3c;
|
||||
color: white;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: steps(12);
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
'';
|
||||
settings.main = {
|
||||
layer = "top";
|
||||
position = "top";
|
||||
mode = "dock";
|
||||
exclusive = true;
|
||||
modules-left = [
|
||||
"niri/workspaces"
|
||||
"niri/window"
|
||||
];
|
||||
|
||||
modules-center = [
|
||||
"clock"
|
||||
"mpris"
|
||||
];
|
||||
|
||||
|
||||
modules-right = [
|
||||
"privacy"
|
||||
"bluetooth"
|
||||
"wireplumber"
|
||||
"idle_inhibitor"
|
||||
"power-profiles-daemon"
|
||||
"backlight"
|
||||
"battery"
|
||||
"tray"
|
||||
];
|
||||
|
||||
idle_inhibitor = {
|
||||
format = "idin {icon}";
|
||||
format-icons = {
|
||||
activated = "active";
|
||||
deactivated = "inactive";
|
||||
};
|
||||
};
|
||||
|
||||
bluetooth = {
|
||||
on-click = "blueman-manager";
|
||||
format = "bt {status}";
|
||||
format-connected-battery = "bt {device_alias} {device_battery_percentage}%";
|
||||
format-connected = "bt {num_connections} connected";
|
||||
tooltip-format = "{controller_alias}\t{controller_address}\n\n{num_connections} connected";
|
||||
tooltip-format-connected = "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}";
|
||||
tooltip-format-enumerate-connected = "{device_alias}\t{device_address}";
|
||||
tooltip-format-enumerate-connected-battery = "{device_alias}\t{device_address}\t{device_battery_percentage}%";
|
||||
};
|
||||
|
||||
wireplumber = {
|
||||
format = "vol {volume}%";
|
||||
max-volume = 150;
|
||||
};
|
||||
backlight = {
|
||||
format = "bl {percent}%";
|
||||
};
|
||||
battery = {
|
||||
format = "bat {capacity}%";
|
||||
format-tooltip = "{power}W, {timeTo}, {health}%";
|
||||
interval = 60;
|
||||
|
||||
states = {
|
||||
warning = 30;
|
||||
critical = 15;
|
||||
};
|
||||
};
|
||||
|
||||
tray = {
|
||||
spacing = 4;
|
||||
};
|
||||
|
||||
clock = {
|
||||
format = "{:%F %H:%M %Z}";
|
||||
interval = 60;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
39
home/environments/niri/window-rules.nix
Normal file
39
home/environments/niri/window-rules.nix
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
_: {
|
||||
programs.niri.settings.window-rules = [
|
||||
{
|
||||
draw-border-with-background = false;
|
||||
clip-to-geometry = true;
|
||||
geometry-corner-radius =
|
||||
let
|
||||
r = 5.0;
|
||||
in
|
||||
{
|
||||
bottom-left = r;
|
||||
bottom-right = r;
|
||||
top-left = r;
|
||||
top-right = r;
|
||||
};
|
||||
}
|
||||
|
||||
{
|
||||
matches = [ { app-id = "^firefox$"; } ];
|
||||
open-on-workspace = "browser";
|
||||
}
|
||||
{
|
||||
matches = [
|
||||
{ app-id = "^vesktop$"; }
|
||||
{ app-id = "^discord$"; }
|
||||
{ app-id = "^org.telegram.desktop$"; }
|
||||
];
|
||||
open-on-workspace = "chat";
|
||||
}
|
||||
{
|
||||
matches = [ { app-id = "^steam_app_default$"; } ];
|
||||
open-on-workspace = "vidya";
|
||||
}
|
||||
{
|
||||
matches = [ { app-id = "^spotify$"; } ];
|
||||
open-on-workspace = "media";
|
||||
}
|
||||
];
|
||||
}
|
||||
5
home/environments/niri/wlogout.nix
Normal file
5
home/environments/niri/wlogout.nix
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
_: {
|
||||
programs.wlogout = {
|
||||
enable = true;
|
||||
};
|
||||
}
|
||||
12
home/environments/niri/wofi.nix
Normal file
12
home/environments/niri/wofi.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
_: {
|
||||
programs.wofi = {
|
||||
enable = true;
|
||||
settings = {
|
||||
insensitive = true;
|
||||
allow_images = true;
|
||||
hide_scroll = true;
|
||||
mode = "dmenu";
|
||||
prompt = "";
|
||||
};
|
||||
};
|
||||
}
|
||||
14
home/environments/niri/xdg.nix
Normal file
14
home/environments/niri/xdg.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
_: {
|
||||
xdg = {
|
||||
enable = true;
|
||||
autostart.enable = true;
|
||||
mime.enable = true;
|
||||
|
||||
mimeApps = {
|
||||
enable = true;
|
||||
defaultApplications = {
|
||||
"inode/directory" = "pcmanfm.desktop";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -10,7 +10,8 @@ in {
|
|||
enable = true;
|
||||
scripts = with pkgs.mpvScripts; [
|
||||
sponsorblock
|
||||
paused
|
||||
mpris
|
||||
uosc
|
||||
];
|
||||
config = {
|
||||
profile = "gpu-hq";
|
||||
|
|
|
|||
6
home/profiles/graphical/tealdeer.nix
Normal file
6
home/profiles/graphical/tealdeer.nix
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
_: {
|
||||
programs.tealdeer = {
|
||||
enable = true;
|
||||
settings.updates.auto_update = true;
|
||||
};
|
||||
}
|
||||
|
|
@ -1,47 +0,0 @@
|
|||
{pkgs, ...}: {
|
||||
programs.vscode = {
|
||||
enable = false;
|
||||
extensions = with pkgs.vscode-extensions; [
|
||||
vscodevim.vim
|
||||
catppuccin.catppuccin-vsc
|
||||
kamadorueda.alejandra
|
||||
mkhl.direnv
|
||||
hashicorp.terraform
|
||||
jnoortheen.nix-ide
|
||||
pkgs.outrun
|
||||
];
|
||||
userSettings = {
|
||||
"nix.enableLanguageServer" = true;
|
||||
"workbench.colorTheme" = "Outrun Night";
|
||||
"editor.suggest.preview" = true;
|
||||
"[nix]" = {
|
||||
"editor.defaultFormatter" = "kamadorueda.alejandra";
|
||||
"editor.formatOnPaste" = true;
|
||||
"editor.formatOnSave" = true;
|
||||
"editor.formatOnType" = false;
|
||||
};
|
||||
"files.eol" = "\n";
|
||||
"alejandra.program" = "${pkgs.alejandra}/bin/alejandra";
|
||||
"editor.fontFamily" = ''"Monaspace Krypton", "Font Awesome 6 Free", "Font Awesome 6 Brands"'';
|
||||
"editor.fontLigatures" = true;
|
||||
"terraform.experimentalFeatures.prefillRequiredFields" = true;
|
||||
"terraform.experimentalFeatures.validateOnSave" = true;
|
||||
"terraform.codelens.referenceCount" = true;
|
||||
"go.alternateTools" = {
|
||||
gopls = "${pkgs.gopls}/bin/gopls";
|
||||
};
|
||||
"vim.useSystemClipboard" = true;
|
||||
go = {
|
||||
inlayHints = {
|
||||
assignVariableTypes = true;
|
||||
compositeLiteralFields = true;
|
||||
compositeLiteralTypes = true;
|
||||
constantValues = true;
|
||||
functionTypeParameters = true;
|
||||
parameterNames = true;
|
||||
rangeVariableTypes = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -8,28 +8,27 @@
|
|||
package = inputs.wezterm.outputs.packages.${pkgs.system}.default;
|
||||
extraConfig = ''
|
||||
local wezterm = require 'wezterm';
|
||||
return {
|
||||
font = wezterm.font_with_fallback({
|
||||
local config = {}
|
||||
config.font = wezterm.font_with_fallback({
|
||||
"Monaspace Krypton",
|
||||
-- <built-in>, BuiltIn
|
||||
"JetBrains Mono",
|
||||
|
||||
-- /nix/store/mc76mhlam0rggcgx3z695025phl07pi1-noto-fonts-color-emoji-2.042/share/fonts/noto/NotoColorEmoji.ttf, FontConfig
|
||||
-- Assumed to have Emoji Presentation
|
||||
-- Pixel sizes: [128]
|
||||
"Noto Color Emoji",
|
||||
|
||||
-- <built-in>, BuiltIn
|
||||
"Symbols Nerd Font Mono",
|
||||
|
||||
}),
|
||||
window_decorations = "TITLE | RESIZE",
|
||||
enable_wayland = false,
|
||||
warn_about_missing_glyphs = false,
|
||||
font_size = 12.0,
|
||||
check_for_updates = false,
|
||||
enable_tab_bar = false
|
||||
})
|
||||
config.window_padding = {
|
||||
left = 8,
|
||||
right = 8,
|
||||
top = 8,
|
||||
bottom = 8,
|
||||
}
|
||||
config.use_fancy_tab_bar = true
|
||||
config.tab_bar_at_bottom = true
|
||||
config.hide_mouse_cursor_when_typing = false
|
||||
config.window_decorations = "TITLE | RESIZE"
|
||||
config.warn_about_missing_glyphs = false
|
||||
config.font_size = 12.0
|
||||
config.check_for_updates = false
|
||||
return config
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
htop
|
||||
btop
|
||||
# disk usage
|
||||
duc-cli
|
||||
duc
|
||||
# nix formatting
|
||||
nixpkgs-fmt
|
||||
# show type of files
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@
|
|||
config,
|
||||
lib,
|
||||
std,
|
||||
inputs,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
|
|
@ -119,7 +120,7 @@ in {
|
|||
ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE = "fg=3,bold";
|
||||
ZSH_AUTOSUGGEST_USE_ASYNC = 1;
|
||||
};
|
||||
plugins = with pkgs.zsh-plugins; (list.map (plugin: plugin.zshPlugin) [
|
||||
plugins = with inputs.arcexprs.legacyPackages.${pkgs.system}.zsh-plugins; (list.map (plugin: plugin.zshPlugin) [
|
||||
tab-title
|
||||
vim-mode
|
||||
evil-registers
|
||||
|
|
|
|||
21
modules/home/palette.nix
Normal file
21
modules/home/palette.nix
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
# Taken from: https://git.gay/olivia/fur/src/branch/main/modules/home/palette/default.nix
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
let
|
||||
inherit (lib) mkOption types;
|
||||
palette =
|
||||
(pkgs.lib.importJSON (config.catppuccin.sources.palette + "/palette.json"))
|
||||
.${config.catppuccin.flavor}.colors;
|
||||
in
|
||||
{
|
||||
options.palette = mkOption { type = types.attrsOf types.raw; };
|
||||
config = {
|
||||
inherit palette;
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -1,249 +0,0 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
cfg = config.services.mautrix-slack;
|
||||
dataDir = "/var/lib/mautrix-slack";
|
||||
registrationFile = "${dataDir}/slack-registration.yaml";
|
||||
settingsFile = "${dataDir}/config.yaml";
|
||||
settingsFileUnsubstituted = settingsFormat.generate "mautrix-slack-config-unsubstituted.json" cfg.settings;
|
||||
settingsFormat = pkgs.formats.json {};
|
||||
appservicePort = 29335;
|
||||
|
||||
# to be used with a list of lib.mkIf values
|
||||
optOneOf = lib.lists.findFirst (value: value.condition) (lib.mkIf false null);
|
||||
mkDefaults = lib.mapAttrsRecursive (_n: v: lib.mkDefault v);
|
||||
defaultConfig = {
|
||||
homeserver.address = "http://localhost:8448";
|
||||
appservice = {
|
||||
hostname = "[::]";
|
||||
port = appservicePort;
|
||||
database.type = "sqlite3";
|
||||
database.uri = "file:${dataDir}/mautrix-slack.db?_txlock=immediate";
|
||||
id = "slack";
|
||||
bot = {
|
||||
username = "slackbot";
|
||||
displayname = "Slack Bridge Bot";
|
||||
};
|
||||
as_token = "";
|
||||
hs_token = "";
|
||||
};
|
||||
bridge = {
|
||||
username_template = "slack_{{.}}";
|
||||
displayname_template = "{{.RealName}} (S)";
|
||||
bot_displayname_template = "{{.Name}} (bot)";
|
||||
channel_name_template = "#{{.Name}}";
|
||||
double_puppet_server_map = {};
|
||||
login_shared_secret_map = {};
|
||||
command_prefix = "!slack";
|
||||
permissions."*" = "relay";
|
||||
relay.enabled = true;
|
||||
};
|
||||
logging = {
|
||||
min_level = "info";
|
||||
writers = lib.singleton {
|
||||
type = "stdout";
|
||||
format = "pretty-colored";
|
||||
time_format = " ";
|
||||
};
|
||||
};
|
||||
};
|
||||
in {
|
||||
options.services.mautrix-slack = {
|
||||
enable = lib.mkEnableOption "mautrix-slack, a Matrix-Signal puppeting bridge.";
|
||||
|
||||
settings = lib.mkOption {
|
||||
apply = lib.recursiveUpdate defaultConfig;
|
||||
inherit (settingsFormat) type;
|
||||
default = defaultConfig;
|
||||
description = ''
|
||||
{file}`config.yaml` configuration as a Nix attribute set.
|
||||
Configuration options should match those described in
|
||||
[example-config.yaml](https://github.com/mautrix/slack/blob/master/example-config.yaml).
|
||||
Secret tokens should be specified using {option}`environmentFile`
|
||||
instead of this world-readable attribute set.
|
||||
'';
|
||||
example = {
|
||||
appservice = {
|
||||
database = {
|
||||
type = "postgres";
|
||||
uri = "postgresql:///mautrix_slack?host=/run/postgresql";
|
||||
};
|
||||
id = "slack";
|
||||
ephemeral_events = false;
|
||||
};
|
||||
bridge = {
|
||||
history_sync = {
|
||||
request_full_sync = true;
|
||||
};
|
||||
private_chat_portal_meta = true;
|
||||
mute_bridging = true;
|
||||
encryption = {
|
||||
allow = true;
|
||||
default = true;
|
||||
require = true;
|
||||
};
|
||||
provisioning = {
|
||||
shared_secret = "disable";
|
||||
};
|
||||
permissions = {
|
||||
"example.com" = "user";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
environmentFile = lib.mkOption {
|
||||
type = lib.types.nullOr lib.types.path;
|
||||
default = null;
|
||||
description = ''
|
||||
File containing environment variables to be passed to the mautrix-slack service.
|
||||
If an environment variable `MAUTRIX_SIGNAL_BRIDGE_LOGIN_SHARED_SECRET` is set,
|
||||
then its value will be used in the configuration file for the option
|
||||
`login_shared_secret_map` without leaking it to the store, using the configured
|
||||
`homeserver.domain` as key.
|
||||
See [here](https://github.com/mautrix/slack/blob/main/example-config.yaml)
|
||||
for the documentation of `login_shared_secret_map`.
|
||||
'';
|
||||
};
|
||||
|
||||
serviceDependencies = lib.mkOption {
|
||||
type = with lib.types; listOf str;
|
||||
default =
|
||||
(lib.optional config.services.matrix-synapse.enable config.services.matrix-synapse.serviceUnit)
|
||||
++ (lib.optional config.services.matrix-conduit.enable "conduit.service");
|
||||
defaultText = lib.literalExpression ''
|
||||
(optional config.services.matrix-synapse.enable config.services.matrix-synapse.serviceUnit)
|
||||
++ (optional config.services.matrix-conduit.enable "conduit.service")
|
||||
'';
|
||||
description = ''
|
||||
List of systemd units to require and wait for when starting the application service.
|
||||
'';
|
||||
};
|
||||
|
||||
registerToSynapse = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = config.services.matrix-synapse.enable;
|
||||
defaultText = lib.literalExpression ''
|
||||
config.services.matrix-synapse.enable
|
||||
'';
|
||||
description = ''
|
||||
Whether to add the bridge's app service registration file to
|
||||
`services.matrix-synapse.settings.app_service_config_files`.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
users.users.mautrix-slack = {
|
||||
isSystemUser = true;
|
||||
group = "mautrix-slack";
|
||||
home = dataDir;
|
||||
description = "Mautrix-Signal bridge user";
|
||||
};
|
||||
|
||||
users.groups.mautrix-slack = {};
|
||||
|
||||
services.matrix-synapse = lib.mkIf cfg.registerToSynapse {
|
||||
settings.app_service_config_files = [registrationFile];
|
||||
};
|
||||
systemd.services.matrix-synapse = lib.mkIf cfg.registerToSynapse {
|
||||
serviceConfig.SupplementaryGroups = ["mautrix-slack"];
|
||||
};
|
||||
|
||||
# Note: this is defined here to avoid the docs depending on `config`
|
||||
services.mautrix-slack.settings.homeserver = optOneOf (with config.services; [
|
||||
(lib.mkIf matrix-synapse.enable (mkDefaults {
|
||||
domain = matrix-synapse.settings.server_name;
|
||||
}))
|
||||
(lib.mkIf matrix-conduit.enable (mkDefaults {
|
||||
domain = matrix-conduit.settings.global.server_name;
|
||||
address = "http://localhost:${toString matrix-conduit.settings.global.port}";
|
||||
}))
|
||||
]);
|
||||
|
||||
systemd.services.mautrix-slack = {
|
||||
description = "mautrix-slack, a Matrix-Signal puppeting bridge.";
|
||||
|
||||
wantedBy = ["multi-user.target"];
|
||||
wants = ["network-online.target"] ++ cfg.serviceDependencies;
|
||||
after = ["network-online.target"] ++ cfg.serviceDependencies;
|
||||
# ffmpeg is required for conversion of voice messages
|
||||
path = [pkgs.ffmpeg-headless];
|
||||
|
||||
preStart = ''
|
||||
# substitute the settings file by environment variables
|
||||
# in this case read from EnvironmentFile
|
||||
test -f '${settingsFile}' && rm -f '${settingsFile}'
|
||||
old_umask=$(umask)
|
||||
umask 0177
|
||||
${pkgs.envsubst}/bin/envsubst \
|
||||
-o '${settingsFile}' \
|
||||
-i '${settingsFileUnsubstituted}'
|
||||
umask $old_umask
|
||||
|
||||
# generate the appservice's registration file if absent
|
||||
if [ ! -f '${registrationFile}' ]; then
|
||||
${pkgs.mautrix-slack}/bin/mautrix-slack \
|
||||
--generate-registration \
|
||||
--config='${settingsFile}' \
|
||||
--registration='${registrationFile}'
|
||||
fi
|
||||
chmod 640 ${registrationFile}
|
||||
|
||||
umask 0177
|
||||
# 1. Overwrite registration tokens in config
|
||||
# 2. If environment variable MAUTRIX_SIGNAL_BRIDGE_LOGIN_SHARED_SECRET
|
||||
# is set, set it as the login shared secret value for the configured
|
||||
# homeserver domain.
|
||||
${pkgs.yq}/bin/yq -s '.[0].appservice.as_token = .[1].as_token
|
||||
| .[0].appservice.hs_token = .[1].hs_token
|
||||
| .[0]
|
||||
| if env.MAUTRIX_SIGNAL_BRIDGE_LOGIN_SHARED_SECRET then .bridge.login_shared_secret_map.[.homeserver.domain] = env.MAUTRIX_SIGNAL_BRIDGE_LOGIN_SHARED_SECRET else . end' \
|
||||
'${settingsFile}' '${registrationFile}' > '${settingsFile}.tmp'
|
||||
mv '${settingsFile}.tmp' '${settingsFile}'
|
||||
umask $old_umask
|
||||
'';
|
||||
|
||||
serviceConfig = {
|
||||
User = "mautrix-slack";
|
||||
Group = "mautrix-slack";
|
||||
EnvironmentFile = cfg.environmentFile;
|
||||
StateDirectory = baseNameOf dataDir;
|
||||
WorkingDirectory = dataDir;
|
||||
ExecStart = ''
|
||||
${pkgs.mautrix-slack}/bin/mautrix-slack \
|
||||
--config='${settingsFile}' \
|
||||
--registration='${registrationFile}'
|
||||
'';
|
||||
LockPersonality = true;
|
||||
MemoryDenyWriteExecute = true;
|
||||
NoNewPrivileges = true;
|
||||
PrivateDevices = true;
|
||||
PrivateTmp = true;
|
||||
PrivateUsers = true;
|
||||
ProtectClock = true;
|
||||
ProtectControlGroups = true;
|
||||
ProtectHome = true;
|
||||
ProtectHostname = true;
|
||||
ProtectKernelLogs = true;
|
||||
ProtectKernelModules = true;
|
||||
ProtectKernelTunables = true;
|
||||
ProtectSystem = "strict";
|
||||
Restart = "on-failure";
|
||||
RestartSec = "30s";
|
||||
RestrictRealtime = true;
|
||||
RestrictSUIDSGID = true;
|
||||
SystemCallArchitectures = "native";
|
||||
SystemCallErrorNumber = "EPERM";
|
||||
SystemCallFilter = ["@system-service"];
|
||||
Type = "simple";
|
||||
UMask = 0027;
|
||||
};
|
||||
restartTriggers = [settingsFileUnsubstituted];
|
||||
};
|
||||
};
|
||||
meta.maintainers = with lib.maintainers; [kittywitch];
|
||||
}
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
{lib, ...}: let
|
||||
inherit (lib.types) listOf path;
|
||||
inherit (lib.options) mkOption;
|
||||
in {
|
||||
options.scalpels = mkOption {
|
||||
type = listOf path;
|
||||
default = [];
|
||||
};
|
||||
}
|
||||
|
|
@ -107,17 +107,7 @@ in {
|
|||
}
|
||||
// args);
|
||||
in
|
||||
args: let
|
||||
nixos = sys args;
|
||||
in
|
||||
nixos.extendModules {
|
||||
modules =
|
||||
nixos.config.scalpels
|
||||
++ [
|
||||
inputs.scalpel.nixosModules.scalpel
|
||||
];
|
||||
specialArgs = {prev = nixos;};
|
||||
};
|
||||
args: sys args;
|
||||
home = args: let
|
||||
renamedArgs = set.rename "specialArgs" "extraSpecialArgs" args;
|
||||
renamedArgsWithPkgs =
|
||||
|
|
|
|||
6
nixos/common/nh.nix
Normal file
6
nixos/common/nh.nix
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{ pkgs, inputs, ... }: {
|
||||
programs.nh = {
|
||||
enable = true;
|
||||
package = inputs.nh.packages.${pkgs.system}.nh;
|
||||
};
|
||||
}
|
||||
|
|
@ -1,8 +1,4 @@
|
|||
{inputs, pkgs, ...}: {
|
||||
programs.nh = {
|
||||
enable = true;
|
||||
package = inputs.nh.packages.${pkgs.system}.nh;
|
||||
};
|
||||
{ pkgs, ...}: {
|
||||
nix = {
|
||||
gc = {
|
||||
automatic = true;
|
||||
|
|
@ -14,5 +10,9 @@
|
|||
"deploy"
|
||||
];
|
||||
};
|
||||
package = pkgs.lix;
|
||||
};
|
||||
system = {
|
||||
rebuild.enableNg = true;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
11
nixos/common/nixos-cli.nix
Normal file
11
nixos/common/nixos-cli.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
_: {
|
||||
services.nixos-cli = {
|
||||
enable = true;
|
||||
config = {
|
||||
use_nvd = true;
|
||||
apply = {
|
||||
use_nom = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
11
nixos/environments/niri/greetd.nix
Normal file
11
nixos/environments/niri/greetd.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{pkgs, ...}: {
|
||||
services.greetd = {
|
||||
enable = true;
|
||||
settings = {
|
||||
default_session = {
|
||||
command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time --cmd niri-session";
|
||||
user = "greeter";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
6
nixos/environments/niri/niri.nix
Normal file
6
nixos/environments/niri/niri.nix
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{ pkgs, ... }: {
|
||||
programs.niri = {
|
||||
enable = true;
|
||||
package = pkgs.niri-unstable;
|
||||
};
|
||||
}
|
||||
|
|
@ -1,13 +1,6 @@
|
|||
_: {
|
||||
boot = {
|
||||
plymouth = {
|
||||
enable = true;
|
||||
};
|
||||
consoleLogLevel = 0;
|
||||
kernelParams = ["quiet"];
|
||||
initrd = {
|
||||
verbose = false;
|
||||
systemd.enable = true;
|
||||
availableKernelModules = ["nvme" "xhci_pci" "thunderbolt" "usb_storage" "sd_mod"];
|
||||
};
|
||||
};
|
||||
|
|
|
|||
14
nixos/profiles/quiet-boot.nix
Normal file
14
nixos/profiles/quiet-boot.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
_: {
|
||||
boot = {
|
||||
plymouth = {
|
||||
enable = true;
|
||||
};
|
||||
consoleLogLevel = 0;
|
||||
kernelParams = ["quiet"];
|
||||
initrd = {
|
||||
verbose = false;
|
||||
systemd.enable = true;
|
||||
};
|
||||
};
|
||||
catppuccin.plymouth.enable = true;
|
||||
}
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
sops.secrets.synapse-cleanup-environment = {
|
||||
sopsFile = ./secrets.yaml;
|
||||
};
|
||||
systemd = {
|
||||
services.synapse-cleanup = {
|
||||
restartIfChanged = false;
|
||||
serviceConfig = {
|
||||
Type = "exec";
|
||||
User = "root";
|
||||
EnvironmentFile = config.sops.secrets.synapse-cleanup-environment.path;
|
||||
ExecStart = "${pkgs.synapse-cleanup}/bin/synapse-cleanup";
|
||||
};
|
||||
};
|
||||
timers.synapse-cleanup = {
|
||||
timerConfig = {
|
||||
OnCalendar = "weekly";
|
||||
Persistent = true;
|
||||
Unit = "synapse-cleanup.service";
|
||||
};
|
||||
wantedBy = ["timers.target"];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
_: {
|
||||
services.mx-puppet-discord = {
|
||||
#inherit (config.services.matrix-synapse) enable;
|
||||
settings = {
|
||||
bridge = {
|
||||
bindAddress = "localhost";
|
||||
domain = "kittywit.ch";
|
||||
homeserverUrl = "https://yukari.gensokyo.zone";
|
||||
};
|
||||
provisioning.whitelist = ["@.*:kittywit.ch"];
|
||||
relay.whitelist = ["@.*:kittywit.ch"];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -1,23 +0,0 @@
|
|||
{config, ...}: let
|
||||
fqdn = "${config.networking.hostName}.inskip.me";
|
||||
in {
|
||||
services.nginx = {
|
||||
virtualHosts = {
|
||||
"${fqdn}" = {
|
||||
enableACME = true;
|
||||
forceSSL = true;
|
||||
locations = {
|
||||
"/".extraConfig = ''
|
||||
return 404;
|
||||
'';
|
||||
"/_matrix".proxyPass = "http://[::1]:8008";
|
||||
"/_synapse".proxyPass = "http://[::1]:8008";
|
||||
};
|
||||
extraConfig = ''
|
||||
http2_max_requests 100000;
|
||||
keepalive_requests 100000;
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
_: {
|
||||
services.postgresql = {
|
||||
ensureUsers = [
|
||||
{
|
||||
name = "matrix-synapse";
|
||||
ensureDBOwnership = true;
|
||||
}
|
||||
];
|
||||
ensureDatabases = [
|
||||
"matrix-synapse"
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
@ -1,34 +0,0 @@
|
|||
{config, ...}: {
|
||||
sops.secrets.restic-password-file = {
|
||||
sopsFile = ./restic.yaml;
|
||||
};
|
||||
services.restic.backups = {
|
||||
"${config.networking.hostName}-matrix" = {
|
||||
paths = [
|
||||
"/var/lib/matrix-synapse"
|
||||
"/var/lib/mx-puppet-discord"
|
||||
"/var/lib/mautrix-whatsapp"
|
||||
"/var/lib/mautrix-signal"
|
||||
"/var/lib/mautrix-telegram"
|
||||
"/var/lib/mautrix-slack"
|
||||
];
|
||||
exclude = [
|
||||
];
|
||||
extraOptions = [
|
||||
"sftp.command='ssh u401227@u401227.your-storagebox.de -i /home/kat/.ssh/id_ed25519 -s sftp'"
|
||||
];
|
||||
pruneOpts = [
|
||||
"--keep-daily 7"
|
||||
"--keep-weekly 2"
|
||||
"--keep-monthly 6"
|
||||
];
|
||||
initialize = true;
|
||||
passwordFile = config.sops.secrets.restic-password-file.path;
|
||||
repository = "sftp:u401227@u401227.your-storagebox.de:/restic/yukari/matrix";
|
||||
timerConfig = {
|
||||
OnCalendar = "00:05";
|
||||
RandomizedDelaySec = "5h";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -1,110 +0,0 @@
|
|||
restic-password-file: ENC[AES256_GCM,data:0U96CkrV8VyEvg0nm+ZfdWMo2TjxDfRF6YBFNe8jfps=,iv:TEad//eKY/tCNMLCs6EZ+gn+7cxz7nGB+y1a4Dv+Wd4=,tag:s/E0QlE812TwgC6gRKlWbA==,type:str]
|
||||
sops:
|
||||
shamir_threshold: 1
|
||||
age:
|
||||
- recipient: age1n4kdchmkk3rfkaknxhveqr2ftprdpgwckutt23y6u8639lazzuks77tgav
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBqSUdjN0ZudHpPTk5YbmFj
|
||||
LzhLOEs1dlg1K3hzU01pWlpXSENLb1NxRWpRCmdNZHJ4STlXWFh5SGQvWTkremxq
|
||||
TFg4bUo5Ujd2c3hTTW94aXlCaGY2bEkKLS0tIEF0NmVPTjFqa0owWE5TSjI0L1Rj
|
||||
UkViVHd4OVhUeWtZbHIwUnpvT2pYWEEKCAz08Wi4sTj8Xn91mDRTPRspyjuqgM+P
|
||||
CDoY34wBy1f6JrtqEhpb0ggbauUQEoKPL9AxMlG+ONOhTXww7ciJOA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1cnu37d5fqyahh9vvc4hj6z6k8ur9ksuefln7sr6g3emmn927eutqxdawuh
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBHeE02SFd2dVJkSlBuSllT
|
||||
ZDBkSlRjdC9LSWRiTEljRldBU0ovUlMyNUdJCjdDa0FldlBxMys5TzRzcXcrT3Nr
|
||||
a3RJekwzK3FBN3QrblZIQlpUTG41QlEKLS0tIE1FV2Y4WEYrUFBmZHpnSGZvalJD
|
||||
VlpYTXBobllGeXFTZWRjTzVJR0l1TmcKP3dZgC6mKayktk8q2HGYJGU8JuUU4sIu
|
||||
8mhyrRYNbNewTMqI2lo8EI3uqZ36WMNeYSm8MtImE97bSKARLgMWXw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1a0m73qr8hhuz8xemv4vymf4wmpghm2hst8wgrn3pn65ext5mf4ksk0vsdm
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBmcHBDdzB5QzlXaGtqNEh6
|
||||
VW5UU2ZjcG1KTmhKM1lHUzBhY1JFRFc3WlVzCktGT3dnckdlVkhEWkdsMlpISEY2
|
||||
THkrT0tLV3ZFbkQzZlErSXI5bnVqM1EKLS0tIEVpcnVkRkU2VCtGK1JjMG8rS0JC
|
||||
R0xiQ25Nem5DM0Q2UDNOMmdkL3VEdGcKWa+imjxsLBBT9dk1Rlm0/ahBKCSYoh2V
|
||||
K9k3Y3bQ3TPxq46WeVu3C+thgHSh5wpPGnWhiA7yHe7fqcMm9AGvxA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age18hpxz0ghvswv9k30cle73prvnzrsuczqh87jjdk9fl50j3ddndmq9xae0n
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAxbUdWdnV6VERoamlMbk5H
|
||||
MGV5MzY2a2RLTUMzYXkwdkhuWitUeFIrREhrCmFYN0p2WjV1NnBmUUpxdDVUYXQx
|
||||
bGIyZ0hwNFhmVUdDdkpGbVNESVlmVXMKLS0tIDVEdVMvYzJmQzJKOUNmZkxVdGVI
|
||||
Q1lRc3F1L0lYeGtvSU5QY1R2cXdIblkKL3FNXmanvzzCi4Jdd1dPSggSmqgwOu59
|
||||
aYRibZIBbhfRYfI6J3/CmNIuMsaELwXOx6HAbh3qgB97+dk2q2Otkg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1xgy03g3vjydsxcl0qpdgm8rahjcjq95ucxfwlgr22zwjx3p7jf2s9jk6u5
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQOFFLTkNsSk5WTk5OWGVr
|
||||
U3l0bnZSNExBN05RZzV3TnZQM3VoWG8raVZBCnp5cU9yU25yR2poWjhiRHNKYXpC
|
||||
M2hXVkltUlBrMUo5ZGxJTng4Um95LzgKLS0tIGRBUk0yc2duQklNNlpMOUJtYThU
|
||||
aWhuVFpSWENQMFR6NlJnKzFDWGM3cDQKhtnMKeUVi22XQFIwpfpT+iiqQhTuRIuI
|
||||
e0hsOi4POMG+/YfAbEmBWB0f5o4GjowjkxttSZ91K86gsI67/Hz2nw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1fv5dafs4n3r5n83qm2hfz7xmnflsz0xf9r3saralrptpgf8mvuxq4t8k3u
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSByUXlaQitUTzMvMDRTcHBG
|
||||
b05xWnlhT3hUWVFVVnBhb2pIb0RnM0FZeUMwCitNMlpMWHZqUmVkOEVoZDM2VXV5
|
||||
eTNFSHkyb01BWmVpOW53dEhCdXhtem8KLS0tIDJwU1A2SDdEQ3h4RWhDRjlBbnBL
|
||||
V0k0WU1SNFJZR1paN29WSkF3NTBhbkEK3SYaZ3cwPBBlwujHoKqVWfSnQvOAz08r
|
||||
PWSp5eS4X4dy3Jt+c1XVSixJ3FpDMYvOpzhvs3XQKCKpMqMAD3wfCQ==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age120530yclr75k6nrzp6k5jjftj8j4q9v3533guupzk4ct86mjxszqg9e5t5
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA5RXBpdmtmZk55bzJTUXE1
|
||||
eE9WL2pMQURpYmZyQzZEdG05SUgvbGI4M1VjCjN2QVhCbkF4WEMwbjA1ZnNkT3lL
|
||||
NFI3Y09Qd2I3eEpsMWtaRUc1U1pYZ2cKLS0tIGdyK1FSWEh6MnljNUtFSFNndEZl
|
||||
M1doTmFJL1cxTWhCeVFsS1l2b3FnblUKLEHSPZLSFfo0qtZHyZQ08TLuPeWsB7MO
|
||||
DgqAGo9FssG8RnusRIJ4Uyc0PWLTNb9gWTgJK30PQZuZzJFur/BbCQ==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1c4atxfp05u7zm875s6q8p82ve96rqqpq9smktxlur8pk2yc3qvgql46dp9
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB2VExXemNpbnhsUFNwdGdz
|
||||
K0pYajJ2VFlhUHpVWEN4NDlibjlrRDdJWWdFCjJyazN0eS9EQUtsNURFZmdxb3hj
|
||||
T0l2Q0h6a3ZuYzBUZ1YyOU9yQTRzM0EKLS0tIG5DaVlNMnUvY1VzeHJRK0ZsMjRC
|
||||
S21QTEdveTh1ZTdXZVcya0VXMFhYU28KI+ArhGxhXvo6NsdHx3ErYsZyZqLZbZY7
|
||||
fbJeqzA2Y2C3YEt760MF7aAL8XIvebVrUhMyApPas3YJg88EScJA9w==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1rjldv3fn3q686647exmcukthr32gmp6s3axs0lhyenvru9ajp9rs24ukvz
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBMbnpPcFFsYWFQbjdPcnkw
|
||||
dDM4SUtES3lsRVJPd1ltS1gzQ1ZJZzMzV1F3CmRvVFlqelc2cHZDbTdQWUtlazBF
|
||||
cFhUYmV2M29ld2tHZzMvdnowbUJvZGsKLS0tIFlXc0ZXTS9CWjBoeHRmYVJoT21E
|
||||
R1ljK29kbXJLNUdZVkJzV29aS3dzaWMK6UtPqbLqyZHKmLUsZKHVWMCQ/s0iqUKI
|
||||
c89Y3oWwGzreZxA8yLVpXbibXHjc5h1NatAIUe/Yyj/kS4dldeiTfA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2024-04-21T18:13:24Z"
|
||||
mac: ENC[AES256_GCM,data:eDKIeCDMIKCrfypT09VUWbvUzSWze8xE9l3on6vgYOcxAnIFDlF7UnlZP/G+rU2+grxEluZV+ApUwC71LuunTNHHvEjudxp6yGHV7OrYUu+i5PuTzL0KNpt+cLr5pNYGiYWE2J4RpWmilbthVnLLJDuHlKqSAWjwdNIrEgOokR4=,iv:Yqu28Wjut7scV/iDMQVMffqdduHDbUetWvu3CVjVz3I=,tag:gggRhdXvVXxfGS7/Wp5jwg==,type:str]
|
||||
pgp:
|
||||
- created_at: "2025-06-27T20:11:12Z"
|
||||
enc: |-
|
||||
-----BEGIN PGP MESSAGE-----
|
||||
|
||||
hQIMA82M54yws73UARAAh40VwHS5hFOsaKUDwWWUoVTVTUHteHglwPR7+o3U41Zr
|
||||
OjpGc1vuUlvE3p0FdYcGpsXUaPLpz990ZCaCqx5YnBLqbaVtP7cC1gNVSgob9R1k
|
||||
BaPbYYs7sKL+RbAo3GTAlykWfonCzeeVS09EssTAIrSI4zUgb7b1RkbdnA55Icj/
|
||||
Y/Dvq6BkZU7pVkaoa4faf7I7xgguJhh5nhzNJof8U7IYOsffTzWpdayc7tSOTDcI
|
||||
PTllDgshrGS+T5THITG+6vghDlhQRmVgrjYSKTbybEIQv29LwnPAcfU2DqDF2W7v
|
||||
DpuFI0H7I41AitrREB2MKWfwI29U2ul2nSbTkp9N5KYdL09jPL6P8ubAY3L4zOqm
|
||||
ehWrLlA+vmy5CWgpYDL8H4YhRMFSjyGsdNqnxpGwcAZOyad2oPumLxIwRpplr77V
|
||||
rRa17bfm19qez7+IGI7Z2S8JQZGVf62Z5Yl81vAqsQJ+nU1YZeskaTMWFjMV5QNz
|
||||
X8RNU+FPrOVVjlvRWN0PmrcjnukjgkD2Z/2kzeaIaXN7qtJkpCnpIFkgwaDTQOSA
|
||||
U0ZJA5pmP7jrPYtYGpXfue0GcXz4v3pMrukQMeBnCDH5infPHMCDq9p5rjjBglKf
|
||||
Pso+aDjTirE8ur01xi/vYLqiYCXK9Uz1z/aQ8IG7W6AaRpkvUE05QRNFvuvBmHfS
|
||||
XgHXxsX5+oELoCMCfSB+gjQqDOTPpNnNKQLO/7qvaHr3GnKzV47pJdtmrbAY+vgV
|
||||
s6ehWSsj60p/iPBFLQKtyKmLWIXEF+N04XAoq7y6EpR1m7Ft34FHz68Eq8fXJq4=
|
||||
=hTFl
|
||||
-----END PGP MESSAGE-----
|
||||
fp: CD8CE78CB0B3BDD4
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.8.1
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
prev,
|
||||
...
|
||||
}: let
|
||||
inherit (lib.modules) mkForce;
|
||||
start = prev.config.systemd.services.matrix-synapse.serviceConfig.ExecStart;
|
||||
synapse_cfgfile = builtins.head (builtins.match "^.*--config-path ([^\ ]*).*$" "${start}");
|
||||
in {
|
||||
systemd.services.matrix-synapse.serviceConfig.ExecStart = mkForce (
|
||||
builtins.replaceStrings ["${synapse_cfgfile}"] ["${config.scalpel.trafos."homeserver.yaml".destination} "] "${start}"
|
||||
);
|
||||
scalpel.trafos."homeserver.yaml" = {
|
||||
source = synapse_cfgfile;
|
||||
matchers."MATRIX_SHARED_REGISTRATION_SECRET".secret = config.sops.secrets.matrix_shared_registration_secret.path;
|
||||
owner = "matrix-synapse";
|
||||
group = "matrix-synapse";
|
||||
mode = "0440";
|
||||
};
|
||||
}
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
_: {
|
||||
sops.secrets.matrix_shared_registration_secret = {
|
||||
format = "yaml";
|
||||
sopsFile = ./secrets.yaml;
|
||||
};
|
||||
|
||||
scalpels = [
|
||||
./scalpel.nix
|
||||
];
|
||||
}
|
||||
|
|
@ -1,112 +0,0 @@
|
|||
matrix_shared_registration_secret: ENC[AES256_GCM,data:DsCqfbS2yxN7nVRevcjpfO63jBUsyQHfEfbpZpD3cBtPf+JuZ8TFPBNNQwx2NYdyty60INdr4w==,iv:pSf6VDS9bqZIq8ZqOW0v4siRbDp9EEdw7TtSSjjrC6A=,tag:V61OqmdsNzczOzf+2Y6LSA==,type:str]
|
||||
api_id: ENC[AES256_GCM,data:z1FqOKDSG1uo4BYgt2Ct9cUUy/daSgMNCnOHsdhG0ocw7eNI,iv:2cpOFO0Fcv/Y2xj/5UErbZ9qiLtn0QUWUg12Z9z/Ug4=,tag:cYEgrUM8GJ+uGNXKz4GpdQ==,type:str]
|
||||
synapse-cleanup-environment: ENC[AES256_GCM,data:T9c2bcdoKmB3l4G07x2FKLY8YCPpmd5efRgO/hJQBM9fKZrz1t/0VsPRy5SnjKkGm5Xib2u/MOcBTrtU4mkbO+5/ZrYFRjJNu/sLAeXOD+3MkA/uL0GXR6VpSaGrqv9F6ofaUq5zBcFU7EQXfLWq3fpj3RPA14JhavYVNta01pnUbu4pMhFmnRMYBsZhgTFoDJVbuk1VW3w+I2Y2Sg4t4Kzmq8MLukHzqRtkSNSelevX1wJNfyVo+IwiXhtCLvyjsaQ31WzlSqiH+sTNU+I62PP1ORXnFVrwBgH9qqo+WMdZ,iv:0EyveHiZyeDqFcgaHTF3hTmmUUHLTo4AEbXBw/VMdTI=,tag:iboMxPRt0Ib0vJF51rQQkQ==,type:str]
|
||||
sops:
|
||||
shamir_threshold: 1
|
||||
age:
|
||||
- recipient: age1n4kdchmkk3rfkaknxhveqr2ftprdpgwckutt23y6u8639lazzuks77tgav
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB0bktVczBLaDFiMVFNTGI5
|
||||
ME91SUFZQW5YR1l5YVE1OVhiWXowQU02ZFNNClFPeFdtc3B5Y21uMnVCSmRWTzVO
|
||||
MkVMVXdCYThDdGdHa00yNWdIbnU3c0kKLS0tIG9uVzV0dldvZ2EvNnNVR25IT0dZ
|
||||
RU5vZFdneE9xeW9nUUNwekxPRDFxYTgKIPeUyl+WKR5XNuh5i0ujABUsjYG7KKj6
|
||||
PD1cTheOiWOgJp1jVMijgHpA7sltZBjVPBlMdaGooVrkzf8O/GHpLQ==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1cnu37d5fqyahh9vvc4hj6z6k8ur9ksuefln7sr6g3emmn927eutqxdawuh
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQSkRuY3JBeE9DNFM2MUJG
|
||||
bkoyK1paUU50M1F3U0dIK1kxd2pvTmFnV0hJCkwyWWFubkVsVjluWCtZcGYrMDd5
|
||||
SHhYaDRobUV0RTFuYXlXUnB3THIwNHcKLS0tIFFMRnY4RVFXRnc4UTUwWDZKZ1d0
|
||||
ZlR0M1B2by9BYzIwcnRKL2NTcEwveWMKRFNDK6Aeg+MHEaH3OweJD62M5tGNQF33
|
||||
45Yr19WqPwzI1HW50Em9f5OB7Zjgbs/kXCtILPwRv3nv+ooBujax5A==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1a0m73qr8hhuz8xemv4vymf4wmpghm2hst8wgrn3pn65ext5mf4ksk0vsdm
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAyYTI4MTBYTDVCRGc1RHZy
|
||||
MnZUZU9NNGxBY2tzSFJrVFNiVlN1MldyZUVzCklpMmRWM1hwL2pBLzNBY3hIUGZv
|
||||
ZVd3ZUF4ai9jYTBCOHNTWGVxVCtMamMKLS0tIExtVHlSVVg0UDJMUTU3dUpoRUFQ
|
||||
NTdzaUo3M0ltbjFja0ZJYUNrQTBvNVEKgtNLw85qaiiXnw7Cv+J/P9Q8SsaGhfFS
|
||||
Ukya1d/tyVl0umCL2eqPv4bDkTtTC5lPQpmvXtmoUC3rUTGCxjVujg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age18hpxz0ghvswv9k30cle73prvnzrsuczqh87jjdk9fl50j3ddndmq9xae0n
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBNTlFiOTFjd0dlVDhIMXhD
|
||||
Ni9SUmxXOTdqY2NkNlR1UUpyd1RQRDVxK1VRCmszcmdhRU8rRDc3YnBnRWlvOU8y
|
||||
bTg4emd4VlAzLzk2TE1XTUswL1dkeDgKLS0tIC9BYlRUY3BGU1phNlVXUWVTLzY1
|
||||
c25JRDc2c2wvdmxlMHJQRjBjVmhsYm8KUM6qLbIpq1lD19WeoR4rROADCtWyM5e1
|
||||
6X7sl+eO7wVmrgt5KrHBkl6Z44mMajgy4pRRcF/mMBH6mIg3esQISA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1xgy03g3vjydsxcl0qpdgm8rahjcjq95ucxfwlgr22zwjx3p7jf2s9jk6u5
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBrZmpFUzJvKzg3VXlyaDJV
|
||||
d2xXVXR4eHFEcWNpRjJKdkIrMU9JbHc4S2cwCjNBd3QvdTRzektFSUZ1TWlaUmYx
|
||||
Q2hVRUlOd1VQZFhpQm9kUzZJUm9qeHcKLS0tIEVML0RlVlQ0UFBXK3FsWTdSMHVl
|
||||
Smh4LzRuZ1IyZ1IvTjN5U2pETlVPazgKuTgp0P4BYDDprsfhCBSzsrPTRt0fbFMy
|
||||
b5Hg/5mjDsQZVCy/+CjruUzFr7luVvhWNIEcMgRNP7rYj6rsykIUrA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1fv5dafs4n3r5n83qm2hfz7xmnflsz0xf9r3saralrptpgf8mvuxq4t8k3u
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBMRncwVWF4YzFrYzBhK1kw
|
||||
ajlFMDg0SjJ6YVJEc2F6NEIwLzhJa0t0bjFnCmpJbjZ6MTB6Wm9JTFAvY09vMEF3
|
||||
L003SEhRZGpTYmJOSFhVMkpoMXdBRnMKLS0tICthWmE0U01vWCtzblpsOW9iTlo2
|
||||
SEthSG91QzkxdU10TTkxNFJidis5bU0KzMYwivPNr9d9zoFl61xrcQlFIiM7T9/1
|
||||
WP5Bh3xWEtgYZK5/j99DACFVWdFezAAndt7weNnwJ/jpwa1On2Dc6A==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age120530yclr75k6nrzp6k5jjftj8j4q9v3533guupzk4ct86mjxszqg9e5t5
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB2eHVWMGpNWU1pcmJPdTVH
|
||||
bUdWTURjVkQ5bzZlWVdkN3hrY2dFUWNVQ1JBCjRVLzFsL2VEdkFSTDZRaG5ZOXZa
|
||||
bHI4SUorRWloanVVYktHK21EYWZLOFkKLS0tIHU5TThjRmhIRmQydmFrMmNmTHRa
|
||||
RVNHNW56dlJMQ1VjMlYzRGNGZHBpUHMKeAmRPdwW24RHD/1vbEAJNoK27TlNJ7vB
|
||||
AnRrsomimk3gEXpuSWu1pm5X0w7a7R6w9ge6/DKThCgJo+dunMf3QQ==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1c4atxfp05u7zm875s6q8p82ve96rqqpq9smktxlur8pk2yc3qvgql46dp9
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBLWjlhQ1Q2OUZXamZkQWV6
|
||||
dWRnRURHWjFkbm1iZ2FqSWJ3REwyVE1zK0NrCmJld1pYaTdoRCtENUVMdU5wWDNW
|
||||
TG1zT0I3WHQ5NnE1Q1hOL0h0YUo2WUUKLS0tIDNuM0gzNDlTbmIvNmRlSVJtQW1Q
|
||||
NjhhejI0SE5EQkFva3FIQ3pBVmhwV2MK7DsevOHyClvaJaiwMrF4pbp51DkEMc7O
|
||||
vPX4oPjoFGn4GmxMY1L5kdZHxuMPrtLMVid1NsqlE/tcTzMKa/CGqg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1rjldv3fn3q686647exmcukthr32gmp6s3axs0lhyenvru9ajp9rs24ukvz
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBOZUNnc3hVdE9rR2tieUF4
|
||||
b05CVmo0N2JyMGJTbmRTdnpHclhTdENheXlnCnVtaUx5Tkg1OHFqMkQweVNKYVhm
|
||||
M29kVWR0Q0daczV4b3RnK2NWem40ejgKLS0tIHVBSFNWSzQxUmFKSUhFYkI2alNR
|
||||
YVIybS9OektWOFZ5S1I4eVQ0QStwWTAK3UXgekEDKsQ+JQmzE/Y1zuWjnVBoNzKn
|
||||
tjcGnSPAMcZzzydZoch5/+dysIJZji69xP071SJX+8AFkcL84h9p4Q==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2024-10-10T00:10:05Z"
|
||||
mac: ENC[AES256_GCM,data:FT+6/Cexyf+B95gjQmsQ9Ri40aXA6/UnCZgXhxNDNp1zj5m6J065R+IbdrLoLDjG9FU2MplEg1dZNksvcXlSi34Sbzmmf3OMGm73Yzsr6/KhCoU9nGfJmSpXJXeOBS6ahAIobGfbjOzWN4ljy4EmDC/UUSeVKcs4sGYQ207kVcs=,iv:tf1GvJA6q7DztRA3LjlQUH16GitiuyqUhHiukG59ydc=,tag:bg7Sv5581bYeQ/NdO2XxIw==,type:str]
|
||||
pgp:
|
||||
- created_at: "2025-06-27T20:11:14Z"
|
||||
enc: |-
|
||||
-----BEGIN PGP MESSAGE-----
|
||||
|
||||
hQIMA82M54yws73UARAAq57K976ckbNacCd/FPSEGK3hGf16ZNxYhDQzrc7SGAXn
|
||||
QqnWobtjPZqeWNVOfvpfhHBpc/vZLWlvjK0LE9qt9jS7lsxH5NZuGduY0A86mtMH
|
||||
P2kqpz1/dbARlB05et6zDBwmSDk8dk3IKPkMCzJ0rcSoLWWCqGx1URoKFjWqvD5O
|
||||
/w9VcaK5lt85uzG7ka3L4D3Bu3e/Wi8dgUzRrzCRZJo8QqGW8mRZ6UTwXV9suRx/
|
||||
oSquuQkghYJBTB3qXjD3H7QHqmsEfkROiUIONXXzqzatYsdaBvh0hgwxrWiwnBhb
|
||||
nA3Kd2YefZElIBUJXZ9NkI3F1DOIPNaMCB6bsZHZ5l0G5Km3sxpAcaELTr8oAfTO
|
||||
Y4Ru1LN3T6vit5Ld3UsqeEwrb40v2mhbf+xMkwux8KhaerCgruQrEQuc0b2t+BdJ
|
||||
LQFbFFOthV+tUccD90lejG4MV1JXG1AYZKmeLTwXbUymNzB0VdyG4upLdyNEHpvV
|
||||
2xYGYJdRdUcCh43BkL4Fapu0QjAMCqcyhGE73bmDNhovSc7Ux3V++kWI/bqOICR3
|
||||
NFSmgsrTqInQ59thhnFgn2n67AnW9KJbiKPziYSXpbEPIExVMp0AgxzQWrfGxVcH
|
||||
1h01fx99UoRLFLOCNTCTNRI6GxttlD+QCrBOibkKgA9r9cY3SBwk+IIB+FXNMTHS
|
||||
XgFOiN7axkvUYKybRsVCMQ6grdijKJ0MckRdlDl3WiTSwj8SEYXkFIycDQ+13Ayd
|
||||
RgnVwnOAYer0mSx4Ac64c5jLfCrDBUq5xl+J1g/fjlUooOlsx3oXO2UaXmClvsM=
|
||||
=Wmup
|
||||
-----END PGP MESSAGE-----
|
||||
fp: CD8CE78CB0B3BDD4
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.9.1
|
||||
|
|
@ -1,42 +0,0 @@
|
|||
{config, ...}: {
|
||||
sops.secrets.mautrix-signal-environment = {
|
||||
sopsFile = ./signal.yaml;
|
||||
};
|
||||
services.mautrix-signal = {
|
||||
#inherit (config.services.matrix-synapse) enable;
|
||||
environmentFile = config.sops.secrets.mautrix-signal-environment.path;
|
||||
settings = {
|
||||
homeserver = {
|
||||
domain = "kittywit.ch";
|
||||
address = "https://yukari.gensokyo.zone";
|
||||
software = "standard";
|
||||
};
|
||||
appservice = {
|
||||
port = 9048;
|
||||
ephemeral_events = false;
|
||||
};
|
||||
signal = {
|
||||
};
|
||||
bridge = {
|
||||
history_sync = {
|
||||
request_full_sync = true;
|
||||
};
|
||||
private_chat_portal_meta = true;
|
||||
mute_bridging = true;
|
||||
encryption = {
|
||||
allow = true;
|
||||
default = true;
|
||||
require = true;
|
||||
};
|
||||
provisioning = {
|
||||
shared_secret = "disable";
|
||||
};
|
||||
permissions = {
|
||||
"kittywit.ch" = "user";
|
||||
"@kat:kittywit.ch" = "admin";
|
||||
"@signal:kittywit.ch" = "admin";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -1,110 +0,0 @@
|
|||
mautrix-signal-environment: ENC[AES256_GCM,data:BpCzruK8S1NBdszZaSalPKMkhSk+vpQKnLM+0USjo2j4awcjNnqsDSiV3rSsB3Zary3x456ZX5WCfYVCmFy6UmGP9LTw7OV7Y0nGpAsb6oKbAEMDcft4AbrNh4x2Z0Xc9fAlBE5UY4kmQW1HWTn8pxyV0+uwT7voNffzOujxss3YW6u6y7TlBZh4Y3uscR4Dm4yt9RBiAu1Tu8FJOPJW2VFQ16drQiQV4xfFusr8HIv1KiIJuNiyK+RWOPQGckiKz+aLAqdXShs=,iv:YP9Aw74CKfUsi/hSu3t+K7HHoEF6rXqpkqvr179l6sE=,tag:DDZxGvRiMgNYRU8C3wK60w==,type:str]
|
||||
sops:
|
||||
shamir_threshold: 1
|
||||
age:
|
||||
- recipient: age1n4kdchmkk3rfkaknxhveqr2ftprdpgwckutt23y6u8639lazzuks77tgav
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBHd0J5SnVwRU1aVlVmL21m
|
||||
T2FoQkxsRW5vWGVpT1NBNGdBTzhDcXYxRGpvCk5rUG52SDlHY09vY0cwVVdFOUNI
|
||||
TGVleE5IZDY5TE9MaVNPQ1h5MHVReUkKLS0tIDNHQlc1Z0ZjM3kyOVRONURnRDVI
|
||||
MXg2MlFFS1dxVzdyNDg0d3Fya21sZE0KOBKwtPJ/MEgS8u42WQJSllkaLLf+u5GG
|
||||
u0EhAwbM0Ad2GKmEgOFzg8EWYfBulCap3sQ45Ud2LqKPgasNM88x4w==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1cnu37d5fqyahh9vvc4hj6z6k8ur9ksuefln7sr6g3emmn927eutqxdawuh
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBGbUZNWUR1cCtqNzJhS0Fu
|
||||
ODJlL2JjSDlNdUxNbHpQeFphWFZMSWNWUzAwCmxtSDU5SHZCdGJSU3RyQzFXaDEz
|
||||
aEZKM2pWSDYxczk5TGx5djgxSjFZcjgKLS0tIGVQcEd1b0hmSVAyL05TOEhvZHR2
|
||||
R3Y5ZlI5OXhVZU5qRzhJZWxNaEZkL28KTc4Egi4uPem84ModTk/Gwf0syW2D1GBa
|
||||
K48U0uyxgAkvkbjDzy/FvQSD9swnsI4HeiNh1rT4+mumlxO29dgg4A==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1a0m73qr8hhuz8xemv4vymf4wmpghm2hst8wgrn3pn65ext5mf4ksk0vsdm
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAzcUk1RURvejZ0WDNXekhj
|
||||
TVBaazltRjlDa3QwVnpJZGt6Z3JhNDVjSXpJCnJzWVJSYXYrMk5JMjVWS2VXSHZU
|
||||
TSs4dSsvMjJNUWNCdVl2Um1QTjAvdFUKLS0tIC9HTjRJNjhSS2xrR2hrNmJ0OUFm
|
||||
eHBQZjdTK3JsemlNeHMvVy9PaGYrek0KOWfJ+VufB7bOTR55YfCgtlYtTxZSLQeh
|
||||
x3DRyuFBr8UH+PuQfo2zsoLe+ouJpZ7np/rl6uZQE5DB06pFkd6oVw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age18hpxz0ghvswv9k30cle73prvnzrsuczqh87jjdk9fl50j3ddndmq9xae0n
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBxZGVDcVNkS1FaemthZlFY
|
||||
WHdQYnVwL3VPWDFTSXBtaDFGd2hOOThYMDFVCjFVYkpraTRpazRJTExqQkw5RG5K
|
||||
NXhVNUdoY3hGQVlLekV6MFlKUkhFaUkKLS0tIGNnbzlzTHFJMnRCeW1RSGpaeHRF
|
||||
RWJTbzlvVE80TTd2Q0FpUUNCT2ZFMWMKtiQwO5VdbK/EfuWtA1sI5zNPPFf4EWmv
|
||||
G3lM2YudC26BIffbOPMO0tMDDIdQS1gK10FdapZ5IiOgXNjQqvR9fw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1xgy03g3vjydsxcl0qpdgm8rahjcjq95ucxfwlgr22zwjx3p7jf2s9jk6u5
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB2dU9lMVl3VnZHYUJUeFdC
|
||||
clZveEt6N3dRa2NUc2U1VEw2YTVHODUwMkdRCkFmS3ZCS0Y5WUNlVFRrWFNOTE5i
|
||||
ZklqeWZlOEtrOWlRVGxzQUdZd3hRRTQKLS0tIGNWeERuaUlabEN2VExpNEZQRHRV
|
||||
dUl3MnJpQzY1VmdoY1Z0Z3l6MjBkR3MKLv4t0Xuhkc48zK2VIJdzplzDXRBk7FBE
|
||||
KBkWXiCsyKMfoCmJGEZm5ortIp7f9uF8dpADVKizmkr0MZ6fu1R+Cw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1fv5dafs4n3r5n83qm2hfz7xmnflsz0xf9r3saralrptpgf8mvuxq4t8k3u
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBFSVNPTnp2TzFOWEVWUHRY
|
||||
RlJYTWNnWHVnS1lGVHhSbUtPbzB3UzduSW40CmpzdjBNL3k0d3pnejBiejRDVmo3
|
||||
Z3poVC9ZL01ML2h6WmdxcEdJdjh6VWcKLS0tIDJBZVd0aFZ4TEVRSitzS1lTWGVj
|
||||
VGdzRUxZaDYwQ3FxRUtNYitRb3FrK2cKmr4XM1ClndvmHX7ibyFV6F7zYXFOqjSy
|
||||
6dyYSP2XDWaJC5C56V+gBaIMr4y2cWidIH8bRj5KFAXNOmYRjXtCTw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age120530yclr75k6nrzp6k5jjftj8j4q9v3533guupzk4ct86mjxszqg9e5t5
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBjN1F3UFg5R1Rad0RRa2Zt
|
||||
aW1vUDRrV2JKcHZMSC80L1Yxb1RJN3pYQlRrCmVJLyt2R1J0aG9wWDM5dFVZbDVL
|
||||
VGdSYU1zNVdWSmo3TWdNL2szTHZ5TG8KLS0tIGxkbVhueUVSOWpOOGVaSWdVR1dQ
|
||||
QXphZkkxUnc0WnZLYUN6ZXFodHIwZjgKTJi/xyUk82juCRM4vTl/WoMIS3QgN74d
|
||||
rPTngvLf4EgYjw22Qt/b1YiPomq2gyfjTEhA3aEefnV10kffdgwNtw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1c4atxfp05u7zm875s6q8p82ve96rqqpq9smktxlur8pk2yc3qvgql46dp9
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBLTnE1cDU2cFd1ZkpPY3lr
|
||||
aXhVQ1YwaHdlYXpyUzMxMUtwUjFreUZSR0MwCk5jQUtzNkw4NGRwWFJrNDFuaVZP
|
||||
QWdKbS9jTjZmM1FFcGpsMXJsSHFQWDAKLS0tIFhNVmZzVXIzL2dacU9FUXRsQkU0
|
||||
cnhpVnBQaXNzT2xpQ1A3aTVnamVCM2cK1BwCEuGX+umW+NZfxWpmLDULgcXpsnCh
|
||||
sX2UfpP2JZh4HdteLHP307Zf40+HkjkTsbOWetmHKbKLXubuLqJiBw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1rjldv3fn3q686647exmcukthr32gmp6s3axs0lhyenvru9ajp9rs24ukvz
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBtVUpSU05aMHpMSHV1b1JQ
|
||||
UkNyZDE5R0V4Zms1TWJtUEdBaVE2b0VMN0hFCk5mcy9icEtodGc1T1dzU2JTSE5V
|
||||
QTZDZUFMYzV5cnRqZ0VWcStXeFlFTUEKLS0tIEltMmsxK3lzOFRRTXhnKzJkcnFZ
|
||||
STQzRjF1U2hvbUtldTlJS2gwRFFnUWMKxzOtHTmTRGcmWGHfWFECgQsMhXGDa9sJ
|
||||
G46nwtyfeOs+RyXHD5iQn1S2noIy0CEDnyR8ParxQp+V8lMn1P3EtA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2024-05-14T03:15:49Z"
|
||||
mac: ENC[AES256_GCM,data:YKuPtzHtVqPeFKmm5OsR1btshycWB/++TLOEvjoMvIvsiFCo/YaPqyWebpSUOtvg2h/AwJY/6hPX15DPzDe4B2HePHDiiu5ItkspW3XJUkT30Ul4aAhE4hP0wotBQlYJro7mF41dejctLVpVi8V3zqTkr3nHgcMUa6EblUtPIWo=,iv:WsmM7VQrT0QIJjqQUsxW25jO3xSeLuAJEW6kiMQviW8=,tag:B1O/YWlL39PPoaOJNkl9yg==,type:str]
|
||||
pgp:
|
||||
- created_at: "2025-06-27T20:11:15Z"
|
||||
enc: |-
|
||||
-----BEGIN PGP MESSAGE-----
|
||||
|
||||
hQIMA82M54yws73UARAAjeh0KFtf5/yvJ5NVK0w/Xpf8sTZf0ugrSaDY2UbU5FWE
|
||||
wNFPIUbYiqzIj1fiIM3DlNVUbUrBvho8sO6ckPU1KvNsr0a8knOl+waAJfFtoY3d
|
||||
CkyQ73ElTb3fRWWdgH2RlaXs4MVtRz1DzE1LYSLCxrARUEOFaBwX1njG22wZp53a
|
||||
czsizD/QKjAHDhlgLz2MHNAqrbWdq3gnOMTl5PiQIkmgHzIHc/anWxFtCgIls1c5
|
||||
F8xrqPFYKko7VVc7onM4YgaKbF15QK5oDhggMuSZBLhkQgOMB24sHWx+F2NC+ykc
|
||||
QLMSmO5hpTHkK62bT3/KqvialJxC6FeQT+Pr1unqdfSqKXJiJeJi9eyLyKX/cvLS
|
||||
VDKCfezrcIL31dbo8720JUAcpmBsfOOvCcm53GQlwa8mwI7RTk0cFwRBrbdoYSn0
|
||||
qGQtlk6+VASlJzNKKx2fooAn2F0/sEsh2BA2jMF3yqPoj+pk7RgL8vZPqY1LNtWX
|
||||
pVKhBsvulh9SNkdYurvp5vsk6wPI6KrgbO7rQqkNeFflgW//h7e6ssbJdBx+B02P
|
||||
KwYrIlUCZDki7w+0fY+sEycIJDzSNGLDULc7rtcijSqgWExFc2C/1+5JbhgWyaGN
|
||||
CdgMbHpBtHIWZQ00XTicTORZnUXfT9r4gEkaqLgu8L8DCqAN+LziaAxfJrjRqw3S
|
||||
XAG2/9TILO07O6DnugINvJNlbquloY+uG0j3zEH+3tc9U9iX8i1SkUSGG509OdjG
|
||||
BUpMBh+uWrr5GeZb8Iq4d+jJnooHzcAcwS5zhx3mmufdZaRnoZiY09rcYG3K
|
||||
=AFvy
|
||||
-----END PGP MESSAGE-----
|
||||
fp: CD8CE78CB0B3BDD4
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.8.1
|
||||
|
|
@ -1,41 +0,0 @@
|
|||
{config, ...}: {
|
||||
sops.secrets.mautrix-slack-environment = {
|
||||
sopsFile = ./slack.yaml;
|
||||
};
|
||||
services.mautrix-slack = {
|
||||
#inherit (config.services.matrix-synapse) enable;
|
||||
environmentFile = config.sops.secrets.mautrix-slack-environment.path;
|
||||
settings = {
|
||||
homeserver = {
|
||||
domain = "kittywit.ch";
|
||||
address = "https://yukari.gensokyo.zone";
|
||||
software = "standard";
|
||||
};
|
||||
appservice = {
|
||||
ephemeral_events = false;
|
||||
};
|
||||
slack = {
|
||||
};
|
||||
bridge = {
|
||||
history_sync = {
|
||||
request_full_sync = true;
|
||||
};
|
||||
private_chat_portal_meta = true;
|
||||
mute_bridging = true;
|
||||
encryption = {
|
||||
allow = true;
|
||||
default = true;
|
||||
require = true;
|
||||
};
|
||||
provisioning = {
|
||||
shared_secret = "disable";
|
||||
};
|
||||
permissions = {
|
||||
"kittywit.ch" = "full";
|
||||
"@kat:kittywit.ch" = "admin";
|
||||
"@slack:kittywit.ch" = "admin";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -1,110 +0,0 @@
|
|||
mautrix-slack-environment: ENC[AES256_GCM,data:20FOJ9LMLtSND6KXhZpSoOxxH8NYhZWXAaL42byftEsDzsZIpulsMRfU3XBh/1a5JEKRNYcdVfvn4xApbXv2w0xs2oKEsPWgI86B0LjqiWcLEIsVljaErnGC3nDU9/kY5PsDl1cj9WQHZ7O/8nV8GyD/5v/evO7sE+xN4JW/o8kTBBE43fpiTS/unfEkmJF5WhkR20ViGykG3+Z79wgtYVaTBkG1v0gPo8fc+JySClE+N8fz05bVGCH8g77/JtW3Vhdch9T5,iv:uYQXj9POBiX7qJNuovCdDo9lE7t1jRII7zU0YlPDeyg=,tag:jmlgy4S4HnV7vNmLTdxIxw==,type:str]
|
||||
sops:
|
||||
shamir_threshold: 1
|
||||
age:
|
||||
- recipient: age1n4kdchmkk3rfkaknxhveqr2ftprdpgwckutt23y6u8639lazzuks77tgav
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBtdENnV1ljN3ZMWHh1REVX
|
||||
R3FoL0xKd1dkZ01qSUg4OHJJVG05eUt5TldnCndRT2R2dWZiZSttMENidXZ6aHcv
|
||||
Q0lhTm41VGpGT3hsVElYMTJHKzBKbTQKLS0tIG1rZXdUSGNZbFhLNDJuOHFSNGF5
|
||||
Ykx4MXYzcDh6ZDZWdVVrT0VxYTlSTk0Kz+ERvXxmP0A+Y8X23yAwTauNeyOsxC+D
|
||||
R2rHzKtXGIF0OyM/gRj1p0HOWB/+CNB4Z2TR+wzsOEMH/sa9E3HJBA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1cnu37d5fqyahh9vvc4hj6z6k8ur9ksuefln7sr6g3emmn927eutqxdawuh
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBmVnlTQXJJdHhwOVJmbTR5
|
||||
aVhMOC91eFFJbUlJZXk1amhYYUx0QjM4K0RRCmhDcTlFdlNwTDFEK0hKZ0xBc1hE
|
||||
YVFBMTEybXpGRldDcUJjNE0zSDRIbTQKLS0tIG42SExVV0FYb3FTTzJxUm0xNjNF
|
||||
TnJKRDl3ZG8yOVlnVXB5RHNIWlErRkEKI6zbADZJ5gjQgGuI5IfFJ7TWN3lbwthL
|
||||
kTcNYElyp7r+5DkHh68NOwoaM50SyrihNUTVxOj54ip97FIWMq2fow==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1a0m73qr8hhuz8xemv4vymf4wmpghm2hst8wgrn3pn65ext5mf4ksk0vsdm
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQbmZVZGY5Zjg4MmowTi93
|
||||
QzFDL0ZXNmY1SVNaZVMyR2ZCRW1aMkRwVGo4ClR6WDZBRDFORnFWUkJ6QVZldHJW
|
||||
Ymx6b3dJOVdqNGhBcFltZ1BhYms3MWsKLS0tIHZhdjZMaWVQMEd2K1JZQTVWTjNu
|
||||
YTBwR3RXNkUzVi9taUE1aEhJMVZXZGsKHywpcJ7dexnjXOXhlSjmjo4oEQH8LJ34
|
||||
oaX5wwIHdfYhzx3mjO9TK3swoS9bKb65nj/42VxM+EsfYSp9JcHsEQ==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age18hpxz0ghvswv9k30cle73prvnzrsuczqh87jjdk9fl50j3ddndmq9xae0n
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBsd1dlMmxxV0g0WkFlTWlG
|
||||
K2NvcEdtem84dHUrN0E4N3BPZiszMmc5dnpRCmpGZVA4U3F3YWJyaEJGa1BMM2d5
|
||||
QWhWMUdESDQyb05hV3lSdjRyR09yZHMKLS0tIHR2eWttVmc5aWVLMDdacmkzQlRa
|
||||
QktBTU5SN0gyNU05NzQzT0loaEprSGMKT4rcAmkQdGbl79jW4V196u/SkI+2xE+y
|
||||
Vn92eEe8D0yCvf7CzXEv59viu4jIfHeOsM1nVyPpHjMDg7hZ1/fFFg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1xgy03g3vjydsxcl0qpdgm8rahjcjq95ucxfwlgr22zwjx3p7jf2s9jk6u5
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBjM1JBLzlpTzNQbnJVZEFH
|
||||
MjVQaS8wRzBkM2sxZ1RiZ0Mwem5TMFNiY1RNClM5MHFxd05iRGNlb2ZSVDV1SGRN
|
||||
Y0x0MDB2SXA4emZKR3pSd0hjZHFXczgKLS0tIFZTeEJzUmUxeklDT1YwUXo1ZnlW
|
||||
WFl4OHM5RlEzOFlINThTVUN6OHJEM1EKncTKPttS1rMwdeTRyb0Vyn4V87G9FbmQ
|
||||
+z2jn0MosLVR2rpijK38SQjMkBlIjRs6+uwEQW0d3P3Y64oeI0zK2Q==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1fv5dafs4n3r5n83qm2hfz7xmnflsz0xf9r3saralrptpgf8mvuxq4t8k3u
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBScVJZNkJiM3hNZy9DRGgr
|
||||
U2o5NFV5eTVrbUZPMWRsYlppcUFHYzcyNnl3CnF6NGExZ2RkVHVvVXVyeXdvQVVU
|
||||
cjBWM2MrdGN5RlZvS1JTUkNsN3dTeTAKLS0tIGpMZGJ6OHAxVjVJM0JNeWlzdWtS
|
||||
MC9HeThreElQQWlPOEFQVjc4NEVnaE0K6z1i6K0giyUHNWe7S5jbPagYLWouH/ux
|
||||
6F5BPiXknY5Up33g0y5blBkUuGrU71sGuqna0gq/tnSaToCI9oH0xQ==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age120530yclr75k6nrzp6k5jjftj8j4q9v3533guupzk4ct86mjxszqg9e5t5
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBmKzdyRGUwOFFQOVU0ZGdY
|
||||
RzR1d2NjdGdNM3R0OCtCay9BY0JndW1qQmpNCnB1WnR5WnhnMmdzZllhWkFRTlFE
|
||||
NjFDQVBzSEk3VUcxM2N2ZE8ydFFjNTAKLS0tIG5oVlNUaWg4ZzBSalJ4dkxleFZW
|
||||
NVc1Vm1lRnpsQzZ6aHlMTm9lQkJ0VjAKhG9/7V0q04kuL1tjzp7MQSdNMjv3eJ2i
|
||||
2GHM1rljDo+Jlas92aytfSlI/o3KfpVt5ZLQUBo2GXz/3BhRFVVJ3A==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1c4atxfp05u7zm875s6q8p82ve96rqqpq9smktxlur8pk2yc3qvgql46dp9
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBTNkE5S0NkR0tJNGgyWXdE
|
||||
cXNWZGhOV0NnOGRKc2wyMWJtWUhzako5WUdNCk9JaUkvUVdGVU1Cb0hVQnpZdzdY
|
||||
QldrdHhCOGFiR0loRjFWQ05HUGdLdmMKLS0tIHNzeGsvclVBOG8yVnBVRk9zQ2tm
|
||||
QXVWZS80WFpaRmRNdGFxVGRocHY0UzQKEPtF1a78g50+aBih/OcFgAESLt1k5imM
|
||||
6RiG0BHAgt6lueaGyIUcOxRVjxHTAxdRikQnTAwncOENcxpphBjNnQ==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1rjldv3fn3q686647exmcukthr32gmp6s3axs0lhyenvru9ajp9rs24ukvz
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBocnVWenVaT3B5NTFGcE1P
|
||||
d09QWEpqNXNibEhhSmJaTGxBMVNjSXV2V1Y0CkhYNS9rS2k4OW02YThLeDl0enFw
|
||||
U05udTlkVW9oL3FNbXF3cVcvSk03VWsKLS0tIHB6NWE2djlZakI1eGRNOHRwVEJW
|
||||
TEUxaytYbVFma2dpNUZROW5BYnA2TkkK4FWyc3cVn2vJDzjXGJfJFnAKFYPIPBAz
|
||||
F/jgpxxM8MegtyrVAA8HkiEtRW4Ysk0dwaB/r5AP7s0X1oPj/V8YMg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2024-05-14T21:01:48Z"
|
||||
mac: ENC[AES256_GCM,data:s3zdz0zOXo9YPt0V9il2MVRKBuaMZ8iIR9267y23IrwH914P+YVYQ9i7tTDfEG5+R1TEbLjli8oNxvLpH/BEicGygR/lEBnrp17ccd3RqCcrKHgFyp/QihJ7cCuBtcDO/0kPKSLWsa51hz71heYJLXaFCcZjvWm6R/z0hh3dE9I=,iv:Dt05Fdgk9YYVAwZgrpvxv8A7I6VG+TRRnPjRx4GZqrc=,tag:G7bFoIVXAd84Eqf+qJRiAQ==,type:str]
|
||||
pgp:
|
||||
- created_at: "2025-06-27T20:11:16Z"
|
||||
enc: |-
|
||||
-----BEGIN PGP MESSAGE-----
|
||||
|
||||
hQIMA82M54yws73UARAAl6+KFBx9Du2/+Yn2dVrzmnJ65VM0oyGsNHj6SzPZOKc4
|
||||
Gt8yjvZqj2ptMP97YXyZhr8N3vbEEB7RrJF4Eypq07sMs/rDwBxYkCKA8XgJimoe
|
||||
Or2yQNueo5Yv+2xWvKZieQeTj/MJutKk7pT1uMEzHn9gUdhelAT9x+4AvJfoH8/k
|
||||
jyw1uGFZhYt0Uc6XAigWqDNZemny7wQ6wMYYLnDOp2O44kZSpVv+bAcOeyoiU0kR
|
||||
Js05PyImsBuClBEoT89Dy63KqWagSY82rY2g/qngUZjvRgRRtpz+FwMZldnKYKeI
|
||||
hib2fQJeIYn9NLr/ahJ+CHCXdXovaO/hKbjqMTyEKHfOqdqvedEWpSZ345PB8Id6
|
||||
eefpSKbeCvJ3a1qq29Wxt8vZxg8qgJZzIym+QZVBMmrRJu9UoWsVAx44O8yJSdL2
|
||||
CCz3kwbp7fGs9AaW3ZK0fTV6W38NQOFGUm6wQzy39M2foZwN8Ob/k0RpACUZzjlj
|
||||
kBkT1LsKneggo67ERqAWm1YoIXIAcy+LkvZCNyzNobTH1SD3Q72He1oCSExZ1W7c
|
||||
rR7XUGQxJMkGbjEAEeqsnc43JbnWhrzHLlT493UAU0foBaejpUwORmPyZPk2+Uun
|
||||
Hymhmn6c2zgstR12L8/AaqiJFTXCNInRH3UDbLQFGSo1kY9SxI/wsbCmQL7OUX/S
|
||||
XgHYKE/rhGcEzOWqSVQD8hx3rb2wz6YB1iGIykEWHwWu0XMCfFojcgKRyswmXjRT
|
||||
F0viw/drIYM+jJNfvqYYaUEdLspgayEP5X2xTaAAe4GhXs66X+9wkbS1Y8ne2nE=
|
||||
=9gRr
|
||||
-----END PGP MESSAGE-----
|
||||
fp: CD8CE78CB0B3BDD4
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.8.1
|
||||
|
|
@ -1,93 +0,0 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
inherit (lib.modules) mkDefault;
|
||||
fqdn = "${config.networking.hostName}.inskip.me";
|
||||
in {
|
||||
services.matrix-synapse = {
|
||||
enable = true;
|
||||
settings = {
|
||||
server_name = "kittywit.ch";
|
||||
max_upload_size = "512M";
|
||||
rc_messages_per_second = mkDefault 0.1;
|
||||
rc_message_burst_count = mkDefault 25;
|
||||
public_baseurl = "https://${fqdn}";
|
||||
url_preview_enabled = true;
|
||||
enable_registration = false;
|
||||
enable_metrics = true;
|
||||
report_stats = false;
|
||||
dynamic_thumbnails = true;
|
||||
registration_shared_secret = "!!MATRIX_SHARED_REGISTRATION_SECRET!!";
|
||||
allow_guest_access = true;
|
||||
suppress_key_server_warning = true;
|
||||
use_appservice_legacy_authorization = true;
|
||||
/*
|
||||
app_service_config_files = [
|
||||
"/var/lib/matrix-synapse/discord-registration.yaml"
|
||||
"/var/lib/matrix-synapse/whatsapp-registration.yaml"
|
||||
"/var/lib/matrix-synapse/telegram-registration.yaml"
|
||||
];
|
||||
*/
|
||||
log_config = pkgs.writeText "nya.yaml" ''
|
||||
version: 1
|
||||
formatters:
|
||||
precise:
|
||||
format: '%(asctime)s - %(name)s - %(lineno)d - %(levelname)s - %(request)s - %(message)s'
|
||||
filters:
|
||||
context:
|
||||
(): synapse.util.logcontext.LoggingContextFilter
|
||||
request: ""
|
||||
handlers:
|
||||
console:
|
||||
class: logging.StreamHandler
|
||||
formatter: precise
|
||||
filters: [context]
|
||||
loggers:
|
||||
synapse:
|
||||
level: WARNING
|
||||
synapse.storage.SQL:
|
||||
# beware: increasing this to DEBUG will make synapse log sensitive
|
||||
# information such as access tokens.
|
||||
level: WARNING
|
||||
root:
|
||||
level: WARNING
|
||||
handlers: [console]
|
||||
'';
|
||||
listeners = [
|
||||
{
|
||||
port = 8009;
|
||||
bind_addresses = ["::1"];
|
||||
type = "http";
|
||||
tls = false;
|
||||
x_forwarded = true;
|
||||
resources = [
|
||||
{
|
||||
names = ["metrics"];
|
||||
compress = true;
|
||||
}
|
||||
];
|
||||
}
|
||||
{
|
||||
port = 8008;
|
||||
bind_addresses = ["::1"];
|
||||
type = "http";
|
||||
tls = false;
|
||||
x_forwarded = true;
|
||||
resources = [
|
||||
{
|
||||
names = ["client" "federation"];
|
||||
compress = true;
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
synapse-cleanup
|
||||
];
|
||||
}
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
{config, ...}: {
|
||||
sops.secrets.mautrix-telegram-environment = {
|
||||
sopsFile = ./telegram.yaml;
|
||||
};
|
||||
services.mautrix-telegram = {
|
||||
#inherit (config.services.matrix-synapse) enable;
|
||||
environmentFile = config.sops.secrets.mautrix-telegram-environment.path;
|
||||
settings = {
|
||||
homeserver = {
|
||||
domain = "kittywit.ch";
|
||||
address = "https://yukari.gensokyo.zone";
|
||||
software = "standard";
|
||||
};
|
||||
appservice = {
|
||||
port = 9047;
|
||||
};
|
||||
telegram = {
|
||||
};
|
||||
bridge = {
|
||||
permissions = {
|
||||
"kittywit.ch" = "full";
|
||||
"@kat:kittywit.ch" = "admin";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -1,110 +0,0 @@
|
|||
mautrix-telegram-environment: ENC[AES256_GCM,data:/SYgmAFD7hsq829JsOvX+iDvy0uByfuhV8RnRVuEIlwkTZyfKpZYcqfi3/6fk3OlgtE68ULO9ZKY/tmNl2JFKiRiO8wln+oebDMjTAWlUFvjzFAcM5rCb7OQHY4ODZMzEMMtqatCyKztaS7Ql3v7gEZdD98yHzhdpGGPe5eS6ClGdSDRz5hahNIGrpcr1lJIMXBq3F3jKqipUzf3uiJZ8FrakSwUPQyVZhRNsrir4oSOi/gWevJ59Ey3FKr5NjK2DhxRx2/bvJZzNo16e/M8V4pdUkDbl7aOvYsTg+swTQmTNk+bGsWgZjmc/hrwRIJYnNJ/uhMhqHzk5zzMYNS/gCAsZeDWS/XAdFj4jWAcEA6Em34hAw59rpq9liuRJX8i2ewXblWz5dYoUqgv6dHIR5tyLFr4YPBl,iv:70Bn00Rz40m1DvmitbnCNibiLHWmmDc6WN2wQOiyNXc=,tag:qxAISRF4JF6WycS1si+FKQ==,type:str]
|
||||
sops:
|
||||
shamir_threshold: 1
|
||||
age:
|
||||
- recipient: age1n4kdchmkk3rfkaknxhveqr2ftprdpgwckutt23y6u8639lazzuks77tgav
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBPWVd6Sno3b1N2eEZoVm10
|
||||
OUlxeDVaZ0pBVkxNeTdXSlpCenE2Sll2RWg4CnNLUHFZTERGdzI2N3FlVm5kSEdW
|
||||
QkZqWlRQakpvbUdGbFdyMnVCNUlxbDgKLS0tIFNWeDZmY3ZZZHg2SDZDTVM1OHRV
|
||||
N0pLZnRyNXJyMTlRTnN0TXF4enBqdXMKKbt0auYLaFw5+pps2IHztskWw9vnjX+z
|
||||
N1FyyF+Z5jSfsUv1/xhyu+Aq5BnevhouyEXVyNbhrJeiI/pDUfBwVA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1cnu37d5fqyahh9vvc4hj6z6k8ur9ksuefln7sr6g3emmn927eutqxdawuh
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBqSkpoMms1TUhEa1YvRTRJ
|
||||
ZFpzQ1dvLzJmTWtXYThYQS9CZHVVREZvOGxFCkR6MWMwNlQ4aHIxbHBYaXVWY0Iz
|
||||
L1RDWFphMlZGemdTZ0dsR3V3aDROeEEKLS0tIFIyNTljN25iRVpwcFJsb2lZRDA0
|
||||
WWxMZzQrWVNjZitYYWp2YnJ6NlFGY2sK08zbwMo0wJOELKgshqoTbxMCc5/UlrJp
|
||||
1g0tIdqyhkQvgCvUt1jDcdoAus3yCfdms8DgcG7sjRAHtHjAlIPSPg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1a0m73qr8hhuz8xemv4vymf4wmpghm2hst8wgrn3pn65ext5mf4ksk0vsdm
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBnZ1l4VG9kTjJ5UHloUkFj
|
||||
SE1yc1RVNkhEdVlUT1gvV2RGM2ZyYkcvcmlnCm82OGtSMUdzWGFacG5vK1NiMDFo
|
||||
VW9FQzVhV2syZ3E3Y3IzNjlURnBKOXMKLS0tIC9haDBYQXRJTjN5cDdYZ1NKSGJC
|
||||
WWpTc3VlSEY3SW5RTkJSSnE1YWtGNnMKGRNgntEe8rotnKtz6MCI0IGMqTBHpnZf
|
||||
8XmQVBzK8qSw5FjfUbNzkS+bjVbCdzMzo2JAnwW/GmoP+YSBitAn3A==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age18hpxz0ghvswv9k30cle73prvnzrsuczqh87jjdk9fl50j3ddndmq9xae0n
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBFRi95QmdsM3kvOVFEdW85
|
||||
WU40N0hkbEdBLzRGc0ZnK3pxbnZzYTNFNlhVClhjdXMwYXhpRDIyUUY4Y2tpT1lI
|
||||
bUVrOVlUb3VPYUNaS0pvVWtpcFIwTjgKLS0tIGNIVW1rV0RJTVZuaHh2T2o4UWFk
|
||||
eEpVN3BsekJzeExramRoZ2ZqM3J2NE0Ka990s1RgJ4E8dTTVaPSgjCiW7tqNcpCl
|
||||
E4hxsudQPoFEFQjc7+Bp89tgAS0Li1/i2gXFW+tIFgI45xSTZnLy3w==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1xgy03g3vjydsxcl0qpdgm8rahjcjq95ucxfwlgr22zwjx3p7jf2s9jk6u5
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBZWjFBR1VpMUxxd1RSYkJq
|
||||
QjViVHpTbU85bHdBRDZNeG9EQnVVcmJtQkNrCjk1anIvbllSL0h2Uyt0MGpvSUFK
|
||||
S3B2TjRnNDR0MXpPd0dneEo5R3ZvZm8KLS0tIEM1aVBFcmtRdDhXNjJKTENaVE55
|
||||
T1lnZ2dKUHJIQW5NTXJpSmVKaUxKZkkKCro8gZcEC8rYNLDEsM+OI28qJwR8LdCD
|
||||
Jpj75I2IAA3+Ygr9GMuMMmc3nY8P/WN9zd+EC25WDhLUrSrFUsE+6g==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1fv5dafs4n3r5n83qm2hfz7xmnflsz0xf9r3saralrptpgf8mvuxq4t8k3u
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB2ejR0NkxyVjljTWc2alVB
|
||||
T1VsQXVacmtJNXVXamhycVRmenpGSlVBSG1nClFGbUNJZ1AwRUxzNUVOcFZ5U2oy
|
||||
ZTIzTFBDS0xzTHcvVDBJOHdjOGQ1Y2sKLS0tIDJjaEhZNDQ3T1I5emk2UnRPa1ZT
|
||||
NzQwbUErUmREYlpwaUUyOWxNUDkxZmcKN8NzDN/jgOlP63whB1nMh5qKum1HY7j4
|
||||
xvFp/gOXmLPdXGt79+EjyTfbFDUCnwuNd42Q1Nqpqn187E2yiHeNEw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age120530yclr75k6nrzp6k5jjftj8j4q9v3533guupzk4ct86mjxszqg9e5t5
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBidXNZRHJOYjcvODd6aVFC
|
||||
Ylh4TUZhbWhQZFAvRmpMTnM3UHJjeDBUTVZnCmRYeWluT0Z2OG9tSVQ5ZGdxNzVO
|
||||
N2VyK2dFQkw3NWdVSUNZenNYYUxHRlEKLS0tIFhHVUgrWmd5cHNpUXNEbmsrbWk4
|
||||
VnUvcU12QVRTRkdFb0VYNDVGNkhZYnMK5XCDUP9t2f3vfjYTx8lEfXBXcHK/O+zW
|
||||
rz8sFf9LdyPvdUuHCkkhlvRgYJ4gaXEvEyT9qpAlb9/Opm99MMFy7g==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1c4atxfp05u7zm875s6q8p82ve96rqqpq9smktxlur8pk2yc3qvgql46dp9
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBBZVBVWXRtbXZhdzZONEkv
|
||||
UEpwRlQ2R2FIc3lLaFZHTG02SXo3WWZzVW4wCmQ1RkYrTnBRemZaVG1DbGhNRE8x
|
||||
MXczTlhKdnkxV3l6VW1tTHZmOW52QnMKLS0tIEdLL1VMVGJsQjBOWVJaRm55SWlV
|
||||
UUNIY0dMdTRsOGpaYS9mQXZBOS8rQWcKY5xfZBozgCErLzlWLwuol5xnJwQq2+q6
|
||||
+3PoW/b/e8HwC05WbfrwgcOm7mvCmiWxsoZJ8Hqjylox2szf3T0DEw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1rjldv3fn3q686647exmcukthr32gmp6s3axs0lhyenvru9ajp9rs24ukvz
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBsdHg3WFRmZlhaK0RpaXdC
|
||||
VlZDR3pRZmt4TGVpVmxab1VnaFJjL1VtSkNzCll3YmlYbFlHTElsZU5IdlE0WEZP
|
||||
VlFucmxscmQveFFZSDh0Y3FKbWMzVjQKLS0tIFFOb3Jxa2JreDRXcGM5ZkQ3RVpB
|
||||
QXI4TE5TVjIvWW4za2EraDV6aS9wSlEKId93FJCmOrJAxNn7k+rKlVlDiE11d9O1
|
||||
cO+Jn3tVKL4MnqRgkyI65JeGVvfkvXWYd/5pwgQnUrzzZJEQMENCZg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2024-04-21T21:17:03Z"
|
||||
mac: ENC[AES256_GCM,data:FxmPFJXQ1oCFA7K3bXuAcKDDCzDQpVsVSZksz9NHw3p7J5kKNy/M3PulXJdlC8pw5NbtK8nLlYP6mcjgSRICaXXUbked13gDD2bbB6DrjcXjhes5ccwcPOb4kLuUcTgGJ8q5BSD3isLOO31E4RZHmX10F8lJLPqR5whoDs3IajE=,iv:FExSdR/+CdFkcP2V6C7n4NgvbdibRol3lTVBjUlhWWE=,tag:nSHHoo/ykTzZNZlXDePW5g==,type:str]
|
||||
pgp:
|
||||
- created_at: "2025-06-27T20:11:17Z"
|
||||
enc: |-
|
||||
-----BEGIN PGP MESSAGE-----
|
||||
|
||||
hQIMA82M54yws73UAQ/+PT7h53pWQQLbZ+uANvfNEiAmKK1eyQ3UPcNfL3yEm380
|
||||
WwOskPFp0/7h8vgfKDUSl71tpQ4am/9VUAUglOMSY2ikAXp0v8opmHr9s+jtqVzR
|
||||
3BL+8eVoMDRTcFPmLEYIYoTN5MU8LkAQUptB3XZ7qCk3+itf4AdXHC1XywyGzIOO
|
||||
HfivoXykfj5mPk07VHYktNhvK1jg3qaYWxPSastE4mM/a2LBjng9Byxf3x6bYbWq
|
||||
3Ewdhv7qnlQj6YoGXzQetaeN/p7bxdA/fwpmpfHowzYkRo2BI74sAhMcJNyHNlqN
|
||||
LlGHzjFxI4J1aCr56VV+1MifhMMNWz1HDhRIoy6nBsi3zWHiTRlZtpKAmD+9/X9c
|
||||
fETT48WIPn95OH+YwOZcerC6hUycGQdYkVZO7wMeHMZH++pxs0rBFUTyfj/cpAKs
|
||||
i+SAff+NMlJSGrLNgHEZgIRpE79lMfaIuToIU8VlN+oqQ/SuT7Q59ISb/ytaGWDQ
|
||||
OGqEAYWUuW0t+cnHV+j/YBqK+yCpvSIg0jMKHFukc/SRQzqGMZvGQZTDh+4BDV/A
|
||||
f9LaVu23Ob5IE8NchMBGc8+PP1X9kO/WV+xagiVMCeQD8rG5aSD7tSPwkeDFhN5t
|
||||
Iv5pplPRM+Cq1j0bSD3wsbWsqfg9RNQUQw1TeK51rKLqkwGu8XLUuokNFDn2tJrS
|
||||
XgHydp5s3FI30cdKOo8vJMhpr2+NWw6pflplinzkbqGmEdVoTeQquY/cNVJCdYYm
|
||||
bSRt5oo/7g+9tokvQybJF0243YRvRGNT/9f+uwT9FwLqZ+OtxulJe9Zydcksink=
|
||||
=/OW+
|
||||
-----END PGP MESSAGE-----
|
||||
fp: CD8CE78CB0B3BDD4
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.8.1
|
||||
|
|
@ -1,33 +0,0 @@
|
|||
{config, ...}: {
|
||||
sops.secrets.mautrix-whatsapp-environment = {
|
||||
sopsFile = ./whatsapp.yaml;
|
||||
};
|
||||
services.mautrix-whatsapp = {
|
||||
#inherit (config.services.matrix-synapse) enable;
|
||||
environmentFile = config.sops.secrets.mautrix-whatsapp-environment.path;
|
||||
settings = {
|
||||
homeserver = {
|
||||
domain = "kittywit.ch";
|
||||
address = "https://yukari.gensokyo.zone";
|
||||
software = "standard";
|
||||
};
|
||||
appservice = {
|
||||
port = 9049;
|
||||
};
|
||||
whatsapp = {
|
||||
};
|
||||
bridge = {
|
||||
encryption = {
|
||||
allow = true;
|
||||
default = true;
|
||||
require = true;
|
||||
};
|
||||
permissions = {
|
||||
"kittywit.ch" = "full";
|
||||
"@whatsapp:kittywit.ch" = "admin";
|
||||
"@kat:kittywit.ch" = "admin";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -1,110 +0,0 @@
|
|||
mautrix-whatsapp-environment: ENC[AES256_GCM,data:yfyECUKpmXyOFSsl1i1SupOdnAF2yisuY94v5JYjEsOi4aqoJ8c3ryErHp6/3mDosJRQm5E8YsuHDbs5t/OD6JcgIVff5V5igRcN06mvtfA0URDNOOetIwWreJOJRqD4DW7tdKKfGg1fDZpcJ4rEe+uV2LMB1owyTzCViT4bD9czxwxPUp145ss8KY03MEkO5/FwWZ2K/sZB/cAOZPqe9zWT2PhWebhKOflCbGiqOu5vD7wQSVOJHvmo6zW0KA99XixxtD1zeutp7jzK,iv:LeVF/OgzQJgOPiaqxUAuRaYBZmkLqtkQietvJBDA3sU=,tag:HhBXbPh1x7E+rJheZOvEDw==,type:str]
|
||||
sops:
|
||||
shamir_threshold: 1
|
||||
age:
|
||||
- recipient: age1n4kdchmkk3rfkaknxhveqr2ftprdpgwckutt23y6u8639lazzuks77tgav
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSArUnczb0xsOHczL1RmUzNZ
|
||||
R2QvS0VvVzRmdUljZ1ZTbWRjcE1lUG9PVzFNCnZXQmdxelF2MWUzQm41Q04rdDVw
|
||||
RktQUXdaSFRmQUFxbk9BNWRTVFA1MFEKLS0tIHpoSzdTRGlNejBwZEpnU2VhdTli
|
||||
ZnVwSk5taXN6bVJPTGxPdTF6cVZOQlUK21ZkeMOKRSfsSogJUJWOZHVegjA99zcT
|
||||
Ml5FAp5FjjvXSH+dkvdhzEm5DQfy99bcGoaLUEFBDMKDZgRhWT7w/g==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1cnu37d5fqyahh9vvc4hj6z6k8ur9ksuefln7sr6g3emmn927eutqxdawuh
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBET0lCc29VSHV3ZzZtUy9i
|
||||
RmNHc0hEVmZIU0tDd3RaTnpoaTBUU1Y3QURnCkFXeWE5Ylo3SEtiQ25NRTZvZFh1
|
||||
SldZVGhKdVZQamJlRGZnSElwYmtqUVEKLS0tIEdYN0oxd29VM3RMOGRNTENkOW12
|
||||
TGtZbEFDK0lRZFp4UXNYbm1yU2ZWWjQKi68rz6O9hSYR09+8PhY2Ll4ogCYJDyM3
|
||||
wMClHCqAnmqKZ3pPNmfXhFJhmK89SxhRYFr79y8RP16yPTh7POnRbw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1a0m73qr8hhuz8xemv4vymf4wmpghm2hst8wgrn3pn65ext5mf4ksk0vsdm
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBGSzNTdTZ1Q2lSL3FWdHhz
|
||||
dEdEMHpMVno1LytFcVpOUlRQdW03Wmg2YTNVCmhoN3hkbEpKUXY3M1VXY1Ryak8x
|
||||
QkgzZDRSeEVoRm1JbVdpcnlNbFR3eUkKLS0tIHdET2dZY04yNFFhdXhSQTVUbUtp
|
||||
cnQ1OG56NEZqelh6WDBQU1p3TXg0NnMKx53faJlKZojZQX9skD7APANwoSM2x7Pw
|
||||
plJMOnv5XBGcX0ejI5vro67ax0PA/1UnoC6W+zlZ+t1588F4fxx6qA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age18hpxz0ghvswv9k30cle73prvnzrsuczqh87jjdk9fl50j3ddndmq9xae0n
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBrb2xNZFRJN3FyZnR1NjNB
|
||||
NHo1Q0t2ZHNVS1hKbFpCeWxpTGNlSlgvY0hrCnNlWm1JZmdqMTRVaHNMOXkxK0JJ
|
||||
QitMaXJKejhZd0p1M25aRGJ5eFBoL2cKLS0tIElET3hteUN4NExsaGdEV3RpRXN1
|
||||
OTM0T3g0d2s4VTFXVm1NS1hhTVZGaTgKRee0smFX83zKfWLp1plWtl/xCiDmIkEu
|
||||
4qSOac/uW1PiXTS+3WcPJYwS+PRoj2WtzbGsJyXxW6iBUA8bbDV55Q==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1xgy03g3vjydsxcl0qpdgm8rahjcjq95ucxfwlgr22zwjx3p7jf2s9jk6u5
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBWZ0JJaDIzUWs3MFIxMWpE
|
||||
aGROSGk2c3lYc1Vxa3JwZVBERnFDWUlkQzB3ClhKOGxvbHpVM3dvSnI0MCtBQ2ov
|
||||
V1ZOcVhLczZNSVRtMElWbmllOTJlSDgKLS0tIE1NTEJMa0lWZkR6ZjFQT1oxQnBV
|
||||
QTZIS3JXcldxZE1YL21WYXJlbHNIcGcKQEq8Um82aixK55mRa4zw0W2HBTXD0cGO
|
||||
9x9iESDkMwFQQvw8V7u1/NQGOjy/9sXEFc9okeicXBbcyvoSSYPsZQ==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1fv5dafs4n3r5n83qm2hfz7xmnflsz0xf9r3saralrptpgf8mvuxq4t8k3u
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBWZGJ1WHM3eWthWVZpcENi
|
||||
YjdaM3lvZTN5VVpqb3c1NzJUSUFvcTRHNEQ0CnU0OGFlZUpCaWcwYWNpdE5SQlBz
|
||||
eTM4SGpLbjVKV3pOVW1teG9jTWpkOFEKLS0tIFhHbUZocEZpN080UXM5SHkwSDJk
|
||||
UmxieUxJSHBoZ1JKaFRSaHdPRE5NZFkKrZGY5teVNbHiPiMR1greIxeQpy/ngqNw
|
||||
EoffUTtjK+HVy22y6F7idWqMrm2ZPKZumD/tZMyiH4GV9h5NZMJZzw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age120530yclr75k6nrzp6k5jjftj8j4q9v3533guupzk4ct86mjxszqg9e5t5
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBSN2xLZjNDdmNnQnI5Zkw5
|
||||
MGJURk9DcEIyTlpjOXc2RjZkOTF6djFQSWpRCnJvVWZJTmhWQU52N29BTDROdDVo
|
||||
QlBTWGdWOW9oRHVSNW9mUW4rZ2RodTgKLS0tIEE1VkkwVmJvYzVLTlM0cTYrRzda
|
||||
UTBXYjl4TTd2TTBHS2wxZVJiUFJQb2MKArkEnRgQ/BlAECQsAxmFSY76r/vwPCp5
|
||||
Q+Iz0dZSr820wxi7KGhtc9yRIh6Zximi7wjjkCPbEUCJeBLwIBeLCg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1c4atxfp05u7zm875s6q8p82ve96rqqpq9smktxlur8pk2yc3qvgql46dp9
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBWOG13bzJHMEk3T3BjMTY4
|
||||
VTd0ckRXaGxVRWJZc0NyV3F4bU90Z0tBWlhvCjB4dHFIckdBekVib1JVWW9UL3h1
|
||||
VEFGalpleWN0cCtvSGozdmEzMHFFNnMKLS0tIE92WTdwRkJvY08wTStpeW84cTBW
|
||||
MCsvUC9KSS82ODRVUkRhblZoQVIrMnMKG+xsAp6YZCSH/57mnnvd+YCCTshW9o0W
|
||||
aqEeLteSslnB3f3S981QgpDNFZSxHXHDmK+Az0i32fDLn2PKym2Tkw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age1rjldv3fn3q686647exmcukthr32gmp6s3axs0lhyenvru9ajp9rs24ukvz
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB2SGoxZWJUVFF3dFJOSUtu
|
||||
N2FETmh4K1NlMWVNTmQxbCt4c2JjRHdYZjFNCkJCeGtnS21mN0xTeG5JdjhuRndW
|
||||
ZHI2NktIdzd6QkYwU1dwekM2N0VadHMKLS0tIG1hOXQ2TUZuTVVOMmRaczZLRzZL
|
||||
RXdGWHpSa3g2bk5YcG9vU1NwYTBwRlkKcqX/3OU9GAI/8NZcQiyfItdc0M6JxNFs
|
||||
EDsTgGbvMRH944STFvcL2ytFb7K/ZQpuFwOZQF39UmfFcEuxe0OATg==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2024-04-21T22:01:48Z"
|
||||
mac: ENC[AES256_GCM,data:MWwXYxo4dC9XlJWA1Tnp0qBzt31E/UuYyIPtMZNjY5o+km0BZrxuGhFwewUadyRajk6vXhbMW2nOYCQBlEjiOENrUOO0sLAIdu8QC00bZ9c4UlSL/OZJosTUVvkFrE14Os697gYV2RNenFZS/+QyvAdiMgVjgNeLjBRj3nt9QBg=,iv:ZVVfiDkUpO9WeusJq91FSTtmhGXnX08WTNW3okqqKxo=,tag:ERe7uNv2p0WcZDwJnWCNpA==,type:str]
|
||||
pgp:
|
||||
- created_at: "2025-06-27T20:11:19Z"
|
||||
enc: |-
|
||||
-----BEGIN PGP MESSAGE-----
|
||||
|
||||
hQIMA82M54yws73UAQ/9HrRu3u8tt7/zKUx7FEQSLur76IP3n6QoeTLkJ4FKrK7j
|
||||
f7LMeb1kf0peL9Xbwy47Z9HbTIKrg5g6s+cLkkLPLRlNe60O3nQBANDvOjDnpRCm
|
||||
MmEtq1BDrx9XJ0u29fJiJX9gGTA4pbAefvLGLCnmMevUHHJjoi3b3zWZ5s+80jxH
|
||||
rPnz3T+RRBltJ8/zY2xzPfSy5V9pkrzfm3CMzcbUyJQyDKKakoqHScGO9fBC3JzV
|
||||
BQu8zdwqYWgQnGGvEdbj+4ZNJYfjwPJnu+TXqQtArlw1/a+Phw9JxX/clv5i6wH0
|
||||
7uq9rtFXEEH5LHTtkeLn9xvFpR6zSNxxVcLDQiRNYAEDT7/VPNe60+5NvoumZztu
|
||||
Vgd4l0UbxTAijiTlLzeXWbMXwjz7hwHyZxicgoiQ3mBCY1js00oroAtPOyrZBgEU
|
||||
oQcipgqc4/6IVHik2hCa+u9QzOPaGUVtaH57lOSoj0tfoDGvxU4o+xUGK1id9yBo
|
||||
buBvGRXqJbnNdrSlI8x6KF/9YVn5FYOUV4utWSqPBiivIyxjOCionrZ4cydlr984
|
||||
upbK/GpfMKDnuLfROZns9Be1FDNq03aBS25rLLN3goaLx3wdPcU275GqGbCTsZzy
|
||||
4UAaWRRO2fsQ0K1MKxk6F/z7oNhBnykwMk6bj1mmXfS8HNgkwrUmHvy8xzWXrzXS
|
||||
XAHAH1/2LnPScaPsFtc/x+Ravh/NWq/3LSpc7lH34yV8hJIWkNWKWzxtnTWO+0Y3
|
||||
vUnNHIi3B9odzUir4NzYh383mB7mQNzewgivuAsrNRnvpLWXqrMHqzxyPO1A
|
||||
=w79j
|
||||
-----END PGP MESSAGE-----
|
||||
fp: CD8CE78CB0B3BDD4
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.8.1
|
||||
|
|
@ -4,10 +4,11 @@
|
|||
...
|
||||
}: [
|
||||
inputs.rbw-bitw.overlays.default
|
||||
inputs.arcexprs.overlays.default
|
||||
#inputs.arcexprs.overlays.default
|
||||
inputs.darwin.overlays.default
|
||||
inputs.deploy-rs.overlays.default
|
||||
inputs.neorg-overlay.overlays.default
|
||||
inputs.niri.overlays.niri
|
||||
(import tree.packages.default {inherit inputs tree;})
|
||||
(final: prev: {
|
||||
wivrn = prev.wivrn.override { cudaSupport = true; };
|
||||
|
|
|
|||
|
|
@ -1,13 +1,20 @@
|
|||
{
|
||||
wrapShellScriptBin,
|
||||
pkgs,
|
||||
}:
|
||||
wrapShellScriptBin "nf-build-system" ./build-system.sh {
|
||||
depsRuntimePath = with pkgs; [
|
||||
lib,
|
||||
writeShellScriptBin,
|
||||
git,
|
||||
cachix,
|
||||
jq,
|
||||
nix,
|
||||
curl
|
||||
}: let
|
||||
inherit (lib) makeBinPath;
|
||||
in writeShellScriptBin "nf-build-system" ''
|
||||
export PATH="$PATH:${lib.makeBinPath [
|
||||
git
|
||||
cachix
|
||||
jq
|
||||
nix
|
||||
curl
|
||||
];
|
||||
}
|
||||
]}"
|
||||
exec ${./build-system.sh} "$@"
|
||||
''
|
||||
|
|
|
|||
|
|
@ -1,12 +1,20 @@
|
|||
{
|
||||
wrapShellScriptBin,
|
||||
pkgs,
|
||||
}:
|
||||
wrapShellScriptBin "nf-update" ./update.sh {
|
||||
depsRuntimePath = with pkgs; [
|
||||
lib,
|
||||
writeShellScriptBin,
|
||||
git,
|
||||
cachix,
|
||||
jq,
|
||||
nix,
|
||||
curl
|
||||
}: let
|
||||
inherit (lib) makeBinPath;
|
||||
in writeShellScriptBin "nf-update" ''
|
||||
export PATH="$PATH:${lib.makeBinPath [
|
||||
git
|
||||
cachix
|
||||
jq
|
||||
nix
|
||||
curl
|
||||
];
|
||||
}
|
||||
]}"
|
||||
exec ${./update.sh} "$@"
|
||||
''
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ _: let
|
|||
lib,
|
||||
pkgs,
|
||||
tree,
|
||||
inputs,
|
||||
...
|
||||
}: let
|
||||
inherit (lib.lists) singleton;
|
||||
|
|
@ -45,7 +46,15 @@ _: let
|
|||
gaming
|
||||
])
|
||||
++ (with tree.nixos.environments; [
|
||||
hyprland
|
||||
#hyprland
|
||||
niri
|
||||
]) ++ (with inputs.nixos-hardware.outputs.nixosModules; [
|
||||
common-pc
|
||||
common-pc-ssd
|
||||
common-cpu-amd
|
||||
common-cpu-amd-pstate
|
||||
common-cpu-amd-zenpower
|
||||
common-gpu-nvidia-nonprime
|
||||
]);
|
||||
|
||||
home-manager.users.kat.imports =
|
||||
|
|
@ -53,25 +62,25 @@ _: let
|
|||
graphical
|
||||
])
|
||||
++ (with tree.home.environments; [
|
||||
hyprland
|
||||
#hyprland
|
||||
niri
|
||||
]);
|
||||
|
||||
networking.hostId = "c3b94e85";
|
||||
|
||||
home-manager.users.kat.wayland.windowManager.hyprland.settings = {
|
||||
monitor = [
|
||||
"DP-2, 3840x2160, 0x0, 1"
|
||||
"HDMI-A-1, 1920x1080, auto-right, 1"
|
||||
];
|
||||
env = [
|
||||
"NVD_BACKEND,direct"
|
||||
"ELECTRON_OZONE_PLATFORM_HINT,auto"
|
||||
"LIBVA_DRIVER_NAME,nvidia"
|
||||
"__GLX_VENDOR_LIBRARY_NAME,nvidia"
|
||||
"NIXOS_OZONE_WL,1"
|
||||
"__NV_DISABLE_EXPLICIT_SYNC,1"
|
||||
"QT_QPA_PLATFORM,wayland;xcb"
|
||||
];
|
||||
home-manager.users.kat.programs.niri.settings = {
|
||||
outputs = {
|
||||
"LG Electronics LG Ultra HD 0x0001AC91" = {
|
||||
scale = 1.25;
|
||||
};
|
||||
};
|
||||
environment = {
|
||||
NVD_BACKEND = "direct";
|
||||
ELECTRON_OZONE_PLATFORM_HINT = "auto";
|
||||
LIBVA_DRIVER_NAME = "nvidia";
|
||||
NIXOS_OZONE_WL = "1";
|
||||
QT_QTA_PLATFORM = "wayland;xcb";
|
||||
};
|
||||
};
|
||||
|
||||
programs.ssh.extraConfig = ''
|
||||
|
|
|
|||
|
|
@ -1,114 +0,0 @@
|
|||
_: let
|
||||
hostConfig = {
|
||||
config,
|
||||
lib,
|
||||
tree,
|
||||
...
|
||||
}: let
|
||||
inherit (lib.lists) singleton;
|
||||
drives = {
|
||||
root = {
|
||||
raw = "/dev/disk/by-uuid/af144e7f-e35b-49e7-be90-ef7001cc2abd";
|
||||
luks = "luks-af144e7f-e35b-49e7-be90-ef7001cc2abd";
|
||||
result = {
|
||||
device = "/dev/disk/by-uuid/cf7fc410-4e27-4797-8464-a409766928c1";
|
||||
fsType = "ext4";
|
||||
};
|
||||
};
|
||||
boot = rec {
|
||||
raw = "/dev/disk/by-uuid/D0D8-F8BF";
|
||||
result = {
|
||||
device = raw;
|
||||
fsType = "vfat";
|
||||
};
|
||||
};
|
||||
swap = {
|
||||
raw = "/dev/disk/by-uuid/111c4857-5d73-4e75-89c7-43be9b044ade";
|
||||
luks = "luks-111c4857-5d73-4e75-89c7-43be9b044ade";
|
||||
result = {
|
||||
device = "/dev/disk/by-uuid/bebdb14c-4707-4e05-848f-5867764b7c27";
|
||||
};
|
||||
};
|
||||
};
|
||||
in {
|
||||
imports =
|
||||
(with tree.nixos.hardware; [
|
||||
b550m-itx-ac
|
||||
])
|
||||
++ (with tree.nixos.profiles; [
|
||||
graphical
|
||||
wireless
|
||||
gaming
|
||||
])
|
||||
++ (with tree.nixos.environments; [
|
||||
kde
|
||||
]);
|
||||
|
||||
home-manager.users.kat.imports =
|
||||
(with tree.home.profiles; [
|
||||
graphical
|
||||
devops
|
||||
])
|
||||
++ (with tree.home.environments; [
|
||||
kde
|
||||
]);
|
||||
|
||||
boot = {
|
||||
loader = {
|
||||
grub = {
|
||||
enableCryptodisk = true;
|
||||
};
|
||||
};
|
||||
initrd = {
|
||||
luks.devices = {
|
||||
${drives.swap.luks} = {
|
||||
device = drives.swap.raw;
|
||||
keyFile = "/crypto_keyfile.bin";
|
||||
};
|
||||
${drives.root.luks}.device = drives.root.raw;
|
||||
};
|
||||
#
|
||||
secrets = {
|
||||
"/crypto_keyfile.bin" = null;
|
||||
};
|
||||
availableKernelModules = ["nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod"];
|
||||
};
|
||||
kernelModules = ["nct6775"];
|
||||
supportedFilesystems = ["ntfs"];
|
||||
};
|
||||
|
||||
fileSystems = {
|
||||
"/" = drives.root.result;
|
||||
"/boot" = drives.boot.result;
|
||||
};
|
||||
|
||||
swapDevices = singleton drives.swap.result;
|
||||
|
||||
services.openssh = {
|
||||
hostKeys = [
|
||||
{
|
||||
bits = 4096;
|
||||
path = "/var/lib/secrets/${config.networking.hostName}-osh-pk";
|
||||
type = "rsa";
|
||||
}
|
||||
{
|
||||
path = "/var/lib/secrets/${config.networking.hostName}-ed25519-osh-pk";
|
||||
type = "ed25519";
|
||||
}
|
||||
];
|
||||
extraConfig = ''
|
||||
HostCertificate /var/lib/secrets/${config.networking.hostName}-osh-cert
|
||||
HostCertificate /var/lib/secrets/${config.networking.hostName}-osh-ed25519-cert
|
||||
'';
|
||||
};
|
||||
|
||||
system.stateVersion = "21.11";
|
||||
};
|
||||
in {
|
||||
arch = "x86_64";
|
||||
ci.enable = false; # System currently not used
|
||||
type = "NixOS";
|
||||
modules = [
|
||||
hostConfig
|
||||
];
|
||||
}
|
||||
|
|
@ -45,6 +45,7 @@ _: let
|
|||
])
|
||||
++ (with tree.nixos.profiles; [
|
||||
graphical
|
||||
quiet-boot
|
||||
wireless
|
||||
laptop
|
||||
gaming
|
||||
|
|
@ -78,9 +79,6 @@ _: let
|
|||
swapDevices = [
|
||||
drives.swap.result
|
||||
];
|
||||
boot.loader = {
|
||||
systemd-boot.enable = lib.mkForce false;
|
||||
};
|
||||
|
||||
home-manager.users.kat = {
|
||||
wayland.windowManager.hyprland.settings.monitor = [
|
||||
|
|
@ -88,7 +86,10 @@ _: let
|
|||
];
|
||||
};
|
||||
boot = {
|
||||
loader.grub.useOSProber = true;
|
||||
loader = {
|
||||
grub.useOSProber = true;
|
||||
systemd-boot.enable = lib.mkForce false;
|
||||
};
|
||||
extraModprobeConfig = "options snd_hda_intel power_save=0";
|
||||
extraModulePackages = [config.boot.kernelPackages.v4l2loopback.out];
|
||||
};
|
||||
|
|
|
|||
5
tree.nix
5
tree.nix
|
|
@ -89,6 +89,9 @@
|
|||
inputs.nix-gaming.nixosModules.pipewireLowLatency
|
||||
inputs.nix-gaming.nixosModules.platformOptimizations
|
||||
inputs.clipboard-sync.nixosModules.default
|
||||
inputs.niri.nixosModules.niri
|
||||
inputs.lix-module.nixosModules.default
|
||||
inputs.nixos-cli.nixosModules.nixos-cli
|
||||
];
|
||||
};
|
||||
};
|
||||
|
|
@ -108,7 +111,7 @@
|
|||
nix-index-database.hmModules.nix-index
|
||||
plasma-manager.homeManagerModules.plasma-manager
|
||||
base16.homeModules.base16
|
||||
catppuccin.homeManagerModules.catppuccin
|
||||
catppuccin.homeModules.catppuccin
|
||||
inputs.sops-nix.homeManagerModules.sops
|
||||
chaotic.homeManagerModules.default
|
||||
spicetify-nix.homeManagerModules.spicetify
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue