Compare commits
3 commits
f7afa33a13
...
9b13868f9a
| Author | SHA1 | Date | |
|---|---|---|---|
| 9b13868f9a | |||
| 6002b09ca6 | |||
| 3df730a55a |
14 changed files with 389 additions and 198 deletions
|
|
@ -1,6 +1,11 @@
|
||||||
[language-server.nil]
|
[language-server.nixd]
|
||||||
command = "nil"
|
command = "nixd"
|
||||||
|
# args = ["--log=debug"]
|
||||||
|
[language-server.nixd.config.nixd]
|
||||||
|
nixpkgs = { expr = "import (builtins.getFlake (builtins.toString ./.)).inputs.nixpkgs { }" }
|
||||||
|
options = { nixos = { expr = "(builtins.getFlake (builtins.toString ./.)).colmenaHive.nodes.theseus.options" }}#, home-manager = { expr = "(builtins.getFlake (builtins.toString ./.)).colmenaHive.nodes.theseus.options.home-manager.users.type.getSubOptions []" } }
|
||||||
|
|
||||||
[[language]]
|
[[language]]
|
||||||
name = "nix"
|
name = "nix"
|
||||||
formatter = {command = "nixfmt"}
|
formatter = {command = "nixfmt"}
|
||||||
language-servers = [ "nil" ]
|
language-servers = [ "nixd" ]
|
||||||
|
|
|
||||||
136
flake.lock
generated
136
flake.lock
generated
|
|
@ -16,11 +16,11 @@
|
||||||
"uv2nix": "uv2nix"
|
"uv2nix": "uv2nix"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1759322529,
|
"lastModified": 1761726959,
|
||||||
"narHash": "sha256-yiv/g/tiJI3PI95F7vhTnaf1TDsIkFLrmmFTjWfb6pQ=",
|
"narHash": "sha256-SGndrZx7I0z4vITH1Arf60OTSfkQVMZRTcRgtPIBVtg=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "authentik-nix",
|
"repo": "authentik-nix",
|
||||||
"rev": "69fac057b2e553ee17c9a09b822d735823d65a6c",
|
"rev": "ea1e06f9fe7cbf59c61b2ec4f2979801ff395d8e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -138,11 +138,11 @@
|
||||||
"nixpkgs-lib": "nixpkgs-lib"
|
"nixpkgs-lib": "nixpkgs-lib"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1756770412,
|
"lastModified": 1760948891,
|
||||||
"narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
|
"narHash": "sha256-TmWcdiUUaWk8J4lpjzu4gCGxWY6/Ok7mOK4fIFfBuU4=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "4524271976b625a4a605beefd893f270620fd751",
|
"rev": "864599284fc7c0ba6357ed89ed5e2cd5040f0c04",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -277,11 +277,11 @@
|
||||||
"rust-overlay": "rust-overlay"
|
"rust-overlay": "rust-overlay"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1761141169,
|
"lastModified": 1761757466,
|
||||||
"narHash": "sha256-5IZjbTvP5dNTD8CbEYlNbicdGcbCN9SC9ksMm2ZEXH0=",
|
"narHash": "sha256-O9TAPvjILerwD2cxkNpMtUBinDXNt+sZo7jBINY8kGw=",
|
||||||
"owner": "helix-editor",
|
"owner": "helix-editor",
|
||||||
"repo": "helix",
|
"repo": "helix",
|
||||||
"rev": "d79cce4e4bfc24dd204f1b294c899ed73f7e9453",
|
"rev": "d752d907c9b2760c01c5ea2a700b5e8a2fe90f13",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -297,11 +297,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1761191301,
|
"lastModified": 1761845621,
|
||||||
"narHash": "sha256-xsRL2Oyb4YRZZ1Tu4WzR2uFg1n931bH+PfLdFcqtLg8=",
|
"narHash": "sha256-d+R4MHsGmdebvSMsYUFWONsZSlUbOo8Zq/wjMdMiIac=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "4958aafe7b237dc1e857fb0c916efff72075048f",
|
"rev": "97e3022a8d2c09313fa49847f6da4d76abcfc72d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -378,7 +378,9 @@
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
"pre-commit-hooks-nix": "pre-commit-hooks-nix",
|
"pre-commit-hooks-nix": "pre-commit-hooks-nix",
|
||||||
"rust-overlay": "rust-overlay_2"
|
"rust-overlay": [
|
||||||
|
"rust-overlay"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1737639419,
|
"lastModified": 1737639419,
|
||||||
|
|
@ -474,14 +476,14 @@
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs-master"
|
"nixpkgs-master"
|
||||||
],
|
],
|
||||||
"rust-overlay": "rust-overlay_3"
|
"rust-overlay": "rust-overlay_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1760940149,
|
"lastModified": 1761800210,
|
||||||
"narHash": "sha256-KbM47vD6E0cx+v4jYQZ8mD5N186AKm2CQlyh34TW58U=",
|
"narHash": "sha256-v9/VHMISSjYpj5RgaN9qqsuC4OPVklLpN1l33HBXSE4=",
|
||||||
"owner": "YaLTeR",
|
"owner": "YaLTeR",
|
||||||
"repo": "niri",
|
"repo": "niri",
|
||||||
"rev": "b3245b81a6ed8edfaf5388a74d2e0a23c24941e5",
|
"rev": "7c0dcddee782d2ca68620ec423d08d932ef059df",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -495,7 +497,7 @@
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
"rust-overlay": "rust-overlay_4"
|
"rust-overlay": "rust-overlay_3"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1760113386,
|
"lastModified": 1760113386,
|
||||||
|
|
@ -518,11 +520,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1760846226,
|
"lastModified": 1761451000,
|
||||||
"narHash": "sha256-xmU8kAsRprJiTGBTaGrwmjBP3AMA9ltlrxHKFuy5JWc=",
|
"narHash": "sha256-qBJL6xEIjqYq9zOcG2vf2nPTeVBppNJzvO0LuQWMwMo=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nix-index-database",
|
"repo": "nix-index-database",
|
||||||
"rev": "5024e1901239a76b7bf94a4cd27f3507e639d49e",
|
"rev": "ed6b293161b378a7368cda38659eb8d3d9a0dac4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -533,11 +535,11 @@
|
||||||
},
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1760958188,
|
"lastModified": 1761827175,
|
||||||
"narHash": "sha256-2m1S4jl+GEDtlt2QqeHil8Ny456dcGSKJAM7q3j/BFU=",
|
"narHash": "sha256-XdPVSYyIBK4/ruoqujaQmmSGg3J2/EenexV9IEXhr6o=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "d6645c340ef7d821602fd2cd199e8d1eed10afbc",
|
"rev": "43ffe9ac82567512abb83187cb673de1091bdfa8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -549,11 +551,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1761114652,
|
"lastModified": 1761672384,
|
||||||
"narHash": "sha256-f/QCJM/YhrV/lavyCVz8iU3rlZun6d+dAiC3H+CDle4=",
|
"narHash": "sha256-o9KF3DJL7g7iYMZq9SWgfS1BFlNbsm6xplRjVlOCkXI=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "01f116e4df6a15f4ccdffb1bcd41096869fb385c",
|
"rev": "08dacfca559e1d7da38f3cf05f1f45ee9bfd213c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -580,11 +582,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-master": {
|
"nixpkgs-master": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1761228883,
|
"lastModified": 1761846020,
|
||||||
"narHash": "sha256-8jKkT4Yc8I/PnDczaD9diDcJkckwP7WAstQcYbMSo4s=",
|
"narHash": "sha256-ysg9O8xoBr1mgvlo0Hz2pFiOHOh14J/MT0ppfQMwreI=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "0cfbb4d10f6e813e6e9750fbf5396747cf3b6212",
|
"rev": "61ed7a47fa3b544c9be5685e355782db56aecd7c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -653,11 +655,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1757296493,
|
"lastModified": 1759113590,
|
||||||
"narHash": "sha256-6nzSZl28IwH2Vx8YSmd3t6TREHpDbKlDPK+dq1LKIZQ=",
|
"narHash": "sha256-fgxP2RCN4cg0jYiMYoETYc7TZ2JjgyvJa2y9l8oSUFE=",
|
||||||
"owner": "pyproject-nix",
|
"owner": "pyproject-nix",
|
||||||
"repo": "build-system-pkgs",
|
"repo": "build-system-pkgs",
|
||||||
"rev": "5b8e37fe0077db5c1df3a5ee90a651345f085d38",
|
"rev": "dbfc0483b5952c6b86e36f8b3afeb9dde30ea4b5",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -674,11 +676,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1757246327,
|
"lastModified": 1760402624,
|
||||||
"narHash": "sha256-6pNlGhwOIMfhe/RLjHdpXveKS4FyLHvlGe+KtjDild4=",
|
"narHash": "sha256-jF6UKLs2uGc2rtved8Vrt58oTWjTQoAssuYs/0578Z4=",
|
||||||
"owner": "pyproject-nix",
|
"owner": "pyproject-nix",
|
||||||
"repo": "pyproject.nix",
|
"repo": "pyproject.nix",
|
||||||
"rev": "8d77f342d66ad1601cdb9d97e9388b69f64d4c8e",
|
"rev": "84c4ea102127c77058ea1ed7be7300261fafc7d2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -705,6 +707,7 @@
|
||||||
"nixos-hardware": "nixos-hardware",
|
"nixos-hardware": "nixos-hardware",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
"nixpkgs-master": "nixpkgs-master",
|
"nixpkgs-master": "nixpkgs-master",
|
||||||
|
"rust-overlay": "rust-overlay_4",
|
||||||
"sops-nix": "sops-nix",
|
"sops-nix": "sops-nix",
|
||||||
"terranix": "terranix",
|
"terranix": "terranix",
|
||||||
"xwayland-satellite": "xwayland-satellite",
|
"xwayland-satellite": "xwayland-satellite",
|
||||||
|
|
@ -733,27 +736,6 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"rust-overlay_2": {
|
"rust-overlay_2": {
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"lanzaboote",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1731897198,
|
|
||||||
"narHash": "sha256-Ou7vLETSKwmE/HRQz4cImXXJBr/k9gp4J4z/PF8LzTE=",
|
|
||||||
"owner": "oxalica",
|
|
||||||
"repo": "rust-overlay",
|
|
||||||
"rev": "0be641045af6d8666c11c2c40e45ffc9667839b5",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "oxalica",
|
|
||||||
"repo": "rust-overlay",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"rust-overlay_3": {
|
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"niri",
|
"niri",
|
||||||
|
|
@ -774,7 +756,7 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"rust-overlay_4": {
|
"rust-overlay_3": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nix-ci",
|
"nix-ci",
|
||||||
|
|
@ -795,6 +777,26 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"rust-overlay_4": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1761851069,
|
||||||
|
"narHash": "sha256-VHqBFyQdXE10lvBaNCaJSD5xw1WH6Thqq92OIB6MqZo=",
|
||||||
|
"owner": "oxalica",
|
||||||
|
"repo": "rust-overlay",
|
||||||
|
"rev": "0881bcdf6c34cd3ba558b19d7a74d8ffc9e1fff0",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "oxalica",
|
||||||
|
"repo": "rust-overlay",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"rust-overlay_5": {
|
"rust-overlay_5": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
|
@ -931,11 +933,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1757925761,
|
"lastModified": 1761101082,
|
||||||
"narHash": "sha256-7Hwz0vfHuFqCo5v7Q07GQgLBWuPvZCuf/5/pk4NoADg=",
|
"narHash": "sha256-4Kt3RsfJgg6HzmDCc44ZN//xB8n7KGEGxxt9dNjqPQc=",
|
||||||
"owner": "pyproject-nix",
|
"owner": "pyproject-nix",
|
||||||
"repo": "uv2nix",
|
"repo": "uv2nix",
|
||||||
"rev": "780494c40895bb7419a73d942bee326291e80b3b",
|
"rev": "e6e728d9719e989c93e65145fe3f9e0c65a021a2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -953,11 +955,11 @@
|
||||||
"rust-overlay": "rust-overlay_5"
|
"rust-overlay": "rust-overlay_5"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1761173223,
|
"lastModified": 1761622056,
|
||||||
"narHash": "sha256-FumZh+fPRaKXkl9Y1uTh5KV7Io/AyOZso+UkqLhLArs=",
|
"narHash": "sha256-fBrUszJXmB4MY+wf3QsCnqWHcz7u7fLq0QMAWCltIQg=",
|
||||||
"owner": "Supreeeme",
|
"owner": "Supreeeme",
|
||||||
"repo": "xwayland-satellite",
|
"repo": "xwayland-satellite",
|
||||||
"rev": "bf745144acda1343934e9a094cf9458a54d57889",
|
"rev": "0728d59ff6463a502e001fb090f6eb92dbc04756",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -974,11 +976,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1761180075,
|
"lastModified": 1761798236,
|
||||||
"narHash": "sha256-V4WLeUQ4gCGZiVihlXWBOZ/1FNcL0jM4zgTY1haJLvY=",
|
"narHash": "sha256-NigAG0gHH3i7Z+me/2uqH8A/utt4NGkMgBDAa2XpkFA=",
|
||||||
"owner": "0xc000022070",
|
"owner": "0xc000022070",
|
||||||
"repo": "zen-browser-flake",
|
"repo": "zen-browser-flake",
|
||||||
"rev": "771a2604606905d8c0ffe3b818dc2cc5bd1405d8",
|
"rev": "8d9c7683366269d2991698059816cd8c2800d3ff",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
||||||
28
flake.nix
28
flake.nix
|
|
@ -16,11 +16,16 @@
|
||||||
colmena.inputs.nixpkgs.follows = "nixpkgs";
|
colmena.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
# software
|
# software
|
||||||
|
rust-overlay = { # https://github.com/nix-community/lanzaboote/issues/485#issuecomment-3466684727
|
||||||
|
url = "github:oxalica/rust-overlay";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
lanzaboote = {
|
lanzaboote = {
|
||||||
url = "github:nix-community/lanzaboote/v0.4.2";
|
url = "github:nix-community/lanzaboote/v0.4.2";
|
||||||
|
|
||||||
# Optional but recommended to limit the size of your system closure.
|
# Optional but recommended to limit the size of your system closure.
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
inputs.rust-overlay.follows = "rust-overlay";
|
||||||
};
|
};
|
||||||
|
|
||||||
zen-browser.url = "github:0xc000022070/zen-browser-flake";
|
zen-browser.url = "github:0xc000022070/zen-browser-flake";
|
||||||
|
|
@ -113,11 +118,19 @@
|
||||||
importConfigs =
|
importConfigs =
|
||||||
n:
|
n:
|
||||||
map (x: {
|
map (x: {
|
||||||
${x} = {nodes, ...}: {
|
${x} =
|
||||||
networking.hostName = x;
|
{ nodes, pkgs, ... }:
|
||||||
imports = modules ++ [ (./instances/${x}) ];
|
{
|
||||||
_module.args.otherNodes = lib.filterAttrs (n: v: n != x) nodes;
|
nixpkgs.overlays = overlays;
|
||||||
};
|
nix.package = pkgs.unstable.lixPackageSets.latest.lix;
|
||||||
|
networking.hostName = x;
|
||||||
|
imports = modules ++ [ (./instances/${x}) ];
|
||||||
|
_module.args.otherNodes = lib.filterAttrs (n: v: n != x) nodes;
|
||||||
|
deployment.privilegeEscalationCommand = [
|
||||||
|
"run0"
|
||||||
|
"--unit=colmena-apply"
|
||||||
|
];
|
||||||
|
};
|
||||||
}) n;
|
}) n;
|
||||||
in
|
in
|
||||||
lib.foldl' lib.recursiveUpdate { } (
|
lib.foldl' lib.recursiveUpdate { } (
|
||||||
|
|
@ -130,10 +143,6 @@
|
||||||
specialArgs = { inherit inputs; };
|
specialArgs = { inherit inputs; };
|
||||||
nixpkgs = genPkgs "x86_64-linux";
|
nixpkgs = genPkgs "x86_64-linux";
|
||||||
};
|
};
|
||||||
deployment.privilegeEscalationCommand = [
|
|
||||||
"run0"
|
|
||||||
"--unit=colmena-apply"
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
(importConfigs [
|
(importConfigs [
|
||||||
"ds9"
|
"ds9"
|
||||||
|
|
@ -178,6 +187,7 @@
|
||||||
devShells.${system}.default = pkgs.mkShell {
|
devShells.${system}.default = pkgs.mkShell {
|
||||||
packages = [
|
packages = [
|
||||||
pkgs.nixfmt-rfc-style
|
pkgs.nixfmt-rfc-style
|
||||||
|
pkgs.nixd
|
||||||
pkgs.nil
|
pkgs.nil
|
||||||
pkgs.sops
|
pkgs.sops
|
||||||
(pkgs.runCommand "nix-config-bin" { } ''
|
(pkgs.runCommand "nix-config-bin" { } ''
|
||||||
|
|
|
||||||
|
|
@ -362,7 +362,7 @@ in
|
||||||
"user-filters" =
|
"user-filters" =
|
||||||
''marketplace.visualstudio.com##+js(rpnt, script, /"(DisableVSCodeDownloadButtonEnabled|Microsoft\\.VisualStudio\\.Services\\.Gallery\\.DisableVSCodeDownloadButton)":true/, "$1":false)'';
|
''marketplace.visualstudio.com##+js(rpnt, script, /"(DisableVSCodeDownloadButtonEnabled|Microsoft\\.VisualStudio\\.Services\\.Gallery\\.DisableVSCodeDownloadButton)":true/, "$1":false)'';
|
||||||
"hostnameSwitchesString" =
|
"hostnameSwitchesString" =
|
||||||
"no-large-media: behind-the-scene false\nno-remote-fonts: * true\nno-csp-reports: * true";
|
"no-large-media: behind-the-scene false\nno-remote-fonts: * false\nno-csp-reports: * true";
|
||||||
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -9,13 +9,14 @@ in
|
||||||
{
|
{
|
||||||
options.xyno.git.enable = lib.mkEnableOption "xynos git config";
|
options.xyno.git.enable = lib.mkEnableOption "xynos git config";
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
|
programs.difftastic.git.enable = true;
|
||||||
|
programs.difftastic.enable = true;
|
||||||
programs.git = {
|
programs.git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
difftastic.enable = true;
|
|
||||||
lfs.enable = true;
|
lfs.enable = true;
|
||||||
|
|
||||||
# Default configs
|
# Default configs
|
||||||
extraConfig = {
|
settings = {
|
||||||
commit.gpgSign = true;
|
commit.gpgSign = true;
|
||||||
gpg.format = "ssh";
|
gpg.format = "ssh";
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -22,20 +22,21 @@ in
|
||||||
# nodePackages_latest.prettier
|
# nodePackages_latest.prettier
|
||||||
dprint
|
dprint
|
||||||
markdown-oxide
|
markdown-oxide
|
||||||
codebook
|
# codebook
|
||||||
## python
|
## python
|
||||||
# ruff-lsp
|
# ruff-lsp
|
||||||
# nodePackages_latest.pyright
|
# nodePackages_latest.pyright
|
||||||
# inputs.csharp-language-server.packages.${pkgs.system}.csharp-language-server
|
# inputs.csharp-language-server.packages.${pkgs.system}.csharp-language-server
|
||||||
]
|
]
|
||||||
++ (optionals cfg.withLargeLSPs [
|
++ (optionals cfg.withLargeLSPs [
|
||||||
netcoredbg
|
|
||||||
nodePackages_latest.typescript-language-server
|
nodePackages_latest.typescript-language-server
|
||||||
nodePackages_latest.vscode-langservers-extracted
|
nodePackages_latest.vscode-langservers-extracted
|
||||||
typescript
|
typescript
|
||||||
# jsonnet-language-server
|
# jsonnet-language-server
|
||||||
# jsonnet
|
# jsonnet
|
||||||
lazygit
|
lazygit
|
||||||
|
ltex-ls-plus # languagetool
|
||||||
|
tinymist # typst lsp
|
||||||
|
|
||||||
]);
|
]);
|
||||||
programs.helix = {
|
programs.helix = {
|
||||||
|
|
@ -107,8 +108,7 @@ in
|
||||||
keys = {
|
keys = {
|
||||||
normal = {
|
normal = {
|
||||||
space."=" = ":fmt";
|
space."=" = ":fmt";
|
||||||
"C-g" =
|
"C-g" = ":sh tmux popup -d \"#{pane_current_path}\" -xC -yC -w80%% -h80%% -E lazygit";
|
||||||
":sh tmux popup -d \"#{pane_current_path}\" -xC -yC -w80%% -h80%% -E lazygit";
|
|
||||||
"C-t" = ":sh tmux split-window -v -l '35%%'";
|
"C-t" = ":sh tmux split-window -v -l '35%%'";
|
||||||
"C-h" = ":sh tmux select-pane -t '{left-of}'";
|
"C-h" = ":sh tmux select-pane -t '{left-of}'";
|
||||||
"C-l" = ":sh tmux select-pane -t '{right-of}'";
|
"C-l" = ":sh tmux select-pane -t '{right-of}'";
|
||||||
|
|
@ -143,55 +143,143 @@ in
|
||||||
language-server.csharp = {
|
language-server.csharp = {
|
||||||
command = "csharp-language-server";
|
command = "csharp-language-server";
|
||||||
};
|
};
|
||||||
language-server.codebook = {
|
language-server.ltex = {
|
||||||
command = "codebook-lsp";
|
command = "ltex-ls-plus";
|
||||||
args = ["serve"];
|
config = {
|
||||||
};
|
additionalRules.motherTongue = "de-DE";
|
||||||
language = flatten [
|
additionalRules.enablePickyRules = true;
|
||||||
(map
|
language = [
|
||||||
(x: {
|
"en-US"
|
||||||
name = x;
|
"de-DE"
|
||||||
language-servers = [
|
|
||||||
"typescript-language-server"
|
|
||||||
"eslint"
|
|
||||||
];
|
|
||||||
#formatter = { command = "dprint"; args = [ "fmt" "--stdin" x ]; };
|
|
||||||
# formatter = { command = "prettier"; args = [ "--parser" "typescript" ]; };
|
|
||||||
})
|
|
||||||
[
|
|
||||||
"typescript"
|
|
||||||
"javascript"
|
|
||||||
"jsx"
|
|
||||||
"tsx"
|
|
||||||
]
|
|
||||||
)
|
|
||||||
{
|
|
||||||
name = "nix";
|
|
||||||
formatter = {
|
|
||||||
command = "nixpkgs-fmt";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
{
|
|
||||||
name = "python";
|
|
||||||
language-servers = [
|
|
||||||
"pyright"
|
|
||||||
"ruff"
|
|
||||||
];
|
];
|
||||||
}
|
};
|
||||||
{
|
};
|
||||||
name = "markdown";
|
language-server.tinymist = {
|
||||||
language-servers = ["codebook"];
|
command = "tinymist";
|
||||||
}
|
};
|
||||||
{
|
# language-server.nil = {
|
||||||
name = "c-sharp";
|
# command = "nil";
|
||||||
language-servers = [ "csharp" ];
|
# config.nil.nix = {
|
||||||
formatter = {
|
# maxMemoryMB = 5120;
|
||||||
command = "dotnet";
|
# flake = {
|
||||||
args = [ "csharpier" ];
|
# autoEvalInputs = true;
|
||||||
};
|
# autoArchive = true;
|
||||||
|
# };
|
||||||
|
# };
|
||||||
|
# };
|
||||||
|
language =
|
||||||
|
let
|
||||||
|
applySingleConfig =
|
||||||
|
languages: config:
|
||||||
|
let
|
||||||
|
applied =
|
||||||
|
foldl'
|
||||||
|
(
|
||||||
|
acc: l:
|
||||||
|
if (any (x: l.name == x) config.languages) then
|
||||||
|
{
|
||||||
|
done = acc.done ++ [
|
||||||
|
(mkMerge [
|
||||||
|
l
|
||||||
|
config.conf
|
||||||
|
])
|
||||||
|
];
|
||||||
|
notFound = filter (x: x != l.name) acc.notFound;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
done = acc.done ++ [ l ];
|
||||||
|
notFound = acc.notFound;
|
||||||
|
}
|
||||||
|
)
|
||||||
|
{
|
||||||
|
done = [ ];
|
||||||
|
notFound = config.languages;
|
||||||
|
}
|
||||||
|
languages;
|
||||||
|
in
|
||||||
|
applied.done ++ (map (x: { name = x; } // config.conf) applied.notFound);
|
||||||
|
applyConfs = lspConfs: languages: foldl' applySingleConfig languages lspConfs;
|
||||||
|
in
|
||||||
|
applyConfs
|
||||||
|
[
|
||||||
|
{
|
||||||
|
languages = [
|
||||||
|
"typescript"
|
||||||
|
"javascript"
|
||||||
|
"jsx"
|
||||||
|
"tsx"
|
||||||
|
];
|
||||||
|
conf = {
|
||||||
|
language-servers = [
|
||||||
|
"typescript-language-server"
|
||||||
|
"eslint"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
languages = [
|
||||||
|
"markdown"
|
||||||
|
"typst"
|
||||||
|
"bibtex"
|
||||||
|
"comment"
|
||||||
|
"latex"
|
||||||
|
"html"
|
||||||
|
];
|
||||||
|
conf = {
|
||||||
|
language-servers = [
|
||||||
|
"ltex"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
]
|
||||||
|
[
|
||||||
|
{
|
||||||
|
name = "__common__";
|
||||||
|
scope = "source.__common__";
|
||||||
|
file-types = [ ];
|
||||||
|
language-servers = [
|
||||||
|
"ltex"
|
||||||
|
];
|
||||||
|
}
|
||||||
|
# {
|
||||||
|
# name = "nix";
|
||||||
|
# language-servers = [
|
||||||
|
# "nixd"
|
||||||
|
# ];
|
||||||
|
# formatter = {
|
||||||
|
# command = "nixpkgs-fmt";
|
||||||
|
# };
|
||||||
|
# }
|
||||||
|
{
|
||||||
|
name = "python";
|
||||||
|
language-servers = [
|
||||||
|
"pyright"
|
||||||
|
"ruff"
|
||||||
|
];
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "markdown";
|
||||||
|
language-servers = [
|
||||||
|
"markdown-oxide"
|
||||||
|
];
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "typst";
|
||||||
|
language-servers = [
|
||||||
|
"tinymist"
|
||||||
|
];
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "c-sharp";
|
||||||
|
language-servers = [ "csharp" ];
|
||||||
|
formatter = {
|
||||||
|
command = "dotnet";
|
||||||
|
args = [ "csharpier" ];
|
||||||
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -48,7 +48,7 @@ in
|
||||||
pandoc
|
pandoc
|
||||||
tectonic
|
tectonic
|
||||||
rquickshare
|
rquickshare
|
||||||
supersonic-wayland
|
unstable.supersonic-wayland
|
||||||
nheko
|
nheko
|
||||||
anki-bin
|
anki-bin
|
||||||
gimp3
|
gimp3
|
||||||
|
|
|
||||||
|
|
@ -1,27 +0,0 @@
|
||||||
{
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
let
|
|
||||||
cfg = config.xyno.desktop.fcitx5;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.xyno.desktop.fcitx5.enable = lib.mkEnableOption "enable fcitx5 input daemon thing";
|
|
||||||
config = lib.mkIf cfg.enable {
|
|
||||||
i18n.inputMethod = {
|
|
||||||
type = "fcitx5";
|
|
||||||
enable = true;
|
|
||||||
fcitx5.addons = with pkgs; [
|
|
||||||
fcitx5-table-other
|
|
||||||
];
|
|
||||||
fcitx5.waylandFrontend = true;
|
|
||||||
fcitx5.quickPhrase = {
|
|
||||||
":pleading:" = "🥺";
|
|
||||||
":pointing_right:" = "👉";
|
|
||||||
":pointing_left:" = "👈";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
81
modules/desktop/ibus.nix
Normal file
81
modules/desktop/ibus.nix
Normal file
|
|
@ -0,0 +1,81 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
with lib;
|
||||||
|
let
|
||||||
|
cfg = config.xyno.desktop.ibus;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.xyno.desktop.ibus.enable = mkEnableOption "enable ibus input daemon thing";
|
||||||
|
options.xyno.desktop.ibus.wantedBy = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "niri.service";
|
||||||
|
};
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
services.libinput.enable = true;
|
||||||
|
|
||||||
|
# just... enable ibus as input method and maybe now we have consistent unicode input everywhere
|
||||||
|
# fuck qt tbh
|
||||||
|
i18n.inputMethod = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.ibus-patched;
|
||||||
|
# ibus.engines = with pkgs.ibus-engines; [ uniemoji ];
|
||||||
|
};
|
||||||
|
# home-manager.sharedModules = [
|
||||||
|
# (
|
||||||
|
# { lib, ... }:
|
||||||
|
# {
|
||||||
|
# dconf.settings = {
|
||||||
|
# "org/gnome/desktop/input-sources" = {
|
||||||
|
# sources = [
|
||||||
|
# (lib.hm.gvariant.mkTuple [
|
||||||
|
# "xkb"
|
||||||
|
# "us"
|
||||||
|
# ])
|
||||||
|
# (lib.hm.gvariant.mkTuple [
|
||||||
|
# "ibus"
|
||||||
|
# "libpinyin"
|
||||||
|
# ])
|
||||||
|
# (lib.hm.gvariant.mkTuple [
|
||||||
|
# "ibus"
|
||||||
|
# "mozc-jp"
|
||||||
|
# ])
|
||||||
|
# ];
|
||||||
|
# };
|
||||||
|
# };
|
||||||
|
# }
|
||||||
|
# )
|
||||||
|
# ];
|
||||||
|
|
||||||
|
systemd.user.services."org.freedesktop.IBus.session.generic".wantedBy = [ cfg.wantedBy ];
|
||||||
|
systemd.packages = [ pkgs.ibus-patched ];
|
||||||
|
# systemd.user.services.ibus =
|
||||||
|
# let
|
||||||
|
# ibusPackage = config.i18n.inputMethod.package;
|
||||||
|
# in
|
||||||
|
# assert hasPrefix "ibus-with-plugins" ibusPackage.name;
|
||||||
|
# {
|
||||||
|
# # panel is weird...
|
||||||
|
# # default is ${ibusPackage}/libexec/ibus-ui-gtk3 which works but sends a notification that it's misconfigured
|
||||||
|
# # wayland support can be enabled with --enable-wayland-im but that segfaults (possible due to zwp_input_method_v1 not being available?)
|
||||||
|
# script = ''
|
||||||
|
# exec ${ibusPackage}/bin/ibus-daemon --xim --replace --panel '${ibusPackage}/libexec/ibus-ui-gtk3'
|
||||||
|
# '';
|
||||||
|
# serviceConfig = {
|
||||||
|
# Type = "dbus";
|
||||||
|
# BusName = "org.freedesktop.IBus";
|
||||||
|
# Restart = "on-abnormal";
|
||||||
|
# };
|
||||||
|
# unitConfig = {
|
||||||
|
# CollectMode = "inactive-or-failed";
|
||||||
|
# };
|
||||||
|
# # yeah we hardcoding this now, fuck it
|
||||||
|
# wantedBy = [ cfg.wantedBy ];
|
||||||
|
# partOf = [ "graphical-session.target" ];
|
||||||
|
# };
|
||||||
|
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -14,6 +14,8 @@ let
|
||||||
"KeePassXC"
|
"KeePassXC"
|
||||||
"org.gnome.NautilusPreviewer"
|
"org.gnome.NautilusPreviewer"
|
||||||
"io.github.Qalculate.qalculate-qt"
|
"io.github.Qalculate.qalculate-qt"
|
||||||
|
"ibus-ui-emojier"
|
||||||
|
"ibus-ui-gtk3"
|
||||||
];
|
];
|
||||||
matchFloat = concatStringsSep "\n" (
|
matchFloat = concatStringsSep "\n" (
|
||||||
map (x: ''
|
map (x: ''
|
||||||
|
|
@ -52,20 +54,22 @@ in
|
||||||
value = 1;
|
value = 1;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
home-manager.users.${config.xyno.system.user.name} = mkIf config.xyno.presets.home-manager.enable (
|
home-manager.sharedModules = [
|
||||||
{ ... }:
|
(
|
||||||
{
|
{ ... }:
|
||||||
xyno.dark-theme.enable = true;
|
{
|
||||||
# home.file.".config/xdg-desktop-portal-termfilechooser/config".text = ''
|
xyno.dark-theme.enable = true;
|
||||||
# [filechooser]
|
# home.file.".config/xdg-desktop-portal-termfilechooser/config".text = ''
|
||||||
# cmd=${pkgs.xdg-desktop-portal-termfilechooser}/share/xdg-desktop-portal-termfilechooser/yazi-wrapper.sh
|
# [filechooser]
|
||||||
# default_dir=$HOME
|
# cmd=${pkgs.xdg-desktop-portal-termfilechooser}/share/xdg-desktop-portal-termfilechooser/yazi-wrapper.sh
|
||||||
# env=TERMCMD=footclient --app-id floating-alacritty
|
# default_dir=$HOME
|
||||||
# open_mode = suggested
|
# env=TERMCMD=footclient --app-id floating-alacritty
|
||||||
# save_mode = suggested
|
# open_mode = suggested
|
||||||
# '';
|
# save_mode = suggested
|
||||||
}
|
# '';
|
||||||
);
|
}
|
||||||
|
)
|
||||||
|
];
|
||||||
|
|
||||||
xdg.portal = {
|
xdg.portal = {
|
||||||
extraPortals = [
|
extraPortals = [
|
||||||
|
|
@ -88,7 +92,16 @@ in
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
playerctl
|
playerctl
|
||||||
xwayland-satellite
|
xwayland-satellite
|
||||||
|
nirius
|
||||||
];
|
];
|
||||||
|
systemd.user.services.niriusd = {
|
||||||
|
unitConfig.PartOf = "graphical-session.target";
|
||||||
|
unitConfig.After = "graphical-session.target";
|
||||||
|
unitConfig.Requisite = "graphical-session.target";
|
||||||
|
serviceConfig.Restart = "on-failure";
|
||||||
|
wantedBy = [ "niri.service" ];
|
||||||
|
script = "exec ${pkgs.nirius}/bin/niriusd";
|
||||||
|
};
|
||||||
programs.niri.enable = true;
|
programs.niri.enable = true;
|
||||||
environment.etc."niri/config.kdl".mode = "444"; # copy file so niri detects changes
|
environment.etc."niri/config.kdl".mode = "444"; # copy file so niri detects changes
|
||||||
environment.etc."niri/config.kdl".text = ''
|
environment.etc."niri/config.kdl".text = ''
|
||||||
|
|
@ -110,6 +123,9 @@ in
|
||||||
Mod+Shift+N { spawn "makoctl" "dismiss" "-a"; }
|
Mod+Shift+N { spawn "makoctl" "dismiss" "-a"; }
|
||||||
Mod+N { spawn "makoctl" "dismiss"; }
|
Mod+N { spawn "makoctl" "dismiss"; }
|
||||||
Mod+E { spawn "makoctl" "menu" "fuzzel -d"; }
|
Mod+E { spawn "makoctl" "menu" "fuzzel -d"; }
|
||||||
|
Mod+G { spawn "nirius" "toggle-follow-mode"; }
|
||||||
|
Mod+Shift+bracketleft { spawn "nirius" "scratchpad-show"; }
|
||||||
|
Mod+Shift+bracketright { spawn "nirius" "scratchpad-toggle"; }
|
||||||
XF86AudioRaiseVolume allow-when-locked=true { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.03+"; }
|
XF86AudioRaiseVolume allow-when-locked=true { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.03+"; }
|
||||||
XF86AudioLowerVolume allow-when-locked=true { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.03-"; }
|
XF86AudioLowerVolume allow-when-locked=true { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.03-"; }
|
||||||
XF86AudioMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"; }
|
XF86AudioMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"; }
|
||||||
|
|
|
||||||
|
|
@ -5,9 +5,9 @@
|
||||||
./desktop/audio.nix
|
./desktop/audio.nix
|
||||||
./desktop/common-programs.nix
|
./desktop/common-programs.nix
|
||||||
./desktop/easyeffects.nix
|
./desktop/easyeffects.nix
|
||||||
./desktop/fcitx5.nix
|
|
||||||
./desktop/foot.nix
|
./desktop/foot.nix
|
||||||
./desktop/fuzzel.nix
|
./desktop/fuzzel.nix
|
||||||
|
./desktop/ibus.nix
|
||||||
./desktop/mako.nix
|
./desktop/mako.nix
|
||||||
./desktop/niri.nix
|
./desktop/niri.nix
|
||||||
./desktop/shikane.nix
|
./desktop/shikane.nix
|
||||||
|
|
@ -21,8 +21,8 @@
|
||||||
./presets/common.nix
|
./presets/common.nix
|
||||||
./presets/development.nix
|
./presets/development.nix
|
||||||
./presets/gui.nix
|
./presets/gui.nix
|
||||||
./presets/server.nix
|
|
||||||
./presets/home-manager.nix
|
./presets/home-manager.nix
|
||||||
|
./presets/server.nix
|
||||||
./services/authentik
|
./services/authentik
|
||||||
./services/caddy
|
./services/caddy
|
||||||
./services/monitoring.nix
|
./services/monitoring.nix
|
||||||
|
|
@ -30,8 +30,8 @@
|
||||||
./system/impermanence.nix
|
./system/impermanence.nix
|
||||||
./system/meta.nix
|
./system/meta.nix
|
||||||
./system/user.nix
|
./system/user.nix
|
||||||
|
./to-upstream/fido2-hid-bridge.nix
|
||||||
./user-services/khal.nix
|
./user-services/khal.nix
|
||||||
./user-services/syncthing.nix
|
./user-services/syncthing.nix
|
||||||
./to-upstream/fido2-hid-bridge.nix
|
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -130,7 +130,7 @@ in
|
||||||
imagemagick
|
imagemagick
|
||||||
jq
|
jq
|
||||||
lm_sensors
|
lm_sensors
|
||||||
moar
|
moor
|
||||||
neofetch
|
neofetch
|
||||||
nix-output-monitor
|
nix-output-monitor
|
||||||
poppler
|
poppler
|
||||||
|
|
@ -145,7 +145,7 @@ in
|
||||||
programs.mosh.enable = true;
|
programs.mosh.enable = true;
|
||||||
environment.variables.EDITOR = "hx";
|
environment.variables.EDITOR = "hx";
|
||||||
environment.variables.VISUAL = "hx";
|
environment.variables.VISUAL = "hx";
|
||||||
environment.variables.PAGER = "moar";
|
environment.variables.PAGER = "moor";
|
||||||
|
|
||||||
environment.shellAliases = {
|
environment.shellAliases = {
|
||||||
l = "ls -alh";
|
l = "ls -alh";
|
||||||
|
|
@ -161,7 +161,7 @@ in
|
||||||
p = "cd ~/proj";
|
p = "cd ~/proj";
|
||||||
ytl = ''yt-dlp -f "bv*+mergeall[vcodec=none]" --audio-multistreams'';
|
ytl = ''yt-dlp -f "bv*+mergeall[vcodec=none]" --audio-multistreams'';
|
||||||
sudo = "run0";
|
sudo = "run0";
|
||||||
less = "moar";
|
less = "moor";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,7 @@ in
|
||||||
pkgs.yubikey-personalization
|
pkgs.yubikey-personalization
|
||||||
];
|
];
|
||||||
xyno.desktop.niri.enable = true;
|
xyno.desktop.niri.enable = true;
|
||||||
|
xyno.desktop.ibus.enable = true;
|
||||||
xyno.desktop.audio.enable = mkDefault true;
|
xyno.desktop.audio.enable = mkDefault true;
|
||||||
xyno.user-services.khal.enable = true;
|
xyno.user-services.khal.enable = true;
|
||||||
boot.kernelPackages = mkDefault pkgs.linuxPackages_zen;
|
boot.kernelPackages = mkDefault pkgs.linuxPackages_zen;
|
||||||
|
|
@ -41,8 +42,8 @@ in
|
||||||
qt = {
|
qt = {
|
||||||
enable = true;
|
enable = true;
|
||||||
style = "breeze";
|
style = "breeze";
|
||||||
# platformTheme = "gnome";
|
|
||||||
};
|
};
|
||||||
|
environment.variables.QT_STYLE_OVERRIDE = lib.mkForce "breeze-dark";
|
||||||
|
|
||||||
programs.yazi = {
|
programs.yazi = {
|
||||||
settings.keymap.mgr.prepend_keymap = [
|
settings.keymap.mgr.prepend_keymap = [
|
||||||
|
|
@ -70,11 +71,31 @@ in
|
||||||
# enable the gnome shit
|
# enable the gnome shit
|
||||||
services.gnome.gnome-keyring.enable = true;
|
services.gnome.gnome-keyring.enable = true;
|
||||||
services.gnome.gnome-online-accounts.enable = true;
|
services.gnome.gnome-online-accounts.enable = true;
|
||||||
services.gnome.core-apps.enable = true;
|
environment.systemPackages = with pkgs;[
|
||||||
|
gnome-calendar
|
||||||
|
gnome-clocks
|
||||||
|
gnome-font-viewer
|
||||||
|
mate.engrampa
|
||||||
|
papirus-folders
|
||||||
|
kdePackages.gwenview
|
||||||
|
kdePackages.skanlite
|
||||||
|
kdePackages.okular
|
||||||
|
kdePackages.breeze-gtk
|
||||||
|
kdePackages.breeze.qt5
|
||||||
|
kdePackages.breeze
|
||||||
|
kdePackages.breeze-icons
|
||||||
|
nautilus # for xdg portal
|
||||||
|
];
|
||||||
services.gnome.gcr-ssh-agent.enable = mkForce false;
|
services.gnome.gcr-ssh-agent.enable = mkForce false;
|
||||||
services.gnome.sushi.enable = true;
|
# services.gnome.sushi.enable = true;
|
||||||
services.gnome.gnome-settings-daemon.enable = true;
|
services.gnome.gnome-settings-daemon.enable = true;
|
||||||
services.gvfs.enable = true;
|
|
||||||
|
programs.thunar = {
|
||||||
|
enable = true;
|
||||||
|
plugins = with pkgs.xfce; [ thunar-archive-plugin thunar-volman ];
|
||||||
|
};
|
||||||
|
services.tumbler.enable = true; # thunar image preview
|
||||||
|
services.gvfs.enable = true; # thunar network device mount
|
||||||
|
|
||||||
xdg.terminal-exec = {
|
xdg.terminal-exec = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
@ -110,12 +131,6 @@ in
|
||||||
# };
|
# };
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
kdePackages.breeze-gtk
|
|
||||||
kdePackages.breeze.qt5
|
|
||||||
kdePackages.breeze
|
|
||||||
kdePackages.breeze-icons
|
|
||||||
];
|
|
||||||
|
|
||||||
# fonts
|
# fonts
|
||||||
fonts.fontconfig.defaultFonts = {
|
fonts.fontconfig.defaultFonts = {
|
||||||
|
|
|
||||||
|
|
@ -27,16 +27,16 @@ inputs: self: super: {
|
||||||
fido2-hid-bridge = super.callPackage ../packages/fido2-hid-bridge.nix {};
|
fido2-hid-bridge = super.callPackage ../packages/fido2-hid-bridge.nix {};
|
||||||
python-uhid = super.callPackage ../packages/uhid.nix {};
|
python-uhid = super.callPackage ../packages/uhid.nix {};
|
||||||
caddy-desec = super.callPackage ../packages/caddy-desec.nix {};
|
caddy-desec = super.callPackage ../packages/caddy-desec.nix {};
|
||||||
|
ibus-patched = super.unstable.ibus.overrideAttrs (old: {
|
||||||
# todo: remove on next supersonic release
|
patches = old.patches ++ [
|
||||||
supersonic-wayland = super.supersonic-wayland.overrideAttrs (old: {
|
# (builtins.head old.patches)
|
||||||
patches = (if old?patches then old.patches else []) ++ [
|
# (builtins.head (builtins.tail old.patches))
|
||||||
(self.fetchpatch2 {
|
(self.fetchpatch2 {
|
||||||
url = "https://github.com/dweymouth/supersonic/commit/ee742cf34ef7225d345c16354d9c21d72a41bf4a.patch";
|
url = "https://github.com/ibus/ibus/commit/dde00b1b689037e70d79a703aa028f7c3de289e2.patch";
|
||||||
hash = "sha256-kSeEbzrfJ4Pe8JC4rIWlSmADOcjrCRBNWlcO8VfVnn4=";
|
hash = "sha256-Q5XANWsN7f9Kcno8Icgn8wlXL489YlcrlUrqeA67nWU=";
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
vendorHash = "sha256-Sh3PxRwb6ElSeWzdvIQ+nD9VVGlpUDwxG7nAoGWPTRQ=";
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue