Compare commits
18 Commits
de0d6b0d7e
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 63070a33c4 | |||
| 04e42db270 | |||
| 535a3e6d6e | |||
| 78eaa4674a | |||
| b4ae5a89aa | |||
| ee0447931e | |||
| 0b73b99654 | |||
| 438ce4c58e | |||
| 0b0634530f | |||
| 03a85fc670 | |||
| 2c218aef72 | |||
| 01af2f43ea | |||
| 5a61ac8367 | |||
| 421b9a7cd6 | |||
| 0a770e4094 | |||
| 8cfe8b7c6f | |||
| 497ca74787 | |||
| 83137ba3f3 |
Generated
+688
-32
@@ -1,5 +1,42 @@
|
|||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
|
"aquamarine": {
|
||||||
|
"inputs": {
|
||||||
|
"hyprutils": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprutils"
|
||||||
|
],
|
||||||
|
"hyprwayland-scanner": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprwayland-scanner"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1778620495,
|
||||||
|
"narHash": "sha256-Gu7UhWjwKCgSiVC3Qz/Rc7cYi9DNuDTBxYzg3kfLvfM=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "aquamarine",
|
||||||
|
"rev": "be35f75ac305f430f5f9d89b5f5a4af59ca7567e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "aquamarine",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"bcdl-free": {
|
"bcdl-free": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs"
|
||||||
@@ -33,7 +70,44 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-compat": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1767039857,
|
||||||
|
"narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-parts": {
|
"flake-parts": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"nixvim",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1782949081,
|
||||||
|
"narHash": "sha256-vp6Y/Grm98ESt6ceOkWiHWyZRDV3J1RID4w+6NWK9yA=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "17c9d6cdfc60c64f4ee8d306f9bc0b4ccb51481e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-lib": "nixpkgs-lib"
|
"nixpkgs-lib": "nixpkgs-lib"
|
||||||
},
|
},
|
||||||
@@ -71,7 +145,7 @@
|
|||||||
},
|
},
|
||||||
"flake-utils_2": {
|
"flake-utils_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_2"
|
"systems": "systems_4"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731533236,
|
"lastModified": 1731533236,
|
||||||
@@ -87,6 +161,29 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"gitignore": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"pre-commit-hooks",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1709087332,
|
||||||
|
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "gitignore.nix",
|
||||||
|
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "gitignore.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"gsr-ui": {
|
"gsr-ui": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils",
|
||||||
@@ -95,11 +192,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1785085647,
|
"lastModified": 1785593957,
|
||||||
"narHash": "sha256-VerKUIpQHGnXgpmRXzh767X0BJNjpACWdVp391t8n1s=",
|
"narHash": "sha256-16DqCLB7701mKEvsNCMNay/Mv69ZGvNnQ8nsvNQCdIQ=",
|
||||||
"owner": "rPlakama",
|
"owner": "rPlakama",
|
||||||
"repo": "gsr-ui-nix",
|
"repo": "gsr-ui-nix",
|
||||||
"rev": "1f9a46bcdde0e805ced86a0e995f1449f8f7a12f",
|
"rev": "c1ac4ac2fd962b7c985edb1e420bdc5b3dce56f6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -115,11 +212,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1785306346,
|
"lastModified": 1785531816,
|
||||||
"narHash": "sha256-DScBkW0fOgpGPK2trNoX3ryLTlaC14+gglFo/BhGJ4g=",
|
"narHash": "sha256-vkMnV0JIyw+g/NmcfoajlGaAO+9a0ezia+FZohQJrik=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "e705714e918c3b11affcdd15db2cbe3a070420a0",
|
"rev": "bf9ce9fec78f95f374e8dd3b503863a3ec128ebe",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -149,10 +246,380 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"hyprcursor": {
|
||||||
|
"inputs": {
|
||||||
|
"hyprlang": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprlang"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1776511930,
|
||||||
|
"narHash": "sha256-fCpwFiTW0rT7oKJqr3cqHMnkwypSwQKpbtUEtxdkgrM=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprcursor",
|
||||||
|
"rev": "39435900785d0c560c6ae8777d29f28617d031ef",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprcursor",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"hyprgraphics": {
|
||||||
|
"inputs": {
|
||||||
|
"hyprutils": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprutils"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1776426399,
|
||||||
|
"narHash": "sha256-RUESLKNikIeEq9ymGJ6nmcDXiSFQpUW1IhJ245nL3xM=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprgraphics",
|
||||||
|
"rev": "68d064434787cf1ed4a2fe257c03c5f52f33cf84",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprgraphics",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"hyprland": {
|
||||||
|
"inputs": {
|
||||||
|
"aquamarine": "aquamarine",
|
||||||
|
"hyprcursor": "hyprcursor",
|
||||||
|
"hyprgraphics": "hyprgraphics",
|
||||||
|
"hyprland-guiutils": "hyprland-guiutils",
|
||||||
|
"hyprland-protocols": "hyprland-protocols",
|
||||||
|
"hyprlang": "hyprlang",
|
||||||
|
"hyprutils": "hyprutils",
|
||||||
|
"hyprwayland-scanner": "hyprwayland-scanner",
|
||||||
|
"hyprwire": "hyprwire",
|
||||||
|
"nixpkgs": "nixpkgs_2",
|
||||||
|
"pre-commit-hooks": "pre-commit-hooks",
|
||||||
|
"systems": "systems_2",
|
||||||
|
"xdph": "xdph"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1779392427,
|
||||||
|
"narHash": "sha256-0SiD8JBx6cU0KL1XjLMsR/nSZB5XY3uhrNnvfxH0CtY=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "Hyprland",
|
||||||
|
"rev": "8b7110cc68662a343b6839f292ac0f44a64c3364",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "Hyprland",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"hyprland-guiutils": {
|
||||||
|
"inputs": {
|
||||||
|
"aquamarine": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"aquamarine"
|
||||||
|
],
|
||||||
|
"hyprgraphics": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprgraphics"
|
||||||
|
],
|
||||||
|
"hyprlang": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprlang"
|
||||||
|
],
|
||||||
|
"hyprtoolkit": "hyprtoolkit",
|
||||||
|
"hyprutils": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprutils"
|
||||||
|
],
|
||||||
|
"hyprwayland-scanner": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprwayland-scanner"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1776426575,
|
||||||
|
"narHash": "sha256-KI6nIfVihn/DPaeB5Et46Xg3dkNHrrEtUd5LBBVomB0=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprland-guiutils",
|
||||||
|
"rev": "a968d211048e3ed538e47b84cb3649299578f19d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprland-guiutils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"hyprland-protocols": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1772460177,
|
||||||
|
"narHash": "sha256-/6G/MsPvtn7bc4Y32pserBT/Z4SUUdBd4XYJpOEKVR4=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprland-protocols",
|
||||||
|
"rev": "1cb6db5fd6bb8aee419f4457402fa18293ace917",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprland-protocols",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"hyprlang": {
|
||||||
|
"inputs": {
|
||||||
|
"hyprutils": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprutils"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1777320127,
|
||||||
|
"narHash": "sha256-Qu+Wf2Bp5qUjyn2YpZNq8a7JyzTGowhT1knrwE38a9U=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprlang",
|
||||||
|
"rev": "090117506ddc3d7f26e650ff344d378c2ec329cc",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprlang",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"hyprsplit": {
|
||||||
|
"inputs": {
|
||||||
|
"hyprland": "hyprland",
|
||||||
|
"nixpkgs": "nixpkgs_3"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1781205112,
|
||||||
|
"narHash": "sha256-PaoUtmk+qIP/ESdxkxnY7mUMpMHjix88qu22R5GLQqE=",
|
||||||
|
"owner": "shezdy",
|
||||||
|
"repo": "hyprsplit",
|
||||||
|
"rev": "6b00b677d8905fb38779c91e12d6294e0e586a44",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "shezdy",
|
||||||
|
"repo": "hyprsplit",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"hyprtoolkit": {
|
||||||
|
"inputs": {
|
||||||
|
"aquamarine": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprland-guiutils",
|
||||||
|
"aquamarine"
|
||||||
|
],
|
||||||
|
"hyprgraphics": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprland-guiutils",
|
||||||
|
"hyprgraphics"
|
||||||
|
],
|
||||||
|
"hyprlang": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprland-guiutils",
|
||||||
|
"hyprlang"
|
||||||
|
],
|
||||||
|
"hyprutils": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprland-guiutils",
|
||||||
|
"hyprutils"
|
||||||
|
],
|
||||||
|
"hyprwayland-scanner": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprland-guiutils",
|
||||||
|
"hyprwayland-scanner"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprland-guiutils",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprland-guiutils",
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1772462885,
|
||||||
|
"narHash": "sha256-5pHXrQK9zasMnIo6yME6EOXmWGFMSnCITcfKshhKJ9I=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprtoolkit",
|
||||||
|
"rev": "9af245a69fa6b286b88ddfc340afd288e00a6998",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprtoolkit",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"hyprutils": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1778234770,
|
||||||
|
"narHash": "sha256-jAcsogZwWMfXT9MfXxZzkwliAqIuZUV0p71h6Ba9ReE=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprutils",
|
||||||
|
"rev": "a2dbd8a4cc51f7cbe4224732668392bb1aa79df2",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprutils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"hyprwayland-scanner": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1777159683,
|
||||||
|
"narHash": "sha256-Jxixw6wZphUp+nHYxOKUYSckL17QMBx2d5Zp0rJHr1g=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprwayland-scanner",
|
||||||
|
"rev": "b8632713a6beaf28b56f2a7b0ab2fb7088dbb404",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprwayland-scanner",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"hyprwire": {
|
||||||
|
"inputs": {
|
||||||
|
"hyprutils": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprutils"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1778410714,
|
||||||
|
"narHash": "sha256-o6RzFj4nJXaPRY7EM01siuCQeT41RfwwmcmFQqwFJJg=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprwire",
|
||||||
|
"rev": "85148a8e612808cf5ddb25d0b3c5840f3498a7dc",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprwire",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"millennium": {
|
"millennium": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"millennium-src": "millennium-src",
|
"millennium-src": "millennium-src",
|
||||||
"nixpkgs": "nixpkgs_2"
|
"nixpkgs": "nixpkgs_4"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"dir": "packages/nix",
|
"dir": "packages/nix",
|
||||||
@@ -187,13 +654,29 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nix-flatpak": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1767983141,
|
||||||
|
"narHash": "sha256-7ZCulYUD9RmJIDULTRkGLSW1faMpDlPKcbWJLYHoXcs=",
|
||||||
|
"owner": "gmodena",
|
||||||
|
"repo": "nix-flatpak",
|
||||||
|
"rev": "440818969ac2cbd77bfe025e884d0aa528991374",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "gmodena",
|
||||||
|
"ref": "latest",
|
||||||
|
"repo": "nix-flatpak",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1785350410,
|
"lastModified": 1785698632,
|
||||||
"narHash": "sha256-wXYrsdit8Z54aOAUf7/83LDhkY9+RgSuFBO/rFJeHb8=",
|
"narHash": "sha256-wIfKcnvpkHUQBdR/aokjRO9T/L9gzNKYcVR6Qu7Rmzk=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "00d4d9bc4d406965d1e0081300dd8c854fd4ba11",
|
"rev": "5b04e91630b267d6493a88e634bc235cdaad2720",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -218,6 +701,38 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1778443072,
|
||||||
|
"narHash": "sha256-zi7/fsqM/kFdNuED//4WOCUtezGtKKqRNORjMvfwjnA=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "da5ad661ba4e5ef59ba743f0d112cbc30e474f32",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1778869304,
|
||||||
|
"narHash": "sha256-30sZNZoA1cqF5JNO9fVX+wgiQYjB7HJqqJ4ztCDeBZE=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "d233902339c02a9c334e7e593de68855ad26c4cb",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1781577229,
|
"lastModified": 1781577229,
|
||||||
"narHash": "sha256-lrp67w8AulE9Ks53n27I45ADSzbOCn4H+CNW1Ck8B+8=",
|
"narHash": "sha256-lrp67w8AulE9Ks53n27I45ADSzbOCn4H+CNW1Ck8B+8=",
|
||||||
@@ -233,13 +748,13 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_3": {
|
"nixpkgs_5": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1785332987,
|
"lastModified": 1785698632,
|
||||||
"narHash": "sha256-Eiw4ie++bC7tDWyBEZmcbEeKv1xv0UAihkVTjD4C5VM=",
|
"narHash": "sha256-wIfKcnvpkHUQBdR/aokjRO9T/L9gzNKYcVR6Qu7Rmzk=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "97478ef76c1f4c40b12fd4a42c1feba41e60650d",
|
"rev": "5b04e91630b267d6493a88e634bc235cdaad2720",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -248,7 +763,23 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_4": {
|
"nixpkgs_6": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1784555310,
|
||||||
|
"narHash": "sha256-/FCliTPgiuV1owejZFNx3Ch9irdvkOfOFl+HHZ+DrtM=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "421eebfd0ec7bccd4abe826ce62d7e6e83129493",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixpkgs-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_7": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1767026758,
|
"lastModified": 1767026758,
|
||||||
"narHash": "sha256-7fsac/f7nh/VaKJ/qm3I338+wAJa/3J57cOGpXi0Sbg=",
|
"narHash": "sha256-7fsac/f7nh/VaKJ/qm3I338+wAJa/3J57cOGpXi0Sbg=",
|
||||||
@@ -264,7 +795,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_5": {
|
"nixpkgs_8": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1783279667,
|
"lastModified": 1783279667,
|
||||||
"narHash": "sha256-/NAkDSsve+GNM0Bt6tleJdCGfsTlK89nPjkVOzZMo0s=",
|
"narHash": "sha256-/NAkDSsve+GNM0Bt6tleJdCGfsTlK89nPjkVOzZMo0s=",
|
||||||
@@ -280,7 +811,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_6": {
|
"nixpkgs_9": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1784007870,
|
"lastModified": 1784007870,
|
||||||
"narHash": "sha256-djcLt/JJphyNt4eDY9XTly+/WbCK5lqWq9lSgCmJkkQ=",
|
"narHash": "sha256-djcLt/JJphyNt4eDY9XTly+/WbCK5lqWq9lSgCmJkkQ=",
|
||||||
@@ -296,13 +827,60 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixvim": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-parts": "flake-parts",
|
||||||
|
"nixpkgs": "nixpkgs_6",
|
||||||
|
"systems": "systems_3"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1785527278,
|
||||||
|
"narHash": "sha256-rYFSM491MFFA1V6oax5PngXbevGt6n0o8sKhwFoItE0=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixvim",
|
||||||
|
"rev": "a19efae6c1afe426e8243d79f6dfbab186be6df8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixvim",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"pre-commit-hooks": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat",
|
||||||
|
"gitignore": "gitignore",
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1778507602,
|
||||||
|
"narHash": "sha256-kTwur1wV+01SdqskVMSo6JMEpg71ps3HpbFY2GsflKs=",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "git-hooks.nix",
|
||||||
|
"rev": "61ab0e80d9c7ab14c256b5b453d8b3fb0189ba0a",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "git-hooks.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"bcdl-free": "bcdl-free",
|
"bcdl-free": "bcdl-free",
|
||||||
"gsr-ui": "gsr-ui",
|
"gsr-ui": "gsr-ui",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
|
"hyprsplit": "hyprsplit",
|
||||||
"millennium": "millennium",
|
"millennium": "millennium",
|
||||||
"nixpkgs": "nixpkgs_3",
|
"nix-flatpak": "nix-flatpak",
|
||||||
|
"nixpkgs": "nixpkgs_5",
|
||||||
|
"nixvim": "nixvim",
|
||||||
"sls-steam": "sls-steam",
|
"sls-steam": "sls-steam",
|
||||||
"xremap-flake": "xremap-flake",
|
"xremap-flake": "xremap-flake",
|
||||||
"yazi": "yazi",
|
"yazi": "yazi",
|
||||||
@@ -337,11 +915,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1785275929,
|
"lastModified": 1785594941,
|
||||||
"narHash": "sha256-3IbhTuHEqh2tokPGNKnv6x0HcsjOu3hk1MbLYRtzyRQ=",
|
"narHash": "sha256-hnbTg0PQYnQx9w/UxVxXRF26srIrSUKVE6rO/uQ/nSo=",
|
||||||
"owner": "AceSLS",
|
"owner": "AceSLS",
|
||||||
"repo": "SLSsteam",
|
"repo": "SLSsteam",
|
||||||
"rev": "1906382a482f35b2bc9b124f3849538ab432e4f3",
|
"rev": "7cf66365ea533d9fa1ee642a451fbff3f65f4200",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -366,6 +944,37 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems_2": {
|
"systems_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1689347949,
|
||||||
|
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default-linux",
|
||||||
|
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default-linux",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1774449309,
|
||||||
|
"narHash": "sha256-brhZ8DmuGtzkCYHJg4HEd602amKm89Y9ytsFZ5uWD1w=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "c29398b59d2048c4ab79345812849c9bd15e9150",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"ref": "future-26.11",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
@@ -380,6 +989,53 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"xdph": {
|
||||||
|
"inputs": {
|
||||||
|
"hyprland-protocols": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprland-protocols"
|
||||||
|
],
|
||||||
|
"hyprlang": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprlang"
|
||||||
|
],
|
||||||
|
"hyprutils": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprutils"
|
||||||
|
],
|
||||||
|
"hyprwayland-scanner": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"hyprwayland-scanner"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": [
|
||||||
|
"hyprsplit",
|
||||||
|
"hyprland",
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1778265244,
|
||||||
|
"narHash": "sha256-8jlPtGSsv/CQY6tVVyLF4Jjd0gnS+Zbn9yk/V13A9nM=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "xdg-desktop-portal-hyprland",
|
||||||
|
"rev": "813ea5ca9a1702a9a2d1f5836bc00172ef698968",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "xdg-desktop-portal-hyprland",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"xremap": {
|
"xremap": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
@@ -400,8 +1056,8 @@
|
|||||||
"xremap-flake": {
|
"xremap-flake": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"crane": "crane",
|
"crane": "crane",
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts_2",
|
||||||
"nixpkgs": "nixpkgs_4",
|
"nixpkgs": "nixpkgs_7",
|
||||||
"xremap": "xremap"
|
"xremap": "xremap"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
@@ -421,15 +1077,15 @@
|
|||||||
"yazi": {
|
"yazi": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_2",
|
"flake-utils": "flake-utils_2",
|
||||||
"nixpkgs": "nixpkgs_5",
|
"nixpkgs": "nixpkgs_8",
|
||||||
"rust-overlay": "rust-overlay"
|
"rust-overlay": "rust-overlay"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1785301727,
|
"lastModified": 1785650918,
|
||||||
"narHash": "sha256-Z9g04KWv8aEowWW+QIiADE6ct36oIZmrykTzEh5sQ4M=",
|
"narHash": "sha256-MicAaPMrueLTI2D2HmXttbhTHeHW3wBIGnYzzueOg68=",
|
||||||
"owner": "sxyazi",
|
"owner": "sxyazi",
|
||||||
"repo": "yazi",
|
"repo": "yazi",
|
||||||
"rev": "319f90e0eab185a231eef5562215ba322e320286",
|
"rev": "bfa01e56da0b7ab63161bd9605cb77000e864603",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -441,14 +1097,14 @@
|
|||||||
"zen-browser": {
|
"zen-browser": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"home-manager": "home-manager_2",
|
"home-manager": "home-manager_2",
|
||||||
"nixpkgs": "nixpkgs_6"
|
"nixpkgs": "nixpkgs_9"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1785224333,
|
"lastModified": 1785652409,
|
||||||
"narHash": "sha256-8DNJUVM10ktK02V9ZIV064CH+fuPF272VCAZBn6arig=",
|
"narHash": "sha256-0273OvIPfkJcdv0+Z3iPL8+eSRavAwGRCnr+Y6tRjYY=",
|
||||||
"owner": "0xc000022070",
|
"owner": "0xc000022070",
|
||||||
"repo": "zen-browser-flake",
|
"repo": "zen-browser-flake",
|
||||||
"rev": "5f1a4be4d280e1ae06d61a75775a234b1714da3f",
|
"rev": "12224626d0d1cead79603f19601666360c715379",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
@@ -9,15 +9,18 @@
|
|||||||
url = "github:AceSLS/SLSsteam";
|
url = "github:AceSLS/SLSsteam";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
zen-browser.url = "github:0xc000022070/zen-browser-flake";
|
|
||||||
xremap-flake.url = "github:xremap/nix-flake";
|
|
||||||
yazi.url = "github:sxyazi/yazi";
|
|
||||||
millennium.url = "github:SteamClientHomebrew/Millennium?dir=packages/nix";
|
|
||||||
gsr-ui = {
|
gsr-ui = {
|
||||||
url = "github:rPlakama/gsr-ui-nix";
|
url = "github:rPlakama/gsr-ui-nix";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
zen-browser.url = "github:0xc000022070/zen-browser-flake";
|
||||||
|
xremap-flake.url = "github:xremap/nix-flake";
|
||||||
|
yazi.url = "github:sxyazi/yazi";
|
||||||
|
millennium.url = "github:SteamClientHomebrew/Millennium?dir=packages/nix";
|
||||||
bcdl-free.url = "git+https://git.pizzasucht.net/KeksNino/free-bandcamp-downloader";
|
bcdl-free.url = "git+https://git.pizzasucht.net/KeksNino/free-bandcamp-downloader";
|
||||||
|
nixvim.url = "github:nix-community/nixvim";
|
||||||
|
hyprsplit.url = "github:shezdy/hyprsplit";
|
||||||
|
nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=latest";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs =
|
outputs =
|
||||||
@@ -31,22 +34,33 @@
|
|||||||
millennium,
|
millennium,
|
||||||
gsr-ui,
|
gsr-ui,
|
||||||
bcdl-free,
|
bcdl-free,
|
||||||
|
nixvim,
|
||||||
|
hyprsplit,
|
||||||
|
nix-flatpak,
|
||||||
...
|
...
|
||||||
}:
|
}@inputs:
|
||||||
let
|
let
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
nixosConfigurations.nixos = nixpkgs.lib.nixosSystem {
|
nixosConfigurations.nixos-desktop = nixpkgs.lib.nixosSystem {
|
||||||
inherit system;
|
|
||||||
specialArgs = {
|
specialArgs = {
|
||||||
inherit sls-steam;
|
inherit
|
||||||
|
sls-steam
|
||||||
|
bcdl-free
|
||||||
|
xremap-flake
|
||||||
|
system
|
||||||
|
nixvim
|
||||||
|
nix-flatpak
|
||||||
|
;
|
||||||
};
|
};
|
||||||
modules = [
|
modules = [
|
||||||
./configuration.nix
|
./hosts/desktop/configuration.nix
|
||||||
./hardware-configuration.nix
|
./hosts/desktop/hardware-configuration.nix
|
||||||
|
./modules/common.nix
|
||||||
|
./modules/desktop/xremap.nix
|
||||||
|
./modules/desktop/flatpak.nix
|
||||||
home-manager.nixosModules.home-manager
|
home-manager.nixosModules.home-manager
|
||||||
xremap-flake.nixosModules.default
|
|
||||||
gsr-ui.nixosModules.default
|
gsr-ui.nixosModules.default
|
||||||
{
|
{
|
||||||
nixpkgs.overlays = [
|
nixpkgs.overlays = [
|
||||||
@@ -54,55 +68,35 @@
|
|||||||
millennium.overlays.default
|
millennium.overlays.default
|
||||||
];
|
];
|
||||||
|
|
||||||
environment.systemPackages = [ bcdl-free.packages.${system}.default ];
|
home-manager.users.user = import ./hosts/desktop/home-manager/home.nix;
|
||||||
|
|
||||||
home-manager.useGlobalPkgs = true;
|
|
||||||
home-manager.useUserPackages = true;
|
|
||||||
|
|
||||||
home-manager.users.user = import ./home-manager/home.nix;
|
|
||||||
|
|
||||||
home-manager.extraSpecialArgs = {
|
home-manager.extraSpecialArgs = {
|
||||||
inherit zen-browser;
|
inherit zen-browser hyprsplit;
|
||||||
};
|
};
|
||||||
|
|
||||||
home-manager.backupFileExtension = "backup";
|
|
||||||
|
|
||||||
programs.gpu-screen-recorder = {
|
programs.gpu-screen-recorder = {
|
||||||
package = gsr-ui.packages.${system}.gpu-screen-recorder;
|
package = gsr-ui.packages.${system}.gpu-screen-recorder;
|
||||||
enable = true;
|
enable = true;
|
||||||
ui.enable = true;
|
ui.enable = true;
|
||||||
};
|
};
|
||||||
|
}
|
||||||
# xremap
|
];
|
||||||
services.xremap.enable = true;
|
|
||||||
services.xremap.withHypr = true;
|
|
||||||
|
|
||||||
services.xremap.config.modmap = [
|
|
||||||
{
|
|
||||||
name = "Global";
|
|
||||||
remap = {
|
|
||||||
"CapsLock" = "Esc";
|
|
||||||
};
|
};
|
||||||
}
|
nixosConfigurations.music-server = nixpkgs.lib.nixosSystem {
|
||||||
];
|
specialArgs = {
|
||||||
|
inherit
|
||||||
services.xremap.config.keymap = [
|
inputs
|
||||||
|
bcdl-free
|
||||||
|
system
|
||||||
|
;
|
||||||
|
};
|
||||||
|
modules = [
|
||||||
|
./hosts/music-server/configuration.nix
|
||||||
|
./hosts/music-server/hardware-configuration.nix
|
||||||
|
./modules/common.nix
|
||||||
|
home-manager.nixosModules.home-manager
|
||||||
{
|
{
|
||||||
name = "curly braces";
|
home-manager.users.user = import ./hosts/music-server/home-manager/home.nix;
|
||||||
remap = {
|
|
||||||
"KEY_SEMICOLON" = "RIGHTALT-KEY_7";
|
|
||||||
}; # ä -> }
|
|
||||||
remap = {
|
|
||||||
"KEY_APOSTROPHE" = "RIGHTALT-KEY_0";
|
|
||||||
}; # ö -> {
|
|
||||||
remap = {
|
|
||||||
"RIGHTALT-KEY_A" = "KEY_APOSTROPHE";
|
|
||||||
}; # altgr + a -> ä
|
|
||||||
remap = {
|
|
||||||
"RIGHTALT-KEY_W" = "KEY_SEMICOLON";
|
|
||||||
}; # altgr + w -> ö
|
|
||||||
}
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
cpuid-fault-emulation = pkgs.callPackage ./pkgs/cpuid-fault-emulation {
|
cpuid-fault-emulation = pkgs.callPackage ../../pkgs/cpuid-fault-emulation {
|
||||||
kernel = config.boot.kernelPackages.kernel;
|
kernel = config.boot.kernelPackages.kernel;
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
@@ -15,51 +15,11 @@ in
|
|||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
./packages.nix
|
./packages.nix
|
||||||
|
./drives.nix
|
||||||
|
../../modules/scripts.nix
|
||||||
|
../../modules/programs/neovim/neovim.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
# DISKS
|
|
||||||
fileSystems."/media/gamedisk4" = {
|
|
||||||
device = "/dev/disk/by-uuid/D290EB87C8A1E82A";
|
|
||||||
fsType = "ntfs3";
|
|
||||||
options = [
|
|
||||||
"uid=1000"
|
|
||||||
"gid=100"
|
|
||||||
"rw"
|
|
||||||
"user"
|
|
||||||
"exec"
|
|
||||||
"umask=000"
|
|
||||||
"nofail"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/media/gamedisk" = {
|
|
||||||
device = "/dev/disk/by-uuid/5C7C14707C1446E4";
|
|
||||||
fsType = "ntfs3";
|
|
||||||
options = [
|
|
||||||
"uid=1000"
|
|
||||||
"gid=100"
|
|
||||||
"rw"
|
|
||||||
"user"
|
|
||||||
"exec"
|
|
||||||
"umask=000"
|
|
||||||
"nofail"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/media/gamedisk2" = {
|
|
||||||
device = "/dev/disk/by-uuid/945A7421DAD8A3CE";
|
|
||||||
fsType = "ntfs3";
|
|
||||||
options = [
|
|
||||||
"uid=1000"
|
|
||||||
"gid=100"
|
|
||||||
"rw"
|
|
||||||
"user"
|
|
||||||
"exec"
|
|
||||||
"umask=000"
|
|
||||||
"nofail"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
nix.settings.experimental-features = [
|
nix.settings.experimental-features = [
|
||||||
"nix-command"
|
"nix-command"
|
||||||
"flakes"
|
"flakes"
|
||||||
@@ -86,6 +46,11 @@ in
|
|||||||
hardware.graphics.enable32Bit = true;
|
hardware.graphics.enable32Bit = true;
|
||||||
services.hardware.openrgb.enable = true;
|
services.hardware.openrgb.enable = true;
|
||||||
|
|
||||||
|
hardware.bluetooth = {
|
||||||
|
enable = true;
|
||||||
|
powerOnBoot = false;
|
||||||
|
};
|
||||||
|
|
||||||
# Bootloader.
|
# Bootloader.
|
||||||
boot.loader.grub.enable = true;
|
boot.loader.grub.enable = true;
|
||||||
boot.loader.grub.device = "nodev";
|
boot.loader.grub.device = "nodev";
|
||||||
@@ -103,7 +68,7 @@ in
|
|||||||
'')
|
'')
|
||||||
];
|
];
|
||||||
|
|
||||||
networking.hostName = "nixos"; # Define your hostname.
|
networking.hostName = "nixos-desktop";
|
||||||
networking.firewall.enable = false;
|
networking.firewall.enable = false;
|
||||||
networking.networkmanager.enable = true;
|
networking.networkmanager.enable = true;
|
||||||
|
|
||||||
@@ -136,6 +101,7 @@ in
|
|||||||
"networkmanager"
|
"networkmanager"
|
||||||
"wheel"
|
"wheel"
|
||||||
"docker"
|
"docker"
|
||||||
|
"audio"
|
||||||
];
|
];
|
||||||
shell = pkgs.fish;
|
shell = pkgs.fish;
|
||||||
};
|
};
|
||||||
@@ -148,35 +114,22 @@ in
|
|||||||
xwayland.enable = true;
|
xwayland.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# environment.loginShellInit = ''
|
# qt = {
|
||||||
# if [ "$(tty)" = "/dev/tty1" ] && [ -z "$WAYLAND_DISPLAY" ]; then
|
# enable = true;
|
||||||
# exec start-hyprland
|
# platformTheme = "qt5ct";
|
||||||
# fi
|
# style = "breeze";
|
||||||
# '';
|
# };
|
||||||
|
|
||||||
# NFS / MPD
|
|
||||||
fileSystems."/media/music" = {
|
|
||||||
device = "192.168.132.149:/media/music";
|
|
||||||
fsType = "nfs4";
|
|
||||||
};
|
|
||||||
boot.supportedFilesystems = [ "nfs4" ];
|
|
||||||
|
|
||||||
qt = {
|
|
||||||
enable = true;
|
|
||||||
platformTheme = "qt5ct";
|
|
||||||
style = "breeze";
|
|
||||||
};
|
|
||||||
|
|
||||||
virtualisation.docker.enable = true;
|
virtualisation.docker.enable = true;
|
||||||
services.gvfs.enable = true;
|
services.gvfs.enable = true;
|
||||||
services.goxlr-utility.enable = true;
|
services.goxlr-utility.enable = true;
|
||||||
|
services.flatpak.enable = true;
|
||||||
services.lact.enable = true;
|
services.lact.enable = true;
|
||||||
services.rsync.enable = true;
|
services.rsync.enable = true;
|
||||||
programs.kdeconnect.enable = true;
|
programs.kdeconnect.enable = true;
|
||||||
programs.neovim.enable = true;
|
programs.neovim.enable = true;
|
||||||
programs.tmux.enable = true;
|
programs.tmux.enable = true;
|
||||||
programs.bat.enable = true;
|
programs.bat.enable = true;
|
||||||
programs.nh.enable = true;
|
|
||||||
programs.git = {
|
programs.git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
config = {
|
config = {
|
||||||
@@ -202,13 +155,20 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.gnupg.agent = {
|
programs.gnupg.agent = {
|
||||||
enable = true;
|
enable = true;
|
||||||
pinentryPackage = pkgs.pinentry-curses;
|
pinentryPackage = pkgs.pinentry-curses;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
programs.nh = {
|
||||||
|
enable = true;
|
||||||
|
flake = "/home/user/nix-config";
|
||||||
|
};
|
||||||
|
|
||||||
programs.steam = {
|
programs.steam = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
extraCompatPackages = with pkgs; [ proton-ge-bin ];
|
||||||
package = pkgs.millennium-steam.override {
|
package = pkgs.millennium-steam.override {
|
||||||
extraEnv = {
|
extraEnv = {
|
||||||
LD_AUDIT = "${sls-steam.packages.${pkgs.stdenv.hostPlatform.system}.sls-steam}/library-inject.so:${
|
LD_AUDIT = "${sls-steam.packages.${pkgs.stdenv.hostPlatform.system}.sls-steam}/library-inject.so:${
|
||||||
@@ -231,16 +191,26 @@ in
|
|||||||
libxkbcommon # libxkbcommon.so.0
|
libxkbcommon # libxkbcommon.so.0
|
||||||
libx11 # libX11.so.6
|
libx11 # libX11.so.6
|
||||||
wayland
|
wayland
|
||||||
|
krb5
|
||||||
]);
|
]);
|
||||||
};
|
};
|
||||||
|
|
||||||
services.pipewire = {
|
services.pipewire = {
|
||||||
enable = true;
|
enable = true;
|
||||||
alsa.enable = true;
|
alsa.enable = true;
|
||||||
|
alsa.support32Bit = true;
|
||||||
pulse.enable = true;
|
pulse.enable = true;
|
||||||
jack.enable = true;
|
jack.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services.pipewire.extraConfig.pipewire."92-clock-quantum" = {
|
||||||
|
"context.properties" = {
|
||||||
|
"default.clock.quantum" = 2048;
|
||||||
|
"default.clock.min-quantum" = 256;
|
||||||
|
"default.clock.max-quantum" = 4096;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
security.pam.loginLimits = [
|
security.pam.loginLimits = [
|
||||||
{
|
{
|
||||||
domain = "@users";
|
domain = "@users";
|
||||||
@@ -0,0 +1,67 @@
|
|||||||
|
{
|
||||||
|
boot.supportedFilesystems = [
|
||||||
|
"ntfs"
|
||||||
|
"nfs4"
|
||||||
|
];
|
||||||
|
|
||||||
|
fileSystems."/media/music" = {
|
||||||
|
device = "192.168.132.149:/media/music";
|
||||||
|
fsType = "nfs4";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/media/gamedisk" = {
|
||||||
|
device = "/dev/disk/by-uuid/5C7C14707C1446E4";
|
||||||
|
fsType = "ntfs-3g";
|
||||||
|
options = [
|
||||||
|
"uid=1000"
|
||||||
|
"gid=100"
|
||||||
|
"rw"
|
||||||
|
"user"
|
||||||
|
"exec"
|
||||||
|
"umask=000"
|
||||||
|
"nofail"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/media/gamedisk2" = {
|
||||||
|
device = "/dev/disk/by-uuid/945A7421DAD8A3CE";
|
||||||
|
fsType = "ntfs-3g";
|
||||||
|
options = [
|
||||||
|
"uid=1000"
|
||||||
|
"gid=100"
|
||||||
|
"rw"
|
||||||
|
"user"
|
||||||
|
"exec"
|
||||||
|
"umask=000"
|
||||||
|
"nofail"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/media/gamedisk3" = {
|
||||||
|
device = "/dev/disk/by-uuid/420E457E60DE3935";
|
||||||
|
fsType = "ntfs-3g";
|
||||||
|
options = [
|
||||||
|
"uid=1000"
|
||||||
|
"gid=100"
|
||||||
|
"rw"
|
||||||
|
"user"
|
||||||
|
"exec"
|
||||||
|
"umask=000"
|
||||||
|
"nofail"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/media/gamedisk4" = {
|
||||||
|
device = "/dev/disk/by-uuid/D290EB87C8A1E82A";
|
||||||
|
fsType = "ntfs-3g";
|
||||||
|
options = [
|
||||||
|
"uid=1000"
|
||||||
|
"gid=100"
|
||||||
|
"rw"
|
||||||
|
"user"
|
||||||
|
"exec"
|
||||||
|
"umask=000"
|
||||||
|
"nofail"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -38,12 +38,6 @@
|
|||||||
"dmask=0077"
|
"dmask=0077"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/media/gamedisk4" = {
|
|
||||||
device = "/dev/disk/by-uuid/D290EB87C8A1E82A";
|
|
||||||
fsType = "ntfs3";
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/media/music" = {
|
fileSystems."/media/music" = {
|
||||||
device = "192.168.132.149:/media/music";
|
device = "192.168.132.149:/media/music";
|
||||||
fsType = "nfs4";
|
fsType = "nfs4";
|
||||||
@@ -54,11 +48,6 @@
|
|||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/media/gamedisk" = {
|
|
||||||
device = "/dev/disk/by-uuid/5C7C14707C1446E4";
|
|
||||||
fsType = "ntfs3";
|
|
||||||
};
|
|
||||||
|
|
||||||
swapDevices = [
|
swapDevices = [
|
||||||
{ device = "/dev/disk/by-uuid/5949c73f-30eb-4956-9e93-70301c88fad8"; }
|
{ device = "/dev/disk/by-uuid/5949c73f-30eb-4956-9e93-70301c88fad8"; }
|
||||||
];
|
];
|
||||||
@@ -7,6 +7,8 @@
|
|||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./mpd.nix
|
./mpd.nix
|
||||||
|
./programs.nix
|
||||||
|
../../../modules/fish.nix
|
||||||
zen-browser.homeModules.beta
|
zen-browser.homeModules.beta
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -24,6 +26,7 @@
|
|||||||
xdg.mimeApps = {
|
xdg.mimeApps = {
|
||||||
enable = true;
|
enable = true;
|
||||||
defaultApplications = {
|
defaultApplications = {
|
||||||
|
"application/zip" = [ "org.gnome.FileRoller.desktop" ];
|
||||||
"inode/directory" = [ "nemo.desktop" ];
|
"inode/directory" = [ "nemo.desktop" ];
|
||||||
"image/*" = [ "imv-dir.desktop" ];
|
"image/*" = [ "imv-dir.desktop" ];
|
||||||
"image/gif" = [ "imv-dir.desktop" ];
|
"image/gif" = [ "imv-dir.desktop" ];
|
||||||
@@ -37,7 +40,6 @@
|
|||||||
settings = {
|
settings = {
|
||||||
"org/cinnamon/desktop/applications/terminal" = {
|
"org/cinnamon/desktop/applications/terminal" = {
|
||||||
exec = "kitty";
|
exec = "kitty";
|
||||||
# exec-arg = ""; # argument
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -55,12 +57,6 @@
|
|||||||
setAsDefaultBrowser = true;
|
setAsDefaultBrowser = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.yazi.enable = true;
|
|
||||||
programs.yazi.enableFishIntegration = true;
|
|
||||||
|
|
||||||
programs.fzf.enable = true;
|
|
||||||
programs.fzf.enableFishIntegration = true;
|
|
||||||
|
|
||||||
programs.eza = {
|
programs.eza = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableFishIntegration = true;
|
enableFishIntegration = true;
|
||||||
@@ -71,14 +67,6 @@
|
|||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.pywal = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.pywal16;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.lazygit.enable = true;
|
|
||||||
programs.lazygit.enableFishIntegration = true;
|
|
||||||
|
|
||||||
programs.rbw = {
|
programs.rbw = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
@@ -88,31 +76,6 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.distrobox.enable = true;
|
|
||||||
services.podman.enable = true;
|
|
||||||
|
|
||||||
programs.rofi.enable = true;
|
|
||||||
programs.rofi.plugins = [ pkgs.rofi-calc ];
|
|
||||||
|
|
||||||
services.polkit-gnome.enable = true;
|
|
||||||
services.cliphist.enable = true;
|
|
||||||
programs.btop.enable = true;
|
|
||||||
services.udiskie.enable = true;
|
|
||||||
programs.cava.enable = true;
|
|
||||||
programs.equibop.enable = true;
|
|
||||||
services.awww.enable = true;
|
|
||||||
services.mpdris2.enable = true;
|
|
||||||
programs.fastfetch.enable = true;
|
|
||||||
programs.prismlauncher.enable = true;
|
|
||||||
programs.fd.enable = true;
|
|
||||||
programs.uv.enable = true;
|
|
||||||
programs.satty.enable = true;
|
|
||||||
programs.mpvpaper.enable = true;
|
|
||||||
programs.obsidian.enable = true;
|
|
||||||
programs.gcc.enable = true;
|
|
||||||
programs.mpv.enable = true;
|
|
||||||
programs.imv.enable = true;
|
|
||||||
programs.aria2.enable = true;
|
|
||||||
programs.qutebrowser = {
|
programs.qutebrowser = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
@@ -144,35 +107,6 @@
|
|||||||
EDITOR = "nvim";
|
EDITOR = "nvim";
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.fish = {
|
|
||||||
enable = true;
|
|
||||||
interactiveShellInit = ''
|
|
||||||
nitch
|
|
||||||
set -g fish_key_bindings fish_hybrid_key_bindings
|
|
||||||
set fish_greeting
|
|
||||||
'';
|
|
||||||
shellAliases = {
|
|
||||||
ls = "eza -al --no-time --no-user --no-permissions --no-filesize";
|
|
||||||
ll = "eza -la";
|
|
||||||
cat = "bat";
|
|
||||||
cd = "z";
|
|
||||||
cp = "cp -v";
|
|
||||||
ff = "fastfetch";
|
|
||||||
grep = "grep -i";
|
|
||||||
hyprland = "start-hyprland";
|
|
||||||
mv = "mv -v";
|
|
||||||
n = "nvim";
|
|
||||||
py = "uv run";
|
|
||||||
r = "rsync -avh --info=progress2";
|
|
||||||
rm = "gomi";
|
|
||||||
ssh = "kitty +kitten ssh";
|
|
||||||
nd = "nix develop";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.zoxide.enable = true;
|
|
||||||
programs.zoxide.enableFishIntegration = true;
|
|
||||||
|
|
||||||
home.file.".local/share/Steam/steam.cfg".text = ''
|
home.file.".local/share/Steam/steam.cfg".text = ''
|
||||||
BootStrapperInhibitAll=enable
|
BootStrapperInhibitAll=enable
|
||||||
BootStrapperForceSelfUpdate=disable
|
BootStrapperForceSelfUpdate=disable
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./general.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,162 @@
|
|||||||
|
{ hyprsplit, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
# Replace these with your pywal colors or import them from another file.
|
||||||
|
# wal = {
|
||||||
|
# color11 = "#...";
|
||||||
|
# color14 = "#...";
|
||||||
|
# };
|
||||||
|
in
|
||||||
|
{
|
||||||
|
wayland.windowManager.hyprland = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
|
||||||
|
device = [
|
||||||
|
{
|
||||||
|
name = "glorious-model-o-wireless";
|
||||||
|
sensitivity = -1.0;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
config = {
|
||||||
|
input = {
|
||||||
|
kb_layout = "de";
|
||||||
|
follow_mouse = 1;
|
||||||
|
repeat_delay = 300;
|
||||||
|
repeat_rate = 35;
|
||||||
|
scroll_factor = 1.3;
|
||||||
|
sensitivity = -1.0;
|
||||||
|
};
|
||||||
|
|
||||||
|
general = {
|
||||||
|
gaps_in = 4;
|
||||||
|
gaps_out = 12;
|
||||||
|
border_size = 2;
|
||||||
|
|
||||||
|
# "col.active_border" = "rgb(${wal.color11}) rgb(${wal.color14}) 45deg";
|
||||||
|
# "col.active_border" = "rgba(80808077) rgba(80808077) 45deg";
|
||||||
|
|
||||||
|
# "col.inactive_border" = "rgba(80808077) rgba(80808077) 45deg";
|
||||||
|
|
||||||
|
resize_on_border = false;
|
||||||
|
allow_tearing = false;
|
||||||
|
layout = "dwindle";
|
||||||
|
};
|
||||||
|
|
||||||
|
decoration = {
|
||||||
|
rounding = 2;
|
||||||
|
|
||||||
|
active_opacity = 0.65;
|
||||||
|
inactive_opacity = 0.65;
|
||||||
|
|
||||||
|
shadow = {
|
||||||
|
enabled = true;
|
||||||
|
range = 50;
|
||||||
|
render_power = 4;
|
||||||
|
color = "0xaf1a1a1a";
|
||||||
|
};
|
||||||
|
|
||||||
|
blur = {
|
||||||
|
enabled = true;
|
||||||
|
size = 3;
|
||||||
|
passes = 4;
|
||||||
|
brightness = 0.473;
|
||||||
|
contrast = 1.0;
|
||||||
|
vibrancy = 0.1696;
|
||||||
|
vibrancy_darkness = 0.2;
|
||||||
|
ignore_opacity = true;
|
||||||
|
popups = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
master = {
|
||||||
|
new_status = "master";
|
||||||
|
new_on_top = true;
|
||||||
|
mfact = 0.5;
|
||||||
|
orientation = "center";
|
||||||
|
};
|
||||||
|
|
||||||
|
misc = {
|
||||||
|
force_default_wallpaper = 0;
|
||||||
|
disable_hyprland_logo = true;
|
||||||
|
enable_anr_dialog = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
xwayland = {
|
||||||
|
force_zero_scaling = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# animations = {
|
||||||
|
# enabled = false;
|
||||||
|
# };
|
||||||
|
|
||||||
|
# bezier = [
|
||||||
|
# "md3_standard,0.2,0,0,1"
|
||||||
|
# "md3_decel,0.05,0.7,0.1,1"
|
||||||
|
# "md3_accel,0.3,0,0.8,0.15"
|
||||||
|
# "overshot,0.05,0.9,0.1,1.02"
|
||||||
|
#
|
||||||
|
# # Hyprland supports spring curves as strings.
|
||||||
|
# "spring_snappy,1,80,16"
|
||||||
|
#
|
||||||
|
# "weighted_decel,0.05,0.9,0.1,1"
|
||||||
|
# "snap_curve,0.1,1,0,1"
|
||||||
|
# "winIn,0.1,1,0.1,1"
|
||||||
|
# "winOut,0.1,1,0.1,1"
|
||||||
|
# ];
|
||||||
|
#
|
||||||
|
# animation = [
|
||||||
|
# "windows,1,4,spring_snappy"
|
||||||
|
# "windowsIn,1,3,md3_decel,popin 70%"
|
||||||
|
# "windowsOut,1,4,md3_accel,popin 70%"
|
||||||
|
# "windowsMove,1,4,overshot"
|
||||||
|
#
|
||||||
|
# "fade,1,3,md3_decel"
|
||||||
|
#
|
||||||
|
# "layers,1,4.5,md3_standard,fade"
|
||||||
|
# "layersIn,1,4.5,winIn,slide"
|
||||||
|
# "layersOut,1,5,winOut,slide"
|
||||||
|
#
|
||||||
|
# "workspaces,1,5,md3_decel,slide"
|
||||||
|
# "workspacesIn,1,7,winIn,slide"
|
||||||
|
# "workspacesOut,1,7,winOut,slide"
|
||||||
|
#
|
||||||
|
# "specialWorkspace,1,4,winIn,slidevert"
|
||||||
|
# ];
|
||||||
|
};
|
||||||
|
|
||||||
|
extraLuaFiles = {
|
||||||
|
# create a symlink to `.config/hypr/hyprsplit/init.lua`.
|
||||||
|
"hyprsplit/init" = {
|
||||||
|
autoLoad = false;
|
||||||
|
content = builtins.readFile "${hyprsplit}/init.lua";
|
||||||
|
};
|
||||||
|
# Finally, use it directly in Lua.
|
||||||
|
"hyprload" = {
|
||||||
|
autoLoad = true;
|
||||||
|
content = ''
|
||||||
|
local hs = require("hyprsplit")
|
||||||
|
hs.config({ num_workspaces = 10 })
|
||||||
|
|
||||||
|
local mod = "SUPER"
|
||||||
|
|
||||||
|
for i = 1, 10 do
|
||||||
|
local key = (i == 10) and "0" or tostring(i)
|
||||||
|
hl.bind(mod .. " + " .. key, hs.dsp.focus({ workspace = i }))
|
||||||
|
hl.bind(mod .. " + " .. key, hs.dsp.window.move({ workspace = i }))
|
||||||
|
hl.bind("SUPER + " .. key, hs.dsp.focus({ workspace = i }))
|
||||||
|
hl.bind("SUPER + SHIFT + " .. key, hs.dsp.window.move({ workspace = i, follow = true }))
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
extraConfig = ''
|
||||||
|
hl.monitor({ output = "DP-1", mode = "1920x1080@60", position = "3840x0", scale = "auto" })
|
||||||
|
hl.monitor({ output = "DP-2", mode = "1920x1080@144", position = "1920x0", scale = "auto", bitdepth = 10 })
|
||||||
|
hl.monitor({ output = "HDMI-A-1", mode = "1920x1080@60", position = "0x0", scale = "auto" })
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,130 @@
|
|||||||
|
{
|
||||||
|
wayland.windowManager.hyprland.settings = {
|
||||||
|
window_rule = [
|
||||||
|
# -----------------
|
||||||
|
# Workspace
|
||||||
|
# -----------------
|
||||||
|
"workspace 24,title:^(rmpc)$"
|
||||||
|
"workspace 10,class:^(equibop)$"
|
||||||
|
|
||||||
|
"monitor DP-1,title:^(rmpc)$"
|
||||||
|
"monitor DP-1,class:^(equibop)$"
|
||||||
|
|
||||||
|
# -----------------
|
||||||
|
# Windows
|
||||||
|
# -----------------
|
||||||
|
"opacity 1 0.999999,class:^(mpv)$"
|
||||||
|
"opacity 0.99 override 0.99 override,class:^(obsidian)$"
|
||||||
|
|
||||||
|
# -----------------
|
||||||
|
# Floating
|
||||||
|
# -----------------
|
||||||
|
"float,class:^(imv)$"
|
||||||
|
"float,class:^(nemo)$"
|
||||||
|
"float,class:.*,title:^(Open File.*)$"
|
||||||
|
"float,title:^(Picture-in-Picture)$"
|
||||||
|
"float,class:^(rofi)$"
|
||||||
|
"float,class:^(xdg-desktop-portal-gtk)$"
|
||||||
|
"float,title:^(Steam Settings)$"
|
||||||
|
"float,title:^(Friends List)$"
|
||||||
|
"float,title:^(nvim)$"
|
||||||
|
"float,class:^(org.gnome.FileRoller)$"
|
||||||
|
"float,class:^(org.gnome.Decibels)$"
|
||||||
|
"float,class:^(neovide)$"
|
||||||
|
"float,class:^(org.prismlauncher.PrismLauncher)$"
|
||||||
|
"float,class:^(feh)$"
|
||||||
|
"float,class:^(com.github.aliencoweatcake.imageviewer)$"
|
||||||
|
"float,class:^(waypaper)$"
|
||||||
|
|
||||||
|
# -----------------
|
||||||
|
# Scrolling
|
||||||
|
# -----------------
|
||||||
|
"scrollmouse 1.0,class:^(Minecraft.*)$"
|
||||||
|
"scrollmouse 1.0,class:^(Lunar.*)$"
|
||||||
|
"scrollmouse 1.0,class:^(LiquidBounce.*)$"
|
||||||
|
"scrollmouse 1.0,class:^(Nomifactory.*)$"
|
||||||
|
"scrollmouse 1.0,class:^(GT.*)$"
|
||||||
|
|
||||||
|
# -----------------
|
||||||
|
# Center
|
||||||
|
# -----------------
|
||||||
|
"center,class:^(imv)$"
|
||||||
|
"center,class:^(nemo)$"
|
||||||
|
"center,class:^(org.prismlauncher.PrismLauncher)$"
|
||||||
|
|
||||||
|
# -----------------
|
||||||
|
# Size
|
||||||
|
# -----------------
|
||||||
|
"size 1200 700,class:^(imv)$"
|
||||||
|
"size 1200 700,class:^(nemo)$"
|
||||||
|
"size 1200 700,title:^(nvim)$"
|
||||||
|
"size 1200 700,class:^(org.gnome.Decibels)$"
|
||||||
|
"size 1200 700,class:^(neovide)$"
|
||||||
|
"size 1200 700,class:^(org.prismlauncher.PrismLauncher)$"
|
||||||
|
"size 1200 700,class:^(waypaper)$"
|
||||||
|
|
||||||
|
"suppressevent maximize,class:.*"
|
||||||
|
|
||||||
|
# -----------------
|
||||||
|
# Opaque
|
||||||
|
# -----------------
|
||||||
|
"opaque,class:^(kitty)$"
|
||||||
|
"opaque,class:^(nemo)$"
|
||||||
|
"opaque,class:^(virt-manager)$"
|
||||||
|
"opaque,class:^(rofi)$"
|
||||||
|
"opaque,class:^(looking-glass-client)$"
|
||||||
|
"opaque,class:^(steam)$"
|
||||||
|
"opaque,class:^(equibop)$"
|
||||||
|
"opaque,initialtitle:^(Zen Browser)$"
|
||||||
|
"opaque,class:^(org.qutebrowser.qutebrowser)$"
|
||||||
|
"opaque,class:^(gimp)$"
|
||||||
|
"opaque,class:^(discord)$"
|
||||||
|
"opaque,class:^(librewolf)$"
|
||||||
|
"opaque,class:^(imv)$"
|
||||||
|
"opaque,class:^(org.gnome.Decibels)$"
|
||||||
|
"opaque,class:^(neovide)$"
|
||||||
|
"opaque,class:^(Tor Browser)$"
|
||||||
|
"opaque,class:^(com.ayugram.desktop)$"
|
||||||
|
"opaque,title:^(Software Manager)$"
|
||||||
|
"opaque,class:^(waypaper)$"
|
||||||
|
"opaque,class:^(mpv)$"
|
||||||
|
"opaque,class:^(helium)$"
|
||||||
|
"opaque,class:^(Spotify)$"
|
||||||
|
|
||||||
|
# -----------------
|
||||||
|
# Kando
|
||||||
|
# -----------------
|
||||||
|
"noblur,class:^(kando)$"
|
||||||
|
"opaque,class:^(kando)$"
|
||||||
|
"size 100% 100%,class:^(kando)$"
|
||||||
|
"bordersize 0,class:^(kando)$"
|
||||||
|
"noanim,class:^(kando)$"
|
||||||
|
"float,class:^(kando)$"
|
||||||
|
"pin,class:^(kando)$"
|
||||||
|
];
|
||||||
|
|
||||||
|
layerrule = [
|
||||||
|
"blur,rofi"
|
||||||
|
"noanim,hyprpicker"
|
||||||
|
"noanim,selection"
|
||||||
|
|
||||||
|
"noscreenshare,notifications"
|
||||||
|
"blur,notifications"
|
||||||
|
"ignorealpha 1,notifications"
|
||||||
|
|
||||||
|
"blur,wofi"
|
||||||
|
|
||||||
|
"dimaround,rofi"
|
||||||
|
|
||||||
|
"noanim,^dms$"
|
||||||
|
"noscreenshare,dms:notification-popup"
|
||||||
|
|
||||||
|
"noanim,noctalia-background-.*$"
|
||||||
|
"ignorealpha 0.5,noctalia-background-.*$"
|
||||||
|
"blur,noctalia-background-.*$"
|
||||||
|
"blurpopups,noctalia-background-.*$"
|
||||||
|
|
||||||
|
"noscreenshare,noctalia-notifications-.*$"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,46 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
programs.yazi.enable = true;
|
||||||
|
programs.yazi.enableFishIntegration = true;
|
||||||
|
|
||||||
|
programs.fzf.enable = true;
|
||||||
|
programs.fzf.enableFishIntegration = true;
|
||||||
|
|
||||||
|
programs.lazygit.enable = true;
|
||||||
|
programs.lazygit.enableFishIntegration = true;
|
||||||
|
|
||||||
|
programs.zoxide.enable = true;
|
||||||
|
programs.zoxide.enableFishIntegration = true;
|
||||||
|
|
||||||
|
programs.distrobox.enable = true;
|
||||||
|
services.podman.enable = true;
|
||||||
|
|
||||||
|
programs.rofi.enable = true;
|
||||||
|
programs.rofi.plugins = [ pkgs.rofi-calc ];
|
||||||
|
|
||||||
|
services.polkit-gnome.enable = true;
|
||||||
|
services.cliphist.enable = true;
|
||||||
|
programs.btop.enable = true;
|
||||||
|
services.udiskie.enable = true;
|
||||||
|
programs.cava.enable = true;
|
||||||
|
programs.equibop.enable = true;
|
||||||
|
services.awww.enable = true;
|
||||||
|
services.mpdris2.enable = true;
|
||||||
|
programs.fastfetch.enable = true;
|
||||||
|
programs.prismlauncher.enable = true;
|
||||||
|
programs.fd.enable = true;
|
||||||
|
programs.uv.enable = true;
|
||||||
|
programs.satty.enable = true;
|
||||||
|
programs.mpvpaper.enable = true;
|
||||||
|
programs.obsidian.enable = true;
|
||||||
|
programs.gcc.enable = true;
|
||||||
|
programs.mpv.enable = true;
|
||||||
|
programs.imv.enable = true;
|
||||||
|
programs.aria2.enable = true;
|
||||||
|
programs.ripgrep.enable = true;
|
||||||
|
|
||||||
|
programs.pywal = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.pywal16;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -30,7 +30,6 @@
|
|||||||
spek
|
spek
|
||||||
ffmpeg
|
ffmpeg
|
||||||
# wine
|
# wine
|
||||||
ripgrep
|
|
||||||
nemo-with-extensions
|
nemo-with-extensions
|
||||||
papirus-icon-theme
|
papirus-icon-theme
|
||||||
rust-analyzer
|
rust-analyzer
|
||||||
@@ -59,6 +58,11 @@
|
|||||||
losslesscut
|
losslesscut
|
||||||
tree
|
tree
|
||||||
stow
|
stow
|
||||||
|
bluetui
|
||||||
|
file-roller
|
||||||
|
signal-desktop
|
||||||
|
file
|
||||||
|
ntfs3g
|
||||||
];
|
];
|
||||||
|
|
||||||
fonts.packages = with pkgs; [
|
fonts.packages = with pkgs; [
|
||||||
@@ -0,0 +1,92 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./hardware-configuration.nix
|
||||||
|
./packages.nix
|
||||||
|
../../modules/server
|
||||||
|
];
|
||||||
|
|
||||||
|
nix.settings.experimental-features = [
|
||||||
|
"nix-command"
|
||||||
|
"flakes"
|
||||||
|
];
|
||||||
|
|
||||||
|
fileSystems."/media/music" = {
|
||||||
|
device = "/dev/disk/by-uuid/8e6ae06e-a4b5-4ac8-ad15-cb288b14715f";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/home/user/backup" = {
|
||||||
|
device = "/dev/disk/by-uuid/db7d96f1-5c72-42dc-abc1-00de9b73f017";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.hostId = "6054e036";
|
||||||
|
networking.hostName = "nixos-music";
|
||||||
|
networking.networkmanager.enable = true;
|
||||||
|
networking.firewall.enable = true;
|
||||||
|
|
||||||
|
time.timeZone = "Europe/Berlin";
|
||||||
|
|
||||||
|
i18n.defaultLocale = "en_US.UTF-8";
|
||||||
|
console = {
|
||||||
|
font = "Lat2-Terminus16";
|
||||||
|
keyMap = "de";
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.fish.enable = true;
|
||||||
|
users.users.user = {
|
||||||
|
isNormalUser = true;
|
||||||
|
description = "user";
|
||||||
|
uid = 1000;
|
||||||
|
extraGroups = [
|
||||||
|
"networkmanager"
|
||||||
|
"wheel"
|
||||||
|
"docker"
|
||||||
|
];
|
||||||
|
shell = pkgs.fish;
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.nh = {
|
||||||
|
enable = true;
|
||||||
|
clean.enable = true;
|
||||||
|
flake = "/home/user/nix-config";
|
||||||
|
};
|
||||||
|
|
||||||
|
services.tailscale.enable = true;
|
||||||
|
services.rsync.enable = true;
|
||||||
|
programs.nix-ld.enable = true;
|
||||||
|
programs.neovim.enable = true;
|
||||||
|
programs.tmux.enable = true;
|
||||||
|
programs.bat.enable = true;
|
||||||
|
programs.git = {
|
||||||
|
enable = true;
|
||||||
|
config = {
|
||||||
|
user = {
|
||||||
|
name = "KeksNino";
|
||||||
|
email = "KeksNino@proton.me";
|
||||||
|
};
|
||||||
|
init = {
|
||||||
|
defaultBranch = "main";
|
||||||
|
};
|
||||||
|
push = {
|
||||||
|
autoSetupRemote = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.openssh = {
|
||||||
|
enable = true;
|
||||||
|
openFirewall = true;
|
||||||
|
settings = {
|
||||||
|
PasswordAuthentication = false;
|
||||||
|
PermitRootLogin = "no";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
system.stateVersion = "26.05";
|
||||||
|
}
|
||||||
@@ -0,0 +1,61 @@
|
|||||||
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
|
# and may be overwritten by future invocations. Please make changes
|
||||||
|
# to /etc/nixos/configuration.nix instead.
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
(modulesPath + "/installer/scan/not-detected.nix")
|
||||||
|
];
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = [
|
||||||
|
"xhci_pci"
|
||||||
|
"ahci"
|
||||||
|
"usb_storage"
|
||||||
|
"uas"
|
||||||
|
"sd_mod"
|
||||||
|
];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" = {
|
||||||
|
device = "zpool/root";
|
||||||
|
fsType = "zfs";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/var" = {
|
||||||
|
device = "zpool/var";
|
||||||
|
fsType = "zfs";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/nix" = {
|
||||||
|
device = "zpool/nix";
|
||||||
|
fsType = "zfs";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/home" = {
|
||||||
|
device = "zpool/home";
|
||||||
|
fsType = "zfs";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot" = {
|
||||||
|
device = "/dev/disk/by-uuid/FCFD-4472";
|
||||||
|
fsType = "vfat";
|
||||||
|
options = [
|
||||||
|
"fmask=0022"
|
||||||
|
"dmask=0022"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [ ];
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
}
|
||||||
@@ -0,0 +1,54 @@
|
|||||||
|
{
|
||||||
|
programs.beets.enable = true;
|
||||||
|
|
||||||
|
# programs.beets.package = pkgs.beets.override {
|
||||||
|
# pluginOverrides = {
|
||||||
|
# filetote = {
|
||||||
|
# enable = true;
|
||||||
|
# };
|
||||||
|
# };
|
||||||
|
# };
|
||||||
|
|
||||||
|
programs.beets.settings = {
|
||||||
|
directory = "/home/user/Music/Tracks";
|
||||||
|
|
||||||
|
plugins = [
|
||||||
|
"fetchart"
|
||||||
|
"badfiles"
|
||||||
|
"edit"
|
||||||
|
"fish"
|
||||||
|
"hook"
|
||||||
|
"info"
|
||||||
|
"missing"
|
||||||
|
];
|
||||||
|
|
||||||
|
import = {
|
||||||
|
copy = false;
|
||||||
|
move = false;
|
||||||
|
autotag = true;
|
||||||
|
write = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
paths = {
|
||||||
|
default = "$albumartist/$album/$track. $artist - $title";
|
||||||
|
};
|
||||||
|
|
||||||
|
fetchart = {
|
||||||
|
auto = true;
|
||||||
|
sources = [ "filesystem" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
badfiles = {
|
||||||
|
check_on_import = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
hook = {
|
||||||
|
hooks = [
|
||||||
|
{
|
||||||
|
event = "item_imported";
|
||||||
|
command = "echo test";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,46 @@
|
|||||||
|
{ pkgs, config, ... }:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./beets.nix
|
||||||
|
../../../modules/fish.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
home.username = "user";
|
||||||
|
home.homeDirectory = "/home/user";
|
||||||
|
|
||||||
|
programs.yazi.enable = true;
|
||||||
|
programs.yazi.enableFishIntegration = true;
|
||||||
|
|
||||||
|
programs.fzf.enable = true;
|
||||||
|
programs.fzf.enableFishIntegration = true;
|
||||||
|
|
||||||
|
programs.zoxide.enable = true;
|
||||||
|
programs.zoxide.enableFishIntegration = true;
|
||||||
|
|
||||||
|
programs.lazygit.enable = true;
|
||||||
|
programs.lazygit.enableFishIntegration = true;
|
||||||
|
|
||||||
|
programs.gcc.enable = true;
|
||||||
|
|
||||||
|
programs.ripgrep.enable = true;
|
||||||
|
|
||||||
|
programs.eza = {
|
||||||
|
enable = true;
|
||||||
|
enableFishIntegration = true;
|
||||||
|
git = true;
|
||||||
|
icons = "always";
|
||||||
|
extraOptions = [
|
||||||
|
"-1"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.btop.enable = true;
|
||||||
|
programs.fastfetch.enable = true;
|
||||||
|
programs.fd.enable = true;
|
||||||
|
|
||||||
|
home.sessionVariables = {
|
||||||
|
EDITOR = "nvim";
|
||||||
|
};
|
||||||
|
|
||||||
|
home.stateVersion = "26.05";
|
||||||
|
}
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
{ pkgs, ... }: {
|
||||||
|
|
||||||
|
environment.systemPackages = (
|
||||||
|
with pkgs;
|
||||||
|
[
|
||||||
|
wget
|
||||||
|
nixfmt
|
||||||
|
tree-sitter
|
||||||
|
lsof
|
||||||
|
exiftool
|
||||||
|
trash-cli
|
||||||
|
ffmpeg
|
||||||
|
unzip
|
||||||
|
scdl
|
||||||
|
aria2
|
||||||
|
nodejs
|
||||||
|
gomi
|
||||||
|
bun
|
||||||
|
croc
|
||||||
|
mp3val
|
||||||
|
flac
|
||||||
|
nitch
|
||||||
|
(python314.withPackages (
|
||||||
|
ps: with ps; [
|
||||||
|
requests
|
||||||
|
python-dotenv
|
||||||
|
]
|
||||||
|
))
|
||||||
|
]
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
{ system, bcdl-free, ... }:
|
||||||
|
{
|
||||||
|
environment.systemPackages = [ bcdl-free.packages.${system}.default ];
|
||||||
|
|
||||||
|
home-manager.useGlobalPkgs = true;
|
||||||
|
home-manager.useUserPackages = true;
|
||||||
|
|
||||||
|
home-manager.backupFileExtension = "backup";
|
||||||
|
}
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
{ nix-flatpak, ... }:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
nix-flatpak.nixosModules.nix-flatpak
|
||||||
|
];
|
||||||
|
|
||||||
|
services.flatpak.remotes = [
|
||||||
|
{
|
||||||
|
name = "cloudredirect";
|
||||||
|
location = "https://raw.githubusercontent.com/Selectively11/CloudRedirect/master/flatpak/cloudredirect.flatpakrepo";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "flathub";
|
||||||
|
location = "https://dl.flathub.org/repo/flathub.flatpakrepo";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
services.flatpak.packages = [
|
||||||
|
{
|
||||||
|
appId = "org.cloudredirect.CloudRedirect";
|
||||||
|
origin = "cloudredirect";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
{ xremap-flake, ... }:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
xremap-flake.nixosModules.default
|
||||||
|
];
|
||||||
|
|
||||||
|
services.xremap.enable = true;
|
||||||
|
services.xremap.withHypr = true;
|
||||||
|
|
||||||
|
services.xremap.config.modmap = [
|
||||||
|
{
|
||||||
|
name = "Global";
|
||||||
|
remap = {
|
||||||
|
"CapsLock" = "Esc";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
services.xremap.config.keymap = [
|
||||||
|
{
|
||||||
|
name = "curly braces";
|
||||||
|
remap = {
|
||||||
|
"KEY_SEMICOLON" = "RIGHTALT-KEY_7";
|
||||||
|
}; # ä -> }
|
||||||
|
remap = {
|
||||||
|
"KEY_APOSTROPHE" = "RIGHTALT-KEY_0";
|
||||||
|
}; # ö -> {
|
||||||
|
remap = {
|
||||||
|
"RIGHTALT-KEY_A" = "KEY_APOSTROPHE";
|
||||||
|
}; # altgr + a -> ä
|
||||||
|
remap = {
|
||||||
|
"RIGHTALT-KEY_W" = "KEY_SEMICOLON";
|
||||||
|
}; # altgr + w -> ö
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,28 @@
|
|||||||
|
{
|
||||||
|
programs.fish = {
|
||||||
|
enable = true;
|
||||||
|
interactiveShellInit = ''
|
||||||
|
nitch
|
||||||
|
set -g fish_key_bindings fish_hybrid_key_bindings
|
||||||
|
set fish_greeting
|
||||||
|
'';
|
||||||
|
shellAliases = {
|
||||||
|
ls = "eza -al --no-time --no-user --no-permissions --no-filesize";
|
||||||
|
ll = "eza -la";
|
||||||
|
cat = "bat";
|
||||||
|
cd = "z";
|
||||||
|
cp = "cp -v";
|
||||||
|
ff = "fastfetch";
|
||||||
|
grep = "grep -i";
|
||||||
|
hyprland = "start-hyprland";
|
||||||
|
mv = "mv -v";
|
||||||
|
n = "nvim";
|
||||||
|
py = "uv run";
|
||||||
|
r = "rsync -avh --info=progress2";
|
||||||
|
rm = "gomi";
|
||||||
|
ssh = "kitty +kitten ssh";
|
||||||
|
nd = "nix develop";
|
||||||
|
df = "df -h -x tmpfs -x devtmpfs -x squashfs -x overlay -x efivarfs";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,75 @@
|
|||||||
|
{
|
||||||
|
programs.nixvim = {
|
||||||
|
globals = {
|
||||||
|
mapleader = " ";
|
||||||
|
};
|
||||||
|
|
||||||
|
keymaps = [
|
||||||
|
{
|
||||||
|
action = "<cmd>lua Snacks.explorer.open()<CR>";
|
||||||
|
key = "<leader>e";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
action = "<cmd>lua Snacks.bufdelete()<CR>";
|
||||||
|
key = "<C-q>";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
mode = [
|
||||||
|
"n"
|
||||||
|
"x"
|
||||||
|
"o"
|
||||||
|
];
|
||||||
|
action = ''<cmd>lua require("flash").jump()<CR>'';
|
||||||
|
key = "s";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
action = "<cmd>BufferLineCycleNext<CR>";
|
||||||
|
key = "<tab>";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
action = "<cmd>BufferLineCyclePrev<CR>";
|
||||||
|
key = "<S-tab>";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
mode = [ "x" ];
|
||||||
|
action = "<gv";
|
||||||
|
key = "<";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
mode = [ "x" ];
|
||||||
|
action = ">gv";
|
||||||
|
key = ">";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
mode = [ "n" ];
|
||||||
|
action = ''"_d'';
|
||||||
|
key = "d";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
mode = [ "n" ];
|
||||||
|
action = ''"_dd'';
|
||||||
|
key = "dd";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
mode = [ "v" ];
|
||||||
|
action = ''"_d'';
|
||||||
|
key = "d";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
mode = [ "n" ];
|
||||||
|
action = "<cmd>Telescope live_grep<CR>";
|
||||||
|
key = "<leader>rg";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
mode = [ "n" ];
|
||||||
|
action = "<cmd>Telescope find_files<CR>";
|
||||||
|
key = "<leader>ff";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
mode = [ "n" ];
|
||||||
|
action = "<cmd>:lua vim.diagnostic.open_float<CR>";
|
||||||
|
key = "<leader>k";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
{
|
||||||
|
programs.nixvim.lsp = {
|
||||||
|
servers = {
|
||||||
|
lua_ls.enable = true;
|
||||||
|
nixd = {
|
||||||
|
enable = true;
|
||||||
|
config = {
|
||||||
|
settings = {
|
||||||
|
nixd = {
|
||||||
|
nixpkgs = {
|
||||||
|
expr = ''import (builtins.getFlake "/home/user/nix-config").inputs.nixpkgs { }'';
|
||||||
|
};
|
||||||
|
formatting = {
|
||||||
|
command = [ "nixfmt" ];
|
||||||
|
};
|
||||||
|
options = {
|
||||||
|
nixos = {
|
||||||
|
expr = ''(builtins.getFlake "/home/user/nix-config").nixosConfigurations.desktop.options'';
|
||||||
|
};
|
||||||
|
home_manager = {
|
||||||
|
expr = ''(builtins.getFlake "/home/user/nix-config").nixosConfigurations.desktop.options.home-manager.users.type.getSubOptions []'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,138 @@
|
|||||||
|
{
|
||||||
|
nixvim,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
nixvim.nixosModules.nixvim
|
||||||
|
./plugins
|
||||||
|
./keymaps.nix
|
||||||
|
./lsp.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
programs.nixvim = {
|
||||||
|
enable = false;
|
||||||
|
defaultEditor = true;
|
||||||
|
|
||||||
|
clipboard.register = "unnamedplus";
|
||||||
|
|
||||||
|
opts = {
|
||||||
|
number = true;
|
||||||
|
relativenumber = true;
|
||||||
|
expandtab = true;
|
||||||
|
shiftwidth = 2;
|
||||||
|
smartindent = true;
|
||||||
|
tabstop = 2;
|
||||||
|
softtabstop = 2;
|
||||||
|
|
||||||
|
showmode = false;
|
||||||
|
|
||||||
|
fillchars.eob = " ";
|
||||||
|
ignorecase = true;
|
||||||
|
smartcase = true;
|
||||||
|
mouse = "a";
|
||||||
|
};
|
||||||
|
|
||||||
|
extraPlugins = with pkgs.vimPlugins; [
|
||||||
|
boole-nvim
|
||||||
|
tokyodark-nvim
|
||||||
|
];
|
||||||
|
extraConfigLua = ''
|
||||||
|
require('boole').setup({
|
||||||
|
mappings = {
|
||||||
|
-- increment = '<C-a>',
|
||||||
|
decrement = '<C-x>'
|
||||||
|
},
|
||||||
|
allow_caps_additions = {
|
||||||
|
{'enable', 'disable'},
|
||||||
|
{'true', 'false'}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
require('tokyodark').setup({
|
||||||
|
gamma = 0.9,
|
||||||
|
transparent_background = true,
|
||||||
|
terminal_colors = false,
|
||||||
|
custom_highlights = function(_, palette)
|
||||||
|
return {
|
||||||
|
["@variable"] = {
|
||||||
|
fg = "#A0A8CD",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|
||||||
|
vim.cmd.colorscheme("tokyodark")
|
||||||
|
'';
|
||||||
|
|
||||||
|
plugins = {
|
||||||
|
lualine.enable = true;
|
||||||
|
bufferline = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
options = {
|
||||||
|
show_buffer_close_icons = false;
|
||||||
|
show_close_icon = false;
|
||||||
|
themable = true;
|
||||||
|
separator_style = "thin";
|
||||||
|
indicator.style = "none";
|
||||||
|
always_show_bufferline = false;
|
||||||
|
color_icons = true;
|
||||||
|
show_buffer_icons = true;
|
||||||
|
};
|
||||||
|
# highlights = {
|
||||||
|
# fill.bg = "NONE";
|
||||||
|
# separator.fg = "NONE";
|
||||||
|
# separator_selected.fg = "NONE";
|
||||||
|
# separator_visible.fg = "NONE";
|
||||||
|
# };
|
||||||
|
};
|
||||||
|
};
|
||||||
|
yazi.enable = true;
|
||||||
|
cord = {
|
||||||
|
enable = true;
|
||||||
|
settings.display.theme = "atom";
|
||||||
|
};
|
||||||
|
neoscroll.enable = true;
|
||||||
|
telescope = {
|
||||||
|
enable = true;
|
||||||
|
enabledExtensions = [ "persisted" ];
|
||||||
|
};
|
||||||
|
which-key.enable = true;
|
||||||
|
flash.enable = true;
|
||||||
|
lsp.enable = true;
|
||||||
|
fugitive.enable = true;
|
||||||
|
treesitter = {
|
||||||
|
enable = true;
|
||||||
|
highlight.enable = true;
|
||||||
|
indent.enable = true;
|
||||||
|
settings.ensure_installed = "all";
|
||||||
|
};
|
||||||
|
gitsigns.enable = true;
|
||||||
|
nvim-autopairs = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
cmp = {
|
||||||
|
autoEnableSources = true;
|
||||||
|
settings.sources = [
|
||||||
|
{ name = "nvim_lsp"; }
|
||||||
|
{ name = "path"; }
|
||||||
|
{ name = "buffer"; }
|
||||||
|
];
|
||||||
|
};
|
||||||
|
persisted.enable = true;
|
||||||
|
render-markdown.enable = true;
|
||||||
|
oil = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
view_options = {
|
||||||
|
show_hidden = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
colorizer.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
programs.nixvim.extraPackages = with pkgs; [
|
||||||
|
stylua
|
||||||
|
nixfmt
|
||||||
|
];
|
||||||
|
|
||||||
|
programs.nixvim.plugins = {
|
||||||
|
conform-nvim = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
format_on_save = ''
|
||||||
|
function(bufnr)
|
||||||
|
-- Disable "format_on_save lsp_fallback" for lanuages that don't
|
||||||
|
-- have a well standardized coding style. You can add additional
|
||||||
|
-- lanuages here or re-enable it for the disabled ones.
|
||||||
|
local disable_filetypes = { c = true, cpp = true }
|
||||||
|
if disable_filetypes[vim.bo[bufnr].filetype] then
|
||||||
|
return nil
|
||||||
|
else
|
||||||
|
return {
|
||||||
|
timeout_ms = 500,
|
||||||
|
lsp_format = "fallback",
|
||||||
|
}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
'';
|
||||||
|
formatters_by_ft = {
|
||||||
|
lua = [ "stylua" ];
|
||||||
|
nix = [ "nixfmt" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./snacks.nix
|
||||||
|
./conform.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,81 @@
|
|||||||
|
{
|
||||||
|
programs.nixvim.plugins = {
|
||||||
|
snacks = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
bigfile.enabled = true;
|
||||||
|
dashboard = {
|
||||||
|
enabled = true;
|
||||||
|
preset = {
|
||||||
|
keys = [
|
||||||
|
{
|
||||||
|
icon = " ";
|
||||||
|
key = "f";
|
||||||
|
desc = "Find File";
|
||||||
|
action = ":lua Snacks.dashboard.pick('files')";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
icon = " ";
|
||||||
|
key = "n";
|
||||||
|
desc = "New File";
|
||||||
|
action = ":ene | startinsert";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
icon = " ";
|
||||||
|
key = "g";
|
||||||
|
desc = "Find Text";
|
||||||
|
action = ":lua Snacks.dashboard.pick('live_grep')";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
icon = " ";
|
||||||
|
key = "r";
|
||||||
|
desc = "Recent Files";
|
||||||
|
action = ":lua Snacks.dashboard.pick('oldfiles')";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
icon = " ";
|
||||||
|
key = "c";
|
||||||
|
desc = "Config";
|
||||||
|
action = ":lua require('telescope.builtin').find_files({ cwd = '~/nix-config/modules/programs/neovim' })";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
icon = " ";
|
||||||
|
key = "s";
|
||||||
|
desc = "Restore Session";
|
||||||
|
action = ":Telescope persisted";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
icon = " ";
|
||||||
|
key = "q";
|
||||||
|
desc = "Quit";
|
||||||
|
action = ":qa";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
sections = [
|
||||||
|
{
|
||||||
|
section = "header";
|
||||||
|
gap = 2;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
section = "keys";
|
||||||
|
gap = 1;
|
||||||
|
padding = 1;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
explorer = {
|
||||||
|
enabled = true;
|
||||||
|
auto_close = true;
|
||||||
|
};
|
||||||
|
indent.enabled = false;
|
||||||
|
input.enabled = true;
|
||||||
|
picker.enabled = true;
|
||||||
|
notifier.enabled = true;
|
||||||
|
quickfile.enabled = true;
|
||||||
|
statuscolumn.enabled = true;
|
||||||
|
words.enabled = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
environment.systemPackages = [
|
||||||
|
(pkgs.writeShellScriptBin "scan" ''
|
||||||
|
find . -type f \( -iname "*.mp3" -o -iname "*.flac" -o -iname "*.m4a" -o -iname "*.ogg" -o -iname "*.wav" -o -iname "*.aiff" \) -print0 |
|
||||||
|
xargs -0 -P"$(nproc)" -I{} bash -c '
|
||||||
|
if ffprobe -v quiet -show_entries format_tags \
|
||||||
|
-of default=nw=1:nk=1 "$1" 2>/dev/null |
|
||||||
|
grep -q -E "Visit https?://[^ ]+"; then
|
||||||
|
echo "Match found in: $1"
|
||||||
|
fi
|
||||||
|
' _ {} | sort
|
||||||
|
'')
|
||||||
|
(pkgs.writeShellScriptBin "2scan" ''
|
||||||
|
find . -type f \( -iname "*.mp3" -o -iname "*.flac" -o -iname "*.m4a" -o -iname "*.ogg" -o -iname "*.wav" -o -iname "*.aiff" \) -print0 |
|
||||||
|
xargs -0 -P"$(nproc)" -I{} sh -c '
|
||||||
|
if ! ffprobe -v quiet -show_entries format_tags \
|
||||||
|
-of default=nw=1:nk=1 "$1" 2>/dev/null |
|
||||||
|
grep -q -E "Visit https?://[^ ]+"; then
|
||||||
|
echo "Match found in: $1"
|
||||||
|
fi
|
||||||
|
' _ {}
|
||||||
|
'')
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./slskd.nix
|
||||||
|
./navidrome.nix
|
||||||
|
./nfs.nix
|
||||||
|
./services.nix
|
||||||
|
./smb.nix
|
||||||
|
./zfs.nix
|
||||||
|
./firewall.nix
|
||||||
|
../scripts.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
networking.firewall.allowedTCPPorts = [
|
||||||
|
32895
|
||||||
|
4533
|
||||||
|
2049
|
||||||
|
445
|
||||||
|
5030
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
{ lib, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
services.navidrome = {
|
||||||
|
enable = true;
|
||||||
|
user = "user";
|
||||||
|
settings = {
|
||||||
|
MusicFolder = "/home/user/Music";
|
||||||
|
PlaylistsPath = "Playlists";
|
||||||
|
Address = "0.0.0.0";
|
||||||
|
ScanSchedule = "@every 24h";
|
||||||
|
EnableInsightsCollector = false;
|
||||||
|
Scanner.PurgeMissing = "always";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.navidrome.serviceConfig = {
|
||||||
|
ProtectHome = lib.mkForce false;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
services.nfs.server = {
|
||||||
|
enable = true;
|
||||||
|
exports = {
|
||||||
|
"/media/music" = {
|
||||||
|
"192.168.132.0/24" = [
|
||||||
|
"rw"
|
||||||
|
"async"
|
||||||
|
"no_subtree_check"
|
||||||
|
"fsid=1"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
systemd.timers."bc-wishlist-scraper" = {
|
||||||
|
wantedBy = [ "timers.target" ];
|
||||||
|
timerConfig = {
|
||||||
|
OnCalendar = "daily";
|
||||||
|
Unit = "bc-wishlist-scraper.service";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services."bc-wishlist-scraper" = {
|
||||||
|
script = ''
|
||||||
|
${pkgs.bash}/bin/bash /home/user/bc-wishlist-scraper/run.sh
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.user.timers."scdl" = {
|
||||||
|
wantedBy = [ "timers.target" ];
|
||||||
|
timerConfig = {
|
||||||
|
OnCalendar = "daily";
|
||||||
|
Unit = "scdl.service";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.user.services."scdl" = {
|
||||||
|
script = ''
|
||||||
|
cd ~/Music/scdl && ${pkgs.scdl}/bin/scdl me -f -c --download-archive archive.txt
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,118 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
services.slskd = {
|
||||||
|
enable = true;
|
||||||
|
environmentFile = /home/user/slskd_secrets;
|
||||||
|
user = "user";
|
||||||
|
settings = {
|
||||||
|
remote_configuration = true;
|
||||||
|
remote_file_management = true;
|
||||||
|
directories = {
|
||||||
|
downloads = "/media/music/Soulseek";
|
||||||
|
};
|
||||||
|
shares = {
|
||||||
|
directories = [
|
||||||
|
"/media/music/Tracks"
|
||||||
|
"/media/music/Tracks2"
|
||||||
|
"/media/music/samples"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
rooms = [
|
||||||
|
"Rare Music"
|
||||||
|
"nicotine"
|
||||||
|
"! ! LGBTQ+ ! !"
|
||||||
|
"lossless"
|
||||||
|
"Linux"
|
||||||
|
"Breakcore"
|
||||||
|
"Jungle"
|
||||||
|
];
|
||||||
|
transfers = {
|
||||||
|
upload = {
|
||||||
|
speed_limit = 3700;
|
||||||
|
};
|
||||||
|
groups = {
|
||||||
|
blacklisted = {
|
||||||
|
members = [
|
||||||
|
"relay"
|
||||||
|
"smbd"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
user_defined = {
|
||||||
|
my_buddies = {
|
||||||
|
upload = {
|
||||||
|
priority = 1;
|
||||||
|
strategy = "firstinfirstout";
|
||||||
|
slots = 1000;
|
||||||
|
};
|
||||||
|
members = [
|
||||||
|
"noamifur"
|
||||||
|
"mesityl"
|
||||||
|
"diphenhydramine"
|
||||||
|
"monfi"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
soulseek = {
|
||||||
|
description = ''
|
||||||
|
Fuck DRM. Fuck Spotify
|
||||||
|
Discord: keksnino
|
||||||
|
https://www.last.fm/user/KeksNino
|
||||||
|
'';
|
||||||
|
listen_port = 32895;
|
||||||
|
};
|
||||||
|
feature = {
|
||||||
|
swagger = true;
|
||||||
|
};
|
||||||
|
integrations = {
|
||||||
|
webhooks = {
|
||||||
|
discord_relay = {
|
||||||
|
call = {
|
||||||
|
url = "http://localhost:5001/slskd_webhook";
|
||||||
|
};
|
||||||
|
on = [ "UploadFileComplete" ];
|
||||||
|
timeout = 5000;
|
||||||
|
retry = {
|
||||||
|
attempts = 3;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
retention = {
|
||||||
|
files = {
|
||||||
|
incomplete = 20160;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.user.services.slskd-speed = {
|
||||||
|
enable = true;
|
||||||
|
description = "Soulseek True Speed Shower";
|
||||||
|
after = [ "network-online.target" ];
|
||||||
|
wants = [ "network-online.target" ];
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "simple";
|
||||||
|
Environment = "PYTHONUNBUFFERED=1";
|
||||||
|
Restart = "on-failure";
|
||||||
|
RestartSec = 30;
|
||||||
|
StandardOutput = "journal";
|
||||||
|
StandardError = "journal";
|
||||||
|
EnvironmentFile = "/home/user/slskd_secrets";
|
||||||
|
ExecStart = ''
|
||||||
|
${pkgs.python3}/bin/python3 /home/user/slskd-speed.py \
|
||||||
|
-u "$SLSKD_SLSK_USERNAME" \
|
||||||
|
-p "$SLSKD_SLSK_PASSWORD" \
|
||||||
|
-s 30mbit/s \
|
||||||
|
--slskd-url http://localhost:5030 \
|
||||||
|
--slskd-key "$SLSKD_API_KEY" \
|
||||||
|
--loop \
|
||||||
|
--poll-interval 30 \
|
||||||
|
--interval 900
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
services.samba = {
|
||||||
|
enable = true;
|
||||||
|
openFirewall = true;
|
||||||
|
settings = {
|
||||||
|
global = {
|
||||||
|
"workgroup" = "WORKGROUP";
|
||||||
|
"server string" = "smbnix";
|
||||||
|
"security" = "user";
|
||||||
|
"interfaces" = "lo eno1 tailscale0";
|
||||||
|
"hosts allow" = "192.168.132.0/24 100.64.0.0/10 127.0.0.1 localhost";
|
||||||
|
"hosts deny" = "0.0.0.0/0";
|
||||||
|
"guest account" = "nobody";
|
||||||
|
};
|
||||||
|
"Music" = {
|
||||||
|
"path" = "/media/music";
|
||||||
|
"browseable" = "yes";
|
||||||
|
"read only" = "no";
|
||||||
|
"guest ok" = "no";
|
||||||
|
"valid users" = "user";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
{
|
||||||
|
boot.loader.grub = {
|
||||||
|
enable = true;
|
||||||
|
zfsSupport = true;
|
||||||
|
efiSupport = true;
|
||||||
|
efiInstallAsRemovable = true;
|
||||||
|
mirroredBoots = [
|
||||||
|
{
|
||||||
|
devices = [ "nodev" ];
|
||||||
|
path = "/boot";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/" = {
|
||||||
|
device = "zpool/root";
|
||||||
|
fsType = "zfs";
|
||||||
|
};
|
||||||
|
fileSystems."/nix" = {
|
||||||
|
device = "zpool/nix";
|
||||||
|
fsType = "zfs";
|
||||||
|
};
|
||||||
|
fileSystems."/var" = {
|
||||||
|
device = "zpool/var";
|
||||||
|
fsType = "zfs";
|
||||||
|
};
|
||||||
|
fileSystems."/home" = {
|
||||||
|
device = "zpool/home";
|
||||||
|
fsType = "zfs";
|
||||||
|
};
|
||||||
|
fileSystems."/boot" = {
|
||||||
|
device = "/dev/disk/by-uuid/FCFD-4472";
|
||||||
|
fsType = "vfat";
|
||||||
|
};
|
||||||
|
boot.zfs.forceImportRoot = false;
|
||||||
|
services.zfs.autoScrub.enable = true;
|
||||||
|
|
||||||
|
swapDevices = [ ];
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user