Compare commits
50 Commits
e46e69ec6f
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
234dfcf3ca
|
|||
|
9e0b78cc3d
|
|||
|
9246c8bf0f
|
|||
|
6a2f51a874
|
|||
|
b93a73f24d
|
|||
|
009bec8774
|
|||
|
36ff8d03db
|
|||
|
db5b3adc43
|
|||
|
846a14e2f7
|
|||
|
355ef79d9f
|
|||
|
76ab42af49
|
|||
|
f1d05a0203
|
|||
|
6f9360cb76
|
|||
|
bdbaba1ffa
|
|||
|
e0b87bfa56
|
|||
|
d739473f05
|
|||
|
b6a3b1d9fc
|
|||
|
1b4cbf9b71
|
|||
|
0452a675c0
|
|||
|
b64671395e
|
|||
|
db609d40fa
|
|||
|
1fadbc491e
|
|||
|
09f1511f97
|
|||
|
d71ffd36ee
|
|||
|
172b4269d1
|
|||
|
fbd308509d
|
|||
|
0e249d90c8
|
|||
|
bc38372e69
|
|||
|
43df6a77e7
|
|||
|
ed5755678f
|
|||
|
eb4001872d
|
|||
|
a2e0adead8
|
|||
|
f4297f7bac
|
|||
|
69960cd858
|
|||
|
3723baa208
|
|||
|
278c4d8dcc
|
|||
|
2a49357357
|
|||
|
d570395dc4
|
|||
|
af304e3efe
|
|||
|
5af4dc4ac7
|
|||
|
614b22f85a
|
|||
|
e8d8581b9d
|
|||
|
cbaa4d1ca8
|
|||
|
b457eff25a
|
|||
|
50e5cef6aa
|
|||
|
212058a970
|
|||
|
5d86382303
|
|||
|
ce79503689
|
|||
|
fd8adc2b21
|
|||
|
27e2c7c233
|
@@ -5,9 +5,9 @@ System and user configuration for NixOS-based systems.
|
|||||||
| | |
|
| | |
|
||||||
|-|-|
|
|-|-|
|
||||||
| **Shell:** | zsh |
|
| **Shell:** | zsh |
|
||||||
| **DE:** | GNOME |
|
| **WM:** | Hyprland |
|
||||||
| **Theme:** | Adwaita |
|
| **Theme:** | Adwaita |
|
||||||
| **Terminal:** | Ghostty |
|
| **Terminal:** | kitty |
|
||||||
|
|
||||||
## Provisioning a new host
|
## Provisioning a new host
|
||||||
|
|
||||||
|
|||||||
332
flake.lock
generated
332
flake.lock
generated
@@ -12,11 +12,11 @@
|
|||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1754433428,
|
"lastModified": 1762618334,
|
||||||
"narHash": "sha256-NA/FT2hVhKDftbHSwVnoRTFhes62+7dxZbxj5Gxvghs=",
|
"narHash": "sha256-wyT7Pl6tMFbFrs8Lk/TlEs81N6L+VSybPfiIgzU8lbQ=",
|
||||||
"owner": "ryantm",
|
"owner": "ryantm",
|
||||||
"repo": "agenix",
|
"repo": "agenix",
|
||||||
"rev": "9edb1787864c4f59ae5074ad498b6272b3ec308d",
|
"rev": "fcdea223397448d35d9b31f798479227e80183f6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -71,11 +71,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1759499898,
|
"lastModified": 1762356719,
|
||||||
"narHash": "sha256-UNzYHLWfkSzLHDep5Ckb5tXc0fdxwPIrT+MY4kpQttM=",
|
"narHash": "sha256-qwd/xdoOya1m8FENle+4hWnydCtlXUWLAW/Auk6WL7s=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "aquamarine",
|
"repo": "aquamarine",
|
||||||
"rev": "655e067f96fd44b3f5685e17f566b0e4d535d798",
|
"rev": "6d0b3567584691bf9d8fedb5d0093309e2f979c7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -131,11 +131,11 @@
|
|||||||
"utils": "utils"
|
"utils": "utils"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1756719547,
|
"lastModified": 1762286984,
|
||||||
"narHash": "sha256-N9gBKUmjwRKPxAafXEk1EGadfk2qDZPBQp4vXWPHINQ=",
|
"narHash": "sha256-9I2H9x5We6Pl+DBYHjR1s3UT8wgwcpAH03kn9CqtdQc=",
|
||||||
"owner": "serokell",
|
"owner": "serokell",
|
||||||
"repo": "deploy-rs",
|
"repo": "deploy-rs",
|
||||||
"rev": "125ae9e3ecf62fb2c0fd4f2d894eb971f1ecaed2",
|
"rev": "9c870f63e28ec1e83305f7f6cb73c941e699f74f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -172,11 +172,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1741473158,
|
"lastModified": 1762521437,
|
||||||
"narHash": "sha256-kWNaq6wQUbUMlPgw8Y+9/9wP0F8SHkjy24/mN3UAppg=",
|
"narHash": "sha256-RXN+lcx4DEn3ZS+LqEJSUu/HH+dwGvy0syN7hTo/Chg=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "devshell",
|
"repo": "devshell",
|
||||||
"rev": "7c9e793ebe66bcba8292989a68c0419b737a22a0",
|
"rev": "07bacc9531f5f4df6657c0a02a806443685f384a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -213,11 +213,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1760701190,
|
"lastModified": 1763651264,
|
||||||
"narHash": "sha256-y7UhnWlER8r776JsySqsbTUh2Txf7K30smfHlqdaIQw=",
|
"narHash": "sha256-8vvwZbw0s7YvBMJeyPVpWke6lg6ROgtts5N2/SMCcv4=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "disko",
|
"repo": "disko",
|
||||||
"rev": "3a9450b26e69dcb6f8de6e2b07b3fc1c288d85f5",
|
"rev": "e86a89079587497174ccab6d0d142a65811a4fd9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -332,11 +332,11 @@
|
|||||||
"nixpkgs-lib": "nixpkgs-lib"
|
"nixpkgs-lib": "nixpkgs-lib"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1759362264,
|
"lastModified": 1763759067,
|
||||||
"narHash": "sha256-wfG0S7pltlYyZTM+qqlhJ7GMw2fTF4mLKCIVhLii/4M=",
|
"narHash": "sha256-LlLt2Jo/gMNYAwOgdRQBrsRoOz7BPRkzvNaI/fzXi2Q=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "758cf7296bee11f1706a574c77d072b8a7baa881",
|
"rev": "2cccadc7357c0ba201788ae99c4dfa90728ef5e0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -353,11 +353,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1759362264,
|
"lastModified": 1763759067,
|
||||||
"narHash": "sha256-wfG0S7pltlYyZTM+qqlhJ7GMw2fTF4mLKCIVhLii/4M=",
|
"narHash": "sha256-LlLt2Jo/gMNYAwOgdRQBrsRoOz7BPRkzvNaI/fzXi2Q=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "758cf7296bee11f1706a574c77d072b8a7baa881",
|
"rev": "2cccadc7357c0ba201788ae99c4dfa90728ef5e0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -576,11 +576,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1759490292,
|
"lastModified": 1762462052,
|
||||||
"narHash": "sha256-T6iWzDOXp8Wv0KQOCTHpBcmAOdHJ6zc/l9xaztW6Ivc=",
|
"narHash": "sha256-6roLYzcDf4V38RUMSqycsOwAnqfodL6BmhRkUtwIgdA=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprgraphics",
|
"repo": "hyprgraphics",
|
||||||
"rev": "9431db625cd9bb66ac55525479dce694101d6d7a",
|
"rev": "ffc999d980c7b3bca85d3ebd0a9fbadf984a8162",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -594,8 +594,8 @@
|
|||||||
"aquamarine": "aquamarine",
|
"aquamarine": "aquamarine",
|
||||||
"hyprcursor": "hyprcursor",
|
"hyprcursor": "hyprcursor",
|
||||||
"hyprgraphics": "hyprgraphics",
|
"hyprgraphics": "hyprgraphics",
|
||||||
|
"hyprland-guiutils": "hyprland-guiutils",
|
||||||
"hyprland-protocols": "hyprland-protocols",
|
"hyprland-protocols": "hyprland-protocols",
|
||||||
"hyprland-qtutils": "hyprland-qtutils",
|
|
||||||
"hyprlang": "hyprlang",
|
"hyprlang": "hyprlang",
|
||||||
"hyprutils": "hyprutils",
|
"hyprutils": "hyprutils",
|
||||||
"hyprwayland-scanner": "hyprwayland-scanner",
|
"hyprwayland-scanner": "hyprwayland-scanner",
|
||||||
@@ -605,11 +605,11 @@
|
|||||||
"xdph": "xdph"
|
"xdph": "xdph"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1760621586,
|
"lastModified": 1763912895,
|
||||||
"narHash": "sha256-sIbe3te3RrL9PY4ASKGwv1KuJs0pyn4Zvo3xIF3jFms=",
|
"narHash": "sha256-tTdCVeROhYTwV510tygS5AMutJGz5imM++P4+cXAy2w=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "Hyprland",
|
"repo": "Hyprland",
|
||||||
"rev": "8164b90bc2839d4d2a10c0d2b26c4a413ecf90b2",
|
"rev": "2b0fd417d32278159d0ca1d23fb997588c37995b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -618,6 +618,52 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"hyprland-guiutils": {
|
||||||
|
"inputs": {
|
||||||
|
"aquamarine": [
|
||||||
|
"hyprland",
|
||||||
|
"aquamarine"
|
||||||
|
],
|
||||||
|
"hyprgraphics": [
|
||||||
|
"hyprland",
|
||||||
|
"hyprgraphics"
|
||||||
|
],
|
||||||
|
"hyprlang": [
|
||||||
|
"hyprland",
|
||||||
|
"hyprlang"
|
||||||
|
],
|
||||||
|
"hyprtoolkit": "hyprtoolkit",
|
||||||
|
"hyprutils": [
|
||||||
|
"hyprland",
|
||||||
|
"hyprutils"
|
||||||
|
],
|
||||||
|
"hyprwayland-scanner": [
|
||||||
|
"hyprland",
|
||||||
|
"hyprwayland-scanner"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprland",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": [
|
||||||
|
"hyprland",
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1762755186,
|
||||||
|
"narHash": "sha256-ZjjETUHtoEhVN7JI1Cbt3p/KcXpK8ZQaPHx7UkG1OgA=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprland-guiutils",
|
||||||
|
"rev": "66356e20a8ed348aa49c1b9ceace786e224225b3",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprland-guiutils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"hyprland-plugins": {
|
"hyprland-plugins": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"hyprland": [
|
"hyprland": [
|
||||||
@@ -635,11 +681,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1760659005,
|
"lastModified": 1763856454,
|
||||||
"narHash": "sha256-wyS6tXYJuzbwckOeaCoRtT4qIG2UZ0YvSZx7EBNjTV0=",
|
"narHash": "sha256-jlP442tr1Q7BynLKEb+L5lyGViJF5qUioymBCccV7/Y=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprland-plugins",
|
"repo": "hyprland-plugins",
|
||||||
"rev": "a5a6f93d72d5fb37e78b98c756cfd8b340e71a19",
|
"rev": "7ffc0b314e638ca4f8ce9cb1305951a47d107ade",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -660,11 +706,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1749046714,
|
"lastModified": 1759610243,
|
||||||
"narHash": "sha256-kymV5FMnddYGI+UjwIw8ceDjdeg7ToDVjbHCvUlhn14=",
|
"narHash": "sha256-+KEVnKBe8wz+a6dTLq8YDcF3UrhQElwsYJaVaHXJtoI=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprland-protocols",
|
"repo": "hyprland-protocols",
|
||||||
"rev": "613878cb6f459c5e323aaafe1e6f388ac8a36330",
|
"rev": "bd153e76f751f150a09328dbdeb5e4fab9d23622",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -673,74 +719,6 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"hyprland-qt-support": {
|
|
||||||
"inputs": {
|
|
||||||
"hyprlang": [
|
|
||||||
"hyprland",
|
|
||||||
"hyprland-qtutils",
|
|
||||||
"hyprlang"
|
|
||||||
],
|
|
||||||
"nixpkgs": [
|
|
||||||
"hyprland",
|
|
||||||
"hyprland-qtutils",
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"systems": [
|
|
||||||
"hyprland",
|
|
||||||
"hyprland-qtutils",
|
|
||||||
"systems"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1749154592,
|
|
||||||
"narHash": "sha256-DO7z5CeT/ddSGDEnK9mAXm1qlGL47L3VAHLlLXoCjhE=",
|
|
||||||
"owner": "hyprwm",
|
|
||||||
"repo": "hyprland-qt-support",
|
|
||||||
"rev": "4c8053c3c888138a30c3a6c45c2e45f5484f2074",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "hyprwm",
|
|
||||||
"repo": "hyprland-qt-support",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"hyprland-qtutils": {
|
|
||||||
"inputs": {
|
|
||||||
"hyprland-qt-support": "hyprland-qt-support",
|
|
||||||
"hyprlang": [
|
|
||||||
"hyprland",
|
|
||||||
"hyprlang"
|
|
||||||
],
|
|
||||||
"hyprutils": [
|
|
||||||
"hyprland",
|
|
||||||
"hyprland-qtutils",
|
|
||||||
"hyprlang",
|
|
||||||
"hyprutils"
|
|
||||||
],
|
|
||||||
"nixpkgs": [
|
|
||||||
"hyprland",
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"systems": [
|
|
||||||
"hyprland",
|
|
||||||
"systems"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1759080228,
|
|
||||||
"narHash": "sha256-RgDoAja0T1hnF0pTc56xPfLfFOO8Utol2iITwYbUhTk=",
|
|
||||||
"owner": "hyprwm",
|
|
||||||
"repo": "hyprland-qtutils",
|
|
||||||
"rev": "629b15c19fa4082e4ce6be09fdb89e8c3312aed7",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "hyprwm",
|
|
||||||
"repo": "hyprland-qtutils",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"hyprlang": {
|
"hyprlang": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"hyprutils": [
|
"hyprutils": [
|
||||||
@@ -757,11 +735,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1758927902,
|
"lastModified": 1763254292,
|
||||||
"narHash": "sha256-LZgMds7M94+vuMql2bERQ6LiFFdhgsEFezE4Vn+Ys3A=",
|
"narHash": "sha256-JNgz3Fz2KMzkT7aR72wsgu/xNeJB//LSmdilh8Z/Zao=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprlang",
|
"repo": "hyprlang",
|
||||||
"rev": "4dafa28d4f79877d67a7d1a654cddccf8ebf15da",
|
"rev": "deea98d5b61d066bdc7a68163edd2c4bd28d3a6b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -770,6 +748,58 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"hyprtoolkit": {
|
||||||
|
"inputs": {
|
||||||
|
"aquamarine": [
|
||||||
|
"hyprland",
|
||||||
|
"hyprland-guiutils",
|
||||||
|
"aquamarine"
|
||||||
|
],
|
||||||
|
"hyprgraphics": [
|
||||||
|
"hyprland",
|
||||||
|
"hyprland-guiutils",
|
||||||
|
"hyprgraphics"
|
||||||
|
],
|
||||||
|
"hyprlang": [
|
||||||
|
"hyprland",
|
||||||
|
"hyprland-guiutils",
|
||||||
|
"hyprlang"
|
||||||
|
],
|
||||||
|
"hyprutils": [
|
||||||
|
"hyprland",
|
||||||
|
"hyprland-guiutils",
|
||||||
|
"hyprutils"
|
||||||
|
],
|
||||||
|
"hyprwayland-scanner": [
|
||||||
|
"hyprland",
|
||||||
|
"hyprland-guiutils",
|
||||||
|
"hyprwayland-scanner"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprland",
|
||||||
|
"hyprland-guiutils",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": [
|
||||||
|
"hyprland",
|
||||||
|
"hyprland-guiutils",
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1762463729,
|
||||||
|
"narHash": "sha256-2fYkU/mdz8WKY3dkDPlE/j6hTxIwqultsx4gMMsMns0=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprtoolkit",
|
||||||
|
"rev": "88483bdee5329ec985f0c8f834c519cd18cfe532",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprtoolkit",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"hyprutils": {
|
"hyprutils": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@@ -782,11 +812,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1759619523,
|
"lastModified": 1763323331,
|
||||||
"narHash": "sha256-r1ed7AR2ZEb2U8gy321/Xcp1ho2tzn+gG1te/Wxsj1A=",
|
"narHash": "sha256-+Z0OfCo1MS8/aIutSAW5aJR9zTae1wz9kcJYMgpwN6M=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprutils",
|
"repo": "hyprutils",
|
||||||
"rev": "3df7bde01efb3a3e8e678d1155f2aa3f19e177ef",
|
"rev": "0c6411851cc779d551edc89b83966696201611aa",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -891,11 +921,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1752093877,
|
"lastModified": 1762088663,
|
||||||
"narHash": "sha256-P0TySh6sQl1EhfxjW9ZqGxEyUBSsEpdnchOe1QB0pLA=",
|
"narHash": "sha256-rpCvFan9Dji1Vw4HfVqYdfWesz5sKZE3uSgYR9gRreA=",
|
||||||
"owner": "oddlama",
|
"owner": "oddlama",
|
||||||
"repo": "nix-topology",
|
"repo": "nix-topology",
|
||||||
"rev": "6a536c4b686ee4bcf07a7b0f8b823584560e2633",
|
"rev": "c15f569794a0f1a437850d0ac81675bcf23ca6cb",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -906,11 +936,11 @@
|
|||||||
},
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1760106635,
|
"lastModified": 1762847253,
|
||||||
"narHash": "sha256-2GoxVaKWTHBxRoeUYSjv0AfSOx4qw5CWSFz2b+VolKU=",
|
"narHash": "sha256-BWWnUUT01lPwCWUvS0p6Px5UOBFeXJ8jR+ZdLX8IbrU=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "9ed85f8afebf2b7478f25db0a98d0e782c0ed903",
|
"rev": "899dc449bc6428b9ee6b3b8f771ca2b0ef945ab9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -930,11 +960,11 @@
|
|||||||
"nixpkgs-25_05": "nixpkgs-25_05"
|
"nixpkgs-25_05": "nixpkgs-25_05"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1755110674,
|
"lastModified": 1763302796,
|
||||||
"narHash": "sha256-PigqTAGkdBYXVFWsJnqcirrLeFqRFN4PFigLA8FzxeI=",
|
"narHash": "sha256-mEc3SBjRYfMcbNFLxmCc5tRtlu3j+1q7zRz+nRraSFE=",
|
||||||
"owner": "simple-nixos-mailserver",
|
"owner": "simple-nixos-mailserver",
|
||||||
"repo": "nixos-mailserver",
|
"repo": "nixos-mailserver",
|
||||||
"rev": "f5936247dbdb8501221978562ab0b302dd75456c",
|
"rev": "5b38fb599f50e9d78325d1d2706e36303c166047",
|
||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -946,11 +976,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1759381078,
|
"lastModified": 1763283776,
|
||||||
"narHash": "sha256-gTrEEp5gEspIcCOx9PD8kMaF1iEmfBcTbO0Jag2QhQs=",
|
"narHash": "sha256-Y7TDFPK4GlqrKrivOcsHG8xSGqQx3A6c+i7novT85Uk=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "7df7ff7d8e00218376575f0acdcc5d66741351ee",
|
"rev": "50a96edd8d0db6cc8db57dab6bb6d6ee1f3dc49a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -978,11 +1008,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-lib": {
|
"nixpkgs-lib": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1754788789,
|
"lastModified": 1761765539,
|
||||||
"narHash": "sha256-x2rJ+Ovzq0sCMpgfgGaaqgBSwY+LST+WbZ6TytnT9Rk=",
|
"narHash": "sha256-b0yj6kfvO8ApcSE+QmA6mUfu8IYG6/uU28OFn4PaC8M=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixpkgs.lib",
|
"repo": "nixpkgs.lib",
|
||||||
"rev": "a73b9c743612e4244d865a2fdee11865283c04e6",
|
"rev": "719359f4562934ae99f5443f20aa06c2ffff91fc",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -993,11 +1023,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-unstable": {
|
"nixpkgs-unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1760524057,
|
"lastModified": 1763835633,
|
||||||
"narHash": "sha256-EVAqOteLBFmd7pKkb0+FIUyzTF61VKi7YmvP1tw4nEw=",
|
"narHash": "sha256-HzxeGVID5MChuCPESuC0dlQL1/scDKu+MmzoVBJxulM=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "544961dfcce86422ba200ed9a0b00dd4b1486ec5",
|
"rev": "050e09e091117c3d7328c7b2b7b577492c43c134",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1008,11 +1038,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1760580664,
|
"lastModified": 1763622513,
|
||||||
"narHash": "sha256-/YdfibIrnqXAL8p5kqCU345mzpHoOtuVIkMiI2pF4Dc=",
|
"narHash": "sha256-1jQnuyu82FpiSxowrF/iFK6Toh9BYprfDqfs4BB+19M=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "98ff3f9af2684f6136c24beef08f5e2033fc5389",
|
"rev": "c58bc7f5459328e4afac201c5c4feb7c818d604b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1031,11 +1061,11 @@
|
|||||||
"systems": "systems_6"
|
"systems": "systems_6"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1760736138,
|
"lastModified": 1763823006,
|
||||||
"narHash": "sha256-be+mZwwpSHj43K6bqWXOGZztNpt5kkXh9FekW10nbdk=",
|
"narHash": "sha256-OuxzqKSmzs35aRPsmdmvTwRhUZqp7uLyUIYDRDUuogs=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixvim",
|
"repo": "nixvim",
|
||||||
"rev": "249d109fa88cf0d7a51737993806227c40012707",
|
"rev": "370eb3d69252fa07b81d8c9979cb1a537b74ebb7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1055,11 +1085,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1758662783,
|
"lastModified": 1761730856,
|
||||||
"narHash": "sha256-igrxT+/MnmcftPOHEb+XDwAMq3Xg1Xy7kVYQaHhPlAg=",
|
"narHash": "sha256-t1i5p/vSWwueZSC0Z2BImxx3BjoUDNKyC2mk24krcMY=",
|
||||||
"owner": "NuschtOS",
|
"owner": "NuschtOS",
|
||||||
"repo": "search",
|
"repo": "search",
|
||||||
"rev": "7d4c0fc4ffe3bd64e5630417162e9e04e64b27a4",
|
"rev": "e29de6db0cb3182e9aee75a3b1fd1919d995d85b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1078,11 +1108,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1758108966,
|
"lastModified": 1763319842,
|
||||||
"narHash": "sha256-ytw7ROXaWZ7OfwHrQ9xvjpUWeGVm86pwnEd1QhzawIo=",
|
"narHash": "sha256-YG19IyrTdnVn0l3DvcUYm85u3PaqBt6tI6VvolcuHnA=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "git-hooks.nix",
|
"repo": "git-hooks.nix",
|
||||||
"rev": "54df955a695a84cd47d4a43e08e1feaf90b1fd9b",
|
"rev": "7275fa67fbbb75891c16d9dee7d88e58aea2d761",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1100,11 +1130,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1760663237,
|
"lastModified": 1763984553,
|
||||||
"narHash": "sha256-BflA6U4AM1bzuRMR8QqzPXqh8sWVCNDzOdsxXEguJIc=",
|
"narHash": "sha256-zkbEsU9YFhz7FVzEpIETMpvzB/oKHGEFP21otHe5y5c=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "git-hooks.nix",
|
"repo": "git-hooks.nix",
|
||||||
"rev": "ca5b894d3e3e151ffc1db040b6ce4dcc75d31c37",
|
"rev": "54a9ece994e2ad689085849d507a78e888456613",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1143,11 +1173,11 @@
|
|||||||
"secrets": {
|
"secrets": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1756051653,
|
"lastModified": 1763213908,
|
||||||
"narHash": "sha256-JJkQliqI7zn+esLnKQP82eQEuolNz8IELm/BYGPTvEw=",
|
"narHash": "sha256-VnsvhCOO2h1HRLG+wbmYlKrAQL5HnmvkE+aHcZ8YS/M=",
|
||||||
"ref": "refs/heads/master",
|
"ref": "refs/heads/master",
|
||||||
"rev": "01cf200f61946ac9f259f9163933ea1749cb3531",
|
"rev": "2a17f8af388cd87d12d6340c3601d35ca330956f",
|
||||||
"revCount": 41,
|
"revCount": 42,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "ssh://git@git.vimium.com/jordan/nix-secrets.git"
|
"url": "ssh://git@git.vimium.com/jordan/nix-secrets.git"
|
||||||
},
|
},
|
||||||
@@ -1290,11 +1320,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1760120816,
|
"lastModified": 1762938485,
|
||||||
"narHash": "sha256-gq9rdocpmRZCwLS5vsHozwB6b5nrOBDNc2kkEaTXHfg=",
|
"narHash": "sha256-AlEObg0syDl+Spi4LsZIBrjw+snSVU4T8MOeuZJUJjM=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "treefmt-nix",
|
"repo": "treefmt-nix",
|
||||||
"rev": "761ae7aff00907b607125b2f57338b74177697ed",
|
"rev": "5b4ee75aeefd1e2d5a1cc43cf6ba65eba75e83e4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -1349,11 +1379,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1755354946,
|
"lastModified": 1761431178,
|
||||||
"narHash": "sha256-zdov5f/GcoLQc9qYIS1dUTqtJMeDqmBmo59PAxze6e4=",
|
"narHash": "sha256-xzjC1CV3+wpUQKNF+GnadnkeGUCJX+vgaWIZsnz9tzI=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "xdg-desktop-portal-hyprland",
|
"repo": "xdg-desktop-portal-hyprland",
|
||||||
"rev": "a10726d6a8d0ef1a0c645378f983b6278c42eaa0",
|
"rev": "4b8801228ff958d028f588f0c2b911dbf32297f9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
@@ -102,7 +102,7 @@ in
|
|||||||
};
|
};
|
||||||
desktop = {
|
desktop = {
|
||||||
gnome.enable = lib.mkForce false;
|
gnome.enable = lib.mkForce false;
|
||||||
hyprland.enable = true;
|
hyprland.enable = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -68,7 +68,7 @@ in
|
|||||||
"amdgpu.sched_hw_submission=4"
|
"amdgpu.sched_hw_submission=4"
|
||||||
"audit=0"
|
"audit=0"
|
||||||
];
|
];
|
||||||
kernelPackages = pkgs.linuxPackages_6_16;
|
kernelPackages = pkgs.linuxPackages_6_17;
|
||||||
supportedFilesystems = [ "ntfs" ];
|
supportedFilesystems = [ "ntfs" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -117,6 +117,7 @@
|
|||||||
dates = "weekly";
|
dates = "weekly";
|
||||||
options = "-d --delete-older-than 7d";
|
options = "-d --delete-older-than 7d";
|
||||||
};
|
};
|
||||||
|
registry.unstable.flake = inputs.nixpkgs-unstable;
|
||||||
};
|
};
|
||||||
|
|
||||||
home-manager = {
|
home-manager = {
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ in
|
|||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.unstable.open-webui;
|
package = pkgs.unstable.open-webui;
|
||||||
port = 8081;
|
port = 8081;
|
||||||
|
host = "0.0.0.0";
|
||||||
environment =
|
environment =
|
||||||
let
|
let
|
||||||
clientId = "open-webui";
|
clientId = "open-webui";
|
||||||
|
|||||||
@@ -33,25 +33,6 @@
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
"chat.ai.vimium.com" = {
|
|
||||||
listen = [
|
|
||||||
{
|
|
||||||
addr = "127.0.0.1";
|
|
||||||
port = 8001;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
locations."/" = {
|
|
||||||
proxyPass = "http://localhost:8081";
|
|
||||||
extraConfig = proxyConfig + ''
|
|
||||||
# Disable proxy buffering for better streaming response from models
|
|
||||||
proxy_buffering off;
|
|
||||||
|
|
||||||
# Increase max request size for large attachments and long audio messages
|
|
||||||
client_max_body_size 20M;
|
|
||||||
proxy_read_timeout 10m;
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
"jellyfin.vimium.com" = {
|
"jellyfin.vimium.com" = {
|
||||||
default = true;
|
default = true;
|
||||||
listen = [
|
listen = [
|
||||||
|
|||||||
34
hosts/odyssey/comfyui-docker.nix
Normal file
34
hosts/odyssey/comfyui-docker.nix
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
{
|
||||||
|
hardware.graphics.enable32Bit = true;
|
||||||
|
hardware.nvidia-container-toolkit.enable = true;
|
||||||
|
|
||||||
|
virtualisation.docker.enable = true;
|
||||||
|
|
||||||
|
virtualisation.oci-containers = {
|
||||||
|
backend = "docker";
|
||||||
|
containers = {
|
||||||
|
comfyui = {
|
||||||
|
image = "ghcr.io/clsferguson/comfyui-docker:latest";
|
||||||
|
autoStart = true;
|
||||||
|
ports = [ "8188:8188" ];
|
||||||
|
extraOptions = [
|
||||||
|
"--device=nvidia.com/gpu=all"
|
||||||
|
"--ipc=host"
|
||||||
|
];
|
||||||
|
volumes = [
|
||||||
|
"/home/jordan/ComfyUI/user:/app/ComfyUI/user"
|
||||||
|
"/home/jordan/ComfyUI/custom_nodes:/app/ComfyUI/custom_nodes"
|
||||||
|
"/home/jordan/ComfyUI/models:/app/ComfyUI/models:rw"
|
||||||
|
"/home/jordan/ComfyUI/input:/app/ComfyUI/input:rw"
|
||||||
|
"/home/jordan/ComfyUI/output:/app/ComfyUI/output:rw"
|
||||||
|
];
|
||||||
|
environment = {
|
||||||
|
TZ = "Europe/London";
|
||||||
|
PUID = "1000";
|
||||||
|
PGID = "1000";
|
||||||
|
COMFY_AUTO_INSTALL = "1";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -7,7 +7,9 @@
|
|||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
|
./comfyui-docker.nix
|
||||||
./gitea-runner.nix
|
./gitea-runner.nix
|
||||||
|
./home-assistant
|
||||||
./nix-serve.nix
|
./nix-serve.nix
|
||||||
../desktop.nix
|
../desktop.nix
|
||||||
../../users/jordan
|
../../users/jordan
|
||||||
|
|||||||
@@ -44,6 +44,7 @@
|
|||||||
powerManagement.enable = true;
|
powerManagement.enable = true;
|
||||||
nvidiaSettings = false;
|
nvidiaSettings = false;
|
||||||
};
|
};
|
||||||
|
nvidia-container-toolkit.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
powerManagement.cpuFreqGovernor = "schedutil";
|
powerManagement.cpuFreqGovernor = "schedutil";
|
||||||
|
|||||||
63
hosts/odyssey/home-assistant/dashboards.nix
Normal file
63
hosts/odyssey/home-assistant/dashboards.nix
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
{
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
*******************
|
||||||
|
- Service Dashboard for stats (energy usage, bandwidth etc.)
|
||||||
|
- Dashboard fragment per room
|
||||||
|
- Tablet in each room can display just its associated fragment
|
||||||
|
- Per user dynamic dashboard that shows the dashboard fragment for the room
|
||||||
|
you are in using Bluetooth presence detection
|
||||||
|
|
||||||
|
Rooms: [Auto, Bedroom, Kitchen, Living Room, Office]
|
||||||
|
|
||||||
|
Shared: Date/time, Guest Override action, Weather, Air quality
|
||||||
|
|
||||||
|
Bedroom:
|
||||||
|
- Temperature
|
||||||
|
- Minimal Lights action
|
||||||
|
- Individual light cards
|
||||||
|
- Sheets last changed
|
||||||
|
- Plant last watered
|
||||||
|
|
||||||
|
Kitchen:
|
||||||
|
- Temperature
|
||||||
|
- Individual light cards
|
||||||
|
- Water filter age
|
||||||
|
|
||||||
|
Living Room:
|
||||||
|
- Temperature
|
||||||
|
- Turn TV on action
|
||||||
|
* dynamic card to start Movie Mode
|
||||||
|
- Individual light cards
|
||||||
|
- Plant last watered
|
||||||
|
|
||||||
|
Office:
|
||||||
|
- Temperature
|
||||||
|
- Individual light cards
|
||||||
|
- Bandwidth usage
|
||||||
|
- Computer stats
|
||||||
|
|
||||||
|
Primary IEEE address: 00:12:4B:00:29:E8:B1:9E
|
||||||
|
|
||||||
|
Random inspiration words:
|
||||||
|
- "Temp Disable Office Motion"
|
||||||
|
- "Main Lights {Bright,Dim,Warm}"
|
||||||
|
- "Robot Vacuum"
|
||||||
|
- "Living Room TV"
|
||||||
|
- "Morning wakeup"
|
||||||
|
- "Going to sleep early"
|
||||||
|
- "Take out bins"
|
||||||
|
- "Video Conference"
|
||||||
|
- "Gaming"
|
||||||
|
- Monitor power usage to tell when something has started/stopped
|
||||||
|
- Vibration sensor for kitchen drawer
|
||||||
|
- Todo list for dinner schedule
|
||||||
|
- Air quality sensor in kitchen
|
||||||
|
- Notification to close vents when outdoor air quality is bad
|
||||||
|
- "TV Lights Lock" - don't auto dim-lights on play/pause
|
||||||
|
*********************
|
||||||
|
*/
|
||||||
|
}
|
||||||
@@ -8,7 +8,6 @@
|
|||||||
imports = [
|
imports = [
|
||||||
inputs.nixos-hardware.nixosModules.raspberry-pi-4
|
inputs.nixos-hardware.nixosModules.raspberry-pi-4
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
./home-assistant
|
|
||||||
./snapcast.nix
|
./snapcast.nix
|
||||||
../server.nix
|
../server.nix
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ in
|
|||||||
{
|
{
|
||||||
name = "home.mesh.vimium.net";
|
name = "home.mesh.vimium.net";
|
||||||
type = "A";
|
type = "A";
|
||||||
value = "100.64.0.7";
|
value = "100.64.0.5";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
magic_dns = true;
|
magic_dns = true;
|
||||||
@@ -60,7 +60,7 @@ in
|
|||||||
forceSSL = true;
|
forceSSL = true;
|
||||||
enableACME = true;
|
enableACME = true;
|
||||||
locations."/" = {
|
locations."/" = {
|
||||||
proxyPass = "http://localhost:${toString config.services.headscale.port}";
|
proxyPass = "http://127.0.0.1:${toString config.services.headscale.port}";
|
||||||
proxyWebsockets = true;
|
proxyWebsockets = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ in
|
|||||||
uri = "https://${domain}";
|
uri = "https://${domain}";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
package = pkgs.unstable.kanidmWithSecretProvisioning;
|
package = pkgs.unstable.kanidmWithSecretProvisioning_1_7;
|
||||||
enableClient = true;
|
enableClient = true;
|
||||||
enableServer = true;
|
enableServer = true;
|
||||||
clientSettings = {
|
clientSettings = {
|
||||||
|
|||||||
@@ -136,16 +136,16 @@ in
|
|||||||
];
|
];
|
||||||
locations = {
|
locations = {
|
||||||
"/" = {
|
"/" = {
|
||||||
proxyPass = "http://localhost:8008";
|
proxyPass = "http://127.0.0.1:8008";
|
||||||
extraConfig = proxyConfig;
|
extraConfig = proxyConfig;
|
||||||
};
|
};
|
||||||
"/_matrix" = {
|
"/_matrix" = {
|
||||||
proxyPass = "http://localhost:8008";
|
proxyPass = "http://127.0.0.1:8008";
|
||||||
extraConfig = proxyConfig + ''
|
extraConfig = proxyConfig + ''
|
||||||
client_max_body_size 50M;
|
client_max_body_size 50M;
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
"/_synapse/client".proxyPass = "http://localhost:8008";
|
"/_synapse/client".proxyPass = "http://127.0.0.1:8008";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
"${serverName}" =
|
"${serverName}" =
|
||||||
|
|||||||
@@ -82,14 +82,33 @@ in
|
|||||||
maxSize = "100m";
|
maxSize = "100m";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
proxyResolveWhileRunning = true;
|
||||||
|
resolver.addresses = [ "100.100.100.100" ];
|
||||||
|
upstreams = {
|
||||||
|
jellyfin.servers = {
|
||||||
|
"library.mesh.vimium.net:8096" = {
|
||||||
|
fail_timeout = "30s";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
open-webui.servers = {
|
||||||
|
"library.mesh.vimium.net:8081" = {
|
||||||
|
fail_timeout = "30s";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
skycam.servers = {
|
||||||
|
"skycam.mesh.vimium.net:1984" = {
|
||||||
|
fail_timeout = "30s";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
virtualHosts = {
|
virtualHosts = {
|
||||||
## Static sites
|
## Proxied sites
|
||||||
"chat.ai.vimium.com" = {
|
"chat.ai.vimium.com" = {
|
||||||
forceSSL = true;
|
forceSSL = true;
|
||||||
enableACME = true;
|
enableACME = true;
|
||||||
extraConfig = nginxErrorPages + nginxEdgeHeaders;
|
extraConfig = nginxErrorPages + nginxEdgeHeaders;
|
||||||
locations."/" = {
|
locations."/" = {
|
||||||
proxyPass = "http://localhost:8001";
|
proxyPass = "http://open-webui";
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
proxy_set_header X-Forwarded-Proto $scheme;
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
@@ -114,7 +133,7 @@ in
|
|||||||
enableACME = true;
|
enableACME = true;
|
||||||
extraConfig = nginxErrorPages + nginxEdgeHeaders;
|
extraConfig = nginxErrorPages + nginxEdgeHeaders;
|
||||||
locations."/" = {
|
locations."/" = {
|
||||||
proxyPass = "http://localhost:8000";
|
proxyPass = "http://jellyfin";
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
proxy_set_header X-Forwarded-Proto $scheme;
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
@@ -129,7 +148,12 @@ in
|
|||||||
proxy_set_header Connection "upgrade";
|
proxy_set_header Connection "upgrade";
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
locations."/metrics" = {
|
||||||
|
return = "404";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
## Static sites
|
||||||
"jdholt.com" = {
|
"jdholt.com" = {
|
||||||
forceSSL = true;
|
forceSSL = true;
|
||||||
enableACME = true;
|
enableACME = true;
|
||||||
@@ -140,11 +164,8 @@ in
|
|||||||
};
|
};
|
||||||
locations."/skycam/snapshot.jpg" = {
|
locations."/skycam/snapshot.jpg" = {
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
set $backend "skycam.mesh.vimium.net:1984";
|
set $args "";
|
||||||
|
proxy_pass http://skycam/api/frame.jpeg?src=rpicam;
|
||||||
resolver 100.100.100.100;
|
|
||||||
|
|
||||||
proxy_pass http://$backend/api/frame.jpeg?src=rpicam;
|
|
||||||
proxy_cache skycam_cache;
|
proxy_cache skycam_cache;
|
||||||
proxy_cache_valid any 10s;
|
proxy_cache_valid any 10s;
|
||||||
proxy_ignore_headers Cache-Control Expires Set-Cookie;
|
proxy_ignore_headers Cache-Control Expires Set-Cookie;
|
||||||
@@ -181,6 +202,7 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
## Redirects
|
## Redirects
|
||||||
// (mkRedirect "h0lt.com" "jdholt.com")
|
// (mkRedirect "h0lt.com" "jdholt.com")
|
||||||
// (mkRedirect "jordanholt.xyz" "jdholt.com")
|
// (mkRedirect "jordanholt.xyz" "jdholt.com")
|
||||||
|
|||||||
@@ -1,33 +0,0 @@
|
|||||||
{
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
|
|
||||||
{
|
|
||||||
imports = [
|
|
||||||
inputs.disko.nixosModules.disko
|
|
||||||
./hardware-configuration.nix
|
|
||||||
./disko-config.nix
|
|
||||||
../server.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
nixpkgs = {
|
|
||||||
hostPlatform = "x86_64-linux";
|
|
||||||
};
|
|
||||||
|
|
||||||
age.rekey.hostPubkey = ./ssh_host_ed25519_key.pub;
|
|
||||||
|
|
||||||
networking = {
|
|
||||||
hostId = "60de4af8";
|
|
||||||
firewall = {
|
|
||||||
enable = true;
|
|
||||||
allowedTCPPorts = [
|
|
||||||
22 # SSH
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
modules.services.tailscale.isExitNode = true;
|
|
||||||
|
|
||||||
system.stateVersion = "25.05";
|
|
||||||
}
|
|
||||||
@@ -1,55 +0,0 @@
|
|||||||
{ lib, ... }:
|
|
||||||
{
|
|
||||||
disko.devices = {
|
|
||||||
disk.disk1 = {
|
|
||||||
device = lib.mkDefault "/dev/sda";
|
|
||||||
type = "disk";
|
|
||||||
content = {
|
|
||||||
type = "gpt";
|
|
||||||
partitions = {
|
|
||||||
boot = {
|
|
||||||
name = "boot";
|
|
||||||
size = "2M";
|
|
||||||
type = "EF02";
|
|
||||||
};
|
|
||||||
esp = {
|
|
||||||
name = "ESP";
|
|
||||||
size = "300M";
|
|
||||||
type = "EF00";
|
|
||||||
content = {
|
|
||||||
type = "filesystem";
|
|
||||||
format = "vfat";
|
|
||||||
mountpoint = "/boot";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
root = {
|
|
||||||
name = "root";
|
|
||||||
size = "100%";
|
|
||||||
content = {
|
|
||||||
type = "lvm_pv";
|
|
||||||
vg = "pool";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
lvm_vg = {
|
|
||||||
pool = {
|
|
||||||
type = "lvm_vg";
|
|
||||||
lvs = {
|
|
||||||
root = {
|
|
||||||
size = "100%FREE";
|
|
||||||
content = {
|
|
||||||
type = "filesystem";
|
|
||||||
format = "ext4";
|
|
||||||
mountpoint = "/";
|
|
||||||
mountOptions = [
|
|
||||||
"defaults"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
{
|
|
||||||
modulesPath,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
|
|
||||||
{
|
|
||||||
imports = [
|
|
||||||
(modulesPath + "/profiles/qemu-guest.nix")
|
|
||||||
];
|
|
||||||
|
|
||||||
boot = {
|
|
||||||
initrd = {
|
|
||||||
availableKernelModules = [
|
|
||||||
"ata_piix"
|
|
||||||
"uhci_hcd"
|
|
||||||
"xen_blkfront"
|
|
||||||
"vmw_pvscsi"
|
|
||||||
];
|
|
||||||
kernelModules = [ "nvme" ];
|
|
||||||
};
|
|
||||||
loader.grub = {
|
|
||||||
efiSupport = true;
|
|
||||||
efiInstallAsRemovable = true;
|
|
||||||
};
|
|
||||||
tmp.cleanOnBoot = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
zramSwap.enable = true;
|
|
||||||
}
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG1Ee9QHeGSVpmruNaMdaycYyNdTXVRWpwUk1EBEM7UW
|
|
||||||
@@ -47,7 +47,6 @@ in
|
|||||||
gnomeExtensions.dash-to-panel
|
gnomeExtensions.dash-to-panel
|
||||||
gnomeExtensions.desktop-cube
|
gnomeExtensions.desktop-cube
|
||||||
gnomeExtensions.easyScreenCast
|
gnomeExtensions.easyScreenCast
|
||||||
gnomeExtensions.espresso
|
|
||||||
gnomeExtensions.fly-pie
|
gnomeExtensions.fly-pie
|
||||||
gnomeExtensions.forge
|
gnomeExtensions.forge
|
||||||
gnomeExtensions.gsconnect
|
gnomeExtensions.gsconnect
|
||||||
|
|||||||
@@ -54,7 +54,6 @@
|
|||||||
"pi"
|
"pi"
|
||||||
"skycam"
|
"skycam"
|
||||||
"vps1"
|
"vps1"
|
||||||
"vps2"
|
|
||||||
] mkDeployNode;
|
] mkDeployNode;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -17,24 +17,4 @@
|
|||||||
".local/share/jellyfinmediaplayer"
|
".local/share/jellyfinmediaplayer"
|
||||||
".local/share/Jellyfin Media Player"
|
".local/share/Jellyfin Media Player"
|
||||||
];
|
];
|
||||||
|
|
||||||
systemd.user.services.jellyfin-media-player = {
|
|
||||||
Unit = {
|
|
||||||
Description = "Jellyfin Media Player in Gamescope";
|
|
||||||
After = [
|
|
||||||
"graphical.target"
|
|
||||||
"default.target"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
Service = {
|
|
||||||
ExecStart = ''
|
|
||||||
${pkgs.gamescope}/bin/gamescope --hdr-enabled --rt --backend drm -- \
|
|
||||||
${pkgs.jellyfin-media-player}/bin/jellyfinmediaplayer --scale-factor 2 --tv --fullscreen
|
|
||||||
'';
|
|
||||||
Restart = "always";
|
|
||||||
};
|
|
||||||
Install = {
|
|
||||||
WantedBy = [ "default.target" ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,21 +14,4 @@
|
|||||||
".local/share/vulkan"
|
".local/share/vulkan"
|
||||||
".steam"
|
".steam"
|
||||||
];
|
];
|
||||||
|
|
||||||
systemd.user.services.steam-big-picture = {
|
|
||||||
Unit = {
|
|
||||||
Description = "Steam Big Picture in Gamescope";
|
|
||||||
After = [
|
|
||||||
"graphical.target"
|
|
||||||
"default.target"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
Service = {
|
|
||||||
ExecStart = ''
|
|
||||||
${pkgs.gamescope}/bin/gamescope --rt --backend drm --steam -- \
|
|
||||||
${pkgs.steam}/bin/steam -pipewire-dmabuf -tenfoot
|
|
||||||
'';
|
|
||||||
Restart = "always";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ in
|
|||||||
];
|
];
|
||||||
group = "users";
|
group = "users";
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
|
password = "";
|
||||||
shell = pkgs.zsh;
|
shell = pkgs.zsh;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -52,10 +53,32 @@ in
|
|||||||
sessionVariables = {
|
sessionVariables = {
|
||||||
ZDOTDIR = "~/.config/zsh";
|
ZDOTDIR = "~/.config/zsh";
|
||||||
};
|
};
|
||||||
|
pointerCursor = {
|
||||||
|
enable = true;
|
||||||
|
size = 64;
|
||||||
|
name = "macOS";
|
||||||
|
package = pkgs.apple-cursor;
|
||||||
|
gtk.enable = true;
|
||||||
|
x11.enable = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
fonts.fontconfig.enable = true;
|
fonts.fontconfig.enable = true;
|
||||||
|
|
||||||
|
programs.firefox = {
|
||||||
|
enable = true;
|
||||||
|
profiles.Default = {
|
||||||
|
search = {
|
||||||
|
default = "ddg";
|
||||||
|
privateDefault = "ddg";
|
||||||
|
force = true;
|
||||||
|
};
|
||||||
|
settings = {
|
||||||
|
"layout.css.devPixelsPerPx" = 1.5;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
programs.zsh = {
|
programs.zsh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableCompletion = true;
|
enableCompletion = true;
|
||||||
@@ -64,11 +87,99 @@ in
|
|||||||
xdg.enable = true;
|
xdg.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
services.getty = {
|
services.displayManager = {
|
||||||
autologinOnce = true;
|
enable = true;
|
||||||
autologinUser = "guest";
|
sessionPackages =
|
||||||
|
let
|
||||||
|
firefoxDesktopFile = pkgs.writeTextFile {
|
||||||
|
name = "firefox-desktop-entry";
|
||||||
|
destination = "/share/wayland-sessions/firefox.desktop";
|
||||||
|
text = ''
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=Firefox
|
||||||
|
Comment=Desktop session for web browsing
|
||||||
|
Exec=${pkgs.gamescope}/bin/gamescope --rt --backend drm --expose-wayland -W 3840 -H 2160 -- MOZ_ENABLE_WAYLAND=1 ${pkgs.firefox}/bin/firefox https://www.youtube.com/
|
||||||
|
Type=Application
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
jellyfinDesktopFile = pkgs.writeTextFile {
|
||||||
|
name = "jellyfin-desktop-entry";
|
||||||
|
destination = "/share/wayland-sessions/jellyfin.desktop";
|
||||||
|
text = ''
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=Jellyfin
|
||||||
|
Comment=Desktop session for music, movies, and TV
|
||||||
|
Exec=${pkgs.gamescope}/bin/gamescope --rt --backend drm -W 3840 -H 2160 -- ${pkgs.jellyfin-media-player}/bin/jellyfinmediaplayer --scale-factor 2 --tv --fullscreen
|
||||||
|
Type=Application
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
steamDesktopFile = pkgs.writeTextFile {
|
||||||
|
name = "steam-desktop-entry";
|
||||||
|
destination = "/share/wayland-sessions/steam.desktop";
|
||||||
|
text = ''
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=Steam
|
||||||
|
Comment=Desktop session for gaming
|
||||||
|
Exec=${pkgs.gamescope}/bin/gamescope --rt --backend drm --steam -- ${pkgs.steam}/bin/steam -pipewire-dmabuf -tenfoot
|
||||||
|
Type=Application
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
firefoxSession = pkgs.symlinkJoin {
|
||||||
|
name = "firefox-session";
|
||||||
|
paths = [ firefoxDesktopFile ];
|
||||||
|
passthru.providedSessions = [ "firefox" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
jellyfinSession = pkgs.symlinkJoin {
|
||||||
|
name = "jellyfin-session";
|
||||||
|
paths = [ jellyfinDesktopFile ];
|
||||||
|
passthru.providedSessions = [ "jellyfin" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
steamSession = pkgs.symlinkJoin {
|
||||||
|
name = "steam-session";
|
||||||
|
paths = [ steamDesktopFile ];
|
||||||
|
passthru.providedSessions = [ "steam" ];
|
||||||
|
};
|
||||||
|
in
|
||||||
|
[
|
||||||
|
firefoxSession
|
||||||
|
jellyfinSession
|
||||||
|
steamSession
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services.greetd =
|
||||||
|
let
|
||||||
|
desktops = config.services.displayManager.sessionData.desktops;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
default_session = {
|
||||||
|
command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time --sessions ${desktops}/share/xsessions:${desktops}/share/wayland-sessions";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# security.pam.services = {
|
||||||
|
# greetd.text = ''
|
||||||
|
# auth requisite pam_nologin.so
|
||||||
|
# auth sufficient pam_succeed_if.so user = ${name} quiet_success
|
||||||
|
# auth required pam_unix.so
|
||||||
|
#
|
||||||
|
# account sufficient pam_unix.so
|
||||||
|
#
|
||||||
|
# password required pam_deny.so
|
||||||
|
#
|
||||||
|
# session optional pam_keyinit.so revoke
|
||||||
|
# session include login
|
||||||
|
# '';
|
||||||
|
# };
|
||||||
|
|
||||||
# Workaround: https://github.com/nix-community/home-manager/issues/7166
|
# Workaround: https://github.com/nix-community/home-manager/issues/7166
|
||||||
systemd.services."home-manager-${name}".serviceConfig = {
|
systemd.services."home-manager-${name}".serviceConfig = {
|
||||||
RemainAfterExit = "yes";
|
RemainAfterExit = "yes";
|
||||||
|
|||||||
@@ -13,8 +13,8 @@
|
|||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
jellyfin-media-player
|
jellyfin-media-player
|
||||||
lutris
|
unstable.lutris
|
||||||
unstable.pcsx2
|
pcsx2
|
||||||
xemu
|
xemu
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,6 +11,17 @@
|
|||||||
viAlias = true;
|
viAlias = true;
|
||||||
vimAlias = true;
|
vimAlias = true;
|
||||||
|
|
||||||
|
extraConfigLua = ''
|
||||||
|
if vim.g.neovide then
|
||||||
|
vim.g.neovide_opacity = 0.8
|
||||||
|
vim.g.neovide_normal_opacity = 0.8
|
||||||
|
-- vim.g.neovide_cursor_vfx_mode = "pixiedust"
|
||||||
|
vim.g.neovide_floating_blur_amount_x = 2.0
|
||||||
|
vim.g.neovide_floating_blur_amount_y = 2.0
|
||||||
|
vim.g.neovide_floating_corner_radius = 0.2
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
|
||||||
opts = {
|
opts = {
|
||||||
number = true;
|
number = true;
|
||||||
tabstop = 2;
|
tabstop = 2;
|
||||||
@@ -35,6 +46,14 @@
|
|||||||
providers.wl-copy.enable = true;
|
providers.wl-copy.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
colorschemes.onedark = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
style = "darker";
|
||||||
|
transparent = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
plugins.cmp = {
|
plugins.cmp = {
|
||||||
enable = true;
|
enable = true;
|
||||||
autoEnableSources = true;
|
autoEnableSources = true;
|
||||||
|
|||||||
@@ -8,6 +8,39 @@
|
|||||||
|
|
||||||
programs.firefox = {
|
programs.firefox = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
policies = {
|
||||||
|
DisableFirefoxAccounts = true;
|
||||||
|
DisableFirefoxStudies = true;
|
||||||
|
DisableTelemetry = true;
|
||||||
|
DisableFeedbackCommands = true;
|
||||||
|
DisablePocket = true;
|
||||||
|
DisableSetDesktopBackground = true;
|
||||||
|
DontCheckDefaultBrowser = true;
|
||||||
|
NoDefaultBookmarks = true;
|
||||||
|
SkipTermsOfUse = true;
|
||||||
|
GenerativeAI = {
|
||||||
|
Chatbot = false;
|
||||||
|
LinkPreviews = false;
|
||||||
|
TabGroups = false;
|
||||||
|
};
|
||||||
|
ExtensionSettings = {
|
||||||
|
"uBlock0@raymondhill.net" = {
|
||||||
|
installation_mode = "force_installed";
|
||||||
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
|
||||||
|
private_browsing = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
SearchEngines = {
|
||||||
|
Default = "DuckDuckGo";
|
||||||
|
Remove = [
|
||||||
|
"Amazon.com"
|
||||||
|
"Bing"
|
||||||
|
"eBay"
|
||||||
|
"Google"
|
||||||
|
"Perplexity"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
profiles.Default = {
|
profiles.Default = {
|
||||||
search = {
|
search = {
|
||||||
default = "ddg";
|
default = "ddg";
|
||||||
@@ -47,6 +80,9 @@
|
|||||||
"browser.urlbar.suggest.calculator" = true;
|
"browser.urlbar.suggest.calculator" = true;
|
||||||
"browser.urlbar.trending.featureGate" = false;
|
"browser.urlbar.trending.featureGate" = false;
|
||||||
"browser.urlbar.unitConversion.enabled" = true;
|
"browser.urlbar.unitConversion.enabled" = true;
|
||||||
|
"browser.aboutConfig.showWarning" = false;
|
||||||
|
"browser.aboutwelcome.enabled" = false;
|
||||||
|
"browser.shell.checkDefaultBrowser" = false;
|
||||||
"cookiebanners.service.mode" = 1;
|
"cookiebanners.service.mode" = 1;
|
||||||
"cookiebanners.service.mode.privateBrowsing" = 1;
|
"cookiebanners.service.mode.privateBrowsing" = 1;
|
||||||
"network.IDN_show_punycode" = true;
|
"network.IDN_show_punycode" = true;
|
||||||
@@ -99,6 +135,7 @@
|
|||||||
## Privacy
|
## Privacy
|
||||||
"dom.private-attribution.submission.enabled" = false;
|
"dom.private-attribution.submission.enabled" = false;
|
||||||
# "privacy.resistFingerprinting" = true;
|
# "privacy.resistFingerprinting" = true;
|
||||||
|
"privacy.resistFingerprinting.randomization.daily_reset.enabled" = true;
|
||||||
"privacy.resistFingerprinting.autoDeclineNoUserInputCanvasPrompts" = false;
|
"privacy.resistFingerprinting.autoDeclineNoUserInputCanvasPrompts" = false;
|
||||||
"privacy.trackingprotection.enabled" = true;
|
"privacy.trackingprotection.enabled" = true;
|
||||||
"privacy.trackingprotection.pbmode.enabled" = true;
|
"privacy.trackingprotection.pbmode.enabled" = true;
|
||||||
@@ -135,6 +172,13 @@
|
|||||||
"dom.webnotifications.serviceworker.enabled" = false;
|
"dom.webnotifications.serviceworker.enabled" = false;
|
||||||
"permissions.default.desktop-notification" = 2;
|
"permissions.default.desktop-notification" = 2;
|
||||||
|
|
||||||
|
## ML
|
||||||
|
"browser.ml.enable" = false;
|
||||||
|
"browser.ml.chat.enable" = false;
|
||||||
|
"browser.ml.chat.menu" = false;
|
||||||
|
"browser.ml.linkpreview.enable" = false;
|
||||||
|
"browser.tabs.groups.smart.enabled" = false;
|
||||||
|
|
||||||
## DOM / JavaScript
|
## DOM / JavaScript
|
||||||
# "dom.event.clipboardevents.enabled" = false;
|
# "dom.event.clipboardevents.enabled" = false;
|
||||||
"middlemouse.paste" = false;
|
"middlemouse.paste" = false;
|
||||||
@@ -202,6 +246,31 @@
|
|||||||
"plugin.state.flash" = 0;
|
"plugin.state.flash" = 0;
|
||||||
"plugin.state.java" = 0;
|
"plugin.state.java" = 0;
|
||||||
|
|
||||||
|
# Fullscreen
|
||||||
|
"full-screen-api.transition-duration.enter" = "0 0";
|
||||||
|
"full-screen-api.transition-duration.leave" = "0";
|
||||||
|
"full-screen-api.warning.timeout" = 0;
|
||||||
|
|
||||||
|
# Update management
|
||||||
|
"app.update.auto" = false;
|
||||||
|
"app.update.background.enabled" = false;
|
||||||
|
"app.update.url" = "";
|
||||||
|
|
||||||
|
# Sync
|
||||||
|
"services.sync.engine.addresses" = false;
|
||||||
|
"services.sync.engine.creditcards" = false;
|
||||||
|
"services.sync.engine.addons" = false;
|
||||||
|
"services.sync.engine.bookmarks" = false;
|
||||||
|
"services.sync.engine.history" = false;
|
||||||
|
"services.sync.engine.passwords" = false;
|
||||||
|
"services.sync.engine.prefs" = false;
|
||||||
|
"services.sync.engine.tabs" = false;
|
||||||
|
"identity.fxaccounts.enabled" = false;
|
||||||
|
|
||||||
|
# Notifications and CFR
|
||||||
|
"browser.messaging-system.whatsNewPanel.enabled" = false;
|
||||||
|
"browser.cfr.enabled" = false;
|
||||||
|
|
||||||
## Misc
|
## Misc
|
||||||
"browser.selfsupport.url" = "";
|
"browser.selfsupport.url" = "";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -299,7 +299,15 @@ in
|
|||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
background = "#000000";
|
background = "#000000";
|
||||||
background_opacity = 0.7;
|
background_opacity = 0.8;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.neovide = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.unstable.neovide;
|
||||||
|
settings = {
|
||||||
|
font.size = 16.0;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -190,9 +190,12 @@ in
|
|||||||
bat
|
bat
|
||||||
btop
|
btop
|
||||||
fd
|
fd
|
||||||
|
file
|
||||||
jq
|
jq
|
||||||
ncdu
|
ncdu
|
||||||
nix-zsh-completions
|
nix-zsh-completions
|
||||||
|
p7zip-rar
|
||||||
ripgrep
|
ripgrep
|
||||||
|
unzip
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,10 +24,10 @@
|
|||||||
inkscape
|
inkscape
|
||||||
jellyfin-media-player
|
jellyfin-media-player
|
||||||
krita
|
krita
|
||||||
lutris
|
unstable.lutris
|
||||||
mkvtoolnix
|
mkvtoolnix
|
||||||
# obs-studio
|
# obs-studio
|
||||||
unstable.pcsx2
|
pcsx2
|
||||||
qbittorrent
|
qbittorrent
|
||||||
xemu
|
xemu
|
||||||
];
|
];
|
||||||
|
|||||||
Reference in New Issue
Block a user