1

Compare commits

...

39 Commits

Author SHA1 Message Date
9a9bffd637 Home: Add gnumake 2026-01-19 12:07:38 +01:00
f1b269e3ee Modules/Impermanence: Persist /var/lib/docker 2026-01-18 21:51:44 +01:00
f09dee5ad8 Home/Nixinator: Add zed + vscode 2026-01-18 21:45:47 +01:00
f246eacdb3 Modules/Impermanence: Persist docker build cache, zed config, jellyfin-desktop config 2026-01-18 21:45:36 +01:00
b7e2bba8f0 Update systemmodules/homemodules paths to allow nixd to differentiate between the two 2026-01-18 15:47:51 +01:00
25ae0f4b85 System: Rename system/modules to system/systemmodules 2026-01-18 15:34:46 +01:00
d12b247368 Home: Rename home/modules to home/homemodules 2026-01-18 15:34:36 +01:00
25e9128875 System/Nixinator: Reenable restic backup with NFS "hard" 2026-01-18 14:01:30 +01:00
eee28f57fc System: Replace NFS mounts "soft" option with "hard" 2026-01-18 14:00:16 +01:00
ea03e2266f System/Nixinator: Disable restic until I figure out why the repo breaks all the time 2026-01-18 01:19:19 +01:00
5e422d05c9 System/Nixinator: Disable rootless docker 2026-01-18 01:19:04 +01:00
eaa36cfce2 Modules/Neovim: Update clangd options 2026-01-18 00:01:14 +01:00
572d0bfe9e Modules/Neovim: Update nvim-treesitter config after update 2026-01-17 23:46:34 +01:00
385ca27f8c Modules/Niri: Disable workspace scroll on focus change 2026-01-17 23:46:19 +01:00
4c18fd8c8e Modules/Niri: Update DMS configuration after update 2026-01-17 23:00:44 +01:00
bf0c55669c Derivations/TidalDL: Disable broken derivation for now 2026-01-17 21:59:22 +01:00
86a5e79079 System/Nixinator: Enable 16G swap 2026-01-17 21:58:24 +01:00
7d429a4720 Derivations/TidalDL: Update src after the original repository was removed (thank you anna) 2026-01-17 20:29:17 +01:00
2e9a4b13d1 System: Fix after update 2026-01-17 20:28:40 +01:00
73eeff9a0e Home: Fix after update 2026-01-17 20:28:34 +01:00
d216a8018d Flake: Update lock 2026-01-17 20:20:57 +01:00
b09d854e50 Home/Nixinator: Disable ollama 2026-01-17 20:20:31 +01:00
ff39dd1df2 Modules/Neovim: Rewrite clangd root_dir expression for neovim v0.11 2026-01-17 19:50:05 +01:00
98c520e0bd Services/FileFlows: Don't mount MusicVideos into nixinator node 2026-01-17 19:32:45 +01:00
7e3d3ca4a5 Modules/Impermanence: Persist user docker images/containers 2026-01-17 19:23:35 +01:00
c8a76751f3 System/Nixinator: Remove GAMES disk mount 2026-01-17 19:23:05 +01:00
12a10bee82 Home: Rename dankMaterialShell to dank-material-shell after flake update 2026-01-17 19:22:45 +01:00
767309885a Flake: Update lock 2026-01-17 19:22:45 +01:00
6d360ed782 System/Servenix: Mount nfs share for music videos/recorded shows 2026-01-05 18:02:51 +01:00
ddccd51b5a Services/Box: Update to v0.30.1 2026-01-05 18:02:51 +01:00
1fef42e5d4 Home: Disable hyprland bc it's too woke 2025-12-26 13:45:40 +01:00
0d20883f4f Home: Enable hyprland + niri depending on their system module state 2025-12-26 13:07:07 +01:00
cec5ec5493 Modules/Niri: Update DMS default config 2025-12-14 17:16:16 +01:00
5833dff19e Home: Disable hyprland 2025-12-14 16:14:14 +01:00
7b4c2df7af Modules/Hyprland: Update to current config format 2025-12-14 16:14:07 +01:00
1643f30906 System/Nixinator: Switch to Nvidia beta driver since stable is currently broken on kernel 6.18 2025-12-12 19:52:06 +01:00
79c617cc91 Flake: Update lock 2025-12-12 19:52:06 +01:00
474a8badf4 Modules/Niri: Init DankMaterialShell config 2025-12-12 19:52:06 +01:00
17368396cf Services/Box: Init at v0.29.3 2025-12-09 03:26:30 +01:00
172 changed files with 1832 additions and 557 deletions

View File

@ -21,7 +21,7 @@ Contains all the system configurations.
- There is a common configuration used for all systems: `NixFlake/system/default.nix` - There is a common configuration used for all systems: `NixFlake/system/default.nix`
- Every system has its own special configuration: `NixFlake/system/<hostname>/default.nix` - Every system has its own special configuration: `NixFlake/system/<hostname>/default.nix`
- System modules are located in `NixFlake/system/modules` - System modules are located in `NixFlake/system/systemmodules`
- Hosted services are located in `NixFlake/system/services` - Hosted services are located in `NixFlake/system/services`
When creating a NixOS configuration inside the `NixFlake/flake.nix` the common configuration is imported. When creating a NixOS configuration inside the `NixFlake/flake.nix` the common configuration is imported.
@ -33,7 +33,7 @@ Contains all the home-manager configurations.
- There is a common configuration for each user: `NixFlake/home/<username>/default.nix` - There is a common configuration for each user: `NixFlake/home/<username>/default.nix`
- There is a configuration for a single system of this user: `NixFlake/home/<username>/<hostname>/default.nix` - There is a configuration for a single system of this user: `NixFlake/home/<username>/<hostname>/default.nix`
- Home-Manager modules are located in `NixFlake/home/modules` - Home-Manager modules are located in `NixFlake/home/homemodules`
When creating a NixOS configuration inside the `NixFlake/flake.nix` the common configuration is imported. When creating a NixOS configuration inside the `NixFlake/flake.nix` the common configuration is imported.
Because the hostname is propagated to the common configuration, it can import the host-specific config by itself. Because the hostname is propagated to the common configuration, it can import the host-specific config by itself.

View File

@ -0,0 +1,555 @@
{
"id": "catppuccin",
"name": "Catppuccin",
"version": "1.0.0",
"author": "Avenge Media",
"description": "Soothing pastel theme for the high-spirited",
"dark": {},
"light": {},
"variants": {
"type": "multi",
"defaults": {
"dark": {
"accent": "mauve",
"flavor": "mocha"
},
"light": {
"accent": "mauve",
"flavor": "latte"
}
},
"flavors": [
{
"id": "mocha",
"name": "Mocha",
"dark": {
"surface": "#181825",
"surfaceText": "#cdd6f4",
"surfaceVariant": "#1e1e2e",
"surfaceVariantText": "#a6adc8",
"background": "#1e1e2e",
"backgroundText": "#cdd6f4",
"outline": "#6c7086",
"surfaceContainer": "#1e1e2e",
"surfaceContainerHigh": "#313244",
"surfaceContainerHighest": "#45475a",
"error": "#f38ba8",
"warning": "#fab387",
"info": "#89b4fa"
},
"light": {}
},
{
"id": "macchiato",
"name": "Macchiato",
"dark": {
"surface": "#1e2030",
"surfaceText": "#cad3f5",
"surfaceVariant": "#24273a",
"surfaceVariantText": "#a5adcb",
"background": "#24273a",
"backgroundText": "#cad3f5",
"outline": "#6e738d",
"surfaceContainer": "#24273a",
"surfaceContainerHigh": "#363a4f",
"surfaceContainerHighest": "#494d64",
"error": "#ed8796",
"warning": "#f5a97f",
"info": "#8aadf4"
},
"light": {}
},
{
"id": "frappe",
"name": "Frappé",
"dark": {
"surface": "#292c3c",
"surfaceText": "#c6d0f5",
"surfaceVariant": "#303446",
"surfaceVariantText": "#a5adce",
"background": "#303446",
"backgroundText": "#c6d0f5",
"outline": "#737994",
"surfaceContainer": "#303446",
"surfaceContainerHigh": "#414559",
"surfaceContainerHighest": "#51576d",
"error": "#e78284",
"warning": "#ef9f76",
"info": "#8caaee"
},
"light": {}
},
{
"id": "latte",
"name": "Latte",
"dark": {},
"light": {
"surface": "#e6e9ef",
"surfaceText": "#4c4f69",
"surfaceVariant": "#eff1f5",
"surfaceVariantText": "#6c6f85",
"background": "#eff1f5",
"backgroundText": "#4c4f69",
"outline": "#9ca0b0",
"surfaceContainer": "#e6e9ef",
"surfaceContainerHigh": "#ccd0da",
"surfaceContainerHighest": "#bcc0cc",
"error": "#d20f39",
"warning": "#fe640b",
"info": "#1e66f5"
}
}
],
"accents": [
{
"frappe": {
"primary": "#f2d5cf",
"primaryText": "#303446",
"primaryContainer": "#76534f",
"secondary": "#eebebe",
"surfaceTint": "#3a2f33"
},
"id": "rosewater",
"latte": {
"primary": "#dc8a78",
"primaryText": "#eff1f5",
"primaryContainer": "#f6e7e3",
"secondary": "#dd7878",
"surfaceTint": "#f6e7e3"
},
"macchiato": {
"primary": "#f4dbd6",
"primaryText": "#24273a",
"primaryContainer": "#7a5853",
"secondary": "#f0c6c6",
"surfaceTint": "#3b3035"
},
"mocha": {
"primary": "#f5e0dc",
"primaryText": "#1e1e2e",
"primaryContainer": "#7d5d56",
"secondary": "#f2cdcd",
"surfaceTint": "#3d3237"
},
"name": "Rosewater"
},
{
"frappe": {
"primary": "#eebebe",
"primaryText": "#303446",
"primaryContainer": "#744f52",
"secondary": "#f2d5cf",
"surfaceTint": "#392e31"
},
"id": "flamingo",
"latte": {
"primary": "#dd7878",
"primaryText": "#eff1f5",
"primaryContainer": "#f6e5e5",
"secondary": "#dc8a78",
"surfaceTint": "#f6e5e5"
},
"macchiato": {
"primary": "#f0c6c6",
"primaryText": "#24273a",
"primaryContainer": "#775256",
"secondary": "#f4dbd6",
"surfaceTint": "#3a3033"
},
"mocha": {
"primary": "#f2cdcd",
"primaryText": "#1e1e2e",
"primaryContainer": "#7a555a",
"secondary": "#f5e0dc",
"surfaceTint": "#3c3134"
},
"name": "Flamingo"
},
{
"frappe": {
"primary": "#f4b8e4",
"primaryText": "#303446",
"primaryContainer": "#793d65",
"secondary": "#ca9ee6",
"surfaceTint": "#3c2e37"
},
"id": "pink",
"latte": {
"primary": "#ea76cb",
"primaryText": "#eff1f5",
"primaryContainer": "#f7d7ee",
"secondary": "#8839ef",
"surfaceTint": "#f7d7ee"
},
"macchiato": {
"primary": "#f5bde6",
"primaryText": "#24273a",
"primaryContainer": "#7a3e67",
"secondary": "#c6a0f6",
"surfaceTint": "#3d2f38"
},
"mocha": {
"primary": "#f5c2e7",
"primaryText": "#1e1e2e",
"primaryContainer": "#7a3f69",
"secondary": "#cba6f7",
"surfaceTint": "#3d2f39"
},
"name": "Pink"
},
{
"frappe": {
"primary": "#ca9ee6",
"primaryText": "#303446",
"primaryContainer": "#542f79",
"secondary": "#babbf1",
"surfaceTint": "#33293c"
},
"id": "mauve",
"latte": {
"primary": "#8839ef",
"primaryText": "#eff1f5",
"primaryContainer": "#eadcff",
"secondary": "#7287fd",
"surfaceTint": "#eadcff"
},
"macchiato": {
"primary": "#c6a0f6",
"primaryText": "#24273a",
"primaryContainer": "#532f7d",
"secondary": "#b7bdf8",
"surfaceTint": "#32293e"
},
"mocha": {
"primary": "#cba6f7",
"primaryText": "#1e1e2e",
"primaryContainer": "#55307f",
"secondary": "#b4befe",
"surfaceTint": "#33293f"
},
"name": "Mauve"
},
{
"frappe": {
"primary": "#e78284",
"primaryText": "#303446",
"primaryContainer": "#692233",
"secondary": "#ea999c",
"surfaceTint": "#38272e"
},
"id": "red",
"latte": {
"primary": "#d20f39",
"primaryText": "#eff1f5",
"primaryContainer": "#f6d0d6",
"secondary": "#e64553",
"surfaceTint": "#f6d0d6"
},
"macchiato": {
"primary": "#ed8796",
"primaryText": "#24273a",
"primaryContainer": "#6c2336",
"secondary": "#ee99a0",
"surfaceTint": "#3a2830"
},
"mocha": {
"primary": "#f38ba8",
"primaryText": "#1e1e2e",
"primaryContainer": "#6f2438",
"secondary": "#eba0ac",
"surfaceTint": "#3c2930"
},
"name": "Red"
},
{
"frappe": {
"primary": "#ea999c",
"primaryText": "#303446",
"primaryContainer": "#69333d",
"secondary": "#e78284",
"surfaceTint": "#382a2f"
},
"id": "maroon",
"latte": {
"primary": "#e64553",
"primaryText": "#eff1f5",
"primaryContainer": "#f7d8dc",
"secondary": "#d20f39",
"surfaceTint": "#f7d8dc"
},
"macchiato": {
"primary": "#ee99a0",
"primaryText": "#24273a",
"primaryContainer": "#6b343f",
"secondary": "#ed8796",
"surfaceTint": "#392b30"
},
"mocha": {
"primary": "#eba0ac",
"primaryText": "#1e1e2e",
"primaryContainer": "#6d3641",
"secondary": "#f38ba8",
"surfaceTint": "#3a2c31"
},
"name": "Maroon"
},
{
"frappe": {
"primary": "#ef9f76",
"primaryText": "#303446",
"primaryContainer": "#6d3e24",
"secondary": "#e5c890",
"surfaceTint": "#382e27"
},
"id": "peach",
"latte": {
"primary": "#fe640b",
"primaryText": "#eff1f5",
"primaryContainer": "#ffe4d5",
"secondary": "#df8e1d",
"surfaceTint": "#ffe4d5"
},
"macchiato": {
"primary": "#f5a97f",
"primaryText": "#24273a",
"primaryContainer": "#704025",
"secondary": "#eed49f",
"surfaceTint": "#3a2f28"
},
"mocha": {
"primary": "#fab387",
"primaryText": "#1e1e2e",
"primaryContainer": "#734226",
"secondary": "#f9e2af",
"surfaceTint": "#3b3028"
},
"name": "Peach"
},
{
"frappe": {
"primary": "#e5c890",
"primaryText": "#303446",
"primaryContainer": "#68542c",
"secondary": "#a6d189",
"surfaceTint": "#383428"
},
"id": "yellow",
"latte": {
"primary": "#df8e1d",
"primaryText": "#eff1f5",
"primaryContainer": "#fff6d6",
"secondary": "#40a02b",
"surfaceTint": "#fff6d6"
},
"macchiato": {
"primary": "#eed49f",
"primaryText": "#24273a",
"primaryContainer": "#6b572e",
"secondary": "#a6da95",
"surfaceTint": "#393529"
},
"mocha": {
"primary": "#f9e2af",
"primaryText": "#1e1e2e",
"primaryContainer": "#6e5a2f",
"secondary": "#a6e3a1",
"surfaceTint": "#3a362a"
},
"name": "Yellow"
},
{
"frappe": {
"primary": "#a6d189",
"primaryText": "#303446",
"primaryContainer": "#2d5932",
"secondary": "#81c8be",
"surfaceTint": "#2a362b"
},
"id": "green",
"latte": {
"primary": "#40a02b",
"primaryText": "#eff1f5",
"primaryContainer": "#dff4e0",
"secondary": "#179299",
"surfaceTint": "#dff4e0"
},
"macchiato": {
"primary": "#a6da95",
"primaryText": "#24273a",
"primaryContainer": "#2e5c34",
"secondary": "#8bd5ca",
"surfaceTint": "#2b372c"
},
"mocha": {
"primary": "#a6e3a1",
"primaryText": "#1e1e2e",
"primaryContainer": "#2f5f36",
"secondary": "#94e2d5",
"surfaceTint": "#2b382c"
},
"name": "Green"
},
{
"frappe": {
"primary": "#81c8be",
"primaryText": "#303446",
"primaryContainer": "#2c5853",
"secondary": "#99d1db",
"surfaceTint": "#2a3634"
},
"id": "teal",
"latte": {
"primary": "#179299",
"primaryText": "#eff1f5",
"primaryContainer": "#daf3f1",
"secondary": "#04a5e5",
"surfaceTint": "#daf3f1"
},
"macchiato": {
"primary": "#8bd5ca",
"primaryText": "#24273a",
"primaryContainer": "#2d5b56",
"secondary": "#91d7e3",
"surfaceTint": "#2b3735"
},
"mocha": {
"primary": "#94e2d5",
"primaryText": "#1e1e2e",
"primaryContainer": "#2e5e59",
"secondary": "#89dceb",
"surfaceTint": "#2b3836"
},
"name": "Teal"
},
{
"frappe": {
"primary": "#99d1db",
"primaryText": "#303446",
"primaryContainer": "#245464",
"secondary": "#85c1dc",
"surfaceTint": "#283438"
},
"id": "sky",
"latte": {
"primary": "#04a5e5",
"primaryText": "#eff1f5",
"primaryContainer": "#dbf1fb",
"secondary": "#209fb5",
"surfaceTint": "#dbf1fb"
},
"macchiato": {
"primary": "#91d7e3",
"primaryText": "#24273a",
"primaryContainer": "#245667",
"secondary": "#7dc4e4",
"surfaceTint": "#293539"
},
"mocha": {
"primary": "#89dceb",
"primaryText": "#1e1e2e",
"primaryContainer": "#24586a",
"secondary": "#74c7ec",
"surfaceTint": "#29363a"
},
"name": "Sky"
},
{
"frappe": {
"primary": "#85c1dc",
"primaryText": "#303446",
"primaryContainer": "#1f4967",
"secondary": "#8caaee",
"surfaceTint": "#27323a"
},
"id": "sapphire",
"latte": {
"primary": "#209fb5",
"primaryText": "#eff1f5",
"primaryContainer": "#def3f8",
"secondary": "#1e66f5",
"surfaceTint": "#def3f8"
},
"macchiato": {
"primary": "#7dc4e4",
"primaryText": "#24273a",
"primaryContainer": "#1f4b6b",
"secondary": "#8aadf4",
"surfaceTint": "#27333b"
},
"mocha": {
"primary": "#74c7ec",
"primaryText": "#1e1e2e",
"primaryContainer": "#1f4d6f",
"secondary": "#89b4fa",
"surfaceTint": "#27343c"
},
"name": "Sapphire"
},
{
"frappe": {
"primary": "#8caaee",
"primaryText": "#303446",
"primaryContainer": "#243d6f",
"secondary": "#babbf1",
"surfaceTint": "#282f3b"
},
"id": "blue",
"latte": {
"primary": "#1e66f5",
"primaryText": "#eff1f5",
"primaryContainer": "#e0e9ff",
"secondary": "#7287fd",
"surfaceTint": "#e0e9ff"
},
"macchiato": {
"primary": "#8aadf4",
"primaryText": "#24273a",
"primaryContainer": "#243e72",
"secondary": "#b7bdf8",
"surfaceTint": "#29303c"
},
"mocha": {
"primary": "#89b4fa",
"primaryText": "#1e1e2e",
"primaryContainer": "#243f75",
"secondary": "#b4befe",
"surfaceTint": "#29313d"
},
"name": "Blue"
},
{
"frappe": {
"primary": "#babbf1",
"primaryText": "#303446",
"primaryContainer": "#3d427b",
"secondary": "#ca9ee6",
"surfaceTint": "#2e2f3e"
},
"id": "lavender",
"latte": {
"primary": "#7287fd",
"primaryText": "#eff1f5",
"primaryContainer": "#e5e8ff",
"secondary": "#8839ef",
"surfaceTint": "#e5e8ff"
},
"macchiato": {
"primary": "#b7bdf8",
"primaryText": "#24273a",
"primaryContainer": "#3e437e",
"secondary": "#c6a0f6",
"surfaceTint": "#2f303f"
},
"mocha": {
"primary": "#b4befe",
"primaryText": "#1e1e2e",
"primaryContainer": "#3f4481",
"secondary": "#cba6f7",
"surfaceTint": "#2f3140"
},
"name": "Lavender"
}
]
},
"sourceDir": "catppuccin"
}

View File

@ -7,7 +7,7 @@
... ...
}: let }: let
# create a module that only contains the options, type can be home or system # create a module that only contains the options, type can be home or system
toModule = type: name: {options.modules.${name} = import ../../${type}/modules/${name}/options.nix {inherit lib mylib;};}; toModule = type: name: {options.systemmodules.${name} = import ../../${type}/modules/${name}/options.nix {inherit lib mylib;};};
# evaluate a single module # evaluate a single module
evalModule = type: name: (lib.evalModules {modules = [(toModule type name)];}); evalModule = type: name: (lib.evalModules {modules = [(toModule type name)];});

View File

@ -10,11 +10,12 @@
# #
pythonPkgs = pkgs.python313Packages.overrideScope (self: super: { pythonPkgs = pkgs.python313Packages.overrideScope (self: super: {
typer = super.typer.overridePythonAttrs (old: { typer = super.typer.overridePythonAttrs (old: {
version = "0.20.0"; version = "0.20.1";
src = super.fetchPypi { src = super.fetchPypi {
inherit (old) pname; inherit (old) pname;
version = "0.20.0"; version = "0.20.1";
sha256 = "sha256-Gq9klAMXk+SHb7C6z6apErVRz0PB5jyADfixqGZyDDc="; # sha256 = "sha256-Gq9klAMXk+SHb7C6z6apErVRz0PB5jyADfixqGZyDDc="; # v0.20.0
sha256 = "sha256-aFhesbASA2icQZm8RA1r5hbwhR6fDrQeSneIRcWg/Vs="; # v0.20.1
}; };
}); });
@ -37,7 +38,7 @@
# sha256 = "sha256-Gq9klAMXk+SHb7C6z6apErVRz0PB5jyADfixqGZyDDc="; # sha256 = "sha256-Gq9klAMXk+SHb7C6z6apErVRz0PB5jyADfixqGZyDDc=";
# }; # };
# }); # });
#
# rich_14_2_0 = pkgs.python313Packages.rich.overridePythonAttrs (old: { # rich_14_2_0 = pkgs.python313Packages.rich.overridePythonAttrs (old: {
# version = "14.2.0"; # version = "14.2.0";
# src = pkgs.python313Packages.fetchPypi { # src = pkgs.python313Packages.fetchPypi {
@ -63,15 +64,24 @@
version = "0.31.3"; version = "0.31.3";
format = "pyproject"; format = "pyproject";
# TODO: The official repo was deleted, find the new one once it pops up
# src = pkgs.fetchFromGitHub {
# owner = "exislow";
# repo = "tidal-dl-ng";
# rev = "v${version}";
# sha256 = "sha256-PUT0anx1yivgXwW21jah7Rv1/BabOT+KPoW446NFNyg=";
# };
src = pkgs.fetchFromGitHub { src = pkgs.fetchFromGitHub {
owner = "exislow"; owner = "rodvicj";
repo = "tidal-dl-ng"; repo = "tidal_dl_ng-Project";
rev = "v${version}"; rev = "4573142c76ef045ebf8e80c34657dd2bec96f17d";
sha256 = "sha256-PUT0anx1yivgXwW21jah7Rv1/BabOT+KPoW446NFNyg="; sha256 = "sha256-3sO2qj8V4KXOWK7vQsFAOYeTZo2rsc/M36SwRnC0oVg=";
}; };
doCheck = false; doCheck = false;
catchConflicts = false; catchConflicts = false;
strictDeps = false;
nativeBuildInputs = with pythonPkgs; [poetry-core setuptools]; nativeBuildInputs = with pythonPkgs; [poetry-core setuptools];
@ -96,13 +106,6 @@
typer typer
rich rich
]; ];
# pythonOutputDistPhase = ''
# echo "⚠Skipping pythonOutputDistPhase"
# '';
# pythonCatchConflictsPhase = ''
# echo "🛑 Skipping pythonCatchConflictsPhase"
# '';
}; };
# #

524
flake.lock generated
View File

@ -20,11 +20,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762356719, "lastModified": 1767024902,
"narHash": "sha256-qwd/xdoOya1m8FENle+4hWnydCtlXUWLAW/Auk6WL7s=", "narHash": "sha256-sMdk6QkMDhIOnvULXKUM8WW8iyi551SWw2i6KQHbrrU=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "aquamarine", "repo": "aquamarine",
"rev": "6d0b3567584691bf9d8fedb5d0093309e2f979c7", "rev": "b8a0c5ba5a9fbd2c660be7dd98bdde0ff3798556",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -44,11 +44,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763974329, "lastModified": 1768659593,
"narHash": "sha256-8bljTh08KrIzTwzJEM8rGCg56hGtIH6/oT0LctCPTOQ=", "narHash": "sha256-Cjm5dbWWds9fLvOXHG5Co8Lfgv4/o3h7KhtfhLM28cU=",
"owner": "caelestia-dots", "owner": "caelestia-dots",
"repo": "shell", "repo": "shell",
"rev": "11282f6abe32f9671dc0a7ce49d64bc4f2d79e6b", "rev": "fd1165f1530b55c0751f8af7475d0c588b11488c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -68,11 +68,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763517499, "lastModified": 1768010798,
"narHash": "sha256-N5y55DwDNT+0kLFck2sy1+DcnLOZ/N05UEvZ2R5pmWo=", "narHash": "sha256-CmEy/t3CCDnUvn594sXtv0vRxt1JQaqj0nGdtQFU3mA=",
"owner": "caelestia-dots", "owner": "caelestia-dots",
"repo": "cli", "repo": "cli",
"rev": "1cfd405eaa74e66f33e7790c5c6586676f03a395", "rev": "70a8624eacfc1b90fe248aef722ae708e775a927",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -96,16 +96,37 @@
"type": "github" "type": "github"
} }
}, },
"dank-material-shell": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"quickshell": "quickshell"
},
"locked": {
"lastModified": 1768670844,
"narHash": "sha256-6jntj2RVC3ceEFd1dWKUlLkV/UUkCfcv6KR+yBt7DgA=",
"owner": "AvengeMedia",
"repo": "DankMaterialShell",
"rev": "27f0df07af950c378054264eda384978d95c7f80",
"type": "github"
},
"original": {
"owner": "AvengeMedia",
"repo": "DankMaterialShell",
"type": "github"
}
},
"devshell": { "devshell": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1762521437, "lastModified": 1764011051,
"narHash": "sha256-RXN+lcx4DEn3ZS+LqEJSUu/HH+dwGvy0syN7hTo/Chg=", "narHash": "sha256-M7SZyPZiqZUR/EiiBJnmyUbOi5oE/03tCeFrTiUZchI=",
"owner": "numtide", "owner": "numtide",
"repo": "devshell", "repo": "devshell",
"rev": "07bacc9531f5f4df6657c0a02a806443685f384a", "rev": "17ed8d9744ebe70424659b0ef74ad6d41fc87071",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -135,6 +156,29 @@
"type": "github" "type": "github"
} }
}, },
"fenix": {
"inputs": {
"nixpkgs": [
"nps",
"naersk",
"nixpkgs"
],
"rust-analyzer-src": "rust-analyzer-src"
},
"locked": {
"lastModified": 1752475459,
"narHash": "sha256-z6QEu4ZFuHiqdOPbYss4/Q8B0BFhacR8ts6jO/F/aOU=",
"owner": "nix-community",
"repo": "fenix",
"rev": "bf0d6f70f4c9a9cf8845f992105652173f4b617f",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "fenix",
"type": "github"
}
},
"firefox-addons": { "firefox-addons": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -161,15 +205,15 @@
"flake-compat": { "flake-compat": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1747046372, "lastModified": 1767039857,
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", "narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=",
"owner": "edolstra", "owner": "NixOS",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", "rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "edolstra", "owner": "NixOS",
"repo": "flake-compat", "repo": "flake-compat",
"type": "github" "type": "github"
} }
@ -192,11 +236,11 @@
}, },
"flake-compat_3": { "flake-compat_3": {
"locked": { "locked": {
"lastModified": 1761588595, "lastModified": 1767039857,
"narHash": "sha256-XKUZz9zewJNUj46b4AJdiRZJAvSZ0Dqj2BNfXvFlJC4=", "narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=",
"owner": "edolstra", "owner": "edolstra",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "f387cd2afec9419c8ee37694406ca490c3f34ee5", "rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -207,12 +251,12 @@
}, },
"flake-compat_4": { "flake-compat_4": {
"locked": { "locked": {
"lastModified": 1696426674, "lastModified": 1733328505,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
"revCount": 57, "revCount": 69,
"type": "tarball", "type": "tarball",
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz" "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.1.0/01948eb7-9cba-704f-bbf3-3fa956735b52/source.tar.gz"
}, },
"original": { "original": {
"type": "tarball", "type": "tarball",
@ -248,11 +292,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763759067, "lastModified": 1765835352,
"narHash": "sha256-LlLt2Jo/gMNYAwOgdRQBrsRoOz7BPRkzvNaI/fzXi2Q=", "narHash": "sha256-XswHlK/Qtjasvhd1nOa1e8MgZ8GS//jBoTqWtrS1Giw=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "2cccadc7357c0ba201788ae99c4dfa90728ef5e0", "rev": "a34fae9c08a15ad73f295041fec82323541400a9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -284,7 +328,7 @@
}, },
"flake-utils": { "flake-utils": {
"inputs": { "inputs": {
"systems": "systems_3" "systems": "systems_4"
}, },
"locked": { "locked": {
"lastModified": 1731533236, "lastModified": 1731533236,
@ -300,21 +344,6 @@
"type": "github" "type": "github"
} }
}, },
"flake-utils_2": {
"locked": {
"lastModified": 1667395993,
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"gitignore": { "gitignore": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -361,11 +390,11 @@
}, },
"hardware": { "hardware": {
"locked": { "locked": {
"lastModified": 1762847253, "lastModified": 1768584846,
"narHash": "sha256-BWWnUUT01lPwCWUvS0p6Px5UOBFeXJ8jR+ZdLX8IbrU=", "narHash": "sha256-IRPmIOV2tPwxbhP/I9M5AmwhTC0lMPtoPStC+8T6xl0=",
"owner": "nixos", "owner": "nixos",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "899dc449bc6428b9ee6b3b8f771ca2b0ef945ab9", "rev": "cce68f4a54fa4e3d633358364477f5cc1d782440",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -381,11 +410,32 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763992752, "lastModified": 1768598210,
"narHash": "sha256-iinKiBTAx7F9EkMqKFSqaWTCaay463toAPtQiA8RRyc=", "narHash": "sha256-kkgA32s/f4jaa4UG+2f8C225Qvclxnqs76mf8zvTVPg=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "55af952c5612190c3e7862f4e2504048c50841aa", "rev": "c47b2cc64a629f8e075de52e4742de688f930dc6",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"home-manager_2": {
"inputs": {
"nixpkgs": [
"impermanence",
"nixpkgs"
]
},
"locked": {
"lastModified": 1747978958,
"narHash": "sha256-pQQnbxWpY3IiZqgelXHIe/OAE/Yv4NSQq7fch7M6nXQ=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "7419250703fd5eb50e99bdfb07a86671939103ea",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -404,11 +454,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763589171, "lastModified": 1768644786,
"narHash": "sha256-3+k074XQ4quCWQ/WLEeYTTD+AlDlxtzKvH9gkWqn+8Y=", "narHash": "sha256-0nfqa8f7/at2hQTq5rbz69S+nmp6RzAtX0kf8OiJBrU=",
"owner": "VirtCode", "owner": "VirtCode",
"repo": "hypr-dynamic-cursors", "repo": "hypr-dynamic-cursors",
"rev": "85e6a93f311132d775538c4a016b637b366d2a44", "rev": "b92d2db9c9f045e50e4c0e97e96b88ea86f43cd3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -462,11 +512,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762462052, "lastModified": 1766946335,
"narHash": "sha256-6roLYzcDf4V38RUMSqycsOwAnqfodL6BmhRkUtwIgdA=", "narHash": "sha256-MRD+Jr2bY11MzNDfenENhiK6pvN+nHygxdHoHbZ1HtE=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprgraphics", "repo": "hyprgraphics",
"rev": "ffc999d980c7b3bca85d3ebd0a9fbadf984a8162", "rev": "4af02a3925b454deb1c36603843da528b67ded6c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -485,6 +535,7 @@
"hyprlang": "hyprlang", "hyprlang": "hyprlang",
"hyprutils": "hyprutils", "hyprutils": "hyprutils",
"hyprwayland-scanner": "hyprwayland-scanner", "hyprwayland-scanner": "hyprwayland-scanner",
"hyprwire": "hyprwire",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
@ -493,11 +544,11 @@
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1763912895, "lastModified": 1768660279,
"narHash": "sha256-tTdCVeROhYTwV510tygS5AMutJGz5imM++P4+cXAy2w=", "narHash": "sha256-ak7mm3HiluwyMXHadoEzhrzzMGz2T1UkOVL0N0sbYUc=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "Hyprland", "repo": "Hyprland",
"rev": "2b0fd417d32278159d0ca1d23fb997588c37995b", "rev": "c99eb23869da2b80e3613a886aa1b99851367a3c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -539,11 +590,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762755186, "lastModified": 1767023960,
"narHash": "sha256-ZjjETUHtoEhVN7JI1Cbt3p/KcXpK8ZQaPHx7UkG1OgA=", "narHash": "sha256-R2HgtVS1G3KSIKAQ77aOZ+Q0HituOmPgXW9nBNkpp3Q=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprland-guiutils", "repo": "hyprland-guiutils",
"rev": "66356e20a8ed348aa49c1b9ceace786e224225b3", "rev": "c2e906261142f5dd1ee0bfc44abba23e2754c660",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -567,11 +618,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763856454, "lastModified": 1767723101,
"narHash": "sha256-jlP442tr1Q7BynLKEb+L5lyGViJF5qUioymBCccV7/Y=", "narHash": "sha256-jObY8O7OI+91hoE137APsDxm0235/Yx+HhFIip187zM=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprland-plugins", "repo": "hyprland-plugins",
"rev": "7ffc0b314e638ca4f8ce9cb1305951a47d107ade", "rev": "fef398ed5e4faf59bc43b915e46a75cfe8b16697",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -592,11 +643,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1759610243, "lastModified": 1765214753,
"narHash": "sha256-+KEVnKBe8wz+a6dTLq8YDcF3UrhQElwsYJaVaHXJtoI=", "narHash": "sha256-P9zdGXOzToJJgu5sVjv7oeOGPIIwrd9hAUAP3PsmBBs=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprland-protocols", "repo": "hyprland-protocols",
"rev": "bd153e76f751f150a09328dbdeb5e4fab9d23622", "rev": "3f3860b869014c00e8b9e0528c7b4ddc335c21ab",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -621,11 +672,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763254292, "lastModified": 1764612430,
"narHash": "sha256-JNgz3Fz2KMzkT7aR72wsgu/xNeJB//LSmdilh8Z/Zao=", "narHash": "sha256-54ltTSbI6W+qYGMchAgCR6QnC1kOdKXN6X6pJhOWxFg=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprlang", "repo": "hyprlang",
"rev": "deea98d5b61d066bdc7a68163edd2c4bd28d3a6b", "rev": "0d00dc118981531aa731150b6ea551ef037acddd",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -642,11 +693,11 @@
"systems": "systems_2" "systems": "systems_2"
}, },
"locked": { "locked": {
"lastModified": 1759033501, "lastModified": 1767871242,
"narHash": "sha256-QhcOFLJYC9CiSVPkci62ghMEAJChzl+L98To1pKvnRQ=", "narHash": "sha256-Gge7LY1lrPc2knDnyw8GBQ2sxRPzM7W2T6jNG1HY5bA=",
"owner": "KZDKM", "owner": "KZDKM",
"repo": "Hyprspace", "repo": "Hyprspace",
"rev": "e54884da1d6a1af76af9d053887bf3750dd554fd", "rev": "bcd969224ffeb6266c6618c192949461135eef38",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -694,11 +745,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762463729, "lastModified": 1764592794,
"narHash": "sha256-2fYkU/mdz8WKY3dkDPlE/j6hTxIwqultsx4gMMsMns0=", "narHash": "sha256-7CcO+wbTJ1L1NBQHierHzheQGPWwkIQug/w+fhTAVuU=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprtoolkit", "repo": "hyprtoolkit",
"rev": "88483bdee5329ec985f0c8f834c519cd18cfe532", "rev": "5cfe0743f0e608e1462972303778d8a0859ee63e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -719,11 +770,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763323331, "lastModified": 1766253372,
"narHash": "sha256-+Z0OfCo1MS8/aIutSAW5aJR9zTae1wz9kcJYMgpwN6M=", "narHash": "sha256-1+p4Kw8HdtMoFSmJtfdwjxM4bPxDK9yg27SlvUMpzWA=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprutils", "repo": "hyprutils",
"rev": "0c6411851cc779d551edc89b83966696201611aa", "rev": "51a4f93ce8572e7b12b7284eb9e6e8ebf16b4be9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -744,11 +795,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1755184602, "lastModified": 1763640274,
"narHash": "sha256-RCBQN8xuADB0LEgaKbfRqwm6CdyopE1xIEhNc67FAbw=", "narHash": "sha256-Uan1Nl9i4TF/kyFoHnTq1bd/rsWh4GAK/9/jDqLbY5A=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprwayland-scanner", "repo": "hyprwayland-scanner",
"rev": "b3b0f1f40ae09d4447c20608e5a4faf8bf3c492d", "rev": "f6cf414ca0e16a4d30198fd670ec86df3c89f671",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -757,46 +808,51 @@
"type": "github" "type": "github"
} }
}, },
"hyprwire": {
"inputs": {
"hyprutils": [
"hyprland",
"hyprutils"
],
"nixpkgs": [
"hyprland",
"nixpkgs"
],
"systems": [
"hyprland",
"systems"
]
},
"locked": {
"lastModified": 1767473322,
"narHash": "sha256-RGOeG+wQHeJ6BKcsSB8r0ZU77g9mDvoQzoTKj2dFHwA=",
"owner": "hyprwm",
"repo": "hyprwire",
"rev": "d5e7d6b49fe780353c1cf9a1cf39fa8970bd9d11",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "hyprwire",
"type": "github"
}
},
"impermanence": { "impermanence": {
"locked": {
"lastModified": 1737831083,
"narHash": "sha256-LJggUHbpyeDvNagTUrdhe/pRVp4pnS6wVKALS782gRI=",
"owner": "nix-community",
"repo": "impermanence",
"rev": "4b3e914cdf97a5b536a889e939fb2fd2b043a170",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "impermanence",
"type": "github"
}
},
"ixx": {
"inputs": { "inputs": {
"flake-utils": [ "home-manager": "home-manager_2",
"nixvim", "nixpkgs": "nixpkgs_2"
"nuschtosSearch",
"flake-utils"
],
"nixpkgs": [
"nixvim",
"nuschtosSearch",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1754860581, "lastModified": 1767822991,
"narHash": "sha256-EM0IE63OHxXCOpDHXaTyHIOk2cNvMCGPqLt/IdtVxgk=", "narHash": "sha256-iyrn9AcPZCoyxX4OT8eMkBsjG7SRUQXXS/V1JzxS7rA=",
"owner": "NuschtOS", "owner": "nix-community",
"repo": "ixx", "repo": "impermanence",
"rev": "babfe85a876162c4acc9ab6fb4483df88fa1f281", "rev": "82e5bc4508cab9e8d5a136626276eb5bbce5e9c5",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NuschtOS", "owner": "nix-community",
"ref": "v0.1.1", "repo": "impermanence",
"repo": "ixx",
"type": "github" "type": "github"
} }
}, },
@ -828,14 +884,15 @@
}, },
"naersk": { "naersk": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs_4" "fenix": "fenix",
"nixpkgs": "nixpkgs_5"
}, },
"locked": { "locked": {
"lastModified": 1733346208, "lastModified": 1763384566,
"narHash": "sha256-a4WZp1xQkrnA4BbnKrzJNr+dYoQr5Xneh2syJoddFyE=", "narHash": "sha256-r+wgI+WvNaSdxQmqaM58lVNvJYJ16zoq+tKN20cLst4=",
"owner": "nix-community", "owner": "nix-community",
"repo": "naersk", "repo": "naersk",
"rev": "378614f37a6bee5a3f2ef4f825a73d948d3ae921", "rev": "d4155d6ebb70fbe2314959842f744aa7cabbbf6a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -856,11 +913,11 @@
"xwayland-satellite-unstable": "xwayland-satellite-unstable" "xwayland-satellite-unstable": "xwayland-satellite-unstable"
}, },
"locked": { "locked": {
"lastModified": 1763992300, "lastModified": 1768669983,
"narHash": "sha256-1FJbVjlM8M9pahzcgrdVvQjNuVo3AMF+/XVUcFlnu8Q=", "narHash": "sha256-OGl180QZ1QIirJ7Cy9Tqrgn/XEglaKGBeb5pys/sS7Y=",
"owner": "sodiboo", "owner": "sodiboo",
"repo": "niri-flake", "repo": "niri-flake",
"rev": "69a8827e8c3eaf6dd59630b99ce0afdfb2d52521", "rev": "b90da048a6ae94b49ff489bacac4a49206670c18",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -889,11 +946,11 @@
"niri-unstable": { "niri-unstable": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1763986753, "lastModified": 1768653140,
"narHash": "sha256-eHxFROH247tQhvvxazYB4zIaeJgXaJhEoSohiRRRCJI=", "narHash": "sha256-8/u6/KHghsTHb3zmw8hYbwRQIp7UgMyQyqn4zVFN1S0=",
"owner": "YaLTeR", "owner": "YaLTeR",
"repo": "niri", "repo": "niri",
"rev": "9eeedff6295d17dd44594e2e8bcc1911f1535989", "rev": "3ccb06f5644c4bcdf74ad2e4d388a13ac65207af",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -906,14 +963,14 @@
"inputs": { "inputs": {
"flake-compat": "flake-compat_3", "flake-compat": "flake-compat_3",
"nix-index-database": "nix-index-database", "nix-index-database": "nix-index-database",
"nixpkgs": "nixpkgs_2" "nixpkgs": "nixpkgs_3"
}, },
"locked": { "locked": {
"lastModified": 1763199681, "lastModified": 1768475717,
"narHash": "sha256-3c5oZigLzzQp13TnjwkOAT0QDaJjShQciIHMa1PFR+c=", "narHash": "sha256-185VOlWF4K9gzwr7M56ArjqDt6beN/5TxCYLEyVPOcs=",
"owner": "thiagokokada", "owner": "thiagokokada",
"repo": "nix-alien", "repo": "nix-alien",
"rev": "f1e67b6763e47794f1819eb9d55d95b839484bad", "rev": "a579610c67dc946f39c2a64656699eb29eb2ffb5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -924,11 +981,11 @@
}, },
"nix-flatpak": { "nix-flatpak": {
"locked": { "locked": {
"lastModified": 1739444422, "lastModified": 1767983141,
"narHash": "sha256-iAVVHi7X3kWORftY+LVbRiStRnQEob2TULWyjMS6dWg=", "narHash": "sha256-7ZCulYUD9RmJIDULTRkGLSW1faMpDlPKcbWJLYHoXcs=",
"owner": "gmodena", "owner": "gmodena",
"repo": "nix-flatpak", "repo": "nix-flatpak",
"rev": "5e54c3ca05a7c7d968ae1ddeabe01d2a9bc1e177", "rev": "440818969ac2cbd77bfe025e884d0aa528991374",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -946,11 +1003,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762660502, "lastModified": 1765267181,
"narHash": "sha256-C9F1C31ys0V7mnp4EcDy7L1cLZw/sCTEXqqTtGnvu08=", "narHash": "sha256-d3NBA9zEtBu2JFMnTBqWj7Tmi7R5OikoU2ycrdhQEws=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nix-index-database", "repo": "nix-index-database",
"rev": "15c5451c63f4c612874a43846bfe3fa828b03eee", "rev": "82befcf7dc77c909b0f2a09f5da910ec95c5b78f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -977,27 +1034,27 @@
}, },
"nixpkgs-stable": { "nixpkgs-stable": {
"locked": { "locked": {
"lastModified": 1763622513, "lastModified": 1768484090,
"narHash": "sha256-1jQnuyu82FpiSxowrF/iFK6Toh9BYprfDqfs4BB+19M=", "narHash": "sha256-HBIfbB9MF9oqQTxs/W5440mzVaYDBWU9tuX95aZ8h64=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c58bc7f5459328e4afac201c5c4feb7c818d604b", "rev": "d4fa45dc2d4d32c10cb7c6b530a6b4b7d2429442",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixos-25.05", "ref": "nixos-25.11",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs-stable_2": { "nixpkgs-stable_2": {
"locked": { "locked": {
"lastModified": 1763622513, "lastModified": 1767313136,
"narHash": "sha256-1jQnuyu82FpiSxowrF/iFK6Toh9BYprfDqfs4BB+19M=", "narHash": "sha256-16KkgfdYqjaeRGBaYsNrhPRRENs0qzkQVUooNHtoy2w=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c58bc7f5459328e4afac201c5c4feb7c818d604b", "rev": "ac62194c3917d5f474c1a844b6fd6da2db95077d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1009,15 +1066,15 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1762977756, "lastModified": 1748026106,
"narHash": "sha256-4PqRErxfe+2toFJFgcRKZ0UI9NSIOJa+7RXVtBhy4KE=", "narHash": "sha256-6m1Y3/4pVw1RWTsrkAK2VMYSzG4MMIj7sqUy7o8th1o=",
"owner": "NixOS", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c5ae371f1a6a7fd27823bc500d9390b38c05fa55", "rev": "063f43f2dbdef86376cc29ad646c45c46e93234c",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "nixos",
"ref": "nixos-unstable", "ref": "nixos-unstable",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
@ -1025,11 +1082,27 @@
}, },
"nixpkgs_3": { "nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1763835633, "lastModified": 1768305791,
"narHash": "sha256-HzxeGVID5MChuCPESuC0dlQL1/scDKu+MmzoVBJxulM=", "narHash": "sha256-AIdl6WAn9aymeaH/NvBj0H9qM+XuAuYbGMZaP0zcXAQ=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "1412caf7bf9e660f2f962917c14b1ea1c3bc695e",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_4": {
"locked": {
"lastModified": 1768564909,
"narHash": "sha256-Kell/SpJYVkHWMvnhqJz/8DqQg2b6PguxVWOuadbHCc=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "050e09e091117c3d7328c7b2b7b577492c43c134", "rev": "e4bae1bd10c9c57b2cf517953ab70060a828ee6f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1039,20 +1112,23 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_4": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1734323986, "lastModified": 1752077645,
"narHash": "sha256-m/lh6hYMIWDYHCAsn81CDAiXoT3gmxXI9J987W5tZrE=", "narHash": "sha256-HM791ZQtXV93xtCY+ZxG1REzhQenSQO020cu6rHtAPk=",
"path": "/nix/store/wj2qla569hnxwqfc26imv5hqbxc1rc27-source", "owner": "NixOS",
"rev": "394571358ce82dff7411395829aa6a3aad45b907", "repo": "nixpkgs",
"type": "path" "rev": "be9e214982e20b8310878ac2baa063a961c1bdf6",
"type": "github"
}, },
"original": { "original": {
"id": "nixpkgs", "owner": "NixOS",
"type": "indirect" "ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
} }
}, },
"nixpkgs_5": { "nixpkgs_6": {
"locked": { "locked": {
"lastModified": 1750776420, "lastModified": 1750776420,
"narHash": "sha256-/CG+w0o0oJ5itVklOoLbdn2dGB0wbZVOoDm4np6w09A=", "narHash": "sha256-/CG+w0o0oJ5itVklOoLbdn2dGB0wbZVOoDm4np6w09A=",
@ -1074,15 +1150,14 @@
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
"nuschtosSearch": "nuschtosSearch", "systems": "systems_3"
"systems": "systems_4"
}, },
"locked": { "locked": {
"lastModified": 1763984728, "lastModified": 1768486009,
"narHash": "sha256-i07UsSg+kedev5Bh/p/ERG1xrbRivOztih8laHZR6W8=", "narHash": "sha256-I7ymDe6UQooHy9I9wrafKCCDnRbox/EMWAgJgpm7fGs=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixvim", "repo": "nixvim",
"rev": "3dc952d69cd38cdc3ad3ec7570fc4a1caed2bfea", "rev": "03a638205b5cb04ba9c2ed6c604e137b15f07fa1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1098,11 +1173,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763989982, "lastModified": 1768675584,
"narHash": "sha256-fUC13I7HJ6E0+KzkLMD34EpvKopqdwAk2jd31L65AyM=", "narHash": "sha256-YcQRhf1AQv0jHey5DMek5UQvkqSs+Q/yktXEm8ymaRA=",
"owner": "noctalia-dev", "owner": "noctalia-dev",
"repo": "noctalia-shell", "repo": "noctalia-shell",
"rev": "c7116827a4f58dc9f59f5e80f72466774a7c0ca3", "rev": "1d792b01b4cf2160000f7ef6e9388843cf5106d3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1114,18 +1189,18 @@
"nps": { "nps": {
"inputs": { "inputs": {
"flake-compat": "flake-compat_4", "flake-compat": "flake-compat_4",
"flake-utils": "flake-utils_2", "flake-utils": "flake-utils",
"naersk": "naersk", "naersk": "naersk",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
] ]
}, },
"locked": { "locked": {
"lastModified": 1738483270, "lastModified": 1765122297,
"narHash": "sha256-q/PkigsNAI7MCmeDFBMGuZJFXVL95pQCNOVhNvBH9dc=", "narHash": "sha256-kOVpn13lJYeO/99e39c0wbe7qcKHyMj5v4prBtZ3N7s=",
"owner": "OleMussmann", "owner": "OleMussmann",
"repo": "nps", "repo": "nps",
"rev": "2d005f22a52a0bda19d1afd8736ad5bfcb1d38cf", "rev": "e71c134e676588e5d8a7a849dc6664c64e7913ab",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1142,11 +1217,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763994422, "lastModified": 1768671781,
"narHash": "sha256-Enjm3sjc2HSfPNjQ4RQ0QiymvMbsMHiFP4RyHgrwnmc=", "narHash": "sha256-kW4mzy7wzuW+od/o3Gfg5ONO7nb7U7uUxvEkAyFd9cY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NUR", "repo": "NUR",
"rev": "6197606a8ff0d9cb2e35b09a260c163786cdb837", "rev": "1e87169b18457a22e6ef372789e48cd86b81e2ba",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1155,29 +1230,6 @@
"type": "github" "type": "github"
} }
}, },
"nuschtosSearch": {
"inputs": {
"flake-utils": "flake-utils",
"ixx": "ixx",
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1761730856,
"narHash": "sha256-t1i5p/vSWwueZSC0Z2BImxx3BjoUDNKyC2mk24krcMY=",
"owner": "NuschtOS",
"repo": "search",
"rev": "e29de6db0cb3182e9aee75a3b1fd1919d995d85b",
"type": "github"
},
"original": {
"owner": "NuschtOS",
"repo": "search",
"type": "github"
}
},
"pre-commit-hooks": { "pre-commit-hooks": {
"inputs": { "inputs": {
"flake-compat": "flake-compat", "flake-compat": "flake-compat",
@ -1188,11 +1240,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763319842, "lastModified": 1767281941,
"narHash": "sha256-YG19IyrTdnVn0l3DvcUYm85u3PaqBt6tI6VvolcuHnA=", "narHash": "sha256-6MkqajPICgugsuZ92OMoQcgSHnD6sJHwk8AxvMcIgTE=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "7275fa67fbbb75891c16d9dee7d88e58aea2d761", "rev": "f0927703b7b1c8d97511c4116eb9b4ec6645a0fa",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1230,15 +1282,37 @@
"quickshell": { "quickshell": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"dank-material-shell",
"nixpkgs" "nixpkgs"
] ]
}, },
"locked": { "locked": {
"lastModified": 1763629934, "lastModified": 1766725085,
"narHash": "sha256-jWz10RbNAyylJbH4cUTLS/CsDjkd8gxfT8OsIgQIgEg=", "narHash": "sha256-O2aMFdDUYJazFrlwL7aSIHbUSEm3ADVZjmf41uBJfHs=",
"ref": "refs/heads/master",
"rev": "41828c4180fb921df7992a5405f5ff05d2ac2fff",
"revCount": 715,
"type": "git",
"url": "https://git.outfoxxed.me/quickshell/quickshell"
},
"original": {
"rev": "41828c4180fb921df7992a5405f5ff05d2ac2fff",
"type": "git",
"url": "https://git.outfoxxed.me/quickshell/quickshell"
}
},
"quickshell_2": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1768549203,
"narHash": "sha256-DxN7v8g8DO8gGJmgBJMo3fsSR3HEs+DFCXeKeHq61zA=",
"owner": "quickshell-mirror", "owner": "quickshell-mirror",
"repo": "quickshell", "repo": "quickshell",
"rev": "ed036d514b0fdbce03158a0b331305be166f4555", "rev": "d03c59768c680f052dff6e7a7918bbf990b0f743",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1250,6 +1324,7 @@
"root": { "root": {
"inputs": { "inputs": {
"caelestia": "caelestia", "caelestia": "caelestia",
"dank-material-shell": "dank-material-shell",
"devshell": "devshell", "devshell": "devshell",
"disko": "disko", "disko": "disko",
"hardware": "hardware", "hardware": "hardware",
@ -1263,18 +1338,35 @@
"niri": "niri", "niri": "niri",
"nix-alien": "nix-alien", "nix-alien": "nix-alien",
"nix-flatpak": "nix-flatpak", "nix-flatpak": "nix-flatpak",
"nixpkgs": "nixpkgs_3", "nixpkgs": "nixpkgs_4",
"nixpkgs-stable": "nixpkgs-stable_2", "nixpkgs-stable": "nixpkgs-stable_2",
"nixvim": "nixvim", "nixvim": "nixvim",
"noctalia": "noctalia", "noctalia": "noctalia",
"nps": "nps", "nps": "nps",
"nur": "nur", "nur": "nur",
"quickshell": "quickshell", "quickshell": "quickshell_2",
"sops-nix": "sops-nix", "sops-nix": "sops-nix",
"textfox": "textfox", "textfox": "textfox",
"waifu-cursors": "waifu-cursors" "waifu-cursors": "waifu-cursors"
} }
}, },
"rust-analyzer-src": {
"flake": false,
"locked": {
"lastModified": 1752428706,
"narHash": "sha256-EJcdxw3aXfP8Ex1Nm3s0awyH9egQvB2Gu+QEnJn2Sfg=",
"owner": "rust-lang",
"repo": "rust-analyzer",
"rev": "591e3b7624be97e4443ea7b5542c191311aa141d",
"type": "github"
},
"original": {
"owner": "rust-lang",
"ref": "nightly",
"repo": "rust-analyzer",
"type": "github"
}
},
"rust-overlay": { "rust-overlay": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -1303,11 +1395,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763870012, "lastModified": 1768481291,
"narHash": "sha256-AHxFfIu73SpNLAOZbu/AvpLhZ/Szhx6gRPj9ufZtaZA=", "narHash": "sha256-NjKtkJraCZEnLHAJxLTI+BfdU//9coAz9p5TqveZwPU=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "4e7d74d92398b933cc0e0e25af5b0836efcfdde3", "rev": "e085e303dfcce21adcb5fec535d65aacb066f101",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1384,11 +1476,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763730250, "lastModified": 1767427579,
"narHash": "sha256-OPlKRltdA2iIm70Nw/kWt5FnwxR1xmxC44tqGUX7Hro=", "narHash": "sha256-q9aFfPohbMS6ehkQHReMeIjtld0wGiUsxlHoPRRvsp4=",
"owner": "adriankarlen", "owner": "adriankarlen",
"repo": "textfox", "repo": "textfox",
"rev": "2f385d16abab56984b874627ca0dd4f3ca7ae4ac", "rev": "29c31979e5583d9367247f0af8675f88482ff481",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1399,7 +1491,7 @@
}, },
"waifu-cursors": { "waifu-cursors": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs_5" "nixpkgs": "nixpkgs_6"
}, },
"locked": { "locked": {
"lastModified": 1755614728, "lastModified": 1755614728,
@ -1476,11 +1568,11 @@
"xwayland-satellite-unstable": { "xwayland-satellite-unstable": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1763704521, "lastModified": 1768106915,
"narHash": "sha256-ceYEV6PnvUN8Zixao4gpPuN+VT3B0SlAXKuPNHZhqUY=", "narHash": "sha256-HlLo9zH4ULRXlmlIK948cHmdVhxyHgTHxGaoCRlW4k8=",
"owner": "Supreeeme", "owner": "Supreeeme",
"repo": "xwayland-satellite", "repo": "xwayland-satellite",
"rev": "f379ff5722a821212eb59ada9cf8e51cb3654aad", "rev": "72245e108f3b03c3c4474d2de9de2d1830849603",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@ -77,9 +77,9 @@
# dgop.inputs.nixpkgs.follows = "nixpkgs"; # dgop.inputs.nixpkgs.follows = "nixpkgs";
# dms-cli.url = "github:AvengeMedia/danklinux"; # dms-cli.url = "github:AvengeMedia/danklinux";
# dms-cli.inputs.nixpkgs.follows = "nixpkgs"; # dms-cli.inputs.nixpkgs.follows = "nixpkgs";
# dankMaterialShell.url = "github:AvengeMedia/DankMaterialShell"; dank-material-shell.url = "github:AvengeMedia/DankMaterialShell";
# dankMaterialShell.inputs.nixpkgs.follows = "nixpkgs"; dank-material-shell.inputs.nixpkgs.follows = "nixpkgs";
# dankMaterialShell.inputs.dgop.follows = "dgop"; # dank-material-shell.inputs.dgop.follows = "dgop";
# Hyprland (use flake so plugins are not built from source) # Hyprland (use flake so plugins are not built from source)
hyprland.url = "github:hyprwm/Hyprland"; hyprland.url = "github:hyprwm/Hyprland";

View File

@ -15,7 +15,7 @@
headless, headless,
... ...
}: let }: let
inherit (config.modules) color; inherit (config.homemodules) color;
in in
# This is a HM module. # This is a HM module.
# Because no imports/options/config is defined explicitly, everything is treated as config: # Because no imports/options/config is defined explicitly, everything is treated as config:
@ -25,16 +25,6 @@ in
# Every module (/function) is called with the same arguments as this module. # Every module (/function) is called with the same arguments as this module.
# Arguments with matching names are "plugged in" into the right slots, # Arguments with matching names are "plugged in" into the right slots,
# the case of different arity is handled by always providing ellipses (...) in module definitions. # the case of different arity is handled by always providing ellipses (...) in module definitions.
imports = [
# Import the host-specific HM config.
# It will be merged with the main config (like all different modules).
# Settings regarding a specific host (e.g. desktop or laptop)
# should only be made in the host-specific config.
./${hostname}
# Import all of my custom HM modules.
../modules
];
# Enable and configure my custom HM modules. # Enable and configure my custom HM modules.
paths = rec { paths = rec {
@ -42,7 +32,7 @@ in
dotfiles = "${nixflake}/config"; dotfiles = "${nixflake}/config";
}; };
modules = { homemodules = {
beets.enable = !headless; beets.enable = !headless;
btop.enable = true; btop.enable = true;
@ -98,8 +88,8 @@ in
}; };
hyprland = { hyprland = {
enable = !headless; enable = nixosConfig.programs.hyprland.enable;
dunst.enable = !config.modules.hyprpanel.enable; # Disable for hyprpanel dunst.enable = !config.homemodules.hyprpanel.enable; # Disable for hyprpanel
bars.enable = false; bars.enable = false;
dynamicCursor.enable = false; dynamicCursor.enable = false;
trails.enable = true; trails.enable = true;
@ -112,14 +102,14 @@ in
bindings = lib.mergeAttrsList [ bindings = lib.mergeAttrsList [
# Use Rofi if we don't have caelestia # Use Rofi if we don't have caelestia
(lib.optionalAttrs (!config.modules.hyprland.caelestia.enable) { (lib.optionalAttrs (!config.homemodules.hyprland.caelestia.enable) {
"$mainMod, a" = ["exec, rofi -drun-show-actions -show drun"]; "$mainMod, a" = ["exec, rofi -drun-show-actions -show drun"];
"$mainMod, c" = ["exec, clipman pick --tool=rofi"]; "$mainMod, c" = ["exec, clipman pick --tool=rofi"];
"$mainMod SHIFT, l" = ["exec, loginctl lock-session"]; "$mainMod SHIFT, l" = ["exec, loginctl lock-session"];
}) })
# Caelestia # Caelestia
(lib.optionalAttrs (config.modules.hyprland.caelestia.enable) { (lib.optionalAttrs (config.homemodules.hyprland.caelestia.enable) {
"$mainMod, a" = ["exec, caelestia shell drawers toggle launcher"]; "$mainMod, a" = ["exec, caelestia shell drawers toggle launcher"];
# "$mainMod, c" = ["exec, caelestia clipboard"]; # "$mainMod, c" = ["exec, caelestia clipboard"];
"$mainMod SHIFT, l" = ["exec, caelestia shell lock lock"]; "$mainMod SHIFT, l" = ["exec, caelestia shell lock lock"];
@ -225,8 +215,8 @@ in
windowrules = [ windowrules = [
# Fix jetbrains tooltip flicker # Fix jetbrains tooltip flicker
"float,class:^(jetbrains-.*)$,title:^(win[0-9]+)$" "match:class ^(jetbrains-.*)$, match:title ^(win[0-9]+)$, float 1"
"nofocus,class:^(jetbrains-.*)$,title:^(win[0-9]+)$" "match:class ^(jetbrains-.*)$, match:title ^(win[0-9]+)$, no_initial_focus 1"
]; ];
workspacerules = { workspacerules = {
@ -291,7 +281,7 @@ in
neovide = !headless; neovide = !headless;
}; };
niri.enable = !headless; niri.enable = nixosConfig.programs.niri.enable;
nnn.enable = false; # Use yazi nnn.enable = false; # Use yazi
qutebrowser.enable = !headless; qutebrowser.enable = !headless;
rmpc.enable = !headless; rmpc.enable = !headless;
@ -318,10 +308,10 @@ in
# as nixosConfig won't be available otherwise. # as nixosConfig won't be available otherwise.
xdg = { xdg = {
enable = true; # This only does xdg path management enable = true; # This only does xdg path management
mime.enable = nixosConfig.modules.mime.enable; mime.enable = nixosConfig.systemmodules.mime.enable;
mimeApps = { mimeApps = {
enable = nixosConfig.modules.mime.enable; enable = nixosConfig.systemmodules.mime.enable;
associations.added = nixosConfig.xdg.mime.addedAssociations; associations.added = nixosConfig.xdg.mime.addedAssociations;
associations.removed = nixosConfig.xdg.mime.removedAssociations; associations.removed = nixosConfig.xdg.mime.removedAssociations;
@ -392,7 +382,7 @@ in
config.lib.file.mkOutOfStoreSymlink config.lib.file.mkOutOfStoreSymlink
nixosConfig.sops.templates."nix.conf".path; nixosConfig.sops.templates."nix.conf".path;
} }
(lib.mkIf nixosConfig.modules.desktopportal.termfilechooser.enable { (lib.mkIf nixosConfig.systemmodules.desktopportal.termfilechooser.enable {
".config/xdg-desktop-portal-termfilechooser/config".text = '' ".config/xdg-desktop-portal-termfilechooser/config".text = ''
[filechooser] [filechooser]
cmd=${pkgs.xdg-desktop-portal-termfilechooser}/share/xdg-desktop-portal-termfilechooser/yazi-wrapper.sh cmd=${pkgs.xdg-desktop-portal-termfilechooser}/share/xdg-desktop-portal-termfilechooser/yazi-wrapper.sh
@ -402,7 +392,7 @@ in
save_mode = last save_mode = last
''; '';
}) })
(lib.mkIf config.modules.git.enable { (lib.mkIf config.homemodules.git.enable {
".ssh/allowed_signers".text = "* ${publicKeys.${username}.ssh}"; ".ssh/allowed_signers".text = "* ${publicKeys.${username}.ssh}";
}) })
(lib.mkIf config.programs.navi.enable { (lib.mkIf config.programs.navi.enable {
@ -487,6 +477,7 @@ in
lazyjournal # Journalctl viewer lazyjournal # Journalctl viewer
systemctl-tui systemctl-tui
restic # Backups restic # Backups
gnumake
# Hardware/Software info # Hardware/Software info
pciutils # lspci pciutils # lspci
@ -526,7 +517,7 @@ in
gping # ping with graph gping # ping with graph
curlie # curl a'la httpie curlie # curl a'la httpie
wget # download that shit wget # download that shit
dogdns # dns client doggo # dns client
rsync # cp on steroids rsync # cp on steroids
rclone # Rsync for cloud rclone # Rsync for cloud
httpie # Cool http client httpie # Cool http client
@ -569,11 +560,6 @@ in
audacity audacity
ferdium ferdium
gparted gparted
tidal-hifi
tidal-dl-ng
picard
handbrake
teamspeak6-client
# Office # Office
kdePackages.wacomtablet # For xournalpp/krita kdePackages.wacomtablet # For xournalpp/krita
@ -654,7 +640,7 @@ in
eza = { eza = {
enable = true; enable = true;
enableFishIntegration = config.modules.fish.enable; enableFishIntegration = config.homemodules.fish.enable;
}; };
# TODO: Module # TODO: Module
@ -811,7 +797,7 @@ in
fzf = { fzf = {
enable = true; enable = true;
enableFishIntegration = config.modules.fish.enable; enableFishIntegration = config.homemodules.fish.enable;
}; };
imv = { imv = {
@ -829,7 +815,7 @@ in
keychain = { keychain = {
enable = true; enable = true;
enableFishIntegration = config.modules.fish.enable; enableFishIntegration = config.homemodules.fish.enable;
enableXsessionIntegration = !headless; enableXsessionIntegration = !headless;
keys = ["id_ed25519"]; keys = ["id_ed25519"];
}; };
@ -843,12 +829,12 @@ in
navi = { navi = {
enable = true; enable = true;
enableFishIntegration = config.modules.fish.enable; enableFishIntegration = config.homemodules.fish.enable;
}; };
nix-index = { nix-index = {
enable = true; enable = true;
enableFishIntegration = config.modules.fish.enable; enableFishIntegration = config.homemodules.fish.enable;
}; };
nushell.enable = false; nushell.enable = false;
@ -940,7 +926,7 @@ in
zoxide = { zoxide = {
enable = true; enable = true;
enableFishIntegration = config.modules.fish.enable; enableFishIntegration = config.homemodules.fish.enable;
}; };
}; };

View File

@ -8,12 +8,8 @@
username, username,
... ...
}: { }: {
imports = [
../../modules
];
config = { config = {
modules = { homemodules = {
btop.cuda = true; btop.cuda = true;
# This has been relocated here from the default config, # This has been relocated here from the default config,
@ -123,9 +119,10 @@
# jetbrains.idea-ultimate # jetbrains.idea-ultimate
# jetbrains.webstorm # jetbrains.webstorm
# jetbrains.rider # jetbrains.rider
zed-editor
vscode
# Unity Stuff # Unity Stuff
# TODO: Unity module
# unityhub # unityhub
# rider-unity # rider-unity
# dotnetCore # dotnetCore
@ -139,9 +136,15 @@
krita krita
makemkv makemkv
lrcget lrcget
msty # msty
# jellyfin-media-player # CVE, can't install # jellyfin-media-player # CVE, can't install
jellyfin-desktop
jellyfin-mpv-shim jellyfin-mpv-shim
# tidal-hifi
# tidal-dl-ng # TODO: Borked
picard
handbrake
teamspeak6-client
steam-devices-udev-rules steam-devices-udev-rules
]; ];
@ -177,7 +180,7 @@
services = { services = {
ollama = { ollama = {
enable = true; enable = false;
acceleration = "cuda"; acceleration = "cuda";
# home = "/var/lib/ollama"; # home = "/var/lib/ollama";

View File

@ -1,11 +1,7 @@
# Here goes the stuff that will only be enabled on the laptop # Here goes the stuff that will only be enabled on the laptop
{...}: { {...}: {
imports = [
../../modules
];
config = { config = {
modules = { homemodules = {
hyprland = { hyprland = {
keyboard = { keyboard = {
layout = "us"; layout = "us";

View File

@ -6,12 +6,8 @@
username, username,
... ...
}: { }: {
imports = [
../../modules
];
config = { config = {
modules = { homemodules = {
btop.cuda = true; btop.cuda = true;
}; };

View File

@ -6,10 +6,6 @@
username, username,
... ...
}: { }: {
imports = [
../../modules
];
config = { config = {
home.packages = with pkgs; [ home.packages = with pkgs; [
docker-compose docker-compose

View File

@ -0,0 +1,14 @@
{
config,
nixosConfig,
lib,
mylib,
pkgs,
...
}: let
inherit (config.homemodules) TEMPLATE color;
in {
options.homemodules.TEMPLATE = import ./options.nix {inherit lib mylib;};
config = lib.mkIf TEMPLATE.enable {};
}

View File

@ -6,9 +6,9 @@
pkgs, pkgs,
... ...
}: let }: let
inherit (config.modules) ags; inherit (config.homemodules) ags;
in { in {
options.modules.ags = import ./options.nix {inherit lib mylib;}; options.homemodules.ags = import ./options.nix {inherit lib mylib;};
config = lib.mkIf ags.enable { config = lib.mkIf ags.enable {
programs.ags = { programs.ags = {
@ -68,7 +68,7 @@ in {
# ".config/ags".source = config.lib.file.mkOutOfStoreSymlink "${config.paths.nixflake}/home/modules/ags/config"; # ".config/ags".source = config.lib.file.mkOutOfStoreSymlink "${config.paths.nixflake}/home/modules/ags/config";
# NOTE: Don't symlink to ~/.config/ags/colors.scss, since that is already used by configDir # NOTE: Don't symlink to ~/.config/ags/colors.scss, since that is already used by configDir
".config/_colors.scss".text = with config.modules.color.hex; '' ".config/_colors.scss".text = with config.homemodules.color.hex; ''
$dark-rosewater: #${dark.rosewater}; $dark-rosewater: #${dark.rosewater};
$dark-flamingo: #${dark.flamingo}; $dark-flamingo: #${dark.flamingo};
$dark-pink: #${dark.pink}; $dark-pink: #${dark.pink};

View File

@ -5,9 +5,9 @@
... ...
}: }:
with mylib.modules; let with mylib.modules; let
cfg = config.modules.alacritty; cfg = config.homemodules.alacritty;
in { in {
options.modules.alacritty = import ./options.nix {inherit lib mylib;}; options.homemodules.alacritty = import ./options.nix {inherit lib mylib;};
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.alacritty = { programs.alacritty = {

View File

@ -8,14 +8,14 @@
}: }:
with lib; with lib;
with mylib.modules; let with mylib.modules; let
cfg = config.modules.audio; cfg = config.homemodules.audio;
cfgfp = config.modules.flatpak; cfgfp = config.homemodules.flatpak;
in { in {
imports = [ imports = [
../flatpak ../flatpak
]; ];
options.modules.audio = import ./options.nix {inherit lib mylib;}; options.homemodules.audio = import ./options.nix {inherit lib mylib;};
config = mkIf cfg.enable { config = mkIf cfg.enable {
assertions = [ assertions = [

View File

@ -12,13 +12,13 @@ with lib;
with mylib.modules; let with mylib.modules; let
# This is the current state of the option that this module defines # This is the current state of the option that this module defines
# We use it to determine if the config should be changed below # We use it to determine if the config should be changed below
cfg = config.modules.emacs; cfg = config.homemodules.emacs;
in { in {
imports = []; imports = [];
# Options is a vector of options this module defines # Options is a vector of options this module defines
# This module defines only the "emacs" option and suboptions "enable" and "doom" # This module defines only the "emacs" option and suboptions "enable" and "doom"
options.modules.emacs = import ./options.nix {inherit lib mylib;}; options.homemodules.emacs = import ./options.nix {inherit lib mylib;};
# Config is the merged set of all module configurations # Config is the merged set of all module configurations
# Here we define what happens to the config if the module is active (but only if the module is active) # Here we define what happens to the config if the module is active (but only if the module is active)

View File

@ -13,9 +13,9 @@
}: }:
with lib; with lib;
with mylib.modules; let with mylib.modules; let
cfg = config.modules.email; cfg = config.homemodules.email;
in { in {
options.modules.email = import ./options.nix {inherit lib mylib;}; options.homemodules.email = import ./options.nix {inherit lib mylib;};
# TODO: Add Maildir to nextcloud sync # TODO: Add Maildir to nextcloud sync
config = mkIf cfg.enable { config = mkIf cfg.enable {

View File

@ -12,9 +12,9 @@ with mylib.modules;
# It is important that every flatpak interaction is handled through this module # It is important that every flatpak interaction is handled through this module
# to prevent that anything is removed by a module although it is required by another one # to prevent that anything is removed by a module although it is required by another one
let let
cfg = config.modules.flatpak; cfg = config.homemodules.flatpak;
in { in {
options.modules.flatpak = import ./options.nix {inherit lib mylib;}; options.homemodules.flatpak = import ./options.nix {inherit lib mylib;};
config = mkIf cfg.enable { config = mkIf cfg.enable {
assertions = [ assertions = [

View File

@ -7,11 +7,11 @@
}: }:
with lib; with lib;
with mylib.modules; let with mylib.modules; let
cfg = config.modules.gaming; cfg = config.homemodules.gaming;
cfgfp = config.modules.flatpak; cfgfp = config.homemodules.flatpak;
in { in {
imports = [ imports = [
# NOTE: I don't know if this is the right approach or if I should use config.modules.flatpak # NOTE: I don't know if this is the right approach or if I should use config.homemodules.flatpak
../flatpak ../flatpak
]; ];
@ -19,7 +19,7 @@ in {
# TODO: SteamTinkerLaunch option # TODO: SteamTinkerLaunch option
# TODO: Dolphin + SteamRomManager option # TODO: Dolphin + SteamRomManager option
options.modules.gaming = import ./options.nix {inherit lib mylib;}; options.homemodules.gaming = import ./options.nix {inherit lib mylib;};
config = mkIf cfg.enable { config = mkIf cfg.enable {
assertions = [ assertions = [

View File

@ -10,9 +10,9 @@
}: }:
with lib; with lib;
with mylib.modules; let with mylib.modules; let
cfg = config.modules.helix; cfg = config.homemodules.helix;
in { in {
options.modules.helix = import ./options.nix {inherit lib mylib;}; options.homemodules.helix = import ./options.nix {inherit lib mylib;};
config = mkIf cfg.enable { config = mkIf cfg.enable {
home.sessionVariables = { home.sessionVariables = {

View File

@ -9,9 +9,9 @@
# TODO: Remove this module, put protonmail into the email module # TODO: Remove this module, put protonmail into the email module
with lib; with lib;
with mylib.modules; let with mylib.modules; let
cfg = config.modules.misc; cfg = config.homemodules.misc;
in { in {
options.modules.misc = import ./options.nix {inherit lib mylib;}; options.homemodules.misc = import ./options.nix {inherit lib mylib;};
config = mkIf cfg.enable { config = mkIf cfg.enable {
home.packages = with pkgs; home.packages = with pkgs;

View File

@ -12,9 +12,9 @@
}: }:
with lib; with lib;
with mylib.modules; let with mylib.modules; let
cfg = config.modules.nextcloud; cfg = config.homemodules.nextcloud;
in { in {
options.modules.nextcloud = import ./options.nix {inherit lib mylib;}; options.homemodules.nextcloud = import ./options.nix {inherit lib mylib;};
config = mkIf cfg.enable { config = mkIf cfg.enable {
assertions = [ assertions = [

View File

@ -8,9 +8,9 @@
}: }:
with lib; with lib;
with mylib.modules; let with mylib.modules; let
cfg = config.modules.ranger; cfg = config.homemodules.ranger;
in { in {
options.modules.ranger = import ./options.nix {inherit lib mylib;}; options.homemodules.ranger = import ./options.nix {inherit lib mylib;};
config = mkIf cfg.enable { config = mkIf cfg.enable {
home.packages = with pkgs; home.packages = with pkgs;

View File

@ -9,9 +9,9 @@
}: }:
with lib; with lib;
with mylib.modules; let with mylib.modules; let
cfg = config.modules.vscode; cfg = config.homemodules.vscode;
in { in {
options.modules.vscode = import ./options.nix {inherit lib mylib;}; options.homemodules.vscode = import ./options.nix {inherit lib mylib;};
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.vscode = { programs.vscode = {

View File

@ -6,9 +6,9 @@
pkgs, pkgs,
... ...
}: let }: let
inherit (config.modules) beets; inherit (config.homemodules) beets;
in { in {
options.modules.beets = import ./options.nix {inherit lib mylib;}; options.homemodules.beets = import ./options.nix {inherit lib mylib;};
config = lib.mkIf beets.enable { config = lib.mkIf beets.enable {
programs.beets = { programs.beets = {

View File

@ -6,9 +6,9 @@
pkgs, pkgs,
... ...
}: let }: let
inherit (config.modules) btop color; inherit (config.homemodules) btop color;
in { in {
options.modules.btop = import ./options.nix {inherit lib mylib;}; options.homemodules.btop = import ./options.nix {inherit lib mylib;};
config = lib.mkIf btop.enable { config = lib.mkIf btop.enable {
programs.btop = { programs.btop = {

View File

@ -5,9 +5,9 @@
pkgs, pkgs,
... ...
}: let }: let
inherit (config.modules) chromium; inherit (config.homemodules) chromium;
in { in {
options.modules.chromium = import ./options.nix {inherit lib mylib;}; options.homemodules.chromium = import ./options.nix {inherit lib mylib;};
config = lib.mkIf chromium.enable { config = lib.mkIf chromium.enable {
home.packages = with pkgs; home.packages = with pkgs;

View File

@ -5,9 +5,9 @@
pkgs, pkgs,
... ...
}: let }: let
inherit (config.modules) color; inherit (config.homemodules) color;
in { in {
options.modules.color = import ./options.nix {inherit lib mylib pkgs;}; options.homemodules.color = import ./options.nix {inherit lib mylib pkgs;};
config = { config = {
home.packages = let home.packages = let
@ -59,7 +59,7 @@ in {
++ (lib.optionals color.installPackages color.extraPackages); ++ (lib.optionals color.installPackages color.extraPackages);
# This module sets its own options to the values specified in a colorscheme file. # This module sets its own options to the values specified in a colorscheme file.
modules.color = let homemodules.color = let
scheme = import ./schemes/${color.scheme}.nix; scheme = import ./schemes/${color.scheme}.nix;
# Add the aliases # Add the aliases

View File

@ -35,8 +35,8 @@
# inputs.niri.homeModules.niri # Imported by system module # inputs.niri.homeModules.niri # Imported by system module
inputs.noctalia.homeModules.default inputs.noctalia.homeModules.default
inputs.caelestia.homeManagerModules.default inputs.caelestia.homeManagerModules.default
# inputs.dankMaterialShell.homeModules.dankMaterialShell.default inputs.dank-material-shell.homeModules.dank-material-shell
# inputs.dankMaterialShell.homeModules.dankMaterialShell.niri inputs.dank-material-shell.homeModules.niri
# NOTE: Do NOT use this, use the system module (the HM module has to rely on fuse) # NOTE: Do NOT use this, use the system module (the HM module has to rely on fuse)
# inputs.impermanence.homeManagerModules.impermanence # inputs.impermanence.homeManagerModules.impermanence

View File

@ -5,9 +5,9 @@
pkgs, pkgs,
... ...
}: let }: let
inherit (config.modules) docs; inherit (config.homemodules) docs;
in { in {
options.modules.docs = import ./options.nix {inherit lib mylib;}; options.homemodules.docs = import ./options.nix {inherit lib mylib;};
config = lib.mkIf docs.enable { config = lib.mkIf docs.enable {
home = { home = {

View File

@ -5,9 +5,9 @@
pkgs, pkgs,
... ...
}: let }: let
inherit (config.modules) fcitx; inherit (config.homemodules) fcitx;
in { in {
options.modules.fcitx = import ./options.nix {inherit lib mylib;}; options.homemodules.fcitx = import ./options.nix {inherit lib mylib;};
config = lib.mkIf fcitx.enable { config = lib.mkIf fcitx.enable {
i18n.inputMethod = { i18n.inputMethod = {

View File

@ -6,15 +6,15 @@
hostname, hostname,
... ...
}: let }: let
inherit (config.modules) firefox color; inherit (config.homemodules) firefox color;
in { in {
options.modules.firefox = import ./options.nix {inherit lib mylib;}; options.homemodules.firefox = import ./options.nix {inherit lib mylib;};
config = lib.mkIf firefox.enable { config = lib.mkIf firefox.enable {
textfox = { textfox = {
enable = firefox.textfox; enable = firefox.textfox;
useLegacyExtensions = false; useLegacyExtensions = false;
profile = "default"; profiles = ["default"];
config = { config = {
background = { background = {

View File

@ -7,9 +7,9 @@
nixosConfig, nixosConfig,
... ...
}: let }: let
inherit (config.modules) fish color; inherit (config.homemodules) fish color;
in { in {
options.modules.fish = import ./options.nix {inherit lib mylib;}; options.homemodules.fish = import ./options.nix {inherit lib mylib;};
config = lib.mkIf fish.enable { config = lib.mkIf fish.enable {
# https://github.com/catppuccin/fish/blob/main/themes/Catppuccin%20Mocha.theme # https://github.com/catppuccin/fish/blob/main/themes/Catppuccin%20Mocha.theme
@ -47,7 +47,7 @@ in {
generateCompletions = nixosConfig.programs.fish.generateCompletions; generateCompletions = nixosConfig.programs.fish.generateCompletions;
functions = lib.mergeAttrsList [ functions = lib.mergeAttrsList [
(lib.optionalAttrs config.modules.nnn.enable { (lib.optionalAttrs config.homemodules.nnn.enable {
nnncd = { nnncd = {
wraps = "nnn"; wraps = "nnn";
description = "support nnn quit and change directory"; description = "support nnn quit and change directory";
@ -101,7 +101,7 @@ in {
# Same as above but with args for bat # Same as above but with args for bat
batifyWithArgs = command: args: command + (lib.optionalString config.programs.bat.enable (" | bat " + args)); batifyWithArgs = command: args: command + (lib.optionalString config.programs.bat.enable (" | bat " + args));
# These can be used for my config.modules and for HM config.programs, # These can be used for my config.homemodules and for HM config.programs,
# as both of these add the package to home.packages # as both of these add the package to home.packages
hasHomePackage = package: (mylib.modules.contains config.home.packages package); hasHomePackage = package: (mylib.modules.contains config.home.packages package);
@ -167,15 +167,15 @@ in {
gcl = "git clone"; gcl = "git clone";
}) })
(lib.optionalAttrs config.modules.kitty.enable {ssh = "kitty +kitten ssh";}) (lib.optionalAttrs config.homemodules.kitty.enable {ssh = "kitty +kitten ssh";})
(abbrify pkgs.lazygit {lg = "lazygit";}) (abbrify pkgs.lazygit {lg = "lazygit";})
(abbrify pkgs.nix-search-tv {search = "nix-search-tv print --indexes 'nixos,home-manager,nixpkgs,nur' | fzf --preview 'nix-search-tv preview {}' --scheme history";}) (abbrify pkgs.nix-search-tv {search = "nix-search-tv print --indexes 'nixos,home-manager,nixpkgs,nur' | fzf --preview 'nix-search-tv preview {}' --scheme history";})
# Doesn't work with abbrify because I have nnn.override... # Doesn't work with abbrify because I have nnn.override...
(lib.optionalAttrs config.modules.nnn.enable {n = "nnncd -a";}) (lib.optionalAttrs config.homemodules.nnn.enable {n = "nnncd -a";})
(lib.optionalAttrs config.modules.nnn.enable {np = "nnncd -a -P p";}) (lib.optionalAttrs config.homemodules.nnn.enable {np = "nnncd -a -P p";})
(abbrify pkgs.ranger {r = "ranger --choosedir=$HOME/.rangerdir; set LASTDIR (cat $HOME/.rangerdir); cd $LASTDIR";}) (abbrify pkgs.ranger {r = "ranger --choosedir=$HOME/.rangerdir; set LASTDIR (cat $HOME/.rangerdir); cd $LASTDIR";})
@ -184,7 +184,7 @@ in {
# grep = rg; # grep = rg;
}) })
(lib.optionalAttrs config.modules.rmpc.enable {r = "rcmp";}) (lib.optionalAttrs config.homemodules.rmpc.enable {r = "rcmp";})
(abbrify pkgs.rsync rec { (abbrify pkgs.rsync rec {
rsync = "rsync -ahv --inplace --partial --info=progress2"; rsync = "rsync -ahv --inplace --partial --info=progress2";
@ -197,7 +197,7 @@ in {
programs.starship = { programs.starship = {
enable = true; enable = true;
enableFishIntegration = config.modules.fish.enable; enableFishIntegration = config.homemodules.fish.enable;
settings = { settings = {
# Other config here # Other config here
format = "$all"; # Remove this line to disable the default prompt format format = "$all"; # Remove this line to disable the default prompt format

View File

@ -6,9 +6,9 @@
pkgs, pkgs,
... ...
}: let }: let
inherit (config.modules) git; inherit (config.homemodules) git;
in { in {
options.modules.git = import ./options.nix {inherit lib mylib;}; options.homemodules.git = import ./options.nix {inherit lib mylib;};
config = lib.mkIf git.enable { config = lib.mkIf git.enable {
programs.diff-so-fancy = { programs.diff-so-fancy = {

View File

@ -8,7 +8,7 @@
username, username,
... ...
}: let }: let
inherit (config.modules) hyprland color; inherit (config.homemodules) hyprland color;
# Autostart programs # Autostart programs
always-exec = import ./autostart.nix {inherit lib pkgs config hyprland;}; always-exec = import ./autostart.nix {inherit lib pkgs config hyprland;};
@ -22,7 +22,7 @@
"$mainMod, mouse:273" = ["resizewindow"]; "$mainMod, mouse:273" = ["resizewindow"];
}; };
in { in {
options.modules.hyprland = import ./options.nix {inherit lib mylib;}; options.homemodules.hyprland = import ./options.nix {inherit lib mylib;};
config = lib.mkIf hyprland.enable { config = lib.mkIf hyprland.enable {
assertions = [ assertions = [
@ -46,7 +46,7 @@ in {
iconTheme.name = color.iconTheme; iconTheme.name = color.iconTheme;
}; };
modules = { homemodules = {
hyprpanel.enable = hyprland.hyprpanel.enable; hyprpanel.enable = hyprland.hyprpanel.enable;
}; };

View File

@ -11,7 +11,7 @@
settings = { settings = {
global = { global = {
monitor = config.modules.waybar.monitor; monitor = config.homemodules.waybar.monitor;
font = "${color.font} 11"; font = "${color.font} 11";
offset = "10x10"; offset = "10x10";
background = color.hexS.base; background = color.hexS.base;

View File

@ -111,19 +111,19 @@
windowrule = let windowrule = let
mkWorkspaceRule = workspace: class: mkWorkspaceRule = workspace: class:
"workspace ${workspace}, " "match:class ^(${class})$, "
+ "class:^(${class})$"; + "workspace ${workspace}";
mkWorkspaceRules = workspace: class-list: mkWorkspaceRules = workspace: class-list:
builtins.map (mkWorkspaceRule workspace) class-list; builtins.map (mkWorkspaceRule workspace) class-list;
mkFloatingRule = attrs: mkFloatingRule = attrs:
"float" (lib.optionalString (builtins.hasAttr "class" attrs) "match:class ^(${attrs.class})$, ")
+ (lib.optionalString (builtins.hasAttr "class" attrs) ", class:^(${attrs.class})$") + (lib.optionalString (builtins.hasAttr "title" attrs) "match:title ^(${attrs.title})$, ")
+ (lib.optionalString (builtins.hasAttr "title" attrs) ", title:^(${attrs.title})$"); + "float 1";
mkTranslucentRule = class: mkTranslucentRule = class:
"opacity ${hyprland.transparent-opacity} ${hyprland.transparent-opacity}, " "match:class ^(${class})$, "
+ "class:^(${class})$"; + "opacity ${hyprland.transparent-opacity} ${hyprland.transparent-opacity}";
in in
lib.mkMerge [ lib.mkMerge [
(hyprland.workspacerules (hyprland.workspacerules
@ -165,15 +165,15 @@
# Because those are not windows, but layers, # Because those are not windows, but layers,
# we have to blur them explicitly # we have to blur them explicitly
layerrule = [ layerrule = [
"blur,rofi" "match:class rofi, blur 1"
"ignorealpha 0.001,rofi" # Fix pixelated corners # "match:class rofi, ignore_alpha 0.001" # Fix pixelated corners
"xray 0,rofi" # Render on top of other windows # "match:class rofi, xray 0" # Render on top of other windows
"dimaround,rofi" # "match:class rofi, dim_around 1"
"blur,waybar" "match:class waybar, blur 1"
"blur,gtk4-layer-shell" "match:class gtk4-layer-shell, blur 1"
"blur,bar-0" "match:class bar-0, blur 1"
"blur,bar-1" "match:class bar-1, blur 1"
]; ];
decoration = { decoration = {

View File

@ -6,9 +6,9 @@
pkgs, pkgs,
... ...
}: let }: let
inherit (config.modules) hyprpanel color; inherit (config.homemodules) hyprpanel color;
in { in {
options.modules.hyprpanel = import ./options.nix {inherit lib mylib;}; options.homemodules.hyprpanel = import ./options.nix {inherit lib mylib;};
config = lib.mkIf hyprpanel.enable { config = lib.mkIf hyprpanel.enable {
programs.hyprpanel = { programs.hyprpanel = {

View File

@ -5,9 +5,9 @@
mylib, mylib,
... ...
}: let }: let
inherit (config.modules) kitty color; inherit (config.homemodules) kitty color;
in { in {
options.modules.kitty = import ./options.nix {inherit lib mylib;}; options.homemodules.kitty = import ./options.nix {inherit lib mylib;};
config = lib.mkIf kitty.enable { config = lib.mkIf kitty.enable {
programs.kitty = { programs.kitty = {
@ -15,7 +15,7 @@ in {
shellIntegration.enableFishIntegration = true; shellIntegration.enableFishIntegration = true;
font = { font = {
name = "${config.modules.color.font}"; name = "${config.homemodules.color.font}";
size = 12; size = 12;
}; };

View File

@ -6,9 +6,9 @@
pkgs, pkgs,
... ...
}: let }: let
inherit (config.modules) lazygit color; inherit (config.homemodules) lazygit color;
in { in {
options.modules.lazygit = import ./options.nix {inherit lib mylib;}; options.homemodules.lazygit = import ./options.nix {inherit lib mylib;};
config = lib.mkIf lazygit.enable { config = lib.mkIf lazygit.enable {
programs.lazygit = { programs.lazygit = {

View File

@ -6,9 +6,9 @@
pkgs, pkgs,
... ...
}: let }: let
inherit (config.modules) mpd; inherit (config.homemodules) mpd;
in { in {
options.modules.mpd = import ./options.nix {inherit lib mylib;}; options.homemodules.mpd = import ./options.nix {inherit lib mylib;};
config = lib.mkIf mpd.enable { config = lib.mkIf mpd.enable {
services = { services = {

View File

@ -10,9 +10,9 @@
pkgs, pkgs,
... ...
}: let }: let
inherit (config.modules) neovim color; inherit (config.homemodules) neovim color;
in { in {
options.modules.neovim = import ./options.nix {inherit lib mylib;}; options.homemodules.neovim = import ./options.nix {inherit lib mylib;};
config = lib.mkIf neovim.enable { config = lib.mkIf neovim.enable {
home = { home = {
@ -842,21 +842,14 @@ in {
{ {
name = "clangd"; name = "clangd";
extraOptions = { extraOptions = {
root_dir.__raw = '' # root_markers = [
function(fname) # "Makefile"
-- return require("lspconfig.util").root_pattern( # "CMakeLists.txt"
return vim.lsp.config.util.root_pattern( # ".clang-format"
"Makefile", # ".clang-tidy"
"CMakeLists.txt", # "compile_commands.json"
".clang-format", # ];
".clang-tidy" # workspace_required = true;
-- )(fname) or require("lspconfig.util").root_pattern(
)(fname) or vim.lsp.config.util.root_pattern(
"compile_commands.json"
-- )(fname) or require("lspconfig.util").find_git_ancestor(fname)
)(fname) or vim.lsp.config.util.find_git_ancestor(fname)
end
'';
cmd = [ cmd = [
"clangd" "clangd"
@ -898,7 +891,7 @@ in {
name = "nixd"; name = "nixd";
extraOptions.cmd = [ extraOptions.cmd = [
"nixd" "nixd"
"--inlay-hints=false" "--inlay-hints=true"
"--semantic-tokens=true" "--semantic-tokens=true"
]; ];
extraOptions.settings = { extraOptions.settings = {
@ -1842,9 +1835,7 @@ in {
# _treesitter-context # Ugly # _treesitter-context # Ugly
# _treesitter-refactor # Ugly # _treesitter-refactor # Ugly
]; ];
lazy = true; lazy = false;
cmd = ["TSModuleInfo"];
event = ["BufReadPost" "BufNewFile"];
init = '' init = ''
function() function()
-- Fix treesitter grammars/parsers on nix -- Fix treesitter grammars/parsers on nix
@ -1854,7 +1845,10 @@ in {
''; '';
config = '' config = ''
function(_, opts) function(_, opts)
require("nvim-treesitter.configs").setup(opts) -- require("nvim-treesitter.configs").setup(opts)
require("nvim-treesitter").setup(opts)
-- TODO: Why is GLSL filetype in the treesitter setup???
-- GLSL filetypes -- GLSL filetypes
vim.filetype.add { vim.filetype.add {
@ -1872,7 +1866,8 @@ in {
opts = { opts = {
auto_install = false; auto_install = false;
ensure_installed = []; ensure_installed = [];
parser_install_dir = "${treesitter-parsers}"; # parser_install_dir = "${treesitter-parsers}";
install_dir = "${treesitter-parsers}";
indent = { indent = {
enable = true; enable = true;

Some files were not shown because too many files have changed in this diff Show More