Compare commits
35 commits
f465562720
...
931febdc0c
Author | SHA1 | Date | |
---|---|---|---|
931febdc0c | |||
7952fb96c9 | |||
84a8a1aa20 | |||
404ac69c81 | |||
5e1c321f79 | |||
e37ca1627c | |||
f254307c8f | |||
0d5ef5a528 | |||
e450178d1f | |||
24ac3d1e96 | |||
3ac55ee20a | |||
c14c0b6f67 | |||
e905ce2b06 | |||
b51d4531b0 | |||
fb973bc9bd | |||
3ed58a0463 | |||
356363909b | |||
8cc84e0794 | |||
1115737759 | |||
fa99555c12 | |||
7b5fea2c98 | |||
7b615740b6 | |||
b9d57f9d2f | |||
abdf90a4b2 | |||
18daffc71b | |||
d1e28a69d7 | |||
97a70beb55 | |||
522b1b6728 | |||
bad9b9d54a | |||
f998c7c0d5 | |||
9f88130b47 | |||
59ed1ee9e2 | |||
f328cf8929 | |||
97e64e6b0b | |||
c72009b16f |
43 changed files with 371 additions and 529 deletions
|
@ -5,7 +5,6 @@
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
imports = map (n: ../../../../home/applications/${n}) [
|
imports = map (n: ../../../../home/applications/${n}) [
|
||||||
"alacritty"
|
|
||||||
"go"
|
"go"
|
||||||
"mpv"
|
"mpv"
|
||||||
"nix"
|
"nix"
|
||||||
|
@ -32,11 +31,4 @@
|
||||||
dockutil
|
dockutil
|
||||||
gawk
|
gawk
|
||||||
];
|
];
|
||||||
|
|
||||||
# macOS don't have fontconfig
|
|
||||||
programs = let
|
|
||||||
monospace = "JetBrainsMono Nerd Font";
|
|
||||||
in {
|
|
||||||
alacritty.settings.font.normal.family = monospace;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,6 +21,7 @@
|
||||||
skhd = {
|
skhd = {
|
||||||
enable = true;
|
enable = true;
|
||||||
skhdConfig = ''
|
skhdConfig = ''
|
||||||
|
# FIXME
|
||||||
cmd - return : open -n ${pkgs.alacritty}/Applications/Alacritty.app
|
cmd - return : open -n ${pkgs.alacritty}/Applications/Alacritty.app
|
||||||
|
|
||||||
cmd - 1 : yabai -m space --focus 1 # Focus space
|
cmd - 1 : yabai -m space --focus 1 # Focus space
|
||||||
|
|
168
flake.lock
168
flake.lock
|
@ -10,11 +10,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717970544,
|
"lastModified": 1719675517,
|
||||||
"narHash": "sha256-YX43aaegfqjXaZ3S+z0JI7SKOEE1Afqm/I9FBIezJ7A=",
|
"narHash": "sha256-QXMYL1ay66M7T/JdaO4wR8K58GkV5CNN8U15gwifdbY=",
|
||||||
"owner": "ezKEa",
|
"owner": "ezKEa",
|
||||||
"repo": "aagl-gtk-on-nix",
|
"repo": "aagl-gtk-on-nix",
|
||||||
"rev": "85c380e4e80fbc21d25165626ad2897cbb11af4d",
|
"rev": "4688aa9f107d6d7ac46a98a01f7105cac8e7dbe6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -23,29 +23,6 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"berberman": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"nvfetcher": [
|
|
||||||
"nvfetcher"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1718252558,
|
|
||||||
"narHash": "sha256-Yph5ocpdI3a1Ib+V9BQ4/0YyO4UVn8J0WeAvOLYGaGk=",
|
|
||||||
"owner": "berberman",
|
|
||||||
"repo": "flakes",
|
|
||||||
"rev": "73949fb5964f243ff9c28887bfc99c2fe12407c3",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "berberman",
|
|
||||||
"repo": "flakes",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"crane": {
|
"crane": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
@ -53,11 +30,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718078026,
|
"lastModified": 1719880336,
|
||||||
"narHash": "sha256-LbQabH6h86ZzTvDnaZHmMwedRZNB2jYtUQzmoqWQoJ8=",
|
"narHash": "sha256-VnUCaGI7FEh7tLVsD6OsychPmqjDYXqJEdFG4jK86zs=",
|
||||||
"owner": "ipetkov",
|
"owner": "ipetkov",
|
||||||
"repo": "crane",
|
"repo": "crane",
|
||||||
"rev": "a3f0c63eed74a516298932b9b1627dd80b9c3892",
|
"rev": "047c929ad65d8378f18de95ca66769ca04161caf",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -73,11 +50,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718242063,
|
"lastModified": 1719864345,
|
||||||
"narHash": "sha256-n3AWItJ4a94GT0cray/eUV7tt3mulQ52L+lWJN9d1E8=",
|
"narHash": "sha256-e4Pw+30vFAxuvkSTaTypd9zYemB/QlWcH186dsGT+Ms=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "disko",
|
"repo": "disko",
|
||||||
"rev": "832a9f2c81ff3485404bd63952eadc17bf7ccef2",
|
"rev": "544a80a69d6e2da04e4df7ec8210a858de8c7533",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -108,11 +85,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717285511,
|
"lastModified": 1719877454,
|
||||||
"narHash": "sha256-iKzJcpdXih14qYVcZ9QC9XuZYnPc6T8YImb6dX166kw=",
|
"narHash": "sha256-g5N1yyOSsPNiOlFfkuI/wcUjmtah+nxdImJqrSATjOU=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "2a55567fcf15b1b1c7ed712a2c6fadaec7412ea8",
|
"rev": "4e3583423212f9303aa1a6337f8dffb415920e4f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -168,11 +145,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718243258,
|
"lastModified": 1719827439,
|
||||||
"narHash": "sha256-abBpj2VU8p6qlRzTU8o22q68MmOaZ4v8zZ4UlYl5YRU=",
|
"narHash": "sha256-tneHOIv1lEavZ0vQ+rgz67LPNCgOZVByYki3OkSshFU=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "8d5e27b4807d25308dfe369d5a923d87e7dbfda3",
|
"rev": "59ce796b2563e19821361abbe2067c3bb4143a7d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -183,11 +160,11 @@
|
||||||
},
|
},
|
||||||
"impermanence": {
|
"impermanence": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717932370,
|
"lastModified": 1719091691,
|
||||||
"narHash": "sha256-7C5lCpiWiyPoIACOcu2mukn/1JRtz6HC/1aEMhUdcw0=",
|
"narHash": "sha256-AxaLX5cBEcGtE02PeGsfscSb/fWMnyS7zMWBXQWDKbE=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "impermanence",
|
"repo": "impermanence",
|
||||||
"rev": "27979f1c3a0d3b9617a3563e2839114ba7d48d3f",
|
"rev": "23c1f06316b67cb5dabdfe2973da3785cfe9c34a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -221,11 +198,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718218065,
|
"lastModified": 1719818887,
|
||||||
"narHash": "sha256-fKC7Ryg3AYykDrS2ilS1VqA8/9B2m3yFZcshK+7tIEc=",
|
"narHash": "sha256-Bogl1pJlgby7OpR16jp8zwOWV7FHRxCsnNxHcisyIq0=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "lanzaboote",
|
"repo": "lanzaboote",
|
||||||
"rev": "7cb05fab896bd542c0ca4260d74d9d664cd7b56e",
|
"rev": "0e6457c98547ec8866714d4222545e7e8c1ae429",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -250,11 +227,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1712745718,
|
"lastModified": 1718491861,
|
||||||
"narHash": "sha256-pAPGjjPEC5Y3DeuqSlDgFRPAZStA1doWowOvmPY7jvk=",
|
"narHash": "sha256-nnKZRkwXoCtGN8Rgv6FcHttX1JOPWQt2y7yY4Bz/hWk=",
|
||||||
"owner": "Guanran928",
|
"owner": "Guanran928",
|
||||||
"repo": "nvim",
|
"repo": "nvim",
|
||||||
"rev": "3fbc02368d9d554ac2918e48112fbc25957fb03a",
|
"rev": "49f55400d06fa113e4b4ae5a6fa97a6d83c59983",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -270,11 +247,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718345812,
|
"lastModified": 1719845423,
|
||||||
"narHash": "sha256-FJhA+YFsOFrAYe6EaiTEfomNf7jeURaPiG5/+a3DRSc=",
|
"narHash": "sha256-ZLHDmWAsHQQKnmfyhYSHJDlt8Wfjv6SQhl2qek42O7A=",
|
||||||
"owner": "LnL7",
|
"owner": "LnL7",
|
||||||
"repo": "nix-darwin",
|
"repo": "nix-darwin",
|
||||||
"rev": "ff988d78f2f55641efacdf9a585d2937f7e32a9b",
|
"rev": "ec12b88104d6c117871fad55e931addac4626756",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -352,11 +329,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718401149,
|
"lastModified": 1719869943,
|
||||||
"narHash": "sha256-THXbbmhDZjEnc+372GYl3JpXKkkuo7nhShv66Reklsk=",
|
"narHash": "sha256-MDd7osBHV/kk2jGyd7v29CKQVVexus4bGSbzUBer63U=",
|
||||||
"owner": "jacekszymanski",
|
"owner": "jacekszymanski",
|
||||||
"repo": "nixcasks",
|
"repo": "nixcasks",
|
||||||
"rev": "d35924a6bd7c8a34f31e885754a5564ea06ab833",
|
"rev": "e41da9d30fc57349150dc9fb39e029f761ce0d9e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -367,11 +344,11 @@
|
||||||
},
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718349360,
|
"lastModified": 1719895800,
|
||||||
"narHash": "sha256-SuPne4BMqh9/IkKIAG47Cu5qfmntAaqlHdX1yuFoDO0=",
|
"narHash": "sha256-xNbjISJTFailxass4LmdWeV4jNhAlmJPwj46a/GxE6M=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "ae5c8dcc4d0182d07d75df2dc97112de822cb9d6",
|
"rev": "6e253f12b1009053eff5344be5e835f604bb64cd",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -397,11 +374,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718276985,
|
"lastModified": 1719826879,
|
||||||
"narHash": "sha256-u1fA0DYQYdeG+5kDm1bOoGcHtX0rtC7qs2YA2N1X++I=",
|
"narHash": "sha256-xs7PlULe8O1SAcs/9e/HOjeUjBrU5FNtkAF/bSEcFto=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "3f84a279f1a6290ce154c5531378acc827836fbb",
|
"rev": "b9014df496d5b68bf7c0145d0e9b0f529ce4f2a8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -413,11 +390,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718229064,
|
"lastModified": 1719663039,
|
||||||
"narHash": "sha256-ZFav8A9zPNfjZg/wrxh1uZeMJHELRfRgFP+meq01XYk=",
|
"narHash": "sha256-tXlrgAQygNIy49LDVFuPXlWD2zTQV9/F8pfoqwwPJyo=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "5c2ec3a5c2ee9909904f860dadc19bc12cd9cc44",
|
"rev": "4a1e673523344f6ccc84b37f4413ad74ea19a119",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -468,11 +445,11 @@
|
||||||
},
|
},
|
||||||
"nur": {
|
"nur": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718400242,
|
"lastModified": 1719894733,
|
||||||
"narHash": "sha256-gLX2eyWb8lVxwI5Uv0F5WKb+YwvlDYnI+sSQB2xMqhw=",
|
"narHash": "sha256-T/zofRVToXkbvjBX+wnEOLCpaX3BbvMh9ZN6cKFydaA=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "NUR",
|
"repo": "NUR",
|
||||||
"rev": "d50ea2706590f0edce9f49d8990dbcf82cdb66ec",
|
"rev": "b978045baa040e6953fbe0a18c111749931673af",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -481,32 +458,6 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nvfetcher": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-compat": [
|
|
||||||
"flake-compat"
|
|
||||||
],
|
|
||||||
"flake-utils": [
|
|
||||||
"flake-utils"
|
|
||||||
],
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1718252448,
|
|
||||||
"narHash": "sha256-xZZBdKqe1ByITzvx65pVgGQ5jeb73MybjgrcfI84lEo=",
|
|
||||||
"owner": "berberman",
|
|
||||||
"repo": "nvfetcher",
|
|
||||||
"rev": "fa7609950023462c6f91c425de7610c0bb6b86ba",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "berberman",
|
|
||||||
"repo": "nvfetcher",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"pre-commit-hooks-nix": {
|
"pre-commit-hooks-nix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": [
|
"flake-compat": [
|
||||||
|
@ -523,11 +474,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1717664902,
|
"lastModified": 1719259945,
|
||||||
"narHash": "sha256-7XfBuLULizXjXfBYy/VV+SpYMHreNRHk9nKMsm1bgb4=",
|
"narHash": "sha256-F1h+XIsGKT9TkGO3omxDLEb/9jOOsI6NnzsXFsZhry4=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "pre-commit-hooks.nix",
|
"repo": "pre-commit-hooks.nix",
|
||||||
"rev": "cc4d466cb1254af050ff7bdf47f6d404a7c646d1",
|
"rev": "0ff4381bbb8f7a52ca4a851660fc7a437a4c6e07",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -539,7 +490,6 @@
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"aagl": "aagl",
|
"aagl": "aagl",
|
||||||
"berberman": "berberman",
|
|
||||||
"crane": "crane",
|
"crane": "crane",
|
||||||
"disko": "disko",
|
"disko": "disko",
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat",
|
||||||
|
@ -561,7 +511,6 @@
|
||||||
"nmd": "nmd",
|
"nmd": "nmd",
|
||||||
"nmt": "nmt",
|
"nmt": "nmt",
|
||||||
"nur": "nur",
|
"nur": "nur",
|
||||||
"nvfetcher": "nvfetcher",
|
|
||||||
"pre-commit-hooks-nix": "pre-commit-hooks-nix",
|
"pre-commit-hooks-nix": "pre-commit-hooks-nix",
|
||||||
"rust-overlay": "rust-overlay",
|
"rust-overlay": "rust-overlay",
|
||||||
"scss-reset": "scss-reset",
|
"scss-reset": "scss-reset",
|
||||||
|
@ -573,19 +522,16 @@
|
||||||
},
|
},
|
||||||
"rust-overlay": {
|
"rust-overlay": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": [
|
|
||||||
"flake-utils"
|
|
||||||
],
|
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718331519,
|
"lastModified": 1719886738,
|
||||||
"narHash": "sha256-6Ru37wS8uec626nHVIh6hSpCYB7eNc3RPFa2U//bhw4=",
|
"narHash": "sha256-6eaaoJUkr4g9J/rMC4jhj3Gv8Sa62rvlpjFe3xZaSjM=",
|
||||||
"owner": "oxalica",
|
"owner": "oxalica",
|
||||||
"repo": "rust-overlay",
|
"repo": "rust-overlay",
|
||||||
"rev": "419e7fae2731f41dd9b3e34dfe8802be68558b92",
|
"rev": "db12d0c6ef002f16998723b5dd619fa7b8997086",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -620,11 +566,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718137936,
|
"lastModified": 1719873517,
|
||||||
"narHash": "sha256-psA+1Q5fPaK6yI3vzlLINNtb6EeXj111zQWnZYyJS9c=",
|
"narHash": "sha256-D1dxZmXf6M2h5lNE1m6orojuUawVPjogbGRsqSBX+1g=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "sops-nix",
|
"repo": "sops-nix",
|
||||||
"rev": "c279dec105dd53df13a5e57525da97905cc0f0d6",
|
"rev": "a11224af8d824935f363928074b4717ca2e280db",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -640,11 +586,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718239576,
|
"lastModified": 1719835186,
|
||||||
"narHash": "sha256-Afdz9oCQf8VCGXUhI8KxdJg9gc+fepZK//mYsijfhFw=",
|
"narHash": "sha256-o0FB8SQVLOnbsYTk2Bt6gXwsfqEv4ZHsGP50/kM/gR0=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "srvos",
|
"repo": "srvos",
|
||||||
"rev": "d6280e5c12c4ddb26f0807387777786c66e4c552",
|
"rev": "14b3b0aa48fa291f1be26ab8948d5b9eadaed0b8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -675,11 +621,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718271476,
|
"lastModified": 1719887753,
|
||||||
"narHash": "sha256-35hUMmFesmchb+u7heKHLG5B6c8fBOcSYo0jj0CHLes=",
|
"narHash": "sha256-p0B2r98UtZzRDM5miGRafL4h7TwGRC4DII+XXHDHqek=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "treefmt-nix",
|
"repo": "treefmt-nix",
|
||||||
"rev": "e75ba0a6bb562d2ce275db28f6a36a2e4fd81391",
|
"rev": "bdb6355009562d8f9313d9460c0d3860f525bc6c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
22
flake.nix
22
flake.nix
|
@ -15,11 +15,6 @@
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
inputs.flake-compat.follows = "flake-compat";
|
inputs.flake-compat.follows = "flake-compat";
|
||||||
};
|
};
|
||||||
berberman = {
|
|
||||||
url = "github:berberman/flakes";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
inputs.nvfetcher.follows = "nvfetcher";
|
|
||||||
};
|
|
||||||
disko = {
|
disko = {
|
||||||
url = "github:nix-community/disko";
|
url = "github:nix-community/disko";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
@ -125,12 +120,6 @@
|
||||||
url = "sourcehut:~rycee/nmt";
|
url = "sourcehut:~rycee/nmt";
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
nvfetcher = {
|
|
||||||
url = "github:berberman/nvfetcher";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
inputs.flake-compat.follows = "flake-compat";
|
|
||||||
inputs.flake-utils.follows = "flake-utils";
|
|
||||||
};
|
|
||||||
pre-commit-hooks-nix = {
|
pre-commit-hooks-nix = {
|
||||||
url = "github:cachix/pre-commit-hooks.nix";
|
url = "github:cachix/pre-commit-hooks.nix";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
@ -141,7 +130,6 @@
|
||||||
rust-overlay = {
|
rust-overlay = {
|
||||||
url = "github:oxalica/rust-overlay";
|
url = "github:oxalica/rust-overlay";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
inputs.flake-utils.follows = "flake-utils";
|
|
||||||
};
|
};
|
||||||
scss-reset = {
|
scss-reset = {
|
||||||
url = "github:andreymatin/scss-reset";
|
url = "github:andreymatin/scss-reset";
|
||||||
|
@ -162,6 +150,16 @@
|
||||||
|
|
||||||
### nix {run,shell,build}
|
### nix {run,shell,build}
|
||||||
packages = import ./pkgs pkgs;
|
packages = import ./pkgs pkgs;
|
||||||
|
|
||||||
|
### nix develop
|
||||||
|
devShells.default = pkgs.mkShell {
|
||||||
|
packages = with pkgs; [
|
||||||
|
alejandra
|
||||||
|
colmena
|
||||||
|
git
|
||||||
|
sops
|
||||||
|
];
|
||||||
|
};
|
||||||
})
|
})
|
||||||
// (let
|
// (let
|
||||||
mkNixOS = system: modules:
|
mkNixOS = system: modules:
|
||||||
|
|
|
@ -1,23 +0,0 @@
|
||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
programs.alacritty = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
import = [
|
|
||||||
"${pkgs.vimPlugins.tokyonight-nvim}/extras/alacritty/tokyonight_night.toml"
|
|
||||||
];
|
|
||||||
|
|
||||||
cursor.style = "beam";
|
|
||||||
font.size = 10;
|
|
||||||
|
|
||||||
# workaround for scaling in X11
|
|
||||||
env.WINIT_X11_SCALE_FACTOR = "1";
|
|
||||||
|
|
||||||
# for zellij on macOS
|
|
||||||
window.option_as_alt = lib.mkIf pkgs.stdenv.hostPlatform.isDarwin "Both";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,7 +1,6 @@
|
||||||
{
|
{
|
||||||
programs.bat.enable = true;
|
programs.bat.enable = true;
|
||||||
home.sessionVariables = {
|
home.sessionVariables = {
|
||||||
"PAGER" = "bat";
|
|
||||||
"MANPAGER" = "sh -c 'col -bx | bat -l man -p'";
|
"MANPAGER" = "sh -c 'col -bx | bat -l man -p'";
|
||||||
"MANROFFOPT" = "-c";
|
"MANROFFOPT" = "-c";
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
{pkgs, ...}: {
|
|
||||||
home.sessionVariables = {
|
|
||||||
NIXOS_OZONE_WL = "1"; # let electron applications use wayland
|
|
||||||
};
|
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
wl-clipboard
|
|
||||||
];
|
|
||||||
}
|
|
|
@ -1,8 +0,0 @@
|
||||||
{pkgs, ...}: {
|
|
||||||
home.packages = with pkgs; [pwvucontrol];
|
|
||||||
|
|
||||||
# remove csd window buttons
|
|
||||||
# https://github.com/localsend/localsend/blob/2457acd8a7412723b174672d174e4853dccd7d99/app/linux/my_application.cc#L45
|
|
||||||
home.sessionVariables.GTK_CSD = 0;
|
|
||||||
dconf.settings."org/gnome/desktop/wm/preferences"."button-layout" = "icon,appmenu:";
|
|
||||||
}
|
|
|
@ -1,23 +1,15 @@
|
||||||
{
|
{pkgs, ...}: {
|
||||||
pkgs,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
i18n.inputMethod = {
|
i18n.inputMethod = {
|
||||||
enabled = "fcitx5";
|
enabled = "fcitx5";
|
||||||
fcitx5.addons =
|
fcitx5.addons = with pkgs; [
|
||||||
(with pkgs; [
|
qt6Packages.fcitx5-chinese-addons
|
||||||
libsForQt5.fcitx5-chinese-addons
|
fcitx5-pinyin-minecraft
|
||||||
fcitx5-tokyonight
|
|
||||||
])
|
|
||||||
++ (with inputs.berberman.packages.${pkgs.stdenv.hostPlatform.system}; [
|
|
||||||
fcitx5-pinyin-moegirl
|
fcitx5-pinyin-moegirl
|
||||||
fcitx5-pinyin-zhwiki
|
fcitx5-pinyin-zhwiki
|
||||||
]);
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
xdg.configFile."fcitx5/conf/classicui.conf".text = ''
|
xdg.configFile."fcitx5/conf/classicui.conf".text = ''
|
||||||
Theme=Tokyonight-Storm
|
|
||||||
Vertical Candidate List=True
|
Vertical Candidate List=True
|
||||||
PreferTextIcon=True
|
PreferTextIcon=True
|
||||||
'';
|
'';
|
||||||
|
|
|
@ -1,19 +1,16 @@
|
||||||
{pkgs, ...}: {
|
{pkgs, ...}: {
|
||||||
programs.firefox = {
|
programs.firefox = {
|
||||||
enable = true;
|
enable = true;
|
||||||
profiles."default" = {
|
package = pkgs.firefox.override {
|
||||||
extraConfig = ''
|
extraPrefsFiles = [
|
||||||
${builtins.readFile (pkgs.fetchurl {
|
"${pkgs.arkenfox-userjs}/user.cfg"
|
||||||
# FIXME: IFD
|
(pkgs.runCommandLocal "userjs" {} ''
|
||||||
url = "https://raw.githubusercontent.com/arkenfox/user.js/126.1/user.js";
|
install -Dm644 ${./user-overrides.js} $out
|
||||||
hash = "sha256-XRtG0iLKh8uqbeX7Rc2H6VJwZYJoNZPBlAfZEfrSCP4=";
|
substituteInPlace $out \
|
||||||
})}
|
--replace-fail "user_pref" "defaultPref"
|
||||||
${builtins.readFile ./user-overrides.js}
|
'')
|
||||||
'';
|
];
|
||||||
};
|
};
|
||||||
};
|
profiles."default" = {};
|
||||||
|
|
||||||
home.sessionVariables = {
|
|
||||||
MOZ_USE_XINPUT2 = "1";
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
enable = true;
|
enable = true;
|
||||||
interactiveShellInit = ''
|
interactiveShellInit = ''
|
||||||
set fish_greeting
|
set fish_greeting
|
||||||
source ${pkgs.vimPlugins.tokyonight-nvim}/extras/fish/tokyonight_night.fish
|
|
||||||
'';
|
'';
|
||||||
plugins = [
|
plugins = [
|
||||||
{
|
{
|
||||||
|
|
9
home/applications/foot/default.nix
Normal file
9
home/applications/foot/default.nix
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
programs.foot = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
main.font = "monospace:size=10";
|
||||||
|
cursor.style = "beam";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -8,7 +8,10 @@
|
||||||
signing.signByDefault = true;
|
signing.signByDefault = true;
|
||||||
signing.key = "91F97D9ED12639CF";
|
signing.key = "91F97D9ED12639CF";
|
||||||
|
|
||||||
extraConfig.pull.rebase = true;
|
extraConfig = {
|
||||||
|
pull.rebase = true;
|
||||||
|
push.autoSetupRemote = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.gh.enable = true;
|
programs.gh.enable = true;
|
||||||
|
|
|
@ -17,9 +17,6 @@
|
||||||
slang = "eng,en";
|
slang = "eng,en";
|
||||||
};
|
};
|
||||||
|
|
||||||
# FIXME: https://github.com/nix-community/home-manager/pull/5524
|
|
||||||
package = pkgs.mpv-unwrapped.wrapper {
|
|
||||||
mpv = pkgs.mpv-unwrapped;
|
|
||||||
scripts =
|
scripts =
|
||||||
(with pkgs.mpvScripts; [
|
(with pkgs.mpvScripts; [
|
||||||
thumbfast
|
thumbfast
|
||||||
|
@ -30,5 +27,4 @@
|
||||||
mpris
|
mpris
|
||||||
]);
|
]);
|
||||||
};
|
};
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,11 +10,13 @@
|
||||||
nixfmt-rfc-style
|
nixfmt-rfc-style
|
||||||
nix-update
|
nix-update
|
||||||
nix-init
|
nix-init
|
||||||
|
nixpkgs-review
|
||||||
|
|
||||||
# misc
|
# misc
|
||||||
nh
|
nh
|
||||||
nix-output-monitor
|
nix-output-monitor
|
||||||
nix-index
|
nix-index
|
||||||
|
nix-tree
|
||||||
comma
|
comma
|
||||||
sops
|
sops
|
||||||
colmena
|
colmena
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.rofi-wayland;
|
package = pkgs.rofi-wayland;
|
||||||
font = "monospace";
|
font = "monospace";
|
||||||
terminal = lib.getExe pkgs.alacritty;
|
terminal = lib.getExe pkgs.foot;
|
||||||
};
|
};
|
||||||
|
|
||||||
home.packages = with pkgs; [rofi-power-menu];
|
home.packages = with pkgs; [rofi-power-menu];
|
||||||
|
|
|
@ -1,11 +1,9 @@
|
||||||
{
|
{pkgs, ...}: {
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
programs.starship = {
|
programs.starship = {
|
||||||
enable = true;
|
enable = true;
|
||||||
# FIXME: IFD
|
};
|
||||||
settings = lib.importTOML "${pkgs.starship}/share/starship/presets/nerd-font-symbols.toml";
|
|
||||||
|
home.sessionVariables = {
|
||||||
|
"STARSHIP_CONFIG" = "${pkgs.starship}/share/starship/presets/nerd-font-symbols.toml";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -109,7 +109,7 @@
|
||||||
|
|
||||||
### Execute other stuff
|
### Execute other stuff
|
||||||
# Launch applications
|
# Launch applications
|
||||||
"${modifier}+Return" = "exec alacritty";
|
"${modifier}+Return" = "exec ${lib.getExe pkgs.foot}";
|
||||||
"${modifier}+w" = "exec ${pkgs.xdg-utils}/bin/xdg-open http:";
|
"${modifier}+w" = "exec ${pkgs.xdg-utils}/bin/xdg-open http:";
|
||||||
"${modifier}+e" = "exec ${pkgs.xdg-utils}/bin/xdg-open ~";
|
"${modifier}+e" = "exec ${pkgs.xdg-utils}/bin/xdg-open ~";
|
||||||
|
|
||||||
|
|
|
@ -1,13 +1,12 @@
|
||||||
{pkgs, ...}: {
|
{
|
||||||
programs.thunderbird = {
|
programs.thunderbird = {
|
||||||
enable = true;
|
enable = true;
|
||||||
profiles.default = {
|
profiles.default = {
|
||||||
isDefault = true;
|
isDefault = true;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${builtins.readFile (pkgs.fetchurl {
|
${builtins.readFile (builtins.fetchurl {
|
||||||
# FIXME: IFD
|
|
||||||
url = "https://raw.githubusercontent.com/HorlogeSkynet/thunderbird-user.js/d6b18302e46349d9924c8a76951bae6efca51501/user.js";
|
url = "https://raw.githubusercontent.com/HorlogeSkynet/thunderbird-user.js/d6b18302e46349d9924c8a76951bae6efca51501/user.js";
|
||||||
hash = "sha256-66B1yLQkQnydAUXD7KGt32OhWSYcdWX+BUozrgW9uAg=";
|
sha256 = "sha256-66B1yLQkQnydAUXD7KGt32OhWSYcdWX+BUozrgW9uAg=";
|
||||||
})}
|
})}
|
||||||
${builtins.readFile ./user-overrides.js}
|
${builtins.readFile ./user-overrides.js}
|
||||||
'';
|
'';
|
||||||
|
|
18
home/applications/tmux/default.nix
Normal file
18
home/applications/tmux/default.nix
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
{
|
||||||
|
# nickcao's config
|
||||||
|
programs.tmux = {
|
||||||
|
enable = true;
|
||||||
|
baseIndex = 1;
|
||||||
|
escapeTime = 10;
|
||||||
|
keyMode = "vi";
|
||||||
|
terminal = "screen-256color";
|
||||||
|
extraConfig = ''
|
||||||
|
# set -g status-position top
|
||||||
|
set -g set-clipboard on
|
||||||
|
set -g mouse on
|
||||||
|
# set -g status-right ""
|
||||||
|
# set -g renumber-windows on
|
||||||
|
# new-session -s main
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,38 +0,0 @@
|
||||||
{lib, ...}: {
|
|
||||||
programs.zellij = {
|
|
||||||
enable = true;
|
|
||||||
enableFishIntegration = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Unsure about the syntax for defining keybindings in Nix (refer to line 16)
|
|
||||||
xdg.configFile."zellij/config.kdl".text = lib.mkForce ''
|
|
||||||
// TODO: Text selection is not displayed due to the use of the same color as
|
|
||||||
// my terminal background.
|
|
||||||
theme "tokyo-night-dark"
|
|
||||||
simplified_ui true
|
|
||||||
pane_frames false
|
|
||||||
default_layout "compact"
|
|
||||||
|
|
||||||
on_force_close "quit"
|
|
||||||
mirror_session false
|
|
||||||
|
|
||||||
// WORKAROUND: This feature slows down startup speed, and I don't need it anyway.
|
|
||||||
// See: https://github.com/zellij-org/zellij/issues/1757#issuecomment-1962981641
|
|
||||||
session_serialization false
|
|
||||||
|
|
||||||
keybinds {
|
|
||||||
normal {
|
|
||||||
bind "Alt 1" { GoToTab 1; }
|
|
||||||
bind "Alt 2" { GoToTab 2; }
|
|
||||||
bind "Alt 3" { GoToTab 3; }
|
|
||||||
bind "Alt 4" { GoToTab 4; }
|
|
||||||
bind "Alt 5" { GoToTab 5; }
|
|
||||||
bind "Alt 6" { GoToTab 6; }
|
|
||||||
bind "Alt 7" { GoToTab 7; }
|
|
||||||
bind "Alt 8" { GoToTab 8; }
|
|
||||||
bind "Alt 9" { GoToTab 9; }
|
|
||||||
bind "Alt 0" { GoToTab 10; }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
}
|
|
|
@ -38,16 +38,17 @@
|
||||||
./applications/bash
|
./applications/bash
|
||||||
./applications/bat
|
./applications/bat
|
||||||
./applications/eza
|
./applications/eza
|
||||||
./applications/neovim
|
|
||||||
./applications/fish
|
./applications/fish
|
||||||
./applications/git
|
./applications/git
|
||||||
./applications/gpg
|
./applications/gpg
|
||||||
|
./applications/neovim
|
||||||
./applications/skim
|
./applications/skim
|
||||||
./applications/starship
|
./applications/starship
|
||||||
./applications/tealdeer
|
./applications/tealdeer
|
||||||
./applications/zellij
|
./applications/tmux
|
||||||
];
|
];
|
||||||
|
|
||||||
|
programs.jq.enable = true;
|
||||||
programs.ripgrep.enable = true;
|
programs.ripgrep.enable = true;
|
||||||
programs.zoxide.enable = true;
|
programs.zoxide.enable = true;
|
||||||
home.packages =
|
home.packages =
|
||||||
|
|
|
@ -24,6 +24,8 @@
|
||||||
"steam"
|
"steam"
|
||||||
"steam-original"
|
"steam-original"
|
||||||
"xow_dongle-firmware"
|
"xow_dongle-firmware"
|
||||||
|
"fcitx5-pinyin-minecraft"
|
||||||
|
"fcitx5-pinyin-moegirl"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -54,6 +54,5 @@
|
||||||
programs.adb.enable = true;
|
programs.adb.enable = true;
|
||||||
|
|
||||||
# fucking hell
|
# fucking hell
|
||||||
# FIXME: IFD
|
|
||||||
programs.anime-game-launcher.enable = true;
|
programs.anime-game-launcher.enable = true;
|
||||||
}
|
}
|
||||||
|
|
64
hosts/blacksteel/Caddyfile
Normal file
64
hosts/blacksteel/Caddyfile
Normal file
|
@ -0,0 +1,64 @@
|
||||||
|
(default) {
|
||||||
|
encode zstd gzip
|
||||||
|
|
||||||
|
header {
|
||||||
|
# https://observatory.mozilla.org/analyze/ny4.dev
|
||||||
|
# https://infosec.mozilla.org/guidelines/web_security
|
||||||
|
# https://caddyserver.com/docs/caddyfile/directives/header#examples
|
||||||
|
|
||||||
|
?Content-Security-Policy "default-src https: blob: 'unsafe-eval' 'unsafe-inline'; object-src 'none'"
|
||||||
|
?Permissions-Policy interest-Hpcohort=()
|
||||||
|
?Strict-Transport-Security max-age=31536000;
|
||||||
|
?X-Content-Type-Options nosniff
|
||||||
|
?X-Frame-Options DENY
|
||||||
|
}
|
||||||
|
|
||||||
|
handle_path /robots.txt {
|
||||||
|
file_server * {
|
||||||
|
root /var/www/robots/robots.txt
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
http://mastodon.ny4.dev:80 {
|
||||||
|
import default
|
||||||
|
handle_path /system/* {
|
||||||
|
file_server * {
|
||||||
|
root /var/lib/mastodon/public-system
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
handle /api/v1/streaming/* {
|
||||||
|
reverse_proxy unix//run/mastodon-streaming/streaming-1.socket {
|
||||||
|
header_up X-Forwarded-Proto "https"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
route * {
|
||||||
|
file_server * {
|
||||||
|
root @mastodon@/public
|
||||||
|
pass_thru
|
||||||
|
}
|
||||||
|
reverse_proxy * unix//run/mastodon-web/web.socket {
|
||||||
|
header_up X-Forwarded-Proto "https"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
handle_errors {
|
||||||
|
root * @mastodon@/public
|
||||||
|
rewrite 500.html
|
||||||
|
file_server
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
http://matrix.ny4.dev:80 {
|
||||||
|
import default
|
||||||
|
reverse_proxy /_matrix/* unix//run/matrix-synapse/synapse.sock
|
||||||
|
reverse_proxy /_synapse/client/* unix//run/matrix-synapse/synapse.sock
|
||||||
|
reverse_proxy /health unix//run/matrix-synapse/synapse.sock
|
||||||
|
}
|
||||||
|
|
||||||
|
http://syncv3.ny4.dev:80 {
|
||||||
|
import default
|
||||||
|
reverse_proxy unix//run/matrix-sliding-sync/sync.sock
|
||||||
|
}
|
|
@ -21,3 +21,4 @@ Homelab, hosting random stuff through tailscale and rathole.
|
||||||
- [ ] tpm luks unlocking
|
- [ ] tpm luks unlocking
|
||||||
- [ ] nouveau -> nvidia
|
- [ ] nouveau -> nvidia
|
||||||
- [x] networkmanager -> iwd
|
- [x] networkmanager -> iwd
|
||||||
|
- [ ] jellyfin hardware acceleration
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
lib,
|
lib,
|
||||||
config,
|
config,
|
||||||
inputs,
|
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
|
@ -43,6 +42,10 @@
|
||||||
"mastodon/environment" = {
|
"mastodon/environment" = {
|
||||||
restartUnits = ["mastodon-web.service"];
|
restartUnits = ["mastodon-web.service"];
|
||||||
};
|
};
|
||||||
|
"cloudflared/secret" = {
|
||||||
|
restartUnits = ["cloudflared-tunnel-6222a3e0-98da-4325-be19-0f86a7318a41.service"];
|
||||||
|
owner = config.systemd.services."cloudflared-tunnel-6222a3e0-98da-4325-be19-0f86a7318a41".serviceConfig.User;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -54,67 +57,41 @@
|
||||||
openFirewall = true;
|
openFirewall = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
services.frp = {
|
services.cloudflared = {
|
||||||
enable = true;
|
enable = true;
|
||||||
role = "client";
|
tunnels = {
|
||||||
settings = {
|
"6222a3e0-98da-4325-be19-0f86a7318a41" = {
|
||||||
serverAddr = "18.177.132.61"; # TODO: can I use a domain name?
|
credentialsFile = config.sops.secrets."cloudflared/secret".path;
|
||||||
serverPort = 7000;
|
default = "http_status:404";
|
||||||
auth.method = "token";
|
ingress = {
|
||||||
auth.token = "p4$m93060THuwtYaF0Jnr(RvYGZkI*Lqvh!kGXNesZCm4JQubMQlFDzr#F7rAycE"; # FIXME: secret!
|
# TODO: is this safe?
|
||||||
proxies = [
|
# browser <-> cloudflare cdn <-> cloudflared <-> caddy <-> mastodon
|
||||||
{
|
# ^ no tls in this part?
|
||||||
name = "synapse";
|
"mastodon.ny4.dev" = "http://localhost:80";
|
||||||
type = "tcp";
|
"matrix.ny4.dev" = "http://localhost:80";
|
||||||
localIP = "127.0.0.1";
|
"syncv3.ny4.dev" = "http://localhost:80";
|
||||||
localPort = 8100;
|
|
||||||
remotePort = 8600;
|
|
||||||
}
|
|
||||||
{
|
|
||||||
name = "syncv3";
|
|
||||||
type = "tcp";
|
|
||||||
localIP = "127.0.0.1";
|
|
||||||
remotePort = 8700;
|
|
||||||
plugin = {
|
|
||||||
type = "unix_domain_socket";
|
|
||||||
unixPath = "/run/matrix-sliding-sync/sync.sock";
|
|
||||||
};
|
};
|
||||||
}
|
|
||||||
{
|
|
||||||
name = "mastodon-web";
|
|
||||||
type = "tcp";
|
|
||||||
localIP = "127.0.0.1";
|
|
||||||
remotePort = 8900;
|
|
||||||
plugin = {
|
|
||||||
type = "unix_domain_socket";
|
|
||||||
unixPath = "/run/mastodon-web/web.socket";
|
|
||||||
};
|
};
|
||||||
}
|
|
||||||
{
|
|
||||||
name = "mastodon-streaming";
|
|
||||||
type = "tcp";
|
|
||||||
localIP = "127.0.0.1";
|
|
||||||
remotePort = 9000;
|
|
||||||
plugin = {
|
|
||||||
type = "unix_domain_socket";
|
|
||||||
unixPath = "/run/mastodon-streaming/streaming-1.socket";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
name = "mastodon-system";
|
|
||||||
type = "tcp";
|
|
||||||
localIP = "127.0.0.1";
|
|
||||||
remotePort = 9100;
|
|
||||||
plugin = {
|
|
||||||
type = "static_file";
|
|
||||||
localPath = "/var/lib/mastodon/public-system";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.services.frp.serviceConfig.SupplementaryGroups = ["mastodon"];
|
services.caddy = {
|
||||||
|
enable = true;
|
||||||
|
configFile = pkgs.substituteAll {
|
||||||
|
src = ./Caddyfile;
|
||||||
|
inherit (pkgs) mastodon;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.caddy.serviceConfig = {
|
||||||
|
SupplementaryGroups = ["mastodon" "matrix-synapse"];
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.tmpfiles.settings = {
|
||||||
|
"10-www" = {
|
||||||
|
"/var/www/robots/robots.txt".C.argument = toString ../lightsail-tokyo/robots.txt;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
services.postgresql = {
|
services.postgresql = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -168,12 +145,7 @@
|
||||||
eula = true;
|
eula = true;
|
||||||
openFirewall = true;
|
openFirewall = true;
|
||||||
|
|
||||||
package = pkgs.callPackage "${inputs.nixpkgs}/pkgs/games/minecraft-servers/derivation.nix" {
|
package = pkgs.minecraftServers.vanilla-1-21;
|
||||||
version = "1.21";
|
|
||||||
sha1 = "450698d1863ab5180c25d7c804ef0fe6369dd1ba";
|
|
||||||
url = "https://piston-data.mojang.com/v1/objects/450698d1863ab5180c25d7c804ef0fe6369dd1ba/server.jar";
|
|
||||||
jre_headless = pkgs.javaPackages.compiler.openjdk21.headless;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Aikar's flag
|
# Aikar's flag
|
||||||
# https://aikar.co/2018/07/02/tuning-the-jvm-g1gc-garbage-collector-flags-for-minecraft/
|
# https://aikar.co/2018/07/02/tuning-the-jvm-g1gc-garbage-collector-flags-for-minecraft/
|
||||||
|
@ -221,10 +193,16 @@
|
||||||
services.samba = {
|
services.samba = {
|
||||||
enable = true;
|
enable = true;
|
||||||
openFirewall = true;
|
openFirewall = true;
|
||||||
shares."share" = {
|
shares = {
|
||||||
|
"share" = {
|
||||||
path = "/srv/samba/share";
|
path = "/srv/samba/share";
|
||||||
"read only" = "no";
|
"read only" = "no";
|
||||||
};
|
};
|
||||||
|
"external" = {
|
||||||
|
path = "/mnt";
|
||||||
|
"read only" = "no";
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
services.samba-wsdd = {
|
services.samba-wsdd = {
|
||||||
|
@ -239,6 +217,7 @@
|
||||||
services.matrix-synapse = {
|
services.matrix-synapse = {
|
||||||
enable = true;
|
enable = true;
|
||||||
withJemalloc = true;
|
withJemalloc = true;
|
||||||
|
enableRegistrationScript = false;
|
||||||
extraConfigFiles = [config.sops.secrets."synapse/secret".path];
|
extraConfigFiles = [config.sops.secrets."synapse/secret".path];
|
||||||
settings = {
|
settings = {
|
||||||
server_name = "ny4.dev";
|
server_name = "ny4.dev";
|
||||||
|
@ -246,11 +225,8 @@
|
||||||
presence.enabled = false; # tradeoff
|
presence.enabled = false; # tradeoff
|
||||||
listeners = [
|
listeners = [
|
||||||
{
|
{
|
||||||
port = 8100;
|
path = "/run/matrix-synapse/synapse.sock";
|
||||||
bind_addresses = ["127.0.0.1"];
|
|
||||||
type = "http";
|
type = "http";
|
||||||
tls = false;
|
|
||||||
x_forwarded = true;
|
|
||||||
resources = [
|
resources = [
|
||||||
{
|
{
|
||||||
names = ["client" "federation"];
|
names = ["client" "federation"];
|
||||||
|
@ -265,7 +241,7 @@
|
||||||
{
|
{
|
||||||
idp_id = "keycloak";
|
idp_id = "keycloak";
|
||||||
idp_name = "id.ny4.dev";
|
idp_name = "id.ny4.dev";
|
||||||
issuer = "https://id.ny4.dev/realms/master";
|
issuer = "https://id.ny4.dev/realms/ny4";
|
||||||
client_id = "synapse";
|
client_id = "synapse";
|
||||||
client_secret_path = config.sops.secrets."synapse/oidc".path;
|
client_secret_path = config.sops.secrets."synapse/oidc".path;
|
||||||
scopes = ["openid" "profile"];
|
scopes = ["openid" "profile"];
|
||||||
|
@ -280,18 +256,24 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.services.matrix-synapse.environment = config.networking.proxy.envVars;
|
systemd.services.matrix-synapse = {
|
||||||
|
environment = config.networking.proxy.envVars;
|
||||||
|
serviceConfig.RuntimeDirectory = ["matrix-synapse"];
|
||||||
|
};
|
||||||
|
|
||||||
services.matrix-sliding-sync = {
|
services.matrix-sliding-sync = {
|
||||||
enable = true;
|
enable = true;
|
||||||
environmentFile = config.sops.secrets."syncv3/environment".path;
|
environmentFile = config.sops.secrets."syncv3/environment".path;
|
||||||
settings = {
|
settings = {
|
||||||
SYNCV3_SERVER = "http://127.0.0.1:8100";
|
SYNCV3_SERVER = "/run/matrix-synapse/synapse.sock";
|
||||||
SYNCV3_BINDADDR = "/run/matrix-sliding-sync/sync.sock";
|
SYNCV3_BINDADDR = "/run/matrix-sliding-sync/sync.sock";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.services.matrix-sliding-sync.serviceConfig.RuntimeDirectory = ["matrix-sliding-sync"];
|
systemd.services.matrix-sliding-sync.serviceConfig = {
|
||||||
|
RuntimeDirectory = ["matrix-sliding-sync"];
|
||||||
|
SupplementaryGroups = ["matrix-synapse"];
|
||||||
|
};
|
||||||
|
|
||||||
services.mastodon = {
|
services.mastodon = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -314,7 +296,7 @@
|
||||||
# OIDC_CLIENT_SECRET # EnvironmentFile
|
# OIDC_CLIENT_SECRET # EnvironmentFile
|
||||||
OIDC_DISCOVERY = "true";
|
OIDC_DISCOVERY = "true";
|
||||||
OIDC_DISPLAY_NAME = "id.ny4.dev";
|
OIDC_DISPLAY_NAME = "id.ny4.dev";
|
||||||
OIDC_ISSUER = "https://id.ny4.dev/realms/master";
|
OIDC_ISSUER = "https://id.ny4.dev/realms/ny4";
|
||||||
OIDC_REDIRECT_URI = "https://${WEB_DOMAIN}/auth/auth/openid_connect/callback";
|
OIDC_REDIRECT_URI = "https://${WEB_DOMAIN}/auth/auth/openid_connect/callback";
|
||||||
OIDC_SCOPE = "openid,profile,email";
|
OIDC_SCOPE = "openid,profile,email";
|
||||||
OIDC_SECURITY_ASSUME_EMAIL_IS_VERIFIED = "true";
|
OIDC_SECURITY_ASSUME_EMAIL_IS_VERIFIED = "true";
|
||||||
|
|
|
@ -1,10 +1,12 @@
|
||||||
synapse:
|
synapse:
|
||||||
secret: ENC[AES256_GCM,data:H7bHbreE4NmpqXHpkPQ5AkwGOAs97YcQhQZIr5zgK1mgHMTGSbMP57elWMyMAQ3+wCy7x9Jx0H2omrdQh39iG32XoVyyMMoVMQ0OCgFa4O77DHdgG+wrWl7VLWNY,iv:cFbMEqJQG482ShZlpoxRhk7z/y5216WucXfJbkMxuxU=,tag:7iUyMlu2yStLLdkC/V9/DQ==,type:str]
|
secret: ENC[AES256_GCM,data:H7bHbreE4NmpqXHpkPQ5AkwGOAs97YcQhQZIr5zgK1mgHMTGSbMP57elWMyMAQ3+wCy7x9Jx0H2omrdQh39iG32XoVyyMMoVMQ0OCgFa4O77DHdgG+wrWl7VLWNY,iv:cFbMEqJQG482ShZlpoxRhk7z/y5216WucXfJbkMxuxU=,tag:7iUyMlu2yStLLdkC/V9/DQ==,type:str]
|
||||||
oidc: ENC[AES256_GCM,data:vGQcPcUfbv6II6buEMKELc1+xZ5XccpEeCy3vZx4fdk=,iv:ORok/FXZ9SA54zD1+OhyFnZAPhGpMpTetWYgge2QSwQ=,tag:7DxrruTbenUfI/V6hGYBaw==,type:str]
|
oidc: ENC[AES256_GCM,data:ihiMcrrYvPrNDJ13p6/FbINgh5wxv2vyOYxg0sthipM=,iv:+aESWZLI7/4HWjV7QT94py+zGLbTl+VoSsWdiGNHkjU=,tag:yxxZeDOtzFegCQGQT2HCgA==,type:str]
|
||||||
syncv3:
|
syncv3:
|
||||||
environment: ENC[AES256_GCM,data:xVBXP3+w38T700OYu6XL1R1I0NWzcKeORWk5GE2lkWS+kooplcQb/wbov40H+DB522cRzCRutMXmrvGVWO86kIH/jT5tq5iWrdxbSKjTxA==,iv:6rtSdSMYtGnZl8WMmqxaCxbDG7SXhKy0LCXJJkorTvU=,tag:3PE5R31oU3ClL7elK/ca0g==,type:str]
|
environment: ENC[AES256_GCM,data:xVBXP3+w38T700OYu6XL1R1I0NWzcKeORWk5GE2lkWS+kooplcQb/wbov40H+DB522cRzCRutMXmrvGVWO86kIH/jT5tq5iWrdxbSKjTxA==,iv:6rtSdSMYtGnZl8WMmqxaCxbDG7SXhKy0LCXJJkorTvU=,tag:3PE5R31oU3ClL7elK/ca0g==,type:str]
|
||||||
mastodon:
|
mastodon:
|
||||||
environment: ENC[AES256_GCM,data:cEGz8ZEPUmtPXyJx5oB1xOUvya7lSCW4vQKCp6F6WpgakZdrarez0cOzM8VsfNe3lFe6VQ==,iv:17k4EWB4v/79ApfKw5e8FyqJ1zKEn9xxewkrsRbya9A=,tag:dJjVjhEQGjSrxD9FO2hYEw==,type:str]
|
environment: ENC[AES256_GCM,data:9RjpYXbGo8lBsXKg71Vbp2iTJlvXEGhn8hTl37o8G1E28JWF5Io7+evfqUv+N7QfSk1zbA==,iv:ejfe7f941QB7iiREXx1T9Vej43cW/S9nr03P5lkw9Yg=,tag:odI7xsxoPGBrxd0GnCsnOg==,type:str]
|
||||||
|
cloudflared:
|
||||||
|
secret: ENC[AES256_GCM,data:QXIl0MqreqPH4LP7IQdA5qQCQdizjFixbOHjqQi/3RjYDt9zt0OejW9rIYnkIRyVj4hnkJBqd1ov/VgdSoNmy/iafIgwqwgsMH0e4R9J6n255p3JG3XBmiYry89xXvQ1SXyzWdUF6p3qgevwzjZnKYyYHT9TbLWc/BkTyyA8g1EGg0O1WfDXhq7u9kOPV4CaU1UX1MMpvZQnsV389PJEWYuK,iv:ASGw5dGOuukRREZ8vMLw5hgZmJhDZSJxDqvfWaxXKJk=,tag:75jf48BEDd4uHkb+2LV5Tg==,type:str]
|
||||||
sops:
|
sops:
|
||||||
kms: []
|
kms: []
|
||||||
gcp_kms: []
|
gcp_kms: []
|
||||||
|
@ -29,8 +31,8 @@ sops:
|
||||||
bGQ1cytGR09Dd2JoaU5CSW1DL1FVR0kK8F2DoJcnd+T+eQ9h39DtaAGCSpS4wXVJ
|
bGQ1cytGR09Dd2JoaU5CSW1DL1FVR0kK8F2DoJcnd+T+eQ9h39DtaAGCSpS4wXVJ
|
||||||
hOZBh9fDeue1PwMWufDJ6KGeR0atPbUjn2w0dquvLEdBjt3Un9rFcA==
|
hOZBh9fDeue1PwMWufDJ6KGeR0atPbUjn2w0dquvLEdBjt3Un9rFcA==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
lastmodified: "2024-05-21T10:09:01Z"
|
lastmodified: "2024-06-21T07:19:43Z"
|
||||||
mac: ENC[AES256_GCM,data:HwZxrU64AQ9icbPWi5E8wQOfVDuSXF9/S9s9BoWpX4yewarKS/k2kRagaW4pBHeL3QUDXxQuTazaLEb06LyWezuS/ij1InCZu4D4DPe7EQ/YfQTDj/r1iCEvo1X2fLuSQ8+H8p5KXy0iV7rZbFLPYY3puYJTVwVJbI3m2rSU9bw=,iv:MzoOmFFTPbfA8FxPRZ2gL4HcYbBWxFJ+LfBB2fL0CSk=,tag:kIqgrNow4u2sbMKijyAKfg==,type:str]
|
mac: ENC[AES256_GCM,data:pKWUM3uhmtrwTOlR2jZauWsGSY1d//z+cojpWLFAAKedGjotLB6cmektyAVRHhw3waiM4WR5+BNZ6ghp7qBrM0z2WanJCdSmXqdyxJEydUC9CCFXZG+7SmIZS+7+/LsqejzdYSAMf9DijN74E1EJVS5F0mHhw8QuRmDy3wU789M=,iv:IrOm1Maz8os9Q/ez+TbOxOTr1zwB1loDVHcPbN8kMvg=,tag:AAKp3OH/s2c7u8lp6vkLVg==,type:str]
|
||||||
pgp: []
|
pgp: []
|
||||||
unencrypted_suffix: _unencrypted
|
unencrypted_suffix: _unencrypted
|
||||||
version: 3.8.1
|
version: 3.8.1
|
||||||
|
|
|
@ -6,7 +6,9 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
(header) {
|
(default) {
|
||||||
|
encode zstd gzip
|
||||||
|
|
||||||
header {
|
header {
|
||||||
# https://observatory.mozilla.org/analyze/ny4.dev
|
# https://observatory.mozilla.org/analyze/ny4.dev
|
||||||
# https://infosec.mozilla.org/guidelines/web_security
|
# https://infosec.mozilla.org/guidelines/web_security
|
||||||
|
@ -18,13 +20,7 @@
|
||||||
?X-Content-Type-Options nosniff
|
?X-Content-Type-Options nosniff
|
||||||
?X-Frame-Options DENY
|
?X-Frame-Options DENY
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
(compression) {
|
|
||||||
encode zstd gzip
|
|
||||||
}
|
|
||||||
|
|
||||||
(robots) {
|
|
||||||
handle_path /robots.txt {
|
handle_path /robots.txt {
|
||||||
file_server * {
|
file_server * {
|
||||||
root /var/www/robots/robots.txt
|
root /var/www/robots/robots.txt
|
||||||
|
@ -32,13 +28,13 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
(default) {
|
www.ny4.dev {
|
||||||
import header
|
import default
|
||||||
import compression
|
redir https://ny4.dev
|
||||||
import robots
|
|
||||||
}
|
}
|
||||||
|
|
||||||
www.ny4.dev {
|
# get the certificate for hysteria
|
||||||
|
tyo0.ny4.dev {
|
||||||
import default
|
import default
|
||||||
redir https://ny4.dev
|
redir https://ny4.dev
|
||||||
}
|
}
|
||||||
|
@ -91,13 +87,6 @@ pixiv.ny4.dev {
|
||||||
reverse_proxy unix//run/pixivfe/pixiv.sock
|
reverse_proxy unix//run/pixivfe/pixiv.sock
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix.ny4.dev {
|
|
||||||
import default
|
|
||||||
reverse_proxy /_matrix/* localhost:8600
|
|
||||||
reverse_proxy /_synapse/client/* localhost:8600
|
|
||||||
reverse_proxy /health localhost:8600
|
|
||||||
}
|
|
||||||
|
|
||||||
syncv3.ny4.dev {
|
syncv3.ny4.dev {
|
||||||
import default
|
import default
|
||||||
reverse_proxy localhost:8700
|
reverse_proxy localhost:8700
|
||||||
|
@ -114,31 +103,6 @@ element.ny4.dev {
|
||||||
file_server
|
file_server
|
||||||
}
|
}
|
||||||
|
|
||||||
mastodon.ny4.dev {
|
|
||||||
import default
|
|
||||||
handle_path /system/* {
|
|
||||||
reverse_proxy localhost:9100
|
|
||||||
}
|
|
||||||
|
|
||||||
handle /api/v1/streaming/* {
|
|
||||||
reverse_proxy localhost:9000
|
|
||||||
}
|
|
||||||
|
|
||||||
route * {
|
|
||||||
file_server * {
|
|
||||||
root @mastodon@/public
|
|
||||||
pass_thru
|
|
||||||
}
|
|
||||||
reverse_proxy * localhost:8900
|
|
||||||
}
|
|
||||||
|
|
||||||
handle_errors {
|
|
||||||
root * @mastodon@/public
|
|
||||||
rewrite 500.html
|
|
||||||
file_server
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
git.ny4.dev {
|
git.ny4.dev {
|
||||||
import default
|
import default
|
||||||
reverse_proxy unix//run/forgejo/forgejo.sock
|
reverse_proxy unix//run/forgejo/forgejo.sock
|
||||||
|
|
|
@ -58,18 +58,8 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
### Services
|
### Services
|
||||||
networking.firewall.allowedUDPPorts = [
|
networking.firewall.allowedUDPPorts = [443]; # hysteria
|
||||||
# hysteria
|
networking.firewall.allowedTCPPorts = [80 443]; # caddy
|
||||||
443
|
|
||||||
];
|
|
||||||
networking.firewall.allowedTCPPorts = [
|
|
||||||
# caddy
|
|
||||||
80
|
|
||||||
443
|
|
||||||
|
|
||||||
# frp
|
|
||||||
7000
|
|
||||||
];
|
|
||||||
|
|
||||||
systemd.tmpfiles.settings = {
|
systemd.tmpfiles.settings = {
|
||||||
"10-www" = {
|
"10-www" = {
|
||||||
|
@ -86,12 +76,12 @@
|
||||||
|
|
||||||
"element" = pkgs.element-web.override {
|
"element" = pkgs.element-web.override {
|
||||||
element-web-unwrapped = pkgs.element-web-unwrapped.overrideAttrs (oldAttrs: {
|
element-web-unwrapped = pkgs.element-web-unwrapped.overrideAttrs (oldAttrs: {
|
||||||
version = "1.11.69-rc.1";
|
version = "1.11.70-rc.0";
|
||||||
src = oldAttrs.src.overrideAttrs {
|
src = oldAttrs.src.overrideAttrs {
|
||||||
outputHash = "sha256-vL21wTI9qeIhrFdbI0WsehVy0ZLBj9rayuQnTPC7k8g=";
|
outputHash = "sha256-LnPqwXczECH7XnVvGnoUQpZct2jmGEFVpJ1nTewAHC8=";
|
||||||
};
|
};
|
||||||
offlineCache = oldAttrs.offlineCache.overrideAttrs {
|
offlineCache = oldAttrs.offlineCache.overrideAttrs {
|
||||||
outputHash = "sha256-nZWclW2tEq7vPRPG5zzhYfExVnmPxYDm8DxME5w5ORI=";
|
outputHash = "sha256-yAAZXnxrBGuTWUJcL6Su0F5H2D5MNg9PUU7Uj8XT8N8=";
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -110,21 +100,11 @@
|
||||||
configFile = config.sops.templates."hysteria.yaml".path;
|
configFile = config.sops.templates."hysteria.yaml".path;
|
||||||
credentials = [
|
credentials = [
|
||||||
# FIXME: remove hardcoded path
|
# FIXME: remove hardcoded path
|
||||||
"cert:/var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/ny4.dev/ny4.dev.crt"
|
"cert:/var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/tyo0.ny4.dev/tyo0.ny4.dev.crt"
|
||||||
"key:/var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/ny4.dev/ny4.dev.key"
|
"key:/var/lib/caddy/.local/share/caddy/certificates/acme-v02.api.letsencrypt.org-directory/tyo0.ny4.dev/tyo0.ny4.dev.key"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
services.frp = {
|
|
||||||
enable = true;
|
|
||||||
role = "server";
|
|
||||||
settings = {
|
|
||||||
bindPort = 7000;
|
|
||||||
auth.method = "token";
|
|
||||||
auth.token = "p4$m93060THuwtYaF0Jnr(RvYGZkI*Lqvh!kGXNesZCm4JQubMQlFDzr#F7rAycE";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# `journalctl -u murmur.service | grep Password`
|
# `journalctl -u murmur.service | grep Password`
|
||||||
services.murmur = {
|
services.murmur = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -189,12 +169,12 @@
|
||||||
services.keycloak = {
|
services.keycloak = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
cache = "local";
|
||||||
|
hostname = "id.ny4.dev";
|
||||||
http-host = "127.0.0.1";
|
http-host = "127.0.0.1";
|
||||||
http-port = 8800;
|
http-port = 8800;
|
||||||
proxy = "edge";
|
proxy = "edge";
|
||||||
hostname-strict-backchannel = true;
|
# proxy-headers = "xforwarded"; # FIXME: Key material not provided to setup HTTPS.
|
||||||
hostname = "id.ny4.dev";
|
|
||||||
cache = "local";
|
|
||||||
};
|
};
|
||||||
database.passwordFile = toString (pkgs.writeText "password" "keycloak");
|
database.passwordFile = toString (pkgs.writeText "password" "keycloak");
|
||||||
};
|
};
|
||||||
|
@ -237,7 +217,7 @@
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
"Mumble" = {
|
"Mumble" = {
|
||||||
description = "${getDesc pkgs.mumble} (Connect with ny4.dev:64738)";
|
description = "${getDesc pkgs.mumble} (Connect with tyo0.ny4.dev:64738)";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
|
@ -28,8 +28,8 @@ sops:
|
||||||
R1ZMMG1jWnljNWl5Nk5MU3RCMlFPYjgKL1ScxzF0D1R18H+oe6dlxUGlL9myHEr3
|
R1ZMMG1jWnljNWl5Nk5MU3RCMlFPYjgKL1ScxzF0D1R18H+oe6dlxUGlL9myHEr3
|
||||||
3HBPoapKCSQ/cT7Xma4bsWD1AVJIf1Ak+MeCs9ItGwKAcnd9JYZ9KA==
|
3HBPoapKCSQ/cT7Xma4bsWD1AVJIf1Ak+MeCs9ItGwKAcnd9JYZ9KA==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
lastmodified: "2024-05-15T07:19:59Z"
|
lastmodified: "2024-06-21T07:19:35Z"
|
||||||
mac: ENC[AES256_GCM,data:kaOXFVuCPG0enPjvhJRWyHqOrVnlm1+ifFd/ore3WbB0IjDvC3UAuPHQEG/V/wZJOgqx/BmaL31GQWuHHDYgeRqjmcmCFofI4262fuf4XAaCS/vkZCRGTUgqQxmLNBpGNRMxy+Oyk2wCW92Q9HOJl7Suc8snufdext3Nn7AL+TA=,iv:8n6tNsHnwF8iGyTGo15MrpHfWkY4Fuu/Q3DfCFQgGv4=,tag:EbiACYHI14GMQhIBudzgzw==,type:str]
|
mac: ENC[AES256_GCM,data:1zG5at1zfjbnnHcZ1Vy7aJxMjaZpE9aL3QlAaxyQ7GYle05z/4PqIdampd7p1WrMWNWqkxkUFazTCpQF9faR0qbnZ2zyOWk45ZtBGZSEhvHRFke6JjwPv4fi35ozHL4JiuP76kGivegvR2OgQ7NH6HJBoZgEqduu+YISJlrvJVs=,iv:p/v8BnUmOCYsaXtUeaVq5MKLk69as3XkQsG688tYkiE=,tag:if6U/qbzrNdYaqLcQbGe6Q==,type:str]
|
||||||
pgp: []
|
pgp: []
|
||||||
unencrypted_suffix: _unencrypted
|
unencrypted_suffix: _unencrypted
|
||||||
version: 3.8.1
|
version: 3.8.1
|
||||||
|
|
|
@ -13,15 +13,11 @@
|
||||||
++ [
|
++ [
|
||||||
"https://nix-community.cachix.org"
|
"https://nix-community.cachix.org"
|
||||||
"https://cache.garnix.io"
|
"https://cache.garnix.io"
|
||||||
|
|
||||||
# Personal cachix-s
|
|
||||||
"https://berberman.cachix.org"
|
|
||||||
"https://guanran928.cachix.org"
|
"https://guanran928.cachix.org"
|
||||||
];
|
];
|
||||||
trusted-public-keys = [
|
trusted-public-keys = [
|
||||||
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
||||||
"cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
|
"cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
|
||||||
"berberman.cachix.org-1:UHGhodNXVruGzWrwJ12B1grPK/6Qnrx2c3TjKueQPds="
|
|
||||||
"guanran928.cachix.org-1:BE/iBCj2/pqJXG908wHRrcaV0B2fC+KbFjHsXY6b91c="
|
"guanran928.cachix.org-1:BE/iBCj2/pqJXG908wHRrcaV0B2fC+KbFjHsXY6b91c="
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
./xdg-mime.nix
|
./xdg-mime.nix
|
||||||
]
|
]
|
||||||
++ map (n: ../../../../../home/applications/${n}) [
|
++ map (n: ../../../../../home/applications/${n}) [
|
||||||
"alacritty"
|
|
||||||
"fcitx5"
|
"fcitx5"
|
||||||
"firefox"
|
"firefox"
|
||||||
|
"foot"
|
||||||
"go"
|
"go"
|
||||||
"mpv"
|
"mpv"
|
||||||
"nautilus"
|
"nautilus"
|
||||||
|
|
|
@ -26,12 +26,12 @@
|
||||||
# Make GTK listen to fontconfig
|
# Make GTK listen to fontconfig
|
||||||
dconf.settings = {
|
dconf.settings = {
|
||||||
"org/gnome/desktop/wm/preferences" = {
|
"org/gnome/desktop/wm/preferences" = {
|
||||||
"titlebar-font" = "Sans Bold";
|
"titlebar-font" = "Sans Bold 11";
|
||||||
};
|
};
|
||||||
"org/gnome/desktop/interface" = {
|
"org/gnome/desktop/interface" = {
|
||||||
"font-name" = "Sans";
|
"font-name" = "Sans 11";
|
||||||
"document-font-name" = "Sans";
|
"document-font-name" = "Sans 11";
|
||||||
"monospace-font-name" = "Monospace";
|
"monospace-font-name" = "Monospace 10";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,6 @@
|
||||||
name = "Adwaita";
|
name = "Adwaita";
|
||||||
package = pkgs.gnome.adwaita-icon-theme;
|
package = pkgs.gnome.adwaita-icon-theme;
|
||||||
size = 24;
|
size = 24;
|
||||||
x11.enable = true;
|
|
||||||
gtk.enable = true;
|
gtk.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -4,9 +4,58 @@ let
|
||||||
patches = (old.patches or []) ++ patches;
|
patches = (old.patches or []) ++ patches;
|
||||||
});
|
});
|
||||||
in {
|
in {
|
||||||
patches = _final: prev:
|
patches = _final: prev: {
|
||||||
{}
|
gnome =
|
||||||
// import ./nautilus.nix {inherit addPatches prev;}
|
prev.gnome
|
||||||
// import ./prismlauncher.nix {inherit addPatches prev;}
|
// {
|
||||||
// import ./sway.nix {inherit addPatches prev;};
|
# https://aur.archlinux.org/pkgbase/nautilus-typeahead
|
||||||
|
nautilus = prev.gnome.nautilus.overrideAttrs {
|
||||||
|
src = prev.fetchFromGitLab {
|
||||||
|
domain = "gitlab.gnome.org";
|
||||||
|
owner = "albertvaka";
|
||||||
|
repo = "nautilus";
|
||||||
|
rev = "f5f593bf36c41756a29d5112a10cf7ec70b8eafb";
|
||||||
|
hash = "sha256-PfkCY2gQ8jfPIgTRC9Xzxh4N3f2oB339Hym5RCbKwkw=";
|
||||||
|
};
|
||||||
|
|
||||||
|
# Enable type-ahead behavior by default
|
||||||
|
postPatch = ''
|
||||||
|
awk -i inplace '/type-ahead-search/{c++;} c==1 && /true/{sub("true", "false"); c++;} 1' data/org.gnome.nautilus.gschema.xml
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
sway-unwrapped = addPatches prev.sway-unwrapped [
|
||||||
|
# text_input: Implement input-method popups
|
||||||
|
# https://github.com/swaywm/sway/pull/7226
|
||||||
|
(prev.fetchpatch rec {
|
||||||
|
name = "0001-text_input-Implement-input-method-popups.patch";
|
||||||
|
url = "https://aur.archlinux.org/cgit/aur.git/plain/${name}?h=sway-im&id=b8434b3ad9e8c6946dbf7b14b0f7ef5679452b94";
|
||||||
|
hash = "sha256-A+rBaWMWs616WllVoo21AJaf9lxg/oCG0b9tHLfuJII=";
|
||||||
|
})
|
||||||
|
(prev.fetchpatch rec {
|
||||||
|
name = "0002-chore-fractal-scale-handle.patch";
|
||||||
|
url = "https://aur.archlinux.org/cgit/aur.git/plain/${name}?h=sway-im&id=b8434b3ad9e8c6946dbf7b14b0f7ef5679452b94";
|
||||||
|
hash = "sha256-YOFm0A4uuRSuiwnvF9xbp8Wl7oGicFGnq61vLegqJ0E=";
|
||||||
|
})
|
||||||
|
(prev.fetchpatch rec {
|
||||||
|
name = "0003-chore-left_pt-on-method-popup.patch";
|
||||||
|
url = "https://aur.archlinux.org/cgit/aur.git/plain/${name}?h=sway-im&id=b8434b3ad9e8c6946dbf7b14b0f7ef5679452b94";
|
||||||
|
hash = "sha256-PzhQBRpyB1WhErn05UBtBfaDW5bxnQLRKWu8jy7dEiM=";
|
||||||
|
})
|
||||||
|
|
||||||
|
# Tray D-Bus Menu
|
||||||
|
# https://github.com/swaywm/sway/pull/6249
|
||||||
|
(prev.fetchpatch {
|
||||||
|
name = "0001-Tray-Implement-dbusmenu.patch";
|
||||||
|
url = "https://github.com/NickHu/sway/commit/0fc5d7aed84415a77b718ca9dc3c0b3ad2c05b02.patch";
|
||||||
|
hash = "sha256-1KuGZGwyGJK8KO4OngS+tWKV/3Yu++bCNnp+xTrlGoY=";
|
||||||
|
})
|
||||||
|
(prev.fetchpatch {
|
||||||
|
name = "0002-Tray-dont-invoke-dbus-menu-when-tray-is-disabled.patch";
|
||||||
|
url = "https://github.com/NickHu/sway/commit/03c14421354e54332e12f78d029dcaa9919fd161.patch";
|
||||||
|
hash = "sha256-GhBlCnk7aB6s57wV1FNOPAt6s0oJxLgf2bMw+8ktn8A=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,21 +0,0 @@
|
||||||
{prev, ...}: {
|
|
||||||
gnome =
|
|
||||||
prev.gnome
|
|
||||||
// {
|
|
||||||
# https://aur.archlinux.org/pkgbase/nautilus-typeahead
|
|
||||||
nautilus = prev.gnome.nautilus.overrideAttrs {
|
|
||||||
src = prev.fetchFromGitLab {
|
|
||||||
domain = "gitlab.gnome.org";
|
|
||||||
owner = "albertvaka";
|
|
||||||
repo = "nautilus";
|
|
||||||
rev = "f5f593bf36c41756a29d5112a10cf7ec70b8eafb";
|
|
||||||
hash = "sha256-PfkCY2gQ8jfPIgTRC9Xzxh4N3f2oB339Hym5RCbKwkw=";
|
|
||||||
};
|
|
||||||
|
|
||||||
# Enable type-ahead behavior by default
|
|
||||||
postPatch = ''
|
|
||||||
awk -i inplace '/type-ahead-search/{c++;} c==1 && /true/{sub("true", "false"); c++;} 1' data/org.gnome.nautilus.gschema.xml
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,14 +0,0 @@
|
||||||
{
|
|
||||||
addPatches,
|
|
||||||
prev,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
prismlauncher = addPatches prev.prismlauncher [
|
|
||||||
# Offline mode for Prism Launcher
|
|
||||||
# https://github.com/Misterio77/nix-config/blob/main/overlays/offline-mode-prism-launcher.diff
|
|
||||||
(prev.fetchpatch {
|
|
||||||
url = "https://raw.githubusercontent.com/Misterio77/nix-config/ac1d7bbcafb6be75e94448c7ae7a94d460e3129d/overlays/offline-mode-prism-launcher.diff";
|
|
||||||
hash = "sha256-vMcAvhD0Ms4Tvwpzs/YfORc8ki7MNMurdJJ/yswfxFM=";
|
|
||||||
})
|
|
||||||
];
|
|
||||||
}
|
|
|
@ -1,38 +0,0 @@
|
||||||
{
|
|
||||||
addPatches,
|
|
||||||
prev,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
sway-unwrapped = addPatches prev.sway-unwrapped [
|
|
||||||
# text_input: Implement input-method popups
|
|
||||||
# https://github.com/swaywm/sway/pull/7226
|
|
||||||
(prev.fetchpatch rec {
|
|
||||||
name = "0001-text_input-Implement-input-method-popups.patch";
|
|
||||||
url = "https://aur.archlinux.org/cgit/aur.git/plain/${name}?h=sway-im&id=b8434b3ad9e8c6946dbf7b14b0f7ef5679452b94";
|
|
||||||
hash = "sha256-A+rBaWMWs616WllVoo21AJaf9lxg/oCG0b9tHLfuJII=";
|
|
||||||
})
|
|
||||||
(prev.fetchpatch rec {
|
|
||||||
name = "0002-chore-fractal-scale-handle.patch";
|
|
||||||
url = "https://aur.archlinux.org/cgit/aur.git/plain/${name}?h=sway-im&id=b8434b3ad9e8c6946dbf7b14b0f7ef5679452b94";
|
|
||||||
hash = "sha256-YOFm0A4uuRSuiwnvF9xbp8Wl7oGicFGnq61vLegqJ0E=";
|
|
||||||
})
|
|
||||||
(prev.fetchpatch rec {
|
|
||||||
name = "0003-chore-left_pt-on-method-popup.patch";
|
|
||||||
url = "https://aur.archlinux.org/cgit/aur.git/plain/${name}?h=sway-im&id=b8434b3ad9e8c6946dbf7b14b0f7ef5679452b94";
|
|
||||||
hash = "sha256-PzhQBRpyB1WhErn05UBtBfaDW5bxnQLRKWu8jy7dEiM=";
|
|
||||||
})
|
|
||||||
|
|
||||||
# Tray D-Bus Menu
|
|
||||||
# https://github.com/swaywm/sway/pull/6249
|
|
||||||
(prev.fetchpatch {
|
|
||||||
name = "0001-Tray-Implement-dbusmenu.patch";
|
|
||||||
url = "https://github.com/NickHu/sway/commit/0fc5d7aed84415a77b718ca9dc3c0b3ad2c05b02.patch";
|
|
||||||
hash = "sha256-1KuGZGwyGJK8KO4OngS+tWKV/3Yu++bCNnp+xTrlGoY=";
|
|
||||||
})
|
|
||||||
(prev.fetchpatch {
|
|
||||||
name = "0002-Tray-dont-invoke-dbus-menu-when-tray-is-disabled.patch";
|
|
||||||
url = "https://github.com/NickHu/sway/commit/03c14421354e54332e12f78d029dcaa9919fd161.patch";
|
|
||||||
hash = "sha256-GhBlCnk7aB6s57wV1FNOPAt6s0oJxLgf2bMw+8ktn8A=";
|
|
||||||
})
|
|
||||||
];
|
|
||||||
}
|
|
|
@ -1,13 +1,14 @@
|
||||||
# NOTE: 301: All packages are migrated to `github:Guanran928/nur-packages`,
|
# NOTE: 301: All packages are migrated to `github:Guanran928/nur-packages`,
|
||||||
# only keeping some packages that only fits for personal use.
|
# only keeping some packages that only fits for personal use.
|
||||||
pkgs: {
|
pkgs: let
|
||||||
scripts = rec {
|
inherit (pkgs) lib;
|
||||||
|
in {
|
||||||
|
scripts = lib.makeScope pkgs.newScope (self: {
|
||||||
# util
|
# util
|
||||||
makeScript = pkgs.callPackage ./scripts/makeScript.nix {};
|
makeScript = self.callPackage ./scripts/makeScript.nix {};
|
||||||
|
|
||||||
# scripts
|
# scripts
|
||||||
# TODO: Do I really have to inherit `makeScript` for every script?
|
lofi = self.callPackage ./scripts/lofi.nix {};
|
||||||
lofi = pkgs.callPackage ./scripts/lofi.nix {inherit makeScript;};
|
screenshot = self.callPackage ./scripts/screenshot.nix {};
|
||||||
screenshot = pkgs.callPackage ./scripts/screenshot.nix {inherit makeScript;};
|
});
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,7 @@
|
||||||
{
|
{
|
||||||
lib,
|
lib,
|
||||||
runtimeShell,
|
runtimeShell,
|
||||||
writeScriptBin,
|
runCommandLocal,
|
||||||
runCommandNoCCLocal,
|
|
||||||
makeBinaryWrapper,
|
makeBinaryWrapper,
|
||||||
}: {
|
}: {
|
||||||
name,
|
name,
|
||||||
|
@ -10,9 +9,10 @@
|
||||||
runtimeInputs ? [],
|
runtimeInputs ? [],
|
||||||
}:
|
}:
|
||||||
# FIXME: incorrect argv0
|
# FIXME: incorrect argv0
|
||||||
runCommandNoCCLocal name {
|
runCommandLocal name {
|
||||||
inherit src;
|
inherit src;
|
||||||
nativeBuildInputs = [makeBinaryWrapper];
|
nativeBuildInputs = [makeBinaryWrapper];
|
||||||
|
meta.mainProgram = name;
|
||||||
} ''
|
} ''
|
||||||
install -Dm755 $src $out/bin/.$name
|
install -Dm755 $src $out/bin/.$name
|
||||||
makeBinaryWrapper ${runtimeShell} $out/bin/$name \
|
makeBinaryWrapper ${runtimeShell} $out/bin/$name \
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
hashed-passwd: ENC[AES256_GCM,data:KPOh1bYW2eruBI7Z9OKqqRmoXAxQ/k5sghAmHDFyUeJTNavelU9hcGfBq69KSU+MeFVfRmwHZncZYyiDkF4hFI2YFgFY0M2jzA==,iv:h7XtrT/4/T1b4SPGx10w5g84DMCA/FE3mjinwcLn0tI=,tag:jS8XnwEdEH2QYkNJVRwkcA==,type:str]
|
hashed-passwd: ENC[AES256_GCM,data:KPOh1bYW2eruBI7Z9OKqqRmoXAxQ/k5sghAmHDFyUeJTNavelU9hcGfBq69KSU+MeFVfRmwHZncZYyiDkF4hFI2YFgFY0M2jzA==,iv:h7XtrT/4/T1b4SPGx10w5g84DMCA/FE3mjinwcLn0tI=,tag:jS8XnwEdEH2QYkNJVRwkcA==,type:str]
|
||||||
nix-access-tokens: ENC[AES256_GCM,data:1dep2U1+rUCj5cnOwXNIPexO/FPFUAFe+Q9IHegD5eRZxcRq7TF8o35yg1eybE2IZ+oOki2wXdKfOSUCpOgDQLIwvx2jyHg4+lw3AqX949jh3aXPlWiaMiBm9SBmiUow5Y7Kztp0HiV5VWkR3G+b7qlXEprNMr1n,iv:8pawngiRG54ckZJ4yNTT4Pab6QDJn8oBDZJ4I/ZjYo0=,tag:AQy5wkx8yLerCXEYCjJGqQ==,type:str]
|
nix-access-tokens: ENC[AES256_GCM,data:lUeCDT0r1AnTFG4s8eLxSlGRVQAJ4eyXVW80pkgAL5aVrG86+G7NOLVfQYUxthLBRFFXnGA2rQD4h4c2VWknd0YDFdS+me8RBbN2mqJm6YqEYdMEW2Lgv9iSz/zXuDT9FFdDWRdv71lTTwyP2Gie4Y8UkBrAV3ue,iv:HyDyQ5H2nDzi4nIUKoelOrzF4K3sIMlB5HoQR9EMc0s=,tag:vgn2TtQRE8Qd+/zjlOSuAw==,type:str]
|
||||||
wireless:
|
wireless:
|
||||||
wangxiaobo: ENC[AES256_GCM,data:Lz1gAdJn2aBn/TdcQRjErSrIAJHlq0mT9qsE72ocEMxNqx6TW6dJkbRfKZ6IDe/a2HNP3zUpX3MjjRbCepBkZIHmsg1SwkGfA7wWysQOxXRXYCoqWH+NbP4xm6r0QV5RGTmXU+bnKubrrJZ8Z2M2n5LDp3bf16XL22Wjsyakju4z36d1K7NPBUoCIHoVKJaLam29rWDyIaBOfZbzG+M5reGLt1hVPDWWYGjnB4xC4lqQE5bpyKrVtoU+XATCWIIx3ZZWqJsf3TVzEDvu1aCb127PMCP2lqI55Hf94RgsZPWWgoLrAhaI8t067hAWPOfdfZEEGetO4BjzJwRyCNQAvqx+YLe0RJOz3lriUP3ie1mYmft4AyhV8JUmVZhEsJ7peATt+ds11BUuGw2SU9cKSa2NHM/K7e1x23Kofl1qrFF+ylr1Sy8OCZhfBozdFnPDzcYsuApe0xvMYCt4fsHFjB/kGtIG7rdGapJnvgAwhewd3dTtg4mAKPgvYr4FdWgDSr7GqrDdgqT2W8nbtJ5oQQnYmDnX+0tfLcF15EgvEN9mLIpsdNfVX3eOp1e/Z6fsbdMtpyNuMRwNDAi9V1tsYTDM/+U9xvZK3DWNX6XTYQ==,iv:nq2Hj7aY+M8QJoA08oyvg55UuxJdnoGTT2KQNu3B8Z8=,tag:sYV4ZE2evYb3U4JRPCJT3Q==,type:str]
|
wangxiaobo: ENC[AES256_GCM,data:Lz1gAdJn2aBn/TdcQRjErSrIAJHlq0mT9qsE72ocEMxNqx6TW6dJkbRfKZ6IDe/a2HNP3zUpX3MjjRbCepBkZIHmsg1SwkGfA7wWysQOxXRXYCoqWH+NbP4xm6r0QV5RGTmXU+bnKubrrJZ8Z2M2n5LDp3bf16XL22Wjsyakju4z36d1K7NPBUoCIHoVKJaLam29rWDyIaBOfZbzG+M5reGLt1hVPDWWYGjnB4xC4lqQE5bpyKrVtoU+XATCWIIx3ZZWqJsf3TVzEDvu1aCb127PMCP2lqI55Hf94RgsZPWWgoLrAhaI8t067hAWPOfdfZEEGetO4BjzJwRyCNQAvqx+YLe0RJOz3lriUP3ie1mYmft4AyhV8JUmVZhEsJ7peATt+ds11BUuGw2SU9cKSa2NHM/K7e1x23Kofl1qrFF+ylr1Sy8OCZhfBozdFnPDzcYsuApe0xvMYCt4fsHFjB/kGtIG7rdGapJnvgAwhewd3dTtg4mAKPgvYr4FdWgDSr7GqrDdgqT2W8nbtJ5oQQnYmDnX+0tfLcF15EgvEN9mLIpsdNfVX3eOp1e/Z6fsbdMtpyNuMRwNDAi9V1tsYTDM/+U9xvZK3DWNX6XTYQ==,iv:nq2Hj7aY+M8QJoA08oyvg55UuxJdnoGTT2KQNu3B8Z8=,tag:sYV4ZE2evYb3U4JRPCJT3Q==,type:str]
|
||||||
OpenWrt: ENC[AES256_GCM,data:tlZJExED1Brv4/hOJjbgEbyLMQZVfNhl/5ux94IDM5jSL2lEBYy74qf4VVn2SKMYUuu7bjV7UlnwrD/jzDRuO/gWfkeuoZ5uh3pX0s2wv5E2Z7nJjkYtVn0XDlr8m/4Y6R14ahSIqKJKY4LAAeuQo0t7jEeYv4E3kuyhXUNE5jjrdD9mW+ObS1WV/DpBqUZc3dJe+88EVzgVa5F/L+VWQ3Klz5TduQzqfOyjjoNe+z8gwODzHczfPZCdplfo4PbrMWV8FlyUdJUX37nkZiEkyUpPuksZHb5OPAtx9fCh/KF5y/txS9oZTwOkiE4LBQBpj2NcLMQGOEdtRYLzJekyaOGChrtD+mFfL9LBuLwQLAzHLUI4oZ3PUgu3zXYevtmyrSSwlK/2iama71swmNu+qYws+WkjMVyF4MB/KCtMJULbZW9XJp7tw7cfSzek0RMizlk3MgrEyF2w3J9vx6Q4OHPSE48kgK2Kw0kg93wl9uO6kCRq0QiTJ6lZHopsWyWHTcs1,iv:kvBRYkhFAmDCSdU5Nkc66VblbjQfWHp7ls8x0d46ueA=,tag:Y/oa7vgoI/VsZ+OyJUjZ/g==,type:str]
|
OpenWrt: ENC[AES256_GCM,data:tlZJExED1Brv4/hOJjbgEbyLMQZVfNhl/5ux94IDM5jSL2lEBYy74qf4VVn2SKMYUuu7bjV7UlnwrD/jzDRuO/gWfkeuoZ5uh3pX0s2wv5E2Z7nJjkYtVn0XDlr8m/4Y6R14ahSIqKJKY4LAAeuQo0t7jEeYv4E3kuyhXUNE5jjrdD9mW+ObS1WV/DpBqUZc3dJe+88EVzgVa5F/L+VWQ3Klz5TduQzqfOyjjoNe+z8gwODzHczfPZCdplfo4PbrMWV8FlyUdJUX37nkZiEkyUpPuksZHb5OPAtx9fCh/KF5y/txS9oZTwOkiE4LBQBpj2NcLMQGOEdtRYLzJekyaOGChrtD+mFfL9LBuLwQLAzHLUI4oZ3PUgu3zXYevtmyrSSwlK/2iama71swmNu+qYws+WkjMVyF4MB/KCtMJULbZW9XJp7tw7cfSzek0RMizlk3MgrEyF2w3J9vx6Q4OHPSE48kgK2Kw0kg93wl9uO6kCRq0QiTJ6lZHopsWyWHTcs1,iv:kvBRYkhFAmDCSdU5Nkc66VblbjQfWHp7ls8x0d46ueA=,tag:Y/oa7vgoI/VsZ+OyJUjZ/g==,type:str]
|
||||||
clash:
|
clash:
|
||||||
secret: ENC[AES256_GCM,data:eCq/pDlSOw==,iv:QGNKxqmkj9BWFBJGj/O4fUL8Ey8zGEHMsWX02DrM82U=,tag:z2vVCBSt6mw47ca2xoxg9A==,type:str]
|
secret: ENC[AES256_GCM,data:eCq/pDlSOw==,iv:QGNKxqmkj9BWFBJGj/O4fUL8Ey8zGEHMsWX02DrM82U=,tag:z2vVCBSt6mw47ca2xoxg9A==,type:str]
|
||||||
proxies:
|
proxies:
|
||||||
lightsail: ENC[AES256_GCM,data:ik3GANdJuZuYkl2kUMiCu6rWhOBTgvYuDT0Xn+/pZwyBVRWtwPhfLY6Ptm0GXj77zzD0/5bgxPRCNJncQEH2NarkqE/DXlluKqlBjOThgRjtVQF+FCJ01Y6/tL0HsvgZse9hasNtrXJHy+PGDiZdcNDmr+piB53Pgt+jdw==,iv:X9+PZUjWlOl74VLXW++SVDd+9U1guglNABe/N/iyMLs=,tag:OYj5a6i9WhkyK5m2wllCmg==,type:str]
|
lightsail: ENC[AES256_GCM,data:o84OgvKdogV8EmeyRLu/gexre5QY8kaf2txXTi2Id2Ya+cWJ08WBiNGYdLKGVKSr1bflbeTirTnUgBJ7ozAw3seWDxOuFRrdvy2jZx+x8doOVwP3FsKQUeCJd4yr4M7FuA3lA0dvBpAX/W5nvz82F15x4o6AYKx0AOTh+QbVTdX4,iv:ojvL+sSORq2DYHdVDUCvN1nCt44Th7SM++I1ZRB9KyQ=,tag:z+er0P7gHa+rn4MiMyJnmg==,type:str]
|
||||||
proxy-providers:
|
proxy-providers:
|
||||||
flyairport: ENC[AES256_GCM,data:akHdU/2o8D65sG2b/mcj76HASwhg3WvoEcrpgkXPyh7kuc+Ci42hmmmmBk9I29vuvZjTtCTs8mMzaLK1wm8TS/K1A1zeAGULxSsqhpV4cA19Q4vAtQ2+FyuGiaFszuaHK6BSlZAosfmCGoM1nZRYuOnsdeR0vnHBIHhJFNhaLw==,iv:VeVT3cEaOO/90gcqpm2yOacThbEyaXuBRhp4buX/XOY=,tag:kojJbqwYk/DNFBcJMY2eXg==,type:str]
|
flyairport: ENC[AES256_GCM,data:akHdU/2o8D65sG2b/mcj76HASwhg3WvoEcrpgkXPyh7kuc+Ci42hmmmmBk9I29vuvZjTtCTs8mMzaLK1wm8TS/K1A1zeAGULxSsqhpV4cA19Q4vAtQ2+FyuGiaFszuaHK6BSlZAosfmCGoM1nZRYuOnsdeR0vnHBIHhJFNhaLw==,iv:VeVT3cEaOO/90gcqpm2yOacThbEyaXuBRhp4buX/XOY=,tag:kojJbqwYk/DNFBcJMY2eXg==,type:str]
|
||||||
efcloud: ENC[AES256_GCM,data:GvKNMscPknhlBy9Qp8iuYoxF10oX2ZIOKo+XKRH2NOGGDiMk/GwdGfA5+gf3ZcEEGFGw/8CrBddjJCivyxqwF+oAEHJyjdcFhGyyOopsx9s3waq8Hge/KzE=,iv:WXAd3yA5cTZp+ttKHXPf6cbsk6pRXq5/xMysNUAs1Rk=,tag:HygexRSW8ICa+RIFmrRKRQ==,type:str]
|
efcloud: ENC[AES256_GCM,data:GvKNMscPknhlBy9Qp8iuYoxF10oX2ZIOKo+XKRH2NOGGDiMk/GwdGfA5+gf3ZcEEGFGw/8CrBddjJCivyxqwF+oAEHJyjdcFhGyyOopsx9s3waq8Hge/KzE=,iv:WXAd3yA5cTZp+ttKHXPf6cbsk6pRXq5/xMysNUAs1Rk=,tag:HygexRSW8ICa+RIFmrRKRQ==,type:str]
|
||||||
|
@ -53,8 +53,8 @@ sops:
|
||||||
SC9YMFk4dUNOUDJYMXErck8yTmJmZmcKp66bHZTD6VitAOfzIr8VJr02+R9f5mxH
|
SC9YMFk4dUNOUDJYMXErck8yTmJmZmcKp66bHZTD6VitAOfzIr8VJr02+R9f5mxH
|
||||||
c5n2CWurDsZsNTKk7pgxQo78ySyAG3rzvOqgK0NFesyHy9dRl8xHCQ==
|
c5n2CWurDsZsNTKk7pgxQo78ySyAG3rzvOqgK0NFesyHy9dRl8xHCQ==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
lastmodified: "2024-06-16T02:17:41Z"
|
lastmodified: "2024-07-01T09:25:25Z"
|
||||||
mac: ENC[AES256_GCM,data:JDCxFDk8NnXuFb1s0oTc5dMkZVCAoqlnUh9CzZajlXoGKetrEJQRZtxxr1yzWYl548eltEyRHzUl8idsjz6OdycmrX7hL0pHQHK0QxB4iIsiJAfBX6Sa8inkp2Os7HOgxRSC4QKKb3Ua32BG40KTL/eoVkCimaby4kUZqVQHLjU=,iv:dU4zAA54KUppdAlWB6/XU0fMuuF1QSpuqpdjp9ucmz4=,tag:AGAxLXs5M5ZMixXA3yVosw==,type:str]
|
mac: ENC[AES256_GCM,data:rQ0ZRb1Js05XWfrXSGjdJd8g3heaAmNHyRoPxmvZe36a1DXFi3eCKvBs8JjOFdtAp9XCJ9OYjzDsCpBvUSfuApjmBoMZUVqjrf88sAxT7j/4e1tdkBZto0ReondIxwt7hTEcNpuawdouPk+yehTqmw3Nyovnd/mztw/I9zhHPuk=,iv:EXvTgLqRp2JZtpiEcSW4XyQdKZ+aSoKKPgx6q8BFkhY=,tag:gbPiWetjaFm+mEmjsl9kww==,type:str]
|
||||||
pgp: []
|
pgp: []
|
||||||
unencrypted_suffix: _unencrypted
|
unencrypted_suffix: _unencrypted
|
||||||
version: 3.8.1
|
version: 3.8.1
|
||||||
|
|
|
@ -22,5 +22,9 @@
|
||||||
|
|
||||||
### misc
|
### misc
|
||||||
programs.prettier.enable = true;
|
programs.prettier.enable = true;
|
||||||
settings.formatter.prettier.excludes = ["secrets.yaml"];
|
settings.formatter.prettier.excludes = [
|
||||||
|
"secrets.yaml"
|
||||||
|
"hosts/blacksteel/secrets.yaml"
|
||||||
|
"hosts/lightsail-tokyo/secrets.yaml"
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue