rename myOptions to modules
This commit is contained in:
parent
e1f8a2e1d4
commit
48f8ac7b19
45 changed files with 1065 additions and 89 deletions
390
flake.lock
generated
390
flake.lock
generated
|
@ -21,6 +21,27 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"anyrun": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-parts": "flake-parts",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1712136515,
|
||||||
|
"narHash": "sha256-LpjQJYC24S5P5XhJsZX6HqsQT1pohcFzM6N42I6qo/U=",
|
||||||
|
"owner": "Kirottu",
|
||||||
|
"repo": "anyrun",
|
||||||
|
"rev": "be6728884d543665e7bd137bbef62dc1d04a210b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "Kirottu",
|
||||||
|
"repo": "anyrun",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"crane": {
|
"crane": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
@ -87,6 +108,21 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat": {
|
"flake-compat": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1688025799,
|
||||||
|
"narHash": "sha256-ktpB4dRtnksm9F5WawoIkEneh1nrEvuxb5lJFt1iOyw=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "8bf105319d44f6b9f0d764efa4fdef9f1cc9ba1c",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-compat_2": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1696426674,
|
"lastModified": 1696426674,
|
||||||
|
@ -103,6 +139,49 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-parts": {
|
"flake-parts": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"anyrun",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1696343447,
|
||||||
|
"narHash": "sha256-B2xAZKLkkeRFG5XcHHSXXcP7To9Xzr59KXeZiRf4vdQ=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "c9afaba3dfa4085dbd2ccb38dfade5141e33d9d4",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"nixpkgs-wayland",
|
||||||
|
"nix-eval-jobs",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1701473968,
|
||||||
|
"narHash": "sha256-YcVE5emp1qQ8ieHUnxt1wCZCC3ZfAS+SRRWZ2TMda7E=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "34fed993f1674c8d06d58b37ce1e0fe5eebcb9f5",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts_3": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-lib": [
|
"nixpkgs-lib": [
|
||||||
"schizofox",
|
"schizofox",
|
||||||
|
@ -123,9 +202,9 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-parts_2": {
|
"flake-parts_4": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-lib": "nixpkgs-lib"
|
"nixpkgs-lib": "nixpkgs-lib_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1698882062,
|
"lastModified": 1698882062,
|
||||||
|
@ -141,6 +220,24 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-utils": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_5"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1710146030,
|
||||||
|
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"hercules-ci-effects": {
|
"hercules-ci-effects": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-parts": [
|
"flake-parts": [
|
||||||
|
@ -335,6 +432,127 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"hyprlang_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprlock",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": "systems_3"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1711250455,
|
||||||
|
"narHash": "sha256-LSq1ZsTpeD7xsqvlsepDEelWRDtAhqwetp6PusHXJRo=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprlang",
|
||||||
|
"rev": "b3e430f81f3364c5dd1a3cc9995706a4799eb3fa",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprlang",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"hyprlock": {
|
||||||
|
"inputs": {
|
||||||
|
"hyprlang": "hyprlang_2",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": "systems_4"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1712861866,
|
||||||
|
"narHash": "sha256-7ISUD6Z8FivTw/Db8tGJdiJeqpvJs7CSCwadopb1oro=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprlock",
|
||||||
|
"rev": "6fa65e1172d633e61ed957a49e7cf96010432623",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprlock",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"lib-aggregate": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils",
|
||||||
|
"nixpkgs-lib": "nixpkgs-lib"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1712491724,
|
||||||
|
"narHash": "sha256-E5EcBzf/zaR3hD8g1CDtqqwXXebSWtqOvoaR+LDjTME=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "lib-aggregate",
|
||||||
|
"rev": "2737d0204685c3274390229a09eb8f7eaa1a9e89",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "lib-aggregate",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nix-eval-jobs": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-parts": "flake-parts_2",
|
||||||
|
"nix-github-actions": "nix-github-actions",
|
||||||
|
"nixpkgs": "nixpkgs_3",
|
||||||
|
"treefmt-nix": "treefmt-nix"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1705242886,
|
||||||
|
"narHash": "sha256-TLj334vRwFtSym3m+NnKcNCnKKPNoTC/TDZL40vmOso=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nix-eval-jobs",
|
||||||
|
"rev": "6b03a93296faf174b97546fd573c8b379f523a8d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nix-eval-jobs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nix-filter": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1693833173,
|
||||||
|
"narHash": "sha256-hlMABKrGbEiJD5dwUSfnw1CQ3bG7KKwDV+Nx3bEZd7U=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "nix-filter",
|
||||||
|
"rev": "ac030bd9ba98e318e1f4c4328d60766ade8ebe8b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "nix-filter",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nix-github-actions": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs-wayland",
|
||||||
|
"nix-eval-jobs",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1701208414,
|
||||||
|
"narHash": "sha256-xrQ0FyhwTZK6BwKhahIkUVZhMNk21IEI1nUcWSONtpo=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nix-github-actions",
|
||||||
|
"rev": "93e39cc1a087d65bcf7a132e75a650c44dd2b734",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nix-github-actions",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixpak": {
|
"nixpak": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-parts": [
|
"flake-parts": [
|
||||||
|
@ -378,6 +596,21 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-lib": {
|
"nixpkgs-lib": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1712450863,
|
||||||
|
"narHash": "sha256-K6IkdtMtq9xktmYPj0uaYc8NsIqHuaAoRBaMgu9Fvrw=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixpkgs.lib",
|
||||||
|
"rev": "3c62b6a12571c9a7f65ab037173ee153d539905f",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixpkgs.lib",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs-lib_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"dir": "lib",
|
"dir": "lib",
|
||||||
"lastModified": 1698611440,
|
"lastModified": 1698611440,
|
||||||
|
@ -395,6 +628,27 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs-wayland": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat",
|
||||||
|
"lib-aggregate": "lib-aggregate",
|
||||||
|
"nix-eval-jobs": "nix-eval-jobs",
|
||||||
|
"nixpkgs": "nixpkgs_4"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1712942143,
|
||||||
|
"narHash": "sha256-pTpvq5EXPD9noOBkmTEa7mkwMpeda8+8u3anmjxhRAI=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixpkgs-wayland",
|
||||||
|
"rev": "8ed6e0db00db83e5a598afa6cdf32c9b41f083bd",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "nixpkgs-wayland",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1712791164,
|
"lastModified": 1712791164,
|
||||||
|
@ -411,6 +665,38 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1703134684,
|
||||||
|
"narHash": "sha256-SQmng1EnBFLzS7WSRyPM9HgmZP2kLJcPAz+Ug/nug6o=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "d6863cbcbbb80e71cecfc03356db1cda38919523",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixpkgs-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_4": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1712791164,
|
||||||
|
"narHash": "sha256-3sbWO1mbpWsLepZGbWaMovSO7ndZeFqDSdX0hZ9nVyw=",
|
||||||
|
"owner": "nixos",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "1042fd8b148a9105f3c0aca3a6177fd1d9360ba5",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nixos",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nur": {
|
"nur": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1712918680,
|
"lastModified": 1712918680,
|
||||||
|
@ -429,12 +715,16 @@
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"agenix": "agenix",
|
"agenix": "agenix",
|
||||||
|
"anyrun": "anyrun",
|
||||||
"fenix": "fenix",
|
"fenix": "fenix",
|
||||||
"home-manager": "home-manager_2",
|
"home-manager": "home-manager_2",
|
||||||
"hyprland": "hyprland",
|
"hyprland": "hyprland",
|
||||||
|
"hyprlock": "hyprlock",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixpkgs": "nixpkgs_2",
|
||||||
|
"nixpkgs-wayland": "nixpkgs-wayland",
|
||||||
"nur": "nur",
|
"nur": "nur",
|
||||||
"schizofox": "schizofox"
|
"schizofox": "schizofox",
|
||||||
|
"split-monitor-workspaces": "split-monitor-workspaces"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"rust-analyzer-src": {
|
"rust-analyzer-src": {
|
||||||
|
@ -456,8 +746,8 @@
|
||||||
},
|
},
|
||||||
"schizofox": {
|
"schizofox": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat_2",
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts_3",
|
||||||
"home-manager": "home-manager_3",
|
"home-manager": "home-manager_3",
|
||||||
"nixpak": "nixpak",
|
"nixpak": "nixpak",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
@ -482,7 +772,7 @@
|
||||||
"searx-randomizer": {
|
"searx-randomizer": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"crane": "crane",
|
"crane": "crane",
|
||||||
"flake-parts": "flake-parts_2",
|
"flake-parts": "flake-parts_4",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"schizofox",
|
"schizofox",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
|
@ -502,6 +792,27 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"split-monitor-workspaces": {
|
||||||
|
"inputs": {
|
||||||
|
"hyprland": [
|
||||||
|
"hyprland"
|
||||||
|
],
|
||||||
|
"nix-filter": "nix-filter"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1712527107,
|
||||||
|
"narHash": "sha256-stmJqifOWf8oXxKwHvCo3RaVapXSk1n/+Sf9nKNENEA=",
|
||||||
|
"owner": "Duckonaut",
|
||||||
|
"repo": "split-monitor-workspaces",
|
||||||
|
"rev": "c5696000777f6586aaa255bd0a9b0627d5da911f",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "Duckonaut",
|
||||||
|
"repo": "split-monitor-workspaces",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"systems": {
|
"systems": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
|
@ -532,6 +843,73 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"systems_3": {
|
||||||
|
"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_4": {
|
||||||
|
"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_5": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"treefmt-nix": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs-wayland",
|
||||||
|
"nix-eval-jobs",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1702979157,
|
||||||
|
"narHash": "sha256-RnFBbLbpqtn4AoJGXKevQMCGhra4h6G2MPcuTSZZQ+g=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "treefmt-nix",
|
||||||
|
"rev": "2961375283668d867e64129c22af532de8e77734",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "treefmt-nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"wlroots": {
|
"wlroots": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
|
|
|
@ -37,4 +37,15 @@ in {
|
||||||
inputs.agenix.nixosModules.default
|
inputs.agenix.nixosModules.default
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
flocke = lib.nixosSystem {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
specialArgs = { inherit lib inputs self; };
|
||||||
|
modules = [
|
||||||
|
./dragyx/flocke
|
||||||
|
../modules
|
||||||
|
inputs.home-manager.nixosModules.home-manager
|
||||||
|
inputs.agenix.nixosModules.default
|
||||||
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
65
hosts/dragyx/common/packages.nix
Normal file
65
hosts/dragyx/common/packages.nix
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
# which default packages to use for the system
|
||||||
|
{ inputs, outputs, profile-config, pkgs, ...}:
|
||||||
|
|
||||||
|
let
|
||||||
|
python-packages = ps: with ps; [
|
||||||
|
pandas
|
||||||
|
numpy
|
||||||
|
opencv4
|
||||||
|
ipython
|
||||||
|
];
|
||||||
|
in
|
||||||
|
{
|
||||||
|
# List packages installed in system profile. To search, run:
|
||||||
|
# $ nix search wget
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
(python3.withPackages python-packages)
|
||||||
|
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
||||||
|
neovim
|
||||||
|
eza # exa is unmaintained
|
||||||
|
hwinfo
|
||||||
|
zsh
|
||||||
|
git
|
||||||
|
broot
|
||||||
|
unzip
|
||||||
|
rsync
|
||||||
|
# neofetch
|
||||||
|
# fastfetch has the option to set a timeout for
|
||||||
|
# for each module, which makes it dramatically faster
|
||||||
|
# as counting the number of packages takes over 800 (!!!) ms,
|
||||||
|
# which makes it very unpleasant to use as default thing
|
||||||
|
# to display when starting a terminal
|
||||||
|
fastfetch
|
||||||
|
alacritty
|
||||||
|
wget
|
||||||
|
gnumake
|
||||||
|
zoxide
|
||||||
|
python3
|
||||||
|
nodejs
|
||||||
|
gcc
|
||||||
|
cargo
|
||||||
|
rustc
|
||||||
|
rust-analyzer
|
||||||
|
clippy
|
||||||
|
lsof
|
||||||
|
htop
|
||||||
|
okular
|
||||||
|
smartmontools
|
||||||
|
networkmanager
|
||||||
|
pkg-config
|
||||||
|
sof-firmware # audio
|
||||||
|
nix-index
|
||||||
|
# --------- optional
|
||||||
|
gnome.eog
|
||||||
|
sherlock
|
||||||
|
xfce.thunar
|
||||||
|
|
||||||
|
plocate
|
||||||
|
alsa-utils
|
||||||
|
|
||||||
|
# partition management
|
||||||
|
parted
|
||||||
|
gnufdisk
|
||||||
|
lapce
|
||||||
|
];
|
||||||
|
}
|
163
hosts/dragyx/flocke/configuration.nix
Normal file
163
hosts/dragyx/flocke/configuration.nix
Normal file
|
@ -0,0 +1,163 @@
|
||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../../../options/common/pin-registry.nix
|
||||||
|
../../../options/common/preserve-system.nix
|
||||||
|
../../../options/desktop/fonts.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
|
||||||
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
time.timeZone = "Europe/Zurich";
|
||||||
|
security.sudo.package = pkgs.sudo.override { withInsults = true; };
|
||||||
|
|
||||||
|
services.xserver = {
|
||||||
|
enable = true;
|
||||||
|
displayManager = {
|
||||||
|
sessionPackages = [ pkgs.hyprland ]; # pkgs.gnome.gnome-session.sessions ];
|
||||||
|
defaultSession = "hyprland";
|
||||||
|
sddm = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
windowManager.hypr.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
hardware.bluetooth.enable = true;
|
||||||
|
hardware.bluetooth.powerOnBoot = true;
|
||||||
|
|
||||||
|
hardware.opengl.driSupport = true;
|
||||||
|
hardware.opengl.driSupport32Bit = true;
|
||||||
|
hardware.opengl.enable = true;
|
||||||
|
|
||||||
|
services.logrotate.checkConfig = false;
|
||||||
|
|
||||||
|
networking.hostName = "flocke"; # Define your hostname.
|
||||||
|
networking.hostId = "adf23c31";
|
||||||
|
networking.interfaces.wlp1s0.useDHCP = true;
|
||||||
|
networking.networkmanager.enable = true;
|
||||||
|
environment.systemPackages = with pkgs; [ networkmanager ]; # cli tool for managing connections
|
||||||
|
|
||||||
|
boot = {
|
||||||
|
kernelParams = [ ];
|
||||||
|
initrd.supportedFilesystems = [ "ext4" ];
|
||||||
|
supportedFilesystems = [ "ext4" ];
|
||||||
|
loader = {
|
||||||
|
efi.efiSysMountPoint = "/boot";
|
||||||
|
efi.canTouchEfiVariables = true;
|
||||||
|
grub = {
|
||||||
|
enable = true;
|
||||||
|
device = "nodev";
|
||||||
|
efiSupport = true;
|
||||||
|
enableCryptodisk = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
initrd.luks.devices = {
|
||||||
|
cryptroot = {
|
||||||
|
device = "/dev/disk/by-uuid/ec5ff3a1-9b39-4ba5-aa0f-19e898b4f6e8";
|
||||||
|
preLVM = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# see https://nixos.wiki/wiki/AMD_GPU
|
||||||
|
services.xserver.videoDrivers = [ "amdgpu" ];
|
||||||
|
systemd.tmpfiles.rules = [
|
||||||
|
"L+ /opt/rocm/hip - - - - ${pkgs.rocmPackages.clr}"
|
||||||
|
];
|
||||||
|
hardware.opengl.extraPackages = with pkgs; [
|
||||||
|
rocmPackages.clr.icd
|
||||||
|
];
|
||||||
|
|
||||||
|
services.power-profiles-daemon.enable = false;
|
||||||
|
|
||||||
|
# stock nixos power management
|
||||||
|
powerManagement.enable = true;
|
||||||
|
|
||||||
|
services.tlp = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
CPU_SCALING_GOVERNOR_ON_AC = "performance";
|
||||||
|
CPU_SCALING_GOVERNOR_ON_BAT = "powersave";
|
||||||
|
|
||||||
|
CPU_ENERGY_PERF_POLICY_ON_BAT = "power";
|
||||||
|
CPU_ENERGY_PERF_POLICY_ON_AC = "performance";
|
||||||
|
|
||||||
|
CPU_MIN_PERF_ON_AC = 0;
|
||||||
|
CPU_MAX_PERF_ON_AC = 100;
|
||||||
|
CPU_MIN_PERF_ON_BAT = 0;
|
||||||
|
CPU_MAX_PERF_ON_BAT = 20;
|
||||||
|
|
||||||
|
#Optional helps save long term battery health
|
||||||
|
START_CHARGE_THRESH_BAT0 = 40; # 40 and bellow it starts to charge
|
||||||
|
STOP_CHARGE_THRESH_BAT0 = 85; # 80 and above it stops charging
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [ {
|
||||||
|
device = "/var/lib/swapfile";
|
||||||
|
size = 32*1024;
|
||||||
|
} ];
|
||||||
|
|
||||||
|
|
||||||
|
# be nice to your ssds
|
||||||
|
services.fstrim.enable = true;
|
||||||
|
# services.xserver.enable = pkgs.lib.mkForce false;
|
||||||
|
|
||||||
|
security.polkit.enable = true;
|
||||||
|
|
||||||
|
modules = {
|
||||||
|
other = {
|
||||||
|
system = {
|
||||||
|
hostname = "flocke";
|
||||||
|
username = "dragyx";
|
||||||
|
monitors = {
|
||||||
|
name = "LaptopMain";
|
||||||
|
resolution = {
|
||||||
|
x = 2256;
|
||||||
|
y = 1504;
|
||||||
|
};
|
||||||
|
scale = 1.0;
|
||||||
|
refresh_rate = 60;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
home-manager = {
|
||||||
|
enable = true;
|
||||||
|
enableDirenv = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
programs = {
|
||||||
|
vesktop.enable = true;
|
||||||
|
btop.enable = true;
|
||||||
|
mpv.enable = true;
|
||||||
|
schizofox.enable = true;
|
||||||
|
obs.enable = true;
|
||||||
|
neovim.enable = true;
|
||||||
|
git = {
|
||||||
|
enable = true;
|
||||||
|
userName = "Dragyx";
|
||||||
|
userEmail = "66752602+Dragyx@users.noreply.github.com";
|
||||||
|
defaultBranch = "main";
|
||||||
|
};
|
||||||
|
starship.enable = true;
|
||||||
|
zsh = {
|
||||||
|
enable = true;
|
||||||
|
profiling = false;
|
||||||
|
};
|
||||||
|
# badneovim.enable = true;
|
||||||
|
};
|
||||||
|
services = {
|
||||||
|
pipewire.enable = true;
|
||||||
|
};
|
||||||
|
WM.hyprland.enable = true;
|
||||||
|
};
|
||||||
|
# This value determines the NixOS release from which the default
|
||||||
|
# settings for stateful data, like file locations and database versions
|
||||||
|
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||||
|
# this value at the release version of the first install of this system.
|
||||||
|
# Before changing this value read the documentation for this option
|
||||||
|
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||||
|
system.stateVersion = "21.11"; # Did you read the comment?
|
||||||
|
}
|
8
hosts/dragyx/flocke/default.nix
Normal file
8
hosts/dragyx/flocke/default.nix
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
_: {
|
||||||
|
imports = [
|
||||||
|
../../../options/desktop/monitors.nix
|
||||||
|
./configuration.nix
|
||||||
|
./hardware-configuration.nix
|
||||||
|
# ./packages.nix
|
||||||
|
];
|
||||||
|
}
|
35
hosts/dragyx/flocke/hardware-configuration.nix
Normal file
35
hosts/dragyx/flocke/hardware-configuration.nix
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
{ config, lib, pkgs, modulesPath, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports =
|
||||||
|
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||||
|
];
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "thunderbolt" "usb_storage" "sd_mod" ];
|
||||||
|
boot.initrd.kernelModules = [ "amdgpu" ];
|
||||||
|
boot.kernelModules = [ "kvm-amd" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" =
|
||||||
|
{ device = "/dev/disk/by-uuid/2aaba0f2-e8dc-4583-a81e-2d35cc238e79";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
fileSystems."/boot" =
|
||||||
|
{ device = "/dev/disk/by-uuid/9D34-36F8";
|
||||||
|
fsType = "vfat";
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [ ];
|
||||||
|
|
||||||
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||||
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
|
# still possible to use this option, but it's recommended to use it in conjunction
|
||||||
|
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.wlp1s0.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
}
|
56
hosts/dragyx/flocke/packages.nix
Normal file
56
hosts/dragyx/flocke/packages.nix
Normal file
|
@ -0,0 +1,56 @@
|
||||||
|
# which default packages to use for the system
|
||||||
|
{ inputs, outputs, profile-config, pkgs, ...}:
|
||||||
|
|
||||||
|
let
|
||||||
|
python-packages = ps: with ps; [
|
||||||
|
pandas
|
||||||
|
numpy
|
||||||
|
opencv4
|
||||||
|
ipython
|
||||||
|
];
|
||||||
|
in
|
||||||
|
{
|
||||||
|
|
||||||
|
imports = [
|
||||||
|
../common/packages.nix
|
||||||
|
];
|
||||||
|
# List packages installed in system profile. To search, run:
|
||||||
|
# $ nix search wget
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
|
||||||
|
# security audits
|
||||||
|
lynis
|
||||||
|
element-desktop
|
||||||
|
jetbrains.idea-community
|
||||||
|
baobab
|
||||||
|
amdvlk
|
||||||
|
texlive.combined.scheme-full
|
||||||
|
android-tools
|
||||||
|
signal-desktop
|
||||||
|
nextcloud-client
|
||||||
|
etcher
|
||||||
|
vlc
|
||||||
|
audacity
|
||||||
|
thunderbird
|
||||||
|
eclipses.eclipse-java
|
||||||
|
openjdk
|
||||||
|
firefox
|
||||||
|
# pkgs.nordvpn # nur.repos.LuisChDev.nordvpn
|
||||||
|
material-icons
|
||||||
|
material-design-icons
|
||||||
|
libreoffice
|
||||||
|
gimp
|
||||||
|
spotify
|
||||||
|
okular
|
||||||
|
# minecraft
|
||||||
|
prismlauncher-unwrapped
|
||||||
|
glfw-wayland-minecraft
|
||||||
|
glxinfo
|
||||||
|
# window manager
|
||||||
|
flameshot
|
||||||
|
feh
|
||||||
|
# Animeeeeee!
|
||||||
|
ani-cli # The stable version is very outdated
|
||||||
|
];
|
||||||
|
|
||||||
|
}
|
|
@ -5,7 +5,7 @@
|
||||||
security.sudo.package = pkgs.sudo.override { withInsults = true; };
|
security.sudo.package = pkgs.sudo.override { withInsults = true; };
|
||||||
security.polkit.enable = true;
|
security.polkit.enable = true;
|
||||||
programs.kdeconnect.enable = true;
|
programs.kdeconnect.enable = true;
|
||||||
myOptions = {
|
modules = {
|
||||||
other = {
|
other = {
|
||||||
system = {
|
system = {
|
||||||
gitPath = "/home/lars/nichts";
|
gitPath = "/home/lars/nichts";
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ config, inputs, pkgs, ... }:
|
{ config, inputs, pkgs, ... }:
|
||||||
{
|
{
|
||||||
myOptions = {
|
modules = {
|
||||||
other = {
|
other = {
|
||||||
system = {
|
system = {
|
||||||
hostname = "dyonisos";
|
hostname = "dyonisos";
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ config, inputs, pkgs, ... }:
|
{ config, inputs, pkgs, ... }:
|
||||||
let
|
let
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
home-manager.users.${username} = {
|
home-manager.users.${username} = {
|
||||||
home.packages = let
|
home.packages = let
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
{ config, lib, inputs, pkgs, ... }:
|
{ config, lib, inputs, pkgs, ... }:
|
||||||
with lib; let
|
with lib; let
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
cfg = config.myOptions.hyprland;
|
cfg = config.modules.hyprland;
|
||||||
in {
|
in {
|
||||||
options.myOptions.hyprland.nvidia.enable = mkEnableOption "nvidia";
|
options.modules.hyprland.nvidia.enable = mkEnableOption "nvidia";
|
||||||
options.myOptions.hyprland = {
|
options.modules.hyprland = {
|
||||||
enable = mkEnableOption "hyprland";
|
enable = mkEnableOption "hyprland";
|
||||||
monitor = mkOption {
|
monitor = mkOption {
|
||||||
description = "hyprland monitor config";
|
description = "hyprland monitor config";
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ config, inputs, pkgs, ... }:
|
{ config, inputs, pkgs, ... }:
|
||||||
{
|
{
|
||||||
myOptions = {
|
modules = {
|
||||||
other = {
|
other = {
|
||||||
system = {
|
system = {
|
||||||
hostname = "kronos";
|
hostname = "kronos";
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ config, inputs, pkgs, ... }:
|
{ config, inputs, pkgs, ... }:
|
||||||
let
|
let
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
home-manager.users.${username} = {
|
home-manager.users.${username} = {
|
||||||
home.packages = let
|
home.packages = let
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ config, inputs, pkgs, ... }:
|
{ config, inputs, pkgs, ... }:
|
||||||
let
|
let
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
home-manager.users.${username} = {
|
home-manager.users.${username} = {
|
||||||
home.packages = let
|
home.packages = let
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
{ pkgs, lib, config, ... }:
|
{ pkgs, lib, config, ... }:
|
||||||
with lib; let
|
with lib; let
|
||||||
cfg = config.myOptions.programs.awesome;
|
cfg = config.modules.programs.awesome;
|
||||||
in {
|
in {
|
||||||
options.myOptions.programs.awesome.enable = mkEnableOption "awesome";
|
options.modules.programs.awesome.enable = mkEnableOption "awesome";
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
security.sudo.package = pkgs.sudo.override { withInsults = true; };
|
security.sudo.package = pkgs.sudo.override { withInsults = true; };
|
||||||
security.polkit.enable = true;
|
security.polkit.enable = true;
|
||||||
programs.kdeconnect.enable = true;
|
programs.kdeconnect.enable = true;
|
||||||
myOptions = {
|
modules = {
|
||||||
other = {
|
other = {
|
||||||
system = {
|
system = {
|
||||||
hostname = "mars";
|
hostname = "mars";
|
||||||
|
|
|
@ -2,8 +2,8 @@
|
||||||
|
|
||||||
with lib; let
|
with lib; let
|
||||||
|
|
||||||
cfg = config.myOptions.programs.hypr.land;
|
cfg = config.modules.programs.hypr.land;
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
hmCfg = config.home-manager.users.${username};
|
hmCfg = config.home-manager.users.${username};
|
||||||
|
|
||||||
smwPresent = elem inputs.split-monitor-workspaces.packages.${pkgs.system}.split-monitor-workspaces cfg.extraPlugins;
|
smwPresent = elem inputs.split-monitor-workspaces.packages.${pkgs.system}.split-monitor-workspaces cfg.extraPlugins;
|
||||||
|
@ -13,7 +13,7 @@ with lib; let
|
||||||
inherit (inputs.hyprland.packages.${pkgs.system}) hyprland;
|
inherit (inputs.hyprland.packages.${pkgs.system}) hyprland;
|
||||||
inherit (inputs.hyprlock.packages.${pkgs.system}) hyprlock;
|
inherit (inputs.hyprlock.packages.${pkgs.system}) hyprlock;
|
||||||
in {
|
in {
|
||||||
options.myOptions.programs.hypr.land = {
|
options.modules.programs.hypr.land = {
|
||||||
enable = mkEnableOption "huperland";
|
enable = mkEnableOption "huperland";
|
||||||
startupSound = mkOption {
|
startupSound = mkOption {
|
||||||
type = with types; nullOr path;
|
type = with types; nullOr path;
|
||||||
|
@ -359,7 +359,7 @@ in {
|
||||||
"[workspace special:rog silent;tile] ${config.services.asusd.package}/bin/rog-control-center")
|
"[workspace special:rog silent;tile] ${config.services.asusd.package}/bin/rog-control-center")
|
||||||
"[workspace special:keepassxc silent;tile] ${pkgs.keepassxc}/bin/keepassxc"
|
"[workspace special:keepassxc silent;tile] ${pkgs.keepassxc}/bin/keepassxc"
|
||||||
|
|
||||||
(if config.myOptions.programs.foot.server then "sleep 0.5 && ${pkgs.systemd}/bin/systemctl --user restart foot.service" else ";")
|
(if config.modules.programs.foot.server then "sleep 0.5 && ${pkgs.systemd}/bin/systemctl --user restart foot.service" else ";")
|
||||||
|
|
||||||
"${hyprland}/bin/hyprctl setcursor Bibata-Modern-Classic 24"
|
"${hyprland}/bin/hyprctl setcursor Bibata-Modern-Classic 24"
|
||||||
|
|
||||||
|
|
|
@ -5,12 +5,12 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: with lib; let
|
}: with lib; let
|
||||||
cfg = config.myOptions.programs.hypr.lock;
|
cfg = config.modules.programs.hypr.lock;
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
|
|
||||||
text_color = "rgba(eae0e4FF)";
|
text_color = "rgba(eae0e4FF)";
|
||||||
in {
|
in {
|
||||||
options.myOptions.programs.hypr.lock = {
|
options.modules.programs.hypr.lock = {
|
||||||
enable = mkEnableOption "hiper zamek";
|
enable = mkEnableOption "hiper zamek";
|
||||||
extraSettings = mkOption {
|
extraSettings = mkOption {
|
||||||
type = types.attrs;
|
type = types.attrs;
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
{ pkgs, lib, config, callPackage, ... }:
|
{ pkgs, lib, config, callPackage, ... }:
|
||||||
with lib; let
|
with lib; let
|
||||||
cfg = config.myOptions.programs.i3;
|
cfg = config.modules.programs.i3;
|
||||||
in {
|
in {
|
||||||
options.myOptions.programs.i3.enable = mkEnableOption "i3";
|
options.modules.programs.i3.enable = mkEnableOption "i3";
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ config, inputs, pkgs, ... }:
|
{ config, inputs, pkgs, ... }:
|
||||||
let
|
let
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
home-manager.users.${username} = {
|
home-manager.users.${username} = {
|
||||||
home.packages = let
|
home.packages = let
|
||||||
|
|
|
@ -4,10 +4,10 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: with lib; let
|
}: with lib; let
|
||||||
cfg = config.myOptions.programs.git;
|
cfg = config.modules.programs.git;
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
options.myOptions.programs.git = {
|
options.modules.programs.git = {
|
||||||
enable = mkEnableOption "git";
|
enable = mkEnableOption "git";
|
||||||
userName = mkOption {
|
userName = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
|
|
|
@ -3,16 +3,16 @@
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: with lib; let
|
}: with lib; let
|
||||||
cfg = config.myOptions.programs.starship;
|
cfg = config.modules.programs.starship;
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
options.myOptions.programs.starship.enable = mkEnableOption "starship";
|
options.modules.programs.starship.enable = mkEnableOption "starship";
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
home-manager.users.${username} = {
|
home-manager.users.${username} = {
|
||||||
programs.starship = {
|
programs.starship = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableZshIntegration = config.myOptions.programs.zsh.enable;
|
enableZshIntegration = config.modules.programs.zsh.enable;
|
||||||
settings = {
|
settings = {
|
||||||
add_newline = false;
|
add_newline = false;
|
||||||
command_timeout = 1000;
|
command_timeout = 1000;
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{ config, lib, pkgs, ... }:
|
||||||
with lib; let
|
with lib; let
|
||||||
cfg = config.myOptions.programs.zsh;
|
cfg = config.modules.programs.zsh;
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
hostname = config.myOptions.other.system.hostname;
|
hostname = config.modules.other.system.hostname;
|
||||||
gitPath = config.myOptions.other.system.gitPath;
|
gitPath = config.modules.other.system.gitPath;
|
||||||
in {
|
in {
|
||||||
options.myOptions.programs.zsh = {
|
options.modules.programs.zsh = {
|
||||||
enable = mkEnableOption "zsh";
|
enable = mkEnableOption "zsh";
|
||||||
extraAliases = mkOption {
|
extraAliases = mkOption {
|
||||||
type = types.attrs;
|
type = types.attrs;
|
||||||
|
|
5
modules/gui/WM/default.nix
Normal file
5
modules/gui/WM/default.nix
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
_: {
|
||||||
|
imports = [
|
||||||
|
./hyprland.nix
|
||||||
|
];
|
||||||
|
}
|
185
modules/gui/WM/hyprland.nix
Normal file
185
modules/gui/WM/hyprland.nix
Normal file
|
@ -0,0 +1,185 @@
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
let
|
||||||
|
cfg = config.modules.WM.hyprland;
|
||||||
|
username = config.modules.other.system.username;
|
||||||
|
monitors = config.modules.other.system.monitors;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.modules.WM.hyprland = {
|
||||||
|
enable = mkEnableOption "hyprland";
|
||||||
|
gnome-keyring = mkEnableOption "gnome-keyring";
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
programs.xwayland.enable = true;
|
||||||
|
/*
|
||||||
|
programs.hyprland = {
|
||||||
|
enable = true;
|
||||||
|
xwayland = true;
|
||||||
|
};
|
||||||
|
*/
|
||||||
|
services.gnome.gnome-keyring.enable = mkDefault cfg.gnome-keyring;
|
||||||
|
systemd.user.services.polkit-gnome-authentication-agent-1 = mkIf cfg.gnome-keyring {
|
||||||
|
description = "polkit-gnome-authentication-agent-1";
|
||||||
|
wantedBy = [ "graphical-session.target" ];
|
||||||
|
wants = [ "graphical-session.target" ];
|
||||||
|
after = [ "graphical-session.target" ];
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "simple";
|
||||||
|
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
|
||||||
|
Restart = "on-failure";
|
||||||
|
RestartSec = 1;
|
||||||
|
TimeoutStopSec = 10;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
home-manager.users.${username} = {
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
rofi
|
||||||
|
waybar
|
||||||
|
hyprpaper
|
||||||
|
hyprlock
|
||||||
|
hyprland
|
||||||
|
hyprshade
|
||||||
|
lxqt.lxqt-openssh-askpass
|
||||||
|
|
||||||
|
dunst
|
||||||
|
# wireplumber
|
||||||
|
unstable.xwayland
|
||||||
|
pciutils # lspci is needed by hyprland
|
||||||
|
# from some obscure tutorial on youtube
|
||||||
|
# xorg.libxcb
|
||||||
|
# mesa
|
||||||
|
libglvnd
|
||||||
|
egl-wayland
|
||||||
|
libdrm
|
||||||
|
vulkan-tools
|
||||||
|
dunst
|
||||||
|
swww
|
||||||
|
flameshot
|
||||||
|
bluetuith
|
||||||
|
brightnessctl
|
||||||
|
# needed for wayland copy / paste support in neovim
|
||||||
|
wl-clipboard
|
||||||
|
];
|
||||||
|
|
||||||
|
programs.hyprland = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
exec-once = mkIf cfg.gnome-keyring "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
|
||||||
|
monitor = map (
|
||||||
|
m: "${m.device},${m.resolution.x}x${m.resolution.y}@${m.refresh_rate},${m.position.x}x${m.position.y},${m.scale},transform,${m.transform}"
|
||||||
|
) monitors; #TODO: default value
|
||||||
|
input = {
|
||||||
|
kb_layout = console.keyMap;
|
||||||
|
natural_scroll = true;
|
||||||
|
sensitivity = 0;
|
||||||
|
};
|
||||||
|
general = {
|
||||||
|
gaps_in = 2;
|
||||||
|
gaps_out = 1;
|
||||||
|
border_size = 1;
|
||||||
|
col.active_border = "rgba(33ccffee) rgba(00ff99ee) 45deg";
|
||||||
|
col.inactive_border = "rgba(595959aa)";
|
||||||
|
layout = dwindle;
|
||||||
|
};
|
||||||
|
decoration.rounding = 5;
|
||||||
|
misc.disable_hyprland_logo = true;
|
||||||
|
animations = {
|
||||||
|
enabled = true;
|
||||||
|
# Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
|
||||||
|
|
||||||
|
bezier = ["myBezier, 0.05, 0.9, 0.1, 1.05"];
|
||||||
|
|
||||||
|
animation = [
|
||||||
|
"windowsOut, 1, 7, default, popin 80%"
|
||||||
|
"border, 1, 10, default"
|
||||||
|
"borderangle, 1, 8, default"
|
||||||
|
"fade, 1, 7, default"
|
||||||
|
"workspaces, 1, 6, default"
|
||||||
|
"windows, 1, 7, myBezier"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
gestures.workspace_swipe = true;
|
||||||
|
debug.enable_stdout_logs = true;
|
||||||
|
bind = [
|
||||||
|
|
||||||
|
|
||||||
|
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||||
|
"SUPER, RETURN, exec, alacritty"
|
||||||
|
"SUPER SHIFT, RETURN, exec, rofi -show drun"
|
||||||
|
"SUPER SHIFT, Q, killactive,"
|
||||||
|
"SUPER, M, exit, "
|
||||||
|
"SUPER, B, exec, firefox"
|
||||||
|
"SUPER, f, fullscreen"
|
||||||
|
"SUPER, E, exec, nautilus --new-window "
|
||||||
|
"SUPER, V, togglefloating, "
|
||||||
|
"SUPER, P, pseudo, # dwindle"
|
||||||
|
"SUPER, S, togglesplit, # dwindle"
|
||||||
|
"SUPER, C, exec, /home/vali/.config/wallpaper/colorscheme-setter"
|
||||||
|
",PRINT, exec, flameshot"
|
||||||
|
|
||||||
|
"binde = ,XF86MonBrightnessUp, exec, brightnessctl set 10%+"
|
||||||
|
"binde = ,XF86MonBrightnessDown, exec, brightnessctl set 10%-"
|
||||||
|
|
||||||
|
# Example volume button that allows press and hold, volume limited to 150%"
|
||||||
|
"binde = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+"
|
||||||
|
# Example volume button that will activate even while an input inhibitor is active"
|
||||||
|
"binde = ,XF86AudioLowerVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%-"
|
||||||
|
",XF86AudioMute, exec, $ wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
|
||||||
|
|
||||||
|
# Move focus with mainMod + arrow keys"
|
||||||
|
"SUPER, h, movefocus, l"
|
||||||
|
"SUPER, l, movefocus, r"
|
||||||
|
"SUPER, k, movefocus, u"
|
||||||
|
"SUPER, j, movefocus, d"
|
||||||
|
|
||||||
|
# move window to next / previous workspace"
|
||||||
|
"SUPER CTRL, h, movetoworkspace, -1"
|
||||||
|
"SUPER CTRL, l, movetoworkspace, +1"
|
||||||
|
|
||||||
|
# move to next / previous workspace"
|
||||||
|
"SUPER CTRL, h, workspace, -1"
|
||||||
|
"SUPER CTRL, l, workspace, +1"
|
||||||
|
|
||||||
|
|
||||||
|
# Switch workspaces with mainMod + [0-9]"
|
||||||
|
"SUPER, 1, workspace, 1"
|
||||||
|
"SUPER, 2, workspace, 2"
|
||||||
|
"SUPER, 3, workspace, 3"
|
||||||
|
"SUPER, 4, workspace, 4"
|
||||||
|
"SUPER, 5, workspace, 5"
|
||||||
|
"SUPER, 6, workspace, 6"
|
||||||
|
"SUPER, 7, workspace, 7"
|
||||||
|
"SUPER, 8, workspace, 8"
|
||||||
|
"SUPER, 9, workspace, 9"
|
||||||
|
"SUPER, 0, workspace, 10"
|
||||||
|
|
||||||
|
# Move active window to a workspace with mainMod + SHIFT + [0-9]"
|
||||||
|
"SUPER SHIFT, 1, movetoworkspace, 1"
|
||||||
|
"SUPER SHIFT, 2, movetoworkspace, 2"
|
||||||
|
"SUPER SHIFT, 3, movetoworkspace, 3"
|
||||||
|
"SUPER SHIFT, 4, movetoworkspace, 4"
|
||||||
|
"SUPER SHIFT, 5, movetoworkspace, 5"
|
||||||
|
"SUPER SHIFT, 6, movetoworkspace, 6"
|
||||||
|
"SUPER SHIFT, 7, movetoworkspace, 7"
|
||||||
|
"SUPER SHIFT, 8, movetoworkspace, 8"
|
||||||
|
"SUPER SHIFT, 9, movetoworkspace, 9"
|
||||||
|
"SUPER SHIFT, 0, movetoworkspace, 10"
|
||||||
|
|
||||||
|
# Scroll through existing workspaces with mainMod + scroll"
|
||||||
|
"SUPER, mouse_down, workspace, e+1"
|
||||||
|
"SUPER, mouse_up, workspace, e-1"
|
||||||
|
"
|
||||||
|
# Move/resize windows with mainMod + LMB/RMB and dragging"
|
||||||
|
#bindm = SUPER, mouse:272, movewindow"
|
||||||
|
#bindm = SUPER, mouse:273, resizewindow"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -3,10 +3,10 @@
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: with lib; let
|
}: with lib; let
|
||||||
cfg = config.myOptions.themes.cursor;
|
cfg = config.modules.themes.cursor;
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
options.myOptions.themes.cursor = {
|
options.modules.themes.cursor = {
|
||||||
enable = mkEnableOption "cursor theming";
|
enable = mkEnableOption "cursor theming";
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "cursor theme package";
|
description = "cursor theme package";
|
||||||
|
|
|
@ -10,5 +10,6 @@ _: {
|
||||||
./obs.nix
|
./obs.nix
|
||||||
./foot.nix
|
./foot.nix
|
||||||
# ./vivado.nix
|
# ./vivado.nix
|
||||||
|
./WM
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,10 +5,10 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: with lib; let
|
}: with lib; let
|
||||||
cfg = config.myOptions.programs.foot;
|
cfg = config.modules.programs.foot;
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
options.myOptions.programs.foot = {
|
options.modules.programs.foot = {
|
||||||
enable = mkEnableOption "foot";
|
enable = mkEnableOption "foot";
|
||||||
server = mkEnableOption "foot server mode";
|
server = mkEnableOption "foot server mode";
|
||||||
};
|
};
|
||||||
|
|
|
@ -3,11 +3,11 @@
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: with lib; let
|
}: with lib; let
|
||||||
cfg = config.myOptions.themes.gtk;
|
cfg = config.modules.themes.gtk;
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
hmCfg = config.home-manager.users.${username};
|
hmCfg = config.home-manager.users.${username};
|
||||||
in {
|
in {
|
||||||
options.myOptions.themes.gtk = {
|
options.modules.themes.gtk = {
|
||||||
enable = mkEnableOption "gtk theming";
|
enable = mkEnableOption "gtk theming";
|
||||||
name = mkOption {
|
name = mkOption {
|
||||||
description = "gtk theme name";
|
description = "gtk theme name";
|
||||||
|
|
|
@ -4,10 +4,10 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: with lib; let
|
}: with lib; let
|
||||||
cfg = config.myOptions.programs.mpv;
|
cfg = config.modules.programs.mpv;
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
options.myOptions.programs.mpv.enable = mkEnableOption "mpv";
|
options.modules.programs.mpv.enable = mkEnableOption "mpv";
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
home-manager.users.${username} = {
|
home-manager.users.${username} = {
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{ config, lib, pkgs, ... }:
|
||||||
with lib; let
|
with lib; let
|
||||||
cfg = config.myOptions.programs.obs;
|
cfg = config.modules.programs.obs;
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
options.myOptions.programs.obs.enable = mkEnableOption "obs";
|
options.modules.programs.obs.enable = mkEnableOption "obs";
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
home-manager.users.${username} = {
|
home-manager.users.${username} = {
|
||||||
|
|
|
@ -4,10 +4,10 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: with lib; let
|
}: with lib; let
|
||||||
cfg = config.myOptions.themes.qt;
|
cfg = config.modules.themes.qt;
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
options.myOptions.themes.qt = {
|
options.modules.themes.qt = {
|
||||||
enable = mkEnableOption "qt theming";
|
enable = mkEnableOption "qt theming";
|
||||||
name = mkOption {
|
name = mkOption {
|
||||||
description = "qt theme name";
|
description = "qt theme name";
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
{ config, inputs, lib, ... }:
|
{ config, inputs, lib, ... }:
|
||||||
with lib; let
|
with lib; let
|
||||||
cfg = config.myOptions.programs.schizofox;
|
cfg = config.modules.programs.schizofox;
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
options.myOptions.programs.schizofox = {
|
options.modules.programs.schizofox = {
|
||||||
enable = mkEnableOption "schizofox";
|
enable = mkEnableOption "schizofox";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -4,10 +4,10 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: with lib; let
|
}: with lib; let
|
||||||
cfg = config.myOptions.programs.vesktop;
|
cfg = config.modules.programs.vesktop;
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
options.myOptions.programs.vesktop = {
|
options.modules.programs.vesktop = {
|
||||||
enable = mkEnableOption "vesktop";
|
enable = mkEnableOption "vesktop";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -6,11 +6,11 @@ let
|
||||||
desktopName = "Vivado";
|
desktopName = "Vivado";
|
||||||
exec = "${pkgs.nur.repos.lschuermann.vivado-2022_2}/bin/vivado";
|
exec = "${pkgs.nur.repos.lschuermann.vivado-2022_2}/bin/vivado";
|
||||||
};
|
};
|
||||||
cfg = with lib; [ config.myOptions.programs.vivado ];
|
cfg = with lib; [ config.modules.programs.vivado ];
|
||||||
username = with lib; [ config.myOptions.other.system.username ];
|
username = with lib; [ config.modules.other.system.username ];
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.myOptions.programs.vivado.enable = mkEnableOption "vivado";
|
options.modules.programs.vivado.enable = mkEnableOption "vivado";
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
home-manager.users.${username} = {
|
home-manager.users.${username} = {
|
||||||
|
|
|
@ -4,10 +4,10 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: with lib; let
|
}: with lib; let
|
||||||
cfg = config.myOptions.programs.zathura;
|
cfg = config.modules.programs.zathura;
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
options.myOptions.programs.zathura.enable = mkEnableOption "zathura";
|
options.modules.programs.zathura.enable = mkEnableOption "zathura";
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
home-manager.users.${username} = {
|
home-manager.users.${username} = {
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
{pkgs, lib, config, ...}:
|
{pkgs, lib, config, ...}:
|
||||||
with lib; let
|
with lib; let
|
||||||
cfg = config.myOptions.programs.displaymanager;
|
cfg = config.modules.programs.displaymanager;
|
||||||
in {
|
in {
|
||||||
options.myOptions.programs.displaymanager.enable = mkEnableOption "displaymanager";
|
options.modules.programs.displaymanager.enable = mkEnableOption "displaymanager";
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
services.xserver.displayManager = {
|
services.xserver.displayManager = {
|
||||||
|
|
|
@ -5,10 +5,10 @@
|
||||||
self,
|
self,
|
||||||
...
|
...
|
||||||
}: with lib; let
|
}: with lib; let
|
||||||
cfg = config.myOptions.other.home-manager;
|
cfg = config.modules.other.home-manager;
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
options.myOptions.other.home-manager = {
|
options.modules.other.home-manager = {
|
||||||
enable = mkEnableOption "home-manager";
|
enable = mkEnableOption "home-manager";
|
||||||
enableDirenv = mkEnableOption "direnv";
|
enableDirenv = mkEnableOption "direnv";
|
||||||
};
|
};
|
||||||
|
|
|
@ -3,9 +3,9 @@
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: with lib; let
|
}: with lib; let
|
||||||
cfg = config.myOptions.other.system;
|
cfg = config.modules.other.system;
|
||||||
in {
|
in {
|
||||||
options.myOptions.other.system = {
|
options.modules.other.system = {
|
||||||
hostname = mkOption {
|
hostname = mkOption {
|
||||||
description = "hostname for this system";
|
description = "hostname for this system";
|
||||||
type = types.str;
|
type = types.str;
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
hmCfg = config.home-manager.users.${username};
|
hmCfg = config.home-manager.users.${username};
|
||||||
|
|
||||||
primary_browser = "firefox-schizo.desktop";
|
primary_browser = "firefox-schizo.desktop";
|
||||||
|
@ -31,7 +31,7 @@ in {
|
||||||
XAUTHORITY = "\$XDG_RUNTIME_DIR/Xauthority";
|
XAUTHORITY = "\$XDG_RUNTIME_DIR/Xauthority";
|
||||||
};
|
};
|
||||||
*/
|
*/
|
||||||
myOptions.programs.zsh.extraAliases = {
|
modules.programs.zsh.extraAliases = {
|
||||||
gdb = "gdb -n -x ${hmCfg.xdg.configHome}/gdb/init";
|
gdb = "gdb -n -x ${hmCfg.xdg.configHome}/gdb/init";
|
||||||
pidgin = "pidgin --config=${hmCfg.xdg.dataHome}/purple";
|
pidgin = "pidgin --config=${hmCfg.xdg.dataHome}/purple";
|
||||||
svn = "svn --config-dir ${hmCfg.xdg.configHome}/subversion";
|
svn = "svn --config-dir ${hmCfg.xdg.configHome}/subversion";
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
{ config, lib, ... }:
|
{ config, lib, ... }:
|
||||||
with lib; let
|
with lib; let
|
||||||
cfg = config.myOptions.services.pipewire;
|
cfg = config.modules.services.pipewire;
|
||||||
in {
|
in {
|
||||||
options.myOptions.services.pipewire.enable = mkEnableOption "pipewire";
|
options.modules.services.pipewire.enable = mkEnableOption "pipewire";
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
hardware.pulseaudio.enable = false;
|
hardware.pulseaudio.enable = false;
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
{ config, lib, ... }:
|
{ config, lib, ... }:
|
||||||
with lib; let
|
with lib; let
|
||||||
cfg = config.myOptions.programs.btop;
|
cfg = config.modules.programs.btop;
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
options.myOptions.programs.btop.enable = mkEnableOption "btop";
|
options.modules.programs.btop.enable = mkEnableOption "btop";
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
home-manager.users.${username} = {
|
home-manager.users.${username} = {
|
||||||
|
|
|
@ -5,10 +5,10 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: with lib; let
|
}: with lib; let
|
||||||
cfg = config.myOptions.programs.neovim;
|
cfg = config.modules.programs.neovim;
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
options.myOptions.programs.neovim.enable = mkEnableOption "neovim";
|
options.modules.programs.neovim.enable = mkEnableOption "neovim";
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
nixpkgs.overlays = [ inputs.neovim-nightly-overlay.overlay ];
|
nixpkgs.overlays = [ inputs.neovim-nightly-overlay.overlay ];
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ config, lib, ... }:
|
{ config, lib, ... }:
|
||||||
let
|
let
|
||||||
username = config.myOptions.other.system.username;
|
username = config.modules.other.system.username;
|
||||||
in {
|
in {
|
||||||
networking = {
|
networking = {
|
||||||
networkmanager = {
|
networkmanager = {
|
||||||
|
|
69
options/desktop/monitors.nix
Normal file
69
options/desktop/monitors.nix
Normal file
|
@ -0,0 +1,69 @@
|
||||||
|
{ config, lib, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
{
|
||||||
|
options.modules.other.system.monitors = mkOption {
|
||||||
|
description = "
|
||||||
|
List of monitors to use
|
||||||
|
";
|
||||||
|
default = [];
|
||||||
|
type = with types; listOf submodule {
|
||||||
|
name = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
description = "Give your monitor a cute name";
|
||||||
|
default = "monitor0(I am lazy)";
|
||||||
|
};
|
||||||
|
device = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
description = "The actual device name of the monitor";
|
||||||
|
};
|
||||||
|
resolution = mkOption {
|
||||||
|
type = types.submodule {
|
||||||
|
width = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
description = "monitor width";
|
||||||
|
default = "1920";
|
||||||
|
};
|
||||||
|
height = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
description = "monitor height";
|
||||||
|
default = "1080";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
scale = mkOption {
|
||||||
|
type = types.number;
|
||||||
|
description = "monitor scale";
|
||||||
|
default = 1.0;
|
||||||
|
};
|
||||||
|
refresh_rate = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
description = "monitor refresh rate (in Hz)";
|
||||||
|
default = 60;
|
||||||
|
};
|
||||||
|
position = mkOption {
|
||||||
|
type = types.submodule {
|
||||||
|
x = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
default = 0;
|
||||||
|
};
|
||||||
|
y = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
default = 0;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
description = "absolute monitor posititon";
|
||||||
|
default = {
|
||||||
|
x = 0;
|
||||||
|
y = 0;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
transform = mkOption {
|
||||||
|
type = types.ints.between 0 3;
|
||||||
|
description = "Rotation of the monitor counterclockwise";
|
||||||
|
default = 0;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue