Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8e907b1ad4 | ||
|
|
4af197d174 | ||
|
|
8b21230a3b | ||
|
|
437a074fe8 | ||
|
|
0fe3abef0e | ||
|
|
a695cd5132 | ||
|
|
7e933a89b0 | ||
|
|
d160a58984 | ||
|
|
e313c72d46 | ||
|
|
29e7918966 | ||
|
|
1ed478d987 | ||
|
|
c0f1b2abd7 | ||
|
|
3bf7626b15 | ||
|
|
b79a4b248c | ||
|
|
25f89042ad | ||
|
|
21b058e1db | ||
|
|
9031a8306b | ||
|
|
951406bed2 | ||
|
|
67824a0c5a | ||
|
|
8d3a9b8b4b | ||
|
|
1f64b16ade | ||
|
|
f7f29fd891 | ||
|
|
eccf12805c | ||
| 955c926ec3 | |||
|
|
8207e7cfe0 | ||
|
|
58d312bc11 | ||
|
|
09bb5db1ab | ||
| 408ccf7b22 | |||
| db536c6b80 | |||
| 88972aa4a2 | |||
| d1712461f6 | |||
| 47cd47b4f2 | |||
| 29a224e6bd | |||
| 4e3838b97f | |||
| 911685f9ee | |||
| b7302531f7 | |||
| 8d42e6e0b5 | |||
| c6c44123b9 | |||
| 548bec32ab | |||
|
|
3c7efc01d9 | ||
|
|
00676cb2ac | ||
|
|
4905397ff7 | ||
|
|
dccecc00b2 | ||
|
|
75c6cfcb18 | ||
|
|
9a056e8442 | ||
|
|
56ba1a0513 | ||
|
|
bb361f2868 | ||
| 409b6948c3 |
29 changed files with 722 additions and 247 deletions
217
flake.lock
generated
217
flake.lock
generated
|
|
@ -7,11 +7,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1790734419,
|
"lastModified": 1792507013,
|
||||||
"narHash": "sha256-n7wew722m1OTBT9DOIMxNX/NF4zfsSUABAO5eW3wikE=",
|
"narHash": "sha256-8tKjSQajD3mUND1GaAuaWTcuyUpgcGsh5V+l4ibzC7U=",
|
||||||
"owner": "ryantm",
|
"owner": "ryantm",
|
||||||
"repo": "agenix",
|
"repo": "agenix",
|
||||||
"rev": "3daa710894355fa2fad8243380af373a2b4046ef",
|
"rev": "5e5b88a0c8e56f291a108c2fe9934054d9745b2e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -123,6 +123,27 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-parts_2": {
|
"flake-parts_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"hermes-agent",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1790898470,
|
||||||
|
"narHash": "sha256-zTwuwezD0w3hpga6a6P8emidzAZFyWqlNeRBlpWOOl8=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "024633cd702b10285db5cb19b40ad48d2399ba60",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts_3": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-lib": [
|
"nixpkgs-lib": [
|
||||||
"stylix",
|
"stylix",
|
||||||
|
|
@ -178,6 +199,34 @@
|
||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"hermes-agent": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-parts": "flake-parts_2",
|
||||||
|
"home-manager": [
|
||||||
|
"home-manager"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"npm-lockfile-fix": "npm-lockfile-fix",
|
||||||
|
"pyproject-build-systems": "pyproject-build-systems",
|
||||||
|
"pyproject-nix": "pyproject-nix",
|
||||||
|
"uv2nix": "uv2nix"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1793005886,
|
||||||
|
"narHash": "sha256-gZD8QVfZU4d19WbpGU1d3a1N4iJ0w1b916b/V+P0+cc=",
|
||||||
|
"owner": "NousResearch",
|
||||||
|
"repo": "hermes-agent",
|
||||||
|
"rev": "9b904dcc22c23fe8b82834339bbdd96495072e59",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NousResearch",
|
||||||
|
"repo": "hermes-agent",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
|
@ -185,11 +234,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1792098797,
|
"lastModified": 1792896866,
|
||||||
"narHash": "sha256-u4DIIZgznEGzByxXrxWCXK19VcMtTBmi/M9gZ7Jk9bM=",
|
"narHash": "sha256-/0tELNnhdSnP+bHSdWiEe6KpfSwi6WrTnT9cm/jNkjA=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "640725978b99076e18e069f6e7d2959124584f8f",
|
"rev": "c216bf5a1f173b0481bd5c8c489ebe5595ecc68c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -289,11 +338,11 @@
|
||||||
"treefmt-nix": "treefmt-nix"
|
"treefmt-nix": "treefmt-nix"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1792277718,
|
"lastModified": 1792984624,
|
||||||
"narHash": "sha256-Nv32eZ+x7qr/yKofkemv1O2ImnXkUpFQgq71u6c6Wi8=",
|
"narHash": "sha256-i8nr7pMfov5q0W5m1UCeNYGClbA4hdbmTwa+OkumdlY=",
|
||||||
"owner": "4evy",
|
"owner": "4evy",
|
||||||
"repo": "nixcord",
|
"repo": "nixcord",
|
||||||
"rev": "f4f803048d4bb6bc296fc4bdbd8620ff63fe100f",
|
"rev": "63e33cd00b08ef49b6623a1b6f9f27f69049d1a9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -304,11 +353,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1792094642,
|
"lastModified": 1792773339,
|
||||||
"narHash": "sha256-zp8ToDMnqZcu4o4IH9pdwXFXGp7yLm/M0dEnNWnyd7I=",
|
"narHash": "sha256-rZLrzrC6i+jnTAlvPZHogKDulY7WWDEv9hJeHieO7Zw=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "fe13242281a67641c0102cdb1087f0ebe586c7df",
|
"rev": "3ec636362e1816bc2f0888fa0fa2c69f1bc9e504",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -359,6 +408,27 @@
|
||||||
"url": "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.zst"
|
"url": "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.zst"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"npm-lockfile-fix": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"hermes-agent",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1775903712,
|
||||||
|
"narHash": "sha256-2GV79U6iVH4gKAPWYrxUReB0S41ty/Y3dBLquU8AlaA=",
|
||||||
|
"owner": "jeslie0",
|
||||||
|
"repo": "npm-lockfile-fix",
|
||||||
|
"rev": "c6093acb0c0548e0f9b8b3d82918823721930fe8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "jeslie0",
|
||||||
|
"repo": "npm-lockfile-fix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nur": {
|
"nur": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-parts": [
|
"flake-parts": [
|
||||||
|
|
@ -384,18 +454,91 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"pyproject-build-systems": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"hermes-agent",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"pyproject-nix": [
|
||||||
|
"hermes-agent",
|
||||||
|
"pyproject-nix"
|
||||||
|
],
|
||||||
|
"uv2nix": [
|
||||||
|
"hermes-agent",
|
||||||
|
"uv2nix"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1792499785,
|
||||||
|
"narHash": "sha256-mGOkvueuMGSRiD75ccxFzfEvSlIU9ztjFluHMKOtogY=",
|
||||||
|
"owner": "pyproject-nix",
|
||||||
|
"repo": "build-system-pkgs",
|
||||||
|
"rev": "a17819c85163988e063806ffc4f6d2716bc8ead8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "pyproject-nix",
|
||||||
|
"repo": "build-system-pkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"pyproject-nix": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"hermes-agent",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1791657700,
|
||||||
|
"narHash": "sha256-vcCAvhtA7hG+/gOge29hYHy7I/dLkIsr5nLx4sFEQic=",
|
||||||
|
"owner": "pyproject-nix",
|
||||||
|
"repo": "pyproject.nix",
|
||||||
|
"rev": "ddc400a6883b042646d0940e65971bb7f7e96107",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "pyproject-nix",
|
||||||
|
"repo": "pyproject.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"agenix": "agenix",
|
"agenix": "agenix",
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts",
|
||||||
|
"hermes-agent": "hermes-agent",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"import-tree": "import-tree",
|
"import-tree": "import-tree",
|
||||||
"nix-easyroam": "nix-easyroam",
|
"nix-easyroam": "nix-easyroam",
|
||||||
"nixcord": "nixcord",
|
"nixcord": "nixcord",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
|
"spicetify-nix": "spicetify-nix",
|
||||||
"stylix": "stylix"
|
"stylix": "stylix"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"spicetify-nix": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": "systems"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1792919014,
|
||||||
|
"narHash": "sha256-gJ8uPmQFhJ98X+VWPpD+o0tnQ0nJjbG+Z3QDHcSJKw0=",
|
||||||
|
"owner": "Gerg-L",
|
||||||
|
"repo": "spicetify-nix",
|
||||||
|
"rev": "f6eb8135c060130150c8fbcc6b7cf5e22e5179d8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "Gerg-L",
|
||||||
|
"repo": "spicetify-nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"stylix": {
|
"stylix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"base16": "base16",
|
"base16": "base16",
|
||||||
|
|
@ -403,24 +546,24 @@
|
||||||
"base16-helix": "base16-helix",
|
"base16-helix": "base16-helix",
|
||||||
"base16-vim": "base16-vim",
|
"base16-vim": "base16-vim",
|
||||||
"firefox-gnome-theme": "firefox-gnome-theme",
|
"firefox-gnome-theme": "firefox-gnome-theme",
|
||||||
"flake-parts": "flake-parts_2",
|
"flake-parts": "flake-parts_3",
|
||||||
"gnome-shell": "gnome-shell",
|
"gnome-shell": "gnome-shell",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
"nur": "nur",
|
"nur": "nur",
|
||||||
"systems": "systems",
|
"systems": "systems_2",
|
||||||
"tinted-kitty": "tinted-kitty",
|
"tinted-kitty": "tinted-kitty",
|
||||||
"tinted-schemes": "tinted-schemes",
|
"tinted-schemes": "tinted-schemes",
|
||||||
"tinted-tmux": "tinted-tmux",
|
"tinted-tmux": "tinted-tmux",
|
||||||
"tinted-zed": "tinted-zed"
|
"tinted-zed": "tinted-zed"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1791574276,
|
"lastModified": 1792920263,
|
||||||
"narHash": "sha256-UMnLnZ3JlA7UTBNNNx1rNsXYoPP/cirXLCKGiQ/yDx8=",
|
"narHash": "sha256-2pkE97wOXAYIn2/Nhs9y+iR0qVT+g/3UtukXdkywxXc=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "stylix",
|
"repo": "stylix",
|
||||||
"rev": "2856c4c6a845b9bec98828ef197abe176e4806bb",
|
"rev": "3e27b6c499e507df6e3bb8eca3614f5c95e28140",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -430,6 +573,21 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems": {
|
"systems": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1791244623,
|
||||||
|
"narHash": "sha256-uuanbkFk8a313Zfrxdcz8Us/yQtaxNnKJtX8v0ZPpd8=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "d36eeed142f88b5a636f2e3856a53c61654cf29b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1774449309,
|
"lastModified": 1774449309,
|
||||||
"narHash": "sha256-brhZ8DmuGtzkCYHJg4HEd602amKm89Y9ytsFZ5uWD1w=",
|
"narHash": "sha256-brhZ8DmuGtzkCYHJg4HEd602amKm89Y9ytsFZ5uWD1w=",
|
||||||
|
|
@ -529,6 +687,31 @@
|
||||||
"repo": "treefmt-nix",
|
"repo": "treefmt-nix",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"uv2nix": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"hermes-agent",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"pyproject-nix": [
|
||||||
|
"hermes-agent",
|
||||||
|
"pyproject-nix"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1792666911,
|
||||||
|
"narHash": "sha256-UWo7wDPi00YXOI1Io7g4vGKuCSPJ863kHJVDzsgqtoM=",
|
||||||
|
"owner": "pyproject-nix",
|
||||||
|
"repo": "uv2nix",
|
||||||
|
"rev": "0fdaa03ea3c3c16dbb1fe4d69108f07227a4b42d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "pyproject-nix",
|
||||||
|
"repo": "uv2nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"root": "root",
|
"root": "root",
|
||||||
|
|
|
||||||
23
flake.nix
23
flake.nix
|
|
@ -24,11 +24,22 @@
|
||||||
url = "github:nix-community/stylix";
|
url = "github:nix-community/stylix";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
spicetify-nix = {
|
||||||
|
url = "github:Gerg-L/spicetify-nix";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
hermes-agent = {
|
||||||
|
url = "github:NousResearch/hermes-agent";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
inputs.home-manager.follows = "home-manager";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
outputs = inputs: inputs.flake-parts.lib.mkFlake { inherit inputs; } {
|
outputs =
|
||||||
imports = [
|
inputs:
|
||||||
inputs.home-manager.flakeModules.home-manager
|
inputs.flake-parts.lib.mkFlake { inherit inputs; } {
|
||||||
(inputs.import-tree ./modules)
|
imports = [
|
||||||
];
|
inputs.home-manager.flakeModules.home-manager
|
||||||
};
|
(inputs.import-tree ./modules)
|
||||||
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,19 +7,22 @@ let
|
||||||
mods = with self.nixosModules; [
|
mods = with self.nixosModules; [
|
||||||
agenix
|
agenix
|
||||||
base_services
|
base_services
|
||||||
|
bluetooth
|
||||||
boot
|
boot
|
||||||
core
|
core
|
||||||
|
chromium
|
||||||
|
gaming
|
||||||
easyroam
|
easyroam
|
||||||
myStylix
|
nautilus
|
||||||
packages
|
packages
|
||||||
pipewire
|
pipewire
|
||||||
programs
|
programs
|
||||||
stylixTargets
|
stylix
|
||||||
|
stylix_targets
|
||||||
stylix_fonts
|
stylix_fonts
|
||||||
tlp
|
tlp
|
||||||
user
|
user
|
||||||
zsh
|
zsh
|
||||||
/etc/nixos/hardware-configuration.nix
|
|
||||||
];
|
];
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
|
@ -27,20 +30,19 @@ in
|
||||||
modules =
|
modules =
|
||||||
with self.nixosModules;
|
with self.nixosModules;
|
||||||
[
|
[
|
||||||
{
|
nvidia
|
||||||
config.dualBoot = true;
|
nerv
|
||||||
config.networking.hostName = "nerv";
|
nerv_quirks
|
||||||
}
|
|
||||||
]
|
]
|
||||||
++ mods;
|
++ mods;
|
||||||
};
|
};
|
||||||
flake.nixosConfigurations.seele = inputs.nixpkgs.lib.nixosSystem {
|
flake.nixosConfigurations.seele = inputs.nixpkgs.lib.nixosSystem {
|
||||||
modules = [
|
modules =
|
||||||
{
|
with self.nixosModules;
|
||||||
config.networking.hostName = "seele";
|
[
|
||||||
}
|
seele
|
||||||
]
|
seele_quirks
|
||||||
++ mods;
|
]
|
||||||
|
++ mods;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
10
modules/home/programs/btop.nix
Normal file
10
modules/home/programs/btop.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
{...} : {
|
||||||
|
flake.homeModules.btop = {
|
||||||
|
programs.btop = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
theme_background = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
12
modules/home/programs/clangd.nix
Normal file
12
modules/home/programs/clangd.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.homeModules.clangd = {
|
||||||
|
home.file."clangd" = {
|
||||||
|
text = ''
|
||||||
|
BreakBeforeBraces: Allman
|
||||||
|
IndentWidth: 8
|
||||||
|
'';
|
||||||
|
target = ".clang-format";
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -4,12 +4,21 @@
|
||||||
programs.emacs = {
|
programs.emacs = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.emacs-pgtk;
|
package = pkgs.emacs-pgtk;
|
||||||
|
extraPackages =
|
||||||
|
epkgs: with epkgs; [
|
||||||
|
eldoc-box
|
||||||
|
elisp-autofmt
|
||||||
|
corfu
|
||||||
|
cape
|
||||||
|
nix-mode
|
||||||
|
envrc
|
||||||
|
elcord
|
||||||
|
qml-mode
|
||||||
|
lua-mode
|
||||||
|
];
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
;; -*- lexical-binding: t; -*-
|
;; -*- lexical-binding: t; -*-
|
||||||
(setq make-backup-files nil)
|
(setq make-backup-files nil)
|
||||||
|
|
||||||
(add-to-list 'default-frame-alist '(font . "JetBrainsMono Nerd Font Mono-14"))
|
|
||||||
|
|
||||||
(require 'package)
|
(require 'package)
|
||||||
(add-to-list 'package-archives
|
(add-to-list 'package-archives
|
||||||
'("melpa-snapshots"
|
'("melpa-snapshots"
|
||||||
|
|
@ -17,25 +26,21 @@
|
||||||
"https://snapshots.melpa.org/packages/")
|
"https://snapshots.melpa.org/packages/")
|
||||||
t)
|
t)
|
||||||
;; add packages
|
;; add packages
|
||||||
(use-package org-view-mode :ensure t)
|
(use-package org-view-mode)
|
||||||
(use-package envrc :ensure t)
|
(use-package envrc)
|
||||||
|
|
||||||
(use-package nix-mode :ensure t)
|
(use-package nix-mode)
|
||||||
(use-package
|
(use-package
|
||||||
eldoc-box
|
eldoc-box
|
||||||
:ensure t
|
|
||||||
:hook (eglot-managed-mode . eldoc-box-hover-mode)
|
:hook (eglot-managed-mode . eldoc-box-hover-mode)
|
||||||
)
|
)
|
||||||
(use-package
|
(use-package
|
||||||
elisp-autofmt
|
elisp-autofmt
|
||||||
:ensure t
|
|
||||||
:commands (elisp-autofmt-buffer elisp-autofmt-mode)
|
:commands (elisp-autofmt-buffer elisp-autofmt-mode)
|
||||||
:hook (emacs-lisp-mode . elisp-autofmt-mode)
|
:hook (emacs-lisp-mode . elisp-autofmt-mode)
|
||||||
:config)
|
:config)
|
||||||
(use-package portage-modes :ensure t)
|
|
||||||
(use-package
|
(use-package
|
||||||
corfu
|
corfu
|
||||||
:ensure t
|
|
||||||
:init
|
:init
|
||||||
(setq
|
(setq
|
||||||
corfu-auto t
|
corfu-auto t
|
||||||
|
|
@ -46,13 +51,12 @@
|
||||||
(setq tab-always-indent 'complete)
|
(setq tab-always-indent 'complete)
|
||||||
(use-package
|
(use-package
|
||||||
cape
|
cape
|
||||||
:ensure t
|
|
||||||
:bind ("C-c p" . cape-prefix-map) ;; Alternative key: M-<tab>, M-p, M-+
|
:bind ("C-c p" . cape-prefix-map) ;; Alternative key: M-<tab>, M-p, M-+
|
||||||
:init (add-hook 'completion-at-point-functions #'cape-file))
|
:init (add-hook 'completion-at-point-functions #'cape-file))
|
||||||
(setq corfu-auto-prefix 2)
|
(setq corfu-auto-prefix 2)
|
||||||
(use-package qml-mode :ensure t)
|
(use-package qml-mode)
|
||||||
(use-package lua-mode :ensure t)
|
(use-package lua-mode)
|
||||||
(use-package elcord :ensure t :init (elcord-mode))
|
(use-package elcord :init (elcord-mode))
|
||||||
|
|
||||||
(add-to-list
|
(add-to-list
|
||||||
'display-buffer-alist
|
'display-buffer-alist
|
||||||
|
|
|
||||||
8
modules/home/programs/hermes.nix
Normal file
8
modules/home/programs/hermes.nix
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
{ inputs, ... }: {
|
||||||
|
flake.homeModules.hermes = { pkgs, ... }: {
|
||||||
|
imports = [ inputs.hermes-agent.homeManagerModules.default ];
|
||||||
|
programs.hermes-agent = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -1,163 +1,197 @@
|
||||||
{ ... }: {
|
{ ... }: {
|
||||||
flake.homeModules.niri = {
|
flake.homeModules.niri = { config, lib, ... }: {
|
||||||
wayland.windowManager.niri = {
|
wayland.windowManager.niri = {
|
||||||
enable = true;
|
enable = true;
|
||||||
extraConfig = ''
|
systemd.enable = true;
|
||||||
prefer-no-csd
|
settings = {
|
||||||
hotkey-overlay {
|
prefer-no-csd = { };
|
||||||
skip-at-startup
|
hotkey-overlay.skip-at-startup = { };
|
||||||
}
|
environment = {
|
||||||
|
XDG_CURRENT_DESKTOP = "niri";
|
||||||
environment {
|
XDG_SESSION_TYPE = "wayland";
|
||||||
GTK_THEME "adw-gtk3-dark"
|
XDG_SESSION_DESKTOP = "niri";
|
||||||
XDG_CURRENT_DESKTOP "niri"
|
};
|
||||||
XDG_SESSION_TYPE "wayland"
|
cursor = {
|
||||||
XDG_SESSION_DESKTOP "niri"
|
xcursor-size = 24;
|
||||||
QT_QPA_PLATFORM "wayland;xcb"
|
xcursor-theme = "macOS";
|
||||||
OZONE_PLATFORM "wayland"
|
};
|
||||||
ELECTRON_OZONE_PLATFORM_HINT "auto"
|
input = {
|
||||||
}
|
keyboard.xkb.layout = "eu";
|
||||||
cursor {
|
touchpad = {
|
||||||
xcursor-size 24
|
tap = { };
|
||||||
xcursor-theme "macOS"
|
natural-scroll = { };
|
||||||
}
|
};
|
||||||
input {
|
tablet = {
|
||||||
keyboard {
|
map-to-output = "PNP(BNQ) BenQ EX2710Q K6R04023019";
|
||||||
xkb {
|
};
|
||||||
layout "eu"
|
mouse = {
|
||||||
}
|
accel-speed = -0.4;
|
||||||
}
|
accel-profile = "flat";
|
||||||
|
};
|
||||||
touchpad {
|
focus-follows-mouse._props.max-scroll-amount = "20%";
|
||||||
tap
|
};
|
||||||
natural-scroll
|
screenshot-path = null;
|
||||||
|
animations = { };
|
||||||
}
|
layout = {
|
||||||
|
gaps = 16;
|
||||||
mouse {
|
center-focused-column = "never";
|
||||||
accel-speed -0.4
|
default-column-width._children = [ { proportion = 0.6; } ];
|
||||||
accel-profile "flat"
|
focus-ring.off = { };
|
||||||
}
|
border = {
|
||||||
focus-follows-mouse max-scroll-amount="20%"
|
width = 2;
|
||||||
|
active-color = config.lib.stylix.colors.base0D;
|
||||||
}
|
inactive-color = config.lib.stylix.colors.base03;
|
||||||
|
};
|
||||||
output "PNP(BNQ) BenQ EX2710Q K6R04023019" {
|
};
|
||||||
mode "2560x1440@165.002"
|
binds = {
|
||||||
scale 1
|
"Mod+Return".spawn-sh = "ghostty +new-window";
|
||||||
transform "normal"
|
"Mod+space".spawn = [ "fuzzel" ];
|
||||||
position x=1920 y=0
|
"Mod+e".spawn = [ "nautilus" ];
|
||||||
}
|
"XF86AudioRaiseVolume" = {
|
||||||
output "Dell Inc. DELL P2317H 9KFDW6C533DB" {
|
_props.allow-when-locked = true;
|
||||||
position x=0 y=0
|
spawn-sh = "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+ -l 1.0";
|
||||||
}
|
};
|
||||||
|
"XF86AudioLowerVolume" = {
|
||||||
output "eDP-1" {
|
_props.allow-when-locked = true;
|
||||||
scale 1
|
spawn-sh = "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-";
|
||||||
}
|
};
|
||||||
|
"XF86AudioMute" = {
|
||||||
|
_props.allow-when-locked = true;
|
||||||
layout {
|
spawn-sh = "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle";
|
||||||
gaps 16
|
};
|
||||||
center-focused-column "never"
|
"XF86AudioMicMute" = {
|
||||||
default-column-width { proportion 0.6; }
|
_props.allow-when-locked = true;
|
||||||
focus-ring {
|
spawn-sh = "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle";
|
||||||
off
|
};
|
||||||
}
|
"XF86AudioPlay" = {
|
||||||
border {
|
_props.allow-when-locked = true;
|
||||||
width 2
|
spawn-sh = "playerctl play-pause";
|
||||||
active-color "#ffc87f"
|
};
|
||||||
inactive-color "#505050"
|
"XF86AudioStop" = {
|
||||||
}
|
_props.allow-when-locked = true;
|
||||||
}
|
spawn-sh = "playerctl stop";
|
||||||
spawn-at-startup "qs"
|
};
|
||||||
screenshot-path null
|
"XF86AudioPrev" = {
|
||||||
animations {}
|
_props.allow-when-locked = true;
|
||||||
window-rule {
|
spawn-sh = "playerctl previous";
|
||||||
geometry-corner-radius 16
|
};
|
||||||
clip-to-geometry true
|
"XF86AudioNext" = {
|
||||||
}
|
_props.allow-when-locked = true;
|
||||||
|
spawn-sh = "playerctl next";
|
||||||
binds {
|
};
|
||||||
Mod+return { spawn-sh "ghostty +new-window"; }
|
"XF86MonBrightnessUp" = {
|
||||||
Mod+space { spawn "fuzzel"; }
|
_props.allow-when-locked = true;
|
||||||
Mod+e { spawn "nautilus"; }
|
spawn = [
|
||||||
|
"brightnessctl"
|
||||||
XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+ -l 1.0"; }
|
"--class=backlight"
|
||||||
XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; }
|
"set"
|
||||||
XF86AudioMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; }
|
"+10%"
|
||||||
XF86AudioMicMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; }
|
];
|
||||||
|
};
|
||||||
XF86AudioPlay allow-when-locked=true { spawn-sh "playerctl play-pause"; }
|
"XF86MonBrightnessDown" = {
|
||||||
XF86AudioStop allow-when-locked=true { spawn-sh "playerctl stop"; }
|
_props.allow-when-locked = true;
|
||||||
XF86AudioPrev allow-when-locked=true { spawn-sh "playerctl previous"; }
|
spawn = [
|
||||||
XF86AudioNext allow-when-locked=true { spawn-sh "playerctl next"; }
|
"brightnessctl"
|
||||||
|
"--class=backlight"
|
||||||
XF86MonBrightnessUp allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "+10%"; }
|
"set"
|
||||||
XF86MonBrightnessDown allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "10%-"; }
|
"10%-"
|
||||||
|
];
|
||||||
Mod+O repeat=false { toggle-overview; }
|
};
|
||||||
Mod+Q repeat=false { close-window; }
|
"Mod+O" = {
|
||||||
|
_props.repeat = false;
|
||||||
Mod+Left { focus-column-left; }
|
toggle-overview = { };
|
||||||
Mod+Down { focus-window-down; }
|
};
|
||||||
Mod+Up { focus-window-up; }
|
"Mod+Q" = {
|
||||||
Mod+Right { focus-column-right; }
|
_props.repeat = false;
|
||||||
Mod+H { focus-column-left; }
|
close-window = { };
|
||||||
Mod+J { focus-window-down; }
|
};
|
||||||
Mod+K { focus-window-up; }
|
"Mod+Left".focus-column-left = { };
|
||||||
Mod+L { focus-column-right; }
|
"Mod+Down".focus-window-down = { };
|
||||||
Mod+Ctrl+Left { move-column-left; }
|
"Mod+Up".focus-window-up = { };
|
||||||
Mod+Ctrl+Down { move-window-down; }
|
"Mod+Right".focus-column-right = { };
|
||||||
Mod+Ctrl+Up { move-window-up; }
|
"Mod+H".focus-column-left = { };
|
||||||
Mod+Ctrl+Right { move-column-right; }
|
"Mod+J".focus-window-down = { };
|
||||||
Mod+Ctrl+H { move-column-left; }
|
"Mod+K".focus-window-up = { };
|
||||||
Mod+Ctrl+J { move-window-down; }
|
"Mod+L".focus-column-right = { };
|
||||||
Mod+Ctrl+K { move-window-up; }
|
"Mod+Ctrl+Left".move-column-left = { };
|
||||||
mod+ctrl+l { move-column-right; }
|
"Mod+Ctrl+Down".move-window-down = { };
|
||||||
|
"Mod+Ctrl+Up".move-window-up = { };
|
||||||
Mod+comma { focus-monitor-left; }
|
"Mod+Ctrl+Right".move-column-right = { };
|
||||||
Mod+period { focus-monitor-right; }
|
"Mod+Ctrl+H".move-column-left = { };
|
||||||
|
"Mod+Ctrl+J".move-window-down = { };
|
||||||
Mod+Shift+comma { move-column-to-monitor-left; }
|
"Mod+Ctrl+K".move-window-up = { };
|
||||||
Mod+Shift+period { move-column-to-monitor-right; }
|
"Mod+Ctrl+L".move-column-right = { };
|
||||||
|
"Mod+comma".focus-monitor-left = { };
|
||||||
|
"Mod+period".focus-monitor-right = { };
|
||||||
Mod+Shift+WheelScrollDown { focus-column-right; }
|
"Mod+Shift+comma".move-column-to-monitor-left = { };
|
||||||
Mod+Shift+WheelScrollUp { focus-column-left; }
|
"Mod+Shift+period".move-column-to-monitor-right = { };
|
||||||
Mod+1 { focus-workspace 1; }
|
"Mod+Shift+WheelScrollDown".focus-column-right = { };
|
||||||
Mod+2 { focus-workspace 2; }
|
"Mod+Shift+WheelScrollUp".focus-column-left = { };
|
||||||
Mod+3 { focus-workspace 3; }
|
"Mod+1".focus-workspace = 1;
|
||||||
Mod+4 { focus-workspace 4; }
|
"Mod+2".focus-workspace = 2;
|
||||||
Mod+5 { focus-workspace 5; }
|
"Mod+3".focus-workspace = 3;
|
||||||
Mod+6 { focus-workspace 6; }
|
"Mod+4".focus-workspace = 4;
|
||||||
Mod+7 { focus-workspace 7; }
|
"Mod+5".focus-workspace = 5;
|
||||||
Mod+8 { focus-workspace 8; }
|
"Mod+6".focus-workspace = 6;
|
||||||
Mod+9 { focus-workspace 9; }
|
"Mod+7".focus-workspace = 7;
|
||||||
Mod+Shift+1 { move-column-to-workspace 1; }
|
"Mod+8".focus-workspace = 8;
|
||||||
Mod+Shift+2 { move-column-to-workspace 2; }
|
"Mod+9".focus-workspace = 9;
|
||||||
Mod+Shift+3 { move-column-to-workspace 3; }
|
"Mod+Shift+1".move-column-to-workspace = 1;
|
||||||
Mod+Shift+4 { move-column-to-workspace 4; }
|
"Mod+Shift+2".move-column-to-workspace = 2;
|
||||||
Mod+Shift+5 { move-column-to-workspace 5; }
|
"Mod+Shift+3".move-column-to-workspace = 3;
|
||||||
Mod+Shift+6 { move-column-to-workspace 6; }
|
"Mod+Shift+4".move-column-to-workspace = 4;
|
||||||
Mod+Shift+7 { move-column-to-workspace 7; }
|
"Mod+Shift+5".move-column-to-workspace = 5;
|
||||||
Mod+Shift+8 { move-column-to-workspace 8; }
|
"Mod+Shift+6".move-column-to-workspace = 6;
|
||||||
Mod+Shift+9 { move-column-to-workspace 9; }
|
"Mod+Shift+7".move-column-to-workspace = 7;
|
||||||
|
"Mod+Shift+8".move-column-to-workspace = 8;
|
||||||
Mod+BracketLeft { consume-or-expel-window-left; }
|
"Mod+Shift+9".move-column-to-workspace = 9;
|
||||||
Mod+BracketRight { consume-or-expel-window-right; }
|
"Mod+BracketLeft".consume-or-expel-window-left = { };
|
||||||
Mod+F { maximize-column; }
|
"Mod+BracketRight".consume-or-expel-window-right = { };
|
||||||
|
"Mod+F".maximize-column = { };
|
||||||
Mod+Minus { set-column-width "-10%"; }
|
"Mod+Minus".set-column-width = "-10%";
|
||||||
Mod+Equal { set-column-width "+10%"; }
|
"Mod+Equal".set-column-width = "+10%";
|
||||||
|
"Mod+V".toggle-window-floating = { };
|
||||||
Mod+V { toggle-window-floating; }
|
"Mod+Shift+S".screenshot = { };
|
||||||
Mod+Shift+S { screenshot; }
|
"Alt+Shift+S".screenshot-screen = { };
|
||||||
Alt+Shift+S { screenshot-screen; }
|
"Alt+Ctrl+S".screenshot-window = { };
|
||||||
Alt+Ctrl+S { screenshot-window; }
|
"Mod+Shift+q".quit = { };
|
||||||
Mod+Shift+q { quit; }
|
};
|
||||||
}
|
_children = [
|
||||||
'';
|
{
|
||||||
|
output = {
|
||||||
|
_args = [ "PNP(BNQ) BenQ EX2710Q K6R04023019" ];
|
||||||
|
mode = "2560x1440@165.002";
|
||||||
|
scale = 1;
|
||||||
|
transform = "normal";
|
||||||
|
position._props = {
|
||||||
|
x = 1920;
|
||||||
|
y = 0;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
output = {
|
||||||
|
_args = [ "Dell Inc. DELL P2317H 9KFDW6C533DB" ];
|
||||||
|
position._props = {
|
||||||
|
x = 0;
|
||||||
|
y = 0;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
output = {
|
||||||
|
_args = [ "eDP-1" ];
|
||||||
|
scale = 1;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
window-rule._children = [
|
||||||
|
{ geometry-corner-radius = 16; }
|
||||||
|
{ clip-to-geometry = true; }
|
||||||
|
];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
9
modules/home/programs/quickshell.nix
Normal file
9
modules/home/programs/quickshell.nix
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
{ ... }: {
|
||||||
|
|
||||||
|
flake.homeModules.quickshell = {
|
||||||
|
programs.quickshell = {
|
||||||
|
enable = true;
|
||||||
|
systemd.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
8
modules/home/programs/spotify.nix
Normal file
8
modules/home/programs/spotify.nix
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
{ inputs, ... }: {
|
||||||
|
flake.homeModules.spotify = {
|
||||||
|
imports = [ inputs.spicetify-nix.homeManagerModules.spicetify ];
|
||||||
|
programs.spicetify = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
12
modules/home/services/syncthing.nix
Normal file
12
modules/home/services/syncthing.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.homeModules.syncthing = {
|
||||||
|
services.syncthing = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
devices = {
|
||||||
|
cyberia.id = "5SW5N7Z-BGTZD37-5ELRQVE-PBRK3O5-M4CGYLZ-R3KCVVS-AM5QD2G-WTQYKA7";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -1,11 +1,13 @@
|
||||||
{inputs, ...}: {
|
{inputs, ...}: {
|
||||||
flake.homeModules.homeStylix = {
|
flake.homeModules.stylix = {
|
||||||
stylix.targets = {
|
stylix.targets = {
|
||||||
ghostty.enable = true;
|
ghostty.enable = true;
|
||||||
fuzzel.enable = true;
|
fuzzel.enable = true;
|
||||||
gtk.enable = true;
|
gtk.enable = true;
|
||||||
|
qt.enable = true;
|
||||||
emacs.enable = true;
|
emacs.enable = true;
|
||||||
nixcord.enable = true;
|
nixcord.enable = true;
|
||||||
|
spicetify.enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@
|
||||||
config.boot.loader = {
|
config.boot.loader = {
|
||||||
efi.canTouchEfiVariables = true;
|
efi.canTouchEfiVariables = true;
|
||||||
limine = {
|
limine = {
|
||||||
|
style.wallpapers = [ ];
|
||||||
enable = true;
|
enable = true;
|
||||||
extraEntries = lib.mkIf config.dualBoot ''
|
extraEntries = lib.mkIf config.dualBoot ''
|
||||||
/Windows 11
|
/Windows 11
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,7 @@
|
||||||
{ ... }: {
|
{ ... }: {
|
||||||
flake.nixosModules.core = {
|
flake.nixosModules.core = { pkgs, ... }: {
|
||||||
hardware.bluetooth = {
|
hardware.enableRedistributableFirmware = true;
|
||||||
enable = true;
|
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||||
powerOnBoot = false;
|
|
||||||
input.General.ClassicBondedOnly = false;
|
|
||||||
settings = {
|
|
||||||
General = {
|
|
||||||
Experimental = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
time.timeZone = "Europe/Berlin";
|
time.timeZone = "Europe/Berlin";
|
||||||
i18n.defaultLocale = "en_US.UTF-8";
|
i18n.defaultLocale = "en_US.UTF-8";
|
||||||
i18n.extraLocaleSettings = {
|
i18n.extraLocaleSettings = {
|
||||||
|
|
@ -33,5 +25,6 @@
|
||||||
"nix-command"
|
"nix-command"
|
||||||
"flakes"
|
"flakes"
|
||||||
];
|
];
|
||||||
|
system.stateVersion = "26.05";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,46 +2,36 @@
|
||||||
flake.nixosModules.packages = { pkgs, ... }: {
|
flake.nixosModules.packages = { pkgs, ... }: {
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
programs.niri.enable = true;
|
programs.niri.enable = true;
|
||||||
|
services.displayManager.gdm.enable = true;
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
stow
|
|
||||||
ufetch
|
ufetch
|
||||||
rbw
|
rbw
|
||||||
pinentry-gnome3
|
pinentry-gnome3
|
||||||
nixd
|
nixd
|
||||||
nixfmt
|
nixfmt
|
||||||
xournalpp
|
xournalpp
|
||||||
rnote
|
|
||||||
btop
|
|
||||||
chromium
|
chromium
|
||||||
quickshell
|
|
||||||
wl-clipboard
|
wl-clipboard
|
||||||
adw-gtk3
|
|
||||||
polkit_gnome
|
polkit_gnome
|
||||||
xwayland-satellite
|
xwayland-satellite
|
||||||
nemo
|
nautilus
|
||||||
libwacom
|
libwacom
|
||||||
devenv
|
devenv
|
||||||
kdePackages.qt6ct
|
|
||||||
gcc
|
gcc
|
||||||
clang-tools
|
|
||||||
clang
|
|
||||||
gdb
|
gdb
|
||||||
|
clang-tools
|
||||||
gnumake
|
gnumake
|
||||||
libreoffice
|
|
||||||
ripgrep
|
ripgrep
|
||||||
jq
|
jq
|
||||||
nmgui
|
|
||||||
kdePackages.qtdeclarative
|
kdePackages.qtdeclarative
|
||||||
gsettings-desktop-schemas
|
brightnessctl
|
||||||
glib
|
libreoffice-stable
|
||||||
|
ani-cli
|
||||||
|
ryubing
|
||||||
];
|
];
|
||||||
fonts.packages = with pkgs; [
|
fonts.packages = with pkgs; [
|
||||||
jetbrains-mono
|
|
||||||
nerd-fonts.jetbrains-mono
|
|
||||||
noto-fonts
|
|
||||||
noto-fonts-cjk-sans
|
|
||||||
noto-fonts-color-emoji
|
|
||||||
inter
|
inter
|
||||||
|
noto-fonts
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -15,20 +15,34 @@
|
||||||
home-manager.useGlobalPkgs = true;
|
home-manager.useGlobalPkgs = true;
|
||||||
home-manager.useUserPackages = true;
|
home-manager.useUserPackages = true;
|
||||||
home-manager.extraSpecialArgs = { inherit inputs; };
|
home-manager.extraSpecialArgs = { inherit inputs; };
|
||||||
home-manager.users.lucy = {
|
home-manager.users.lucy = { config, lib, ... }: {
|
||||||
home.username = "lucy";
|
home.username = "lucy";
|
||||||
home.homeDirectory = "/home/lucy";
|
home.homeDirectory = "/home/lucy";
|
||||||
home.stateVersion = "25.11";
|
home.stateVersion = "25.11";
|
||||||
|
home.activation.reloadQuickshell = lib.hm.dag.entryAfter [ "writeBoundary" ] ''
|
||||||
|
qs=${lib.getExe' config.programs.quickshell.package "qs"}
|
||||||
|
runtime_dir="''${XDG_RUNTIME_DIR:-/run/user/$(id -u)}"
|
||||||
|
if run --silence env XDG_RUNTIME_DIR="$runtime_dir" "$qs" ipc show; then
|
||||||
|
run --silence env XDG_RUNTIME_DIR="$runtime_dir" "$qs" ipc call config reload ||
|
||||||
|
warnEcho "Quickshell is running, but 'qs ipc call config reload' failed"
|
||||||
|
fi
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
home-manager.sharedModules = with self.homeModules; [
|
home-manager.sharedModules = with self.homeModules; [
|
||||||
|
btop
|
||||||
|
clangd
|
||||||
nixcord
|
nixcord
|
||||||
ghostty
|
ghostty
|
||||||
|
hermes
|
||||||
niri
|
niri
|
||||||
emacs
|
emacs
|
||||||
git
|
git
|
||||||
homeStylix
|
stylix
|
||||||
fuzzel
|
fuzzel
|
||||||
|
quickshell
|
||||||
|
spotify
|
||||||
|
syncthing
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
15
modules/system/hardware/bluetooth.nix
Normal file
15
modules/system/hardware/bluetooth.nix
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
flake.nixosModules.bluetooth = {
|
||||||
|
hardware.bluetooth = {
|
||||||
|
enable = true;
|
||||||
|
powerOnBoot = false;
|
||||||
|
input.General.ClassicBondedOnly = false;
|
||||||
|
settings = {
|
||||||
|
General = {
|
||||||
|
Experimental = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
18
modules/system/hardware/nvidia.nix
Normal file
18
modules/system/hardware/nvidia.nix
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.nixosModules.nvidia = { config, ... }: {
|
||||||
|
# Enable OpenGL
|
||||||
|
hardware.graphics = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.xserver.videoDrivers = [ "nvidia" ];
|
||||||
|
hardware.nvidia = {
|
||||||
|
modesetting.enable = true;
|
||||||
|
powerManagement.enable = false;
|
||||||
|
powerManagement.finegrained = false;
|
||||||
|
open = true;
|
||||||
|
nvidiaSettings = true;
|
||||||
|
package = config.boot.kernelPackages.nvidiaPackages.stable;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
43
modules/system/hosts/nerv/hardware-configuration.nix
Normal file
43
modules/system/hosts/nerv/hardware-configuration.nix
Normal file
|
|
@ -0,0 +1,43 @@
|
||||||
|
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||||
|
# and may be overwritten by future invocations. Please make changes
|
||||||
|
# to /etc/nixos/configuration.nix instead.
|
||||||
|
{ lib, config, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
flake.nixosModules.nerv = { config, ... }: {
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = [
|
||||||
|
"nvme"
|
||||||
|
"xhci_pci"
|
||||||
|
"ahci"
|
||||||
|
"usbhid"
|
||||||
|
"usb_storage"
|
||||||
|
"sd_mod"
|
||||||
|
];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-amd" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" = {
|
||||||
|
device = "/dev/disk/by-uuid/48badf37-8adb-48d0-b861-fbf71cbaddd7";
|
||||||
|
fsType = "xfs";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot" = {
|
||||||
|
device = "/dev/disk/by-uuid/DC66-ACA6";
|
||||||
|
fsType = "vfat";
|
||||||
|
options = [
|
||||||
|
"fmask=0077"
|
||||||
|
"dmask=0077"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [
|
||||||
|
{ device = "/dev/disk/by-uuid/3b0e79c9-e3d8-4b58-99b4-63c98309ac85"; }
|
||||||
|
];
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
8
modules/system/hosts/nerv/quirks.nix
Normal file
8
modules/system/hosts/nerv/quirks.nix
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.nixosModules.nerv_quirks = { config, ... }: {
|
||||||
|
config = {
|
||||||
|
networking.hostName = "nerv";
|
||||||
|
dualBoot = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
49
modules/system/hosts/seele/hardware-configuration.nix
Normal file
49
modules/system/hosts/seele/hardware-configuration.nix
Normal file
|
|
@ -0,0 +1,49 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
modulesPath,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
{
|
||||||
|
flake.nixosModules.seele =
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
boot.initrd.availableKernelModules = [
|
||||||
|
"xhci_pci"
|
||||||
|
"nvme"
|
||||||
|
"usb_storage"
|
||||||
|
"sd_mod"
|
||||||
|
"sdhci_pci"
|
||||||
|
];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" = {
|
||||||
|
device = "/dev/disk/by-uuid/629196f0-60e9-476e-b294-0d22fd7279c4";
|
||||||
|
fsType = "xfs";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot" = {
|
||||||
|
device = "/dev/disk/by-uuid/2474-C1E6";
|
||||||
|
fsType = "vfat";
|
||||||
|
options = [
|
||||||
|
"fmask=0077"
|
||||||
|
"dmask=0077"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [
|
||||||
|
{ device = "/dev/disk/by-uuid/166d1fb4-527f-4fda-a6bf-85aad4a4f917"; }
|
||||||
|
];
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
};
|
||||||
|
}
|
||||||
5
modules/system/hosts/seele/quirks.nix
Normal file
5
modules/system/hosts/seele/quirks.nix
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.nixosModules.seele_quirks = {
|
||||||
|
networking.hostName = "seele";
|
||||||
|
};
|
||||||
|
}
|
||||||
11
modules/system/programs/chromium.nix
Normal file
11
modules/system/programs/chromium.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.nixosModules.chromium = {
|
||||||
|
programs.chromium = {
|
||||||
|
enable = true;
|
||||||
|
extensions = [
|
||||||
|
"nngceckbapebfimnlniiiahkandclblb" # bitwarden
|
||||||
|
"ddkjiahejlhfcafbddmgiahcphecmpfh" # ublock origin lite
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
{ ... }: {
|
{ ... }: {
|
||||||
flake.nixosModules.programs = {
|
flake.nixosModules.programs = {
|
||||||
programs.niri.enable = true;
|
programs.niri.enable = true;
|
||||||
programs.steam.enable = true;
|
|
||||||
programs.direnv.enable = true;
|
programs.direnv.enable = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
26
modules/system/programs/gaming.nix
Normal file
26
modules/system/programs/gaming.nix
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
{
|
||||||
|
flake.nixosModules.gaming =
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
programs.steam = {
|
||||||
|
enable = true;
|
||||||
|
extraCompatPackages = with pkgs; [ proton-ge-bin ];
|
||||||
|
protontricks.enable = true;
|
||||||
|
remotePlay.openFirewall = true;
|
||||||
|
localNetworkGameTransfers.openFirewall = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.gamescope = {
|
||||||
|
enable = true;
|
||||||
|
capSysNice = true;
|
||||||
|
enableWsi = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.gamemode.enable = true;
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
heroic # Epic-Fassung von Rocket League (braucht GE-Proton)
|
||||||
|
umu-launcher # Proton-Runtime für Heroic / Nicht-Steam-Games
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
6
modules/system/programs/nautilus.nix
Normal file
6
modules/system/programs/nautilus.nix
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
{ ... }: {
|
||||||
|
flake.nixosModules.nautilus = {
|
||||||
|
services.gvfs.enable = true;
|
||||||
|
services.udisks2.enable = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -1,11 +1,11 @@
|
||||||
{ inputs, ... }: {
|
{ inputs, ... }: {
|
||||||
flake.nixosModules.myStylix = { pkgs, ... }: {
|
flake.nixosModules.stylix = { pkgs, ... }: {
|
||||||
imports = [
|
imports = [
|
||||||
inputs.stylix.nixosModules.stylix
|
inputs.stylix.nixosModules.stylix
|
||||||
];
|
];
|
||||||
stylix = {
|
stylix = {
|
||||||
enable = true;
|
enable = true;
|
||||||
base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-hard.yaml";
|
base16Scheme = "${pkgs.base16-schemes}/share/themes/tokyo-night-dark.yaml";
|
||||||
cursor = {
|
cursor = {
|
||||||
name = "macOS";
|
name = "macOS";
|
||||||
package = pkgs.apple-cursor;
|
package = pkgs.apple-cursor;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
{ ... }: {
|
{ ... }: {
|
||||||
flake.nixosModules.stylix_fonts = { pkgs, config, ... }: {
|
flake.nixosModules.stylix_fonts = { pkgs, config, ... }: {
|
||||||
stylix.fonts = {
|
stylix.fonts = {
|
||||||
|
sizes.terminal = 14;
|
||||||
serif = {
|
serif = {
|
||||||
package = config.stylix.fonts.monospace.package;
|
package = config.stylix.fonts.monospace.package;
|
||||||
name = config.stylix.fonts.monospace.name;
|
name = config.stylix.fonts.monospace.name;
|
||||||
|
|
@ -12,8 +13,8 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
monospace = {
|
monospace = {
|
||||||
package = pkgs.iosevka;
|
package = pkgs.maple-mono.Normal-TTF;
|
||||||
name = "Iosevka";
|
name = "Maple Mono Normal";
|
||||||
};
|
};
|
||||||
|
|
||||||
emoji = {
|
emoji = {
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,9 @@
|
||||||
{ inputs, ... }: {
|
{ inputs, ... }: {
|
||||||
flake.nixosModules.stylixTargets = {
|
flake.nixosModules.stylix_targets = {
|
||||||
stylix.autoEnable = false;
|
stylix.autoEnable = false;
|
||||||
stylix.targets = {
|
stylix.targets = {
|
||||||
gtk.enable = true;
|
gtk.enable = true;
|
||||||
|
qt.enable = true;
|
||||||
chromium.enable = true;
|
chromium.enable = true;
|
||||||
console.enable = true;
|
console.enable = true;
|
||||||
font-packages.enable = true;
|
font-packages.enable = true;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue