mirror of
https://forge.katzen.cafe/schrottkatze/nix-configs.git
synced 2025-11-17 09:09:42 +01:00
Compare commits
18 commits
4488cbcf1b
...
01e6551935
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
01e6551935 |
||
|
|
a1d636e330 |
||
|
|
772c6311d0 |
||
|
|
2390273f53 |
||
|
|
056661f6f8 |
||
|
|
500c18b76a |
||
|
|
df0ffea214 |
||
|
|
4c996f831a |
||
|
|
bd29a1c80f |
||
|
|
b7d7dcb75e |
||
|
|
0bbb0aa204 |
||
|
|
49298541e5 |
||
|
|
9379b9c61b |
||
|
|
8b6d55aad6 |
||
|
|
6ec141902a |
||
|
|
2de002ef1b |
||
|
|
5b7e15db62 |
||
|
|
63493fd366 |
74 changed files with 699 additions and 4089 deletions
57
common.nix
57
common.nix
|
|
@ -12,29 +12,10 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
imports = [lix-module.nixosModules.default];
|
imports = [lix-module.nixosModules.default];
|
||||||
nix = {
|
|
||||||
extraOptions = ''
|
|
||||||
experimental-features = nix-command flakes
|
|
||||||
keep-outputs = true
|
|
||||||
keep-derivations = true
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
nixpkgs = {
|
|
||||||
config = {
|
|
||||||
allowUnfree = true;
|
|
||||||
permittedInsecurePackages = [
|
|
||||||
"electron-27.3.11"
|
|
||||||
"nodejs-16.20.0"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
overlays = [rs-programs niri.overlays.niri];
|
|
||||||
};
|
|
||||||
|
|
||||||
environment = {
|
environment = {
|
||||||
systemPackages = with pkgs; [
|
systemPackages = with pkgs; [
|
||||||
overskride
|
overskride
|
||||||
pulsemixer
|
|
||||||
|
|
||||||
htmlq
|
htmlq
|
||||||
|
|
||||||
|
|
@ -88,18 +69,14 @@ with builtins; {
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
networking = {
|
hardware.graphics.enable = true;
|
||||||
networkmanager = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
systemd-lock-handler.enable = true;
|
systemd-lock-handler.enable = true;
|
||||||
openssh = {
|
openssh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
# settings.PasswordAuthentication = false;
|
settings.PasswordAuthentication = false;
|
||||||
# settings.KbdInteractiveAuthentication = false;
|
settings.KbdInteractiveAuthentication = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -116,31 +93,11 @@ with builtins; {
|
||||||
|
|
||||||
hardware.gpgSmartcards.enable = true;
|
hardware.gpgSmartcards.enable = true;
|
||||||
|
|
||||||
time.timeZone = "Europe/Berlin";
|
|
||||||
|
|
||||||
home-manager.users.jade = {
|
|
||||||
nixosConfig,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
home.sessionVariables.TZ = nixosConfig.time.timeZone;
|
|
||||||
};
|
|
||||||
|
|
||||||
nixpkgs.config.packageOverrides = pkgs: {
|
|
||||||
sudo = pkgs.sudo.override {withInsults = true;};
|
|
||||||
};
|
|
||||||
security.sudo.extraConfig = "Defaults insults";
|
|
||||||
|
|
||||||
boot.kernel.sysctl."vm.max_map_count" = 2147483642;
|
boot.kernel.sysctl."vm.max_map_count" = 2147483642;
|
||||||
|
|
||||||
hardware = {
|
hardware = {
|
||||||
uinput.enable = true;
|
uinput.enable = true;
|
||||||
bluetooth.enable = true;
|
bluetooth.enable = true;
|
||||||
# keyboard.uhk.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.avahi = {
|
|
||||||
enable = true;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
|
|
@ -154,12 +111,4 @@ with builtins; {
|
||||||
enable = true;
|
enable = true;
|
||||||
algorithm = "zstd";
|
algorithm = "zstd";
|
||||||
};
|
};
|
||||||
|
|
||||||
users.defaultUserShell = pkgs.nushell;
|
|
||||||
|
|
||||||
nix.gc = {
|
|
||||||
automatic = true;
|
|
||||||
dates = "weekly";
|
|
||||||
options = "--delete-older-than 60d";
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
471
flake.lock
generated
471
flake.lock
generated
|
|
@ -1,5 +1,72 @@
|
||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
|
"base16": {
|
||||||
|
"inputs": {
|
||||||
|
"fromYaml": "fromYaml"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1732200724,
|
||||||
|
"narHash": "sha256-+R1BH5wHhfnycySb7Sy5KbYEaTJZWm1h+LW1OtyhiTs=",
|
||||||
|
"owner": "SenchoPens",
|
||||||
|
"repo": "base16.nix",
|
||||||
|
"rev": "153d52373b0fb2d343592871009a286ec8837aec",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "SenchoPens",
|
||||||
|
"repo": "base16.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"base16-fish": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1622559957,
|
||||||
|
"narHash": "sha256-PebymhVYbL8trDVVXxCvZgc0S5VxI7I1Hv4RMSquTpA=",
|
||||||
|
"owner": "tomyun",
|
||||||
|
"repo": "base16-fish",
|
||||||
|
"rev": "2f6dd973a9075dabccd26f1cded09508180bf5fe",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tomyun",
|
||||||
|
"repo": "base16-fish",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"base16-helix": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1736852337,
|
||||||
|
"narHash": "sha256-esD42YdgLlEh7koBrSqcT7p2fsMctPAcGl/+2sYJa2o=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-helix",
|
||||||
|
"rev": "03860521c40b0b9c04818f2218d9cc9efc21e7a5",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-helix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"base16-vim": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1732806396,
|
||||||
|
"narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-vim",
|
||||||
|
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-vim",
|
||||||
|
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"crane": {
|
"crane": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1742394900,
|
"lastModified": 1742394900,
|
||||||
|
|
@ -73,7 +140,60 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"firefox-gnome-theme": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1741628778,
|
||||||
|
"narHash": "sha256-RsvHGNTmO2e/eVfgYK7g+eYEdwwh7SbZa+gZkT24MEA=",
|
||||||
|
"owner": "rafaelmardojai",
|
||||||
|
"repo": "firefox-gnome-theme",
|
||||||
|
"rev": "5a81d390bb64afd4e81221749ec4bffcbeb5fa80",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "rafaelmardojai",
|
||||||
|
"repo": "firefox-gnome-theme",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-compat": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1733328505,
|
||||||
|
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-parts": {
|
"flake-parts": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"stylix",
|
||||||
|
"nur",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1733312601,
|
||||||
|
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-lib": "nixpkgs-lib"
|
"nixpkgs-lib": "nixpkgs-lib"
|
||||||
},
|
},
|
||||||
|
|
@ -109,6 +229,27 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-utils_2": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": [
|
||||||
|
"stylix",
|
||||||
|
"systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1731533236,
|
||||||
|
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flakey-profile": {
|
"flakey-profile": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1712898590,
|
"lastModified": 1712898590,
|
||||||
|
|
@ -124,6 +265,87 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"fromYaml": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1731966426,
|
||||||
|
"narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=",
|
||||||
|
"owner": "SenchoPens",
|
||||||
|
"repo": "fromYaml",
|
||||||
|
"rev": "106af9e2f715e2d828df706c386a685698f3223b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "SenchoPens",
|
||||||
|
"repo": "fromYaml",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"git-hooks": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": [
|
||||||
|
"stylix",
|
||||||
|
"flake-compat"
|
||||||
|
],
|
||||||
|
"gitignore": "gitignore",
|
||||||
|
"nixpkgs": [
|
||||||
|
"stylix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1741379162,
|
||||||
|
"narHash": "sha256-srpAbmJapkaqGRE3ytf3bj4XshspVR5964OX5LfjDWc=",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "git-hooks.nix",
|
||||||
|
"rev": "b5a62751225b2f62ff3147d0a334055ebadcd5cc",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "git-hooks.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"gitignore": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"stylix",
|
||||||
|
"git-hooks",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1709087332,
|
||||||
|
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "gitignore.nix",
|
||||||
|
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "gitignore.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"gnome-shell": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1732369855,
|
||||||
|
"narHash": "sha256-JhUWbcYPjHO3Xs3x9/Z9RuqXbcp5yhPluGjwsdE2GMg=",
|
||||||
|
"owner": "GNOME",
|
||||||
|
"repo": "gnome-shell",
|
||||||
|
"rev": "dadd58f630eeea41d645ee225a63f719390829dc",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "GNOME",
|
||||||
|
"ref": "47.2",
|
||||||
|
"repo": "gnome-shell",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
|
@ -144,6 +366,27 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"home-manager_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"stylix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1741635347,
|
||||||
|
"narHash": "sha256-2aYfV44h18alHXopyfL4D9GsnpE5XlSVkp4MGe586VU=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "7fb8678716c158642ac42f9ff7a18c0800fea551",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"lix": {
|
"lix": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
|
|
@ -181,19 +424,6 @@
|
||||||
"url": "https://git.lix.systems/lix-project/nixos-module"
|
"url": "https://git.lix.systems/lix-project/nixos-module"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"mac-brcm-fw": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1727366922,
|
|
||||||
"narHash": "sha256-+kW8ogc6DykjMVlrr+3vWKs9ZUdJ9EW72LbY7k/Qvh4=",
|
|
||||||
"path": "/home/jade/nix-configs/mac-brcm-fw",
|
|
||||||
"type": "path"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"path": "/home/jade/nix-configs/mac-brcm-fw",
|
|
||||||
"type": "path"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"niri": {
|
"niri": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"niri-stable": "niri-stable",
|
"niri-stable": "niri-stable",
|
||||||
|
|
@ -252,18 +482,16 @@
|
||||||
},
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1687903496,
|
"lastModified": 1742806253,
|
||||||
"narHash": "sha256-4PPwbFM4dNqso3zBya5rgfRvnBoIbN2J7qZ2ZpRyOUc=",
|
"narHash": "sha256-zvQ4GsCJT6MTOzPKLmlFyM+lxo0JGQ0cSFaZSACmWfY=",
|
||||||
"owner": "networkException",
|
"owner": "NixOS",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "8e28b9ee431b265d1fc74b8b819ea0816344c4a1",
|
"rev": "ecaa2d911e77c265c2a5bac8b583c40b0f151726",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "networkException",
|
"id": "nixos-hardware",
|
||||||
"ref": "apple-t2-init",
|
"type": "indirect"
|
||||||
"repo": "nixos-hardware",
|
|
||||||
"type": "github"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
|
|
@ -356,6 +584,22 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_3": {
|
"nixpkgs_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1741513245,
|
||||||
|
"narHash": "sha256-7rTAMNTY1xoBwz0h7ZMtEcd8LELk9R5TzBPoHuhNSCk=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "e3e32b642a31e6714ec1b712de8c91a3352ce7e1",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726937504,
|
"lastModified": 1726937504,
|
||||||
"narHash": "sha256-bvGoiQBvponpZh8ClUcmJ6QnsNKw0EMrCQJARK3bI1c=",
|
"narHash": "sha256-bvGoiQBvponpZh8ClUcmJ6QnsNKw0EMrCQJARK3bI1c=",
|
||||||
|
|
@ -371,18 +615,41 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nur": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-parts": "flake-parts",
|
||||||
|
"nixpkgs": [
|
||||||
|
"stylix",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"treefmt-nix": "treefmt-nix"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1741693509,
|
||||||
|
"narHash": "sha256-emkxnsZstiJWmGACimyAYqIKz2Qz5We5h1oBVDyQjLw=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "NUR",
|
||||||
|
"rev": "5479646b2574837f1899da78bdf9a48b75a9fb27",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "NUR",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"crane": "crane",
|
"crane": "crane",
|
||||||
"fenix": "fenix",
|
"fenix": "fenix",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"lix-module": "lix-module",
|
"lix-module": "lix-module",
|
||||||
"mac-brcm-fw": "mac-brcm-fw",
|
|
||||||
"niri": "niri",
|
"niri": "niri",
|
||||||
"nixos-hardware": "nixos-hardware",
|
"nixos-hardware": "nixos-hardware",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixpkgs": "nixpkgs_2",
|
||||||
"nixpkgs-stable": "nixpkgs-stable_2",
|
"nixpkgs-stable": "nixpkgs-stable_2",
|
||||||
"nixpkgs-unstable-small": "nixpkgs-unstable-small",
|
"nixpkgs-unstable-small": "nixpkgs-unstable-small",
|
||||||
|
"stylix": "stylix",
|
||||||
"typst-within": "typst-within"
|
"typst-within": "typst-within"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
@ -432,6 +699,41 @@
|
||||||
"url": "https://static.rust-lang.org/dist/channel-rust-1.83.0.toml"
|
"url": "https://static.rust-lang.org/dist/channel-rust-1.83.0.toml"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"stylix": {
|
||||||
|
"inputs": {
|
||||||
|
"base16": "base16",
|
||||||
|
"base16-fish": "base16-fish",
|
||||||
|
"base16-helix": "base16-helix",
|
||||||
|
"base16-vim": "base16-vim",
|
||||||
|
"firefox-gnome-theme": "firefox-gnome-theme",
|
||||||
|
"flake-compat": "flake-compat",
|
||||||
|
"flake-utils": "flake-utils_2",
|
||||||
|
"git-hooks": "git-hooks",
|
||||||
|
"gnome-shell": "gnome-shell",
|
||||||
|
"home-manager": "home-manager_2",
|
||||||
|
"nixpkgs": "nixpkgs_3",
|
||||||
|
"nur": "nur",
|
||||||
|
"systems": "systems_2",
|
||||||
|
"tinted-foot": "tinted-foot",
|
||||||
|
"tinted-kitty": "tinted-kitty",
|
||||||
|
"tinted-schemes": "tinted-schemes",
|
||||||
|
"tinted-tmux": "tinted-tmux",
|
||||||
|
"tinted-zed": "tinted-zed"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1743075971,
|
||||||
|
"narHash": "sha256-8fSI6C19ZTcHgvoLK17wfEEVI08tgnZfSLgVe3E/22w=",
|
||||||
|
"owner": "danth",
|
||||||
|
"repo": "stylix",
|
||||||
|
"rev": "2fb8321ea16c595e0208b22021ddaf1f471c634a",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "danth",
|
||||||
|
"repo": "stylix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"systems": {
|
"systems": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
|
|
@ -462,14 +764,133 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"systems_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-foot": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1726913040,
|
||||||
|
"narHash": "sha256-+eDZPkw7efMNUf3/Pv0EmsidqdwNJ1TaOum6k7lngDQ=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-foot",
|
||||||
|
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-foot",
|
||||||
|
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-kitty": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1716423189,
|
||||||
|
"narHash": "sha256-2xF3sH7UIwegn+2gKzMpFi3pk5DlIlM18+vj17Uf82U=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-kitty",
|
||||||
|
"rev": "eb39e141db14baef052893285df9f266df041ff8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-kitty",
|
||||||
|
"rev": "eb39e141db14baef052893285df9f266df041ff8",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-schemes": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1741468895,
|
||||||
|
"narHash": "sha256-YKM1RJbL68Yp2vESBqeZQBjTETXo8mCTTzLZyckCfZk=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "schemes",
|
||||||
|
"rev": "47c8c7726e98069cade5827e5fb2bfee02ce6991",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "schemes",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-tmux": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1740877430,
|
||||||
|
"narHash": "sha256-zWcCXgdC4/owfH/eEXx26y5BLzTrefjtSLFHWVD5KxU=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-tmux",
|
||||||
|
"rev": "d48ee86394cbe45b112ba23ab63e33656090edb4",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-tmux",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-zed": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1725758778,
|
||||||
|
"narHash": "sha256-8P1b6mJWyYcu36WRlSVbuj575QWIFZALZMTg5ID/sM4=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-zed",
|
||||||
|
"rev": "122c9e5c0e6f27211361a04fae92df97940eccf9",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-zed",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"treefmt-nix": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"stylix",
|
||||||
|
"nur",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1733222881,
|
||||||
|
"narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "treefmt-nix",
|
||||||
|
"rev": "49717b5af6f80172275d47a418c9719a31a78b53",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "treefmt-nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"typst-within": {
|
"typst-within": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"crane": "crane_2",
|
"crane": "crane_2",
|
||||||
"fenix": "fenix_2",
|
"fenix": "fenix_2",
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts_2",
|
||||||
"nixpkgs": "nixpkgs_3",
|
"nixpkgs": "nixpkgs_4",
|
||||||
"rust-manifest": "rust-manifest",
|
"rust-manifest": "rust-manifest",
|
||||||
"systems": "systems_2"
|
"systems": "systems_3"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1739736913,
|
"lastModified": 1739736913,
|
||||||
|
|
|
||||||
46
flake.nix
46
flake.nix
|
|
@ -6,9 +6,9 @@
|
||||||
nixpkgs-stable.url = "nixpkgs/nixos-24.11";
|
nixpkgs-stable.url = "nixpkgs/nixos-24.11";
|
||||||
nixpkgs-unstable-small.url = "nixpkgs/nixos-unstable-small";
|
nixpkgs-unstable-small.url = "nixpkgs/nixos-unstable-small";
|
||||||
niri.url = "github:sodiboo/niri-flake";
|
niri.url = "github:sodiboo/niri-flake";
|
||||||
typst-within = {
|
stylix.url = "github:danth/stylix";
|
||||||
url = "github:schrottkatze/typst";
|
typst-within.url = "github:schrottkatze/typst";
|
||||||
};
|
crane.url = "github:ipetkov/crane";
|
||||||
lix-module = {
|
lix-module = {
|
||||||
url = "git+https://git.lix.systems/lix-project/nixos-module";
|
url = "git+https://git.lix.systems/lix-project/nixos-module";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
@ -17,14 +17,6 @@
|
||||||
url = "github:nix-community/home-manager";
|
url = "github:nix-community/home-manager";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
nixos-hardware.url = "github:networkException/nixos-hardware/apple-t2-init";
|
|
||||||
mac-brcm-fw = {
|
|
||||||
url = "path:/home/jade/nix-configs/mac-brcm-fw";
|
|
||||||
flake = false;
|
|
||||||
};
|
|
||||||
crane = {
|
|
||||||
url = "github:ipetkov/crane";
|
|
||||||
};
|
|
||||||
fenix = {
|
fenix = {
|
||||||
url = "github:nix-community/fenix";
|
url = "github:nix-community/fenix";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
@ -40,8 +32,8 @@
|
||||||
typst-within,
|
typst-within,
|
||||||
home-manager,
|
home-manager,
|
||||||
nixos-hardware,
|
nixos-hardware,
|
||||||
mac-brcm-fw,
|
|
||||||
niri,
|
niri,
|
||||||
|
stylix,
|
||||||
fenix,
|
fenix,
|
||||||
crane,
|
crane,
|
||||||
...
|
...
|
||||||
|
|
@ -78,6 +70,7 @@
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
modules = [
|
modules = [
|
||||||
inputs.niri.nixosModules.niri
|
inputs.niri.nixosModules.niri
|
||||||
|
stylix.nixosModules.stylix
|
||||||
./hosts/monosodium-glutamate-g/configuration.nix
|
./hosts/monosodium-glutamate-g/configuration.nix
|
||||||
home-manager.nixosModules.home-manager
|
home-manager.nixosModules.home-manager
|
||||||
{
|
{
|
||||||
|
|
@ -104,6 +97,7 @@
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
modules = [
|
modules = [
|
||||||
inputs.niri.nixosModules.niri
|
inputs.niri.nixosModules.niri
|
||||||
|
stylix.nixosModules.stylix
|
||||||
./hosts/denkbrett/configuration.nix
|
./hosts/denkbrett/configuration.nix
|
||||||
home-manager.nixosModules.home-manager
|
home-manager.nixosModules.home-manager
|
||||||
{
|
{
|
||||||
|
|
@ -123,34 +117,6 @@
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
potatobook-g = nixpkgs.lib.nixosSystem {
|
|
||||||
specialArgs = {
|
|
||||||
inherit inputs pkgs-unstable-small rs-programs lix-module niri;
|
|
||||||
};
|
|
||||||
system = "x86_64-linux";
|
|
||||||
modules = [
|
|
||||||
inputs.niri.nixosModules.niri
|
|
||||||
"${mac-brcm-fw}"
|
|
||||||
./hosts/potatobook-g/configuration.nix
|
|
||||||
home-manager.nixosModules.home-manager
|
|
||||||
{
|
|
||||||
home-manager.useGlobalPkgs = true;
|
|
||||||
home-manager.useUserPackages = true;
|
|
||||||
home-manager.extraSpecialArgs = {
|
|
||||||
inherit pkgs-unstable-small pkgs-stable typst-within;
|
|
||||||
};
|
|
||||||
home-manager.users.jade = {
|
|
||||||
nixosConfig,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
home.sessionVariables.TZ = nixosConfig.time.timeZone;
|
|
||||||
home.stateVersion = "${nixosConfig.system.stateVersion}";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
nixos-hardware.nixosModules.apple-t2
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,7 @@
|
||||||
# Edit this configuration file to define what should be installed on
|
# Edit this configuration file to define what should be installed on
|
||||||
# your system. Help is available in the configuration.nix(5) man page
|
# your system. Help is available in the configuration.nix(5) man page
|
||||||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||||
{
|
{pkgs, ...}: {
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
nixpkgs.config.permittedInsecurePackages = [
|
nixpkgs.config.permittedInsecurePackages = [
|
||||||
"electron-25.9.0"
|
"electron-25.9.0"
|
||||||
"electron-27.3.11"
|
"electron-27.3.11"
|
||||||
|
|
@ -46,7 +41,6 @@
|
||||||
|
|
||||||
boot.binfmt.emulatedSystems = ["aarch64-linux"];
|
boot.binfmt.emulatedSystems = ["aarch64-linux"];
|
||||||
|
|
||||||
hardware.bluetooth.enable = true;
|
|
||||||
services.blueman.enable = true;
|
services.blueman.enable = true;
|
||||||
|
|
||||||
environment.systemPackages = [
|
environment.systemPackages = [
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,6 @@
|
||||||
gnome.gnome-keyring.enable = true;
|
gnome.gnome-keyring.enable = true;
|
||||||
};
|
};
|
||||||
hardware = {
|
hardware = {
|
||||||
bluetooth.enable = true;
|
|
||||||
keyboard.uhk.enable = true;
|
keyboard.uhk.enable = true;
|
||||||
enableRedistributableFirmware = true;
|
enableRedistributableFirmware = true;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -1,169 +0,0 @@
|
||||||
{pkgs, ...}: {
|
|
||||||
nix.settings = {
|
|
||||||
trusted-substituters = [
|
|
||||||
"https://t2linux.cachix.org"
|
|
||||||
];
|
|
||||||
trusted-public-keys = [
|
|
||||||
"t2linux.cachix.org-1:P733c5Gt1qTcxsm+Bae0renWnT8OLs0u9+yfaK2Bejw="
|
|
||||||
];
|
|
||||||
};
|
|
||||||
imports = [
|
|
||||||
./hardware-configuration.nix
|
|
||||||
../../common.nix
|
|
||||||
../../modules
|
|
||||||
#inputs.mms.module
|
|
||||||
];
|
|
||||||
|
|
||||||
#nixpkgs = {
|
|
||||||
#overlays = [
|
|
||||||
#(self: super: {
|
|
||||||
#linux_zen_xeniafied = pkgs.linuxPackagesFor (pkgs.linuxKernel.kernels.linux_zen.override {
|
|
||||||
#structuredExtraConfig = with lib.kernel; {
|
|
||||||
##"FB" = yes;
|
|
||||||
##"FRAMEBUFFER_CONSOLE" = yes;
|
|
||||||
##"VGA_CONSOLE" = yes;
|
|
||||||
##"VIDEO_SELECT" = yes;
|
|
||||||
#LOGO = lib.mkForce yes;
|
|
||||||
#LOGO_LINUX_CLUT224 = yes;
|
|
||||||
#};
|
|
||||||
#ignoreConfigErrors = true;
|
|
||||||
#});
|
|
||||||
#})
|
|
||||||
#];
|
|
||||||
#};
|
|
||||||
#boot.kernelPatches = [
|
|
||||||
#{
|
|
||||||
#name = "fomx";
|
|
||||||
#patch = ../other/0001-fomx.patch;
|
|
||||||
#}
|
|
||||||
#];
|
|
||||||
|
|
||||||
boot.binfmt.emulatedSystems = ["aarch64-linux"];
|
|
||||||
|
|
||||||
jade = {
|
|
||||||
flatpak.enable = true;
|
|
||||||
desktop = {
|
|
||||||
compositing.enable = true;
|
|
||||||
syncthing.enable = true;
|
|
||||||
kdeconnect.enable = true;
|
|
||||||
cloud.enable = true;
|
|
||||||
social.enable = true;
|
|
||||||
mail.enable = true;
|
|
||||||
gaming.enable = true;
|
|
||||||
evremap.enable = true;
|
|
||||||
};
|
|
||||||
terminal.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems = {
|
|
||||||
"/".options = ["compress=zstd:3"];
|
|
||||||
"/home".options = ["compress=zstd:3"];
|
|
||||||
"/nix".options = ["compress=zstd:3" "noatime"];
|
|
||||||
#"/swap".options = [ "noatime" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
boot.loader.systemd-boot.enable = true;
|
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
|
||||||
|
|
||||||
services.libinput.touchpad = {
|
|
||||||
disableWhileTyping = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
networking.hostName = "potatobook-g";
|
|
||||||
|
|
||||||
services.autorandr = {
|
|
||||||
enable = true;
|
|
||||||
profiles = {
|
|
||||||
"default" = {
|
|
||||||
config = {
|
|
||||||
"eDP-1" = {
|
|
||||||
enable = true;
|
|
||||||
mode = "1920x1200";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# hardware.keyboard.uhk.enable = true;
|
|
||||||
hardware.enableRedistributableFirmware = true;
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
android-tools
|
|
||||||
];
|
|
||||||
|
|
||||||
environment.pathsToLink = [
|
|
||||||
"/share/nix-direnv"
|
|
||||||
];
|
|
||||||
|
|
||||||
services.blueman.enable = true;
|
|
||||||
|
|
||||||
programs.adb.enable = true;
|
|
||||||
|
|
||||||
services.gnome.gnome-keyring.enable = true;
|
|
||||||
programs.seahorse.enable = true;
|
|
||||||
security.pam.services.jade.enableGnomeKeyring = true;
|
|
||||||
|
|
||||||
systemd.services."NetworkManager-wait-online".enable = false;
|
|
||||||
|
|
||||||
# services.pixiecore =
|
|
||||||
# let
|
|
||||||
# nixpkgs = builtins.getFlake "nixpkgs/nixos-unstable";
|
|
||||||
# sys = nixpkgs.lib.nixosSystem {
|
|
||||||
# system = "x86_64-linux";
|
|
||||||
# modules = [
|
|
||||||
# ({config, pkgs, lib, modulesPath, ...}: {
|
|
||||||
# imports = [
|
|
||||||
# (modulesPath + "/installer/netboot/netboot-base.nix")
|
|
||||||
# ];
|
|
||||||
|
|
||||||
# services.getty.autologinUser = lib.mkForce "root";
|
|
||||||
# console.keyMap = "de";
|
|
||||||
|
|
||||||
# system.stateVersion = config.system.nixos.release;
|
|
||||||
# environment.systemPackages = with pkgs; [
|
|
||||||
# helix nil git neofetch
|
|
||||||
# ];
|
|
||||||
|
|
||||||
# programs = {
|
|
||||||
# zsh = {
|
|
||||||
# enable = true;
|
|
||||||
# enableCompletion = true;
|
|
||||||
# };
|
|
||||||
# };
|
|
||||||
# })
|
|
||||||
# ];
|
|
||||||
# };
|
|
||||||
# build = sys.config.system.build;
|
|
||||||
# in {
|
|
||||||
# enable = true;
|
|
||||||
# openFirewall = true;
|
|
||||||
# kernel = "${build.kernel}/bzImage";
|
|
||||||
# initrd = "${build.netbootRamdisk}/initrd";
|
|
||||||
# cmdLine = "init=${build.toplevel}/init loglevel=4";
|
|
||||||
# };
|
|
||||||
|
|
||||||
systemd.services = {
|
|
||||||
create-swapfile = {
|
|
||||||
serviceConfig.Type = "oneshot";
|
|
||||||
wantedBy = ["swap-swapfile.swap"];
|
|
||||||
script = ''
|
|
||||||
swapfile="/swap/swapfile"
|
|
||||||
if [[ -f "$swapfile" ]]; then
|
|
||||||
echo "Swap file $swapfile already exists, taking no action"
|
|
||||||
else
|
|
||||||
echo "Setting up swap file $swapfile"
|
|
||||||
${pkgs.coreutils}/bin/truncate -s 0 "$swapfile"
|
|
||||||
${pkgs.e2fsprogs}/bin/chattr +C "$swapfile"
|
|
||||||
fi
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
services.logind.extraConfig = ''
|
|
||||||
RuntimeDirectorySize=12G
|
|
||||||
'';
|
|
||||||
|
|
||||||
# i rly should put that important big comment back here
|
|
||||||
system.stateVersion = "22.11"; # Did you read the comment?
|
|
||||||
}
|
|
||||||
|
|
@ -1,62 +0,0 @@
|
||||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
|
||||||
# and may be overwritten by future invocations. Please make changes
|
|
||||||
# to /etc/nixos/configuration.nix instead.
|
|
||||||
{
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
modulesPath,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [
|
|
||||||
(modulesPath + "/installer/scan/not-detected.nix")
|
|
||||||
];
|
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = ["xhci_pci" "nvme" "usbhid" "uas" "sd_mod"];
|
|
||||||
boot.initrd.kernelModules = [];
|
|
||||||
boot.kernelModules = ["kvm-intel"];
|
|
||||||
boot.extraModulePackages = [];
|
|
||||||
|
|
||||||
fileSystems."/" = {
|
|
||||||
device = "/dev/disk/by-uuid/f6d243ec-6be9-4551-8cbb-aefb7b691a62";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = ["subvol=root"];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/home" = {
|
|
||||||
device = "/dev/disk/by-uuid/f6d243ec-6be9-4551-8cbb-aefb7b691a62";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = ["subvol=home"];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/nix" = {
|
|
||||||
device = "/dev/disk/by-uuid/f6d243ec-6be9-4551-8cbb-aefb7b691a62";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = ["subvol=nix"];
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/boot" = {
|
|
||||||
device = "/dev/disk/by-uuid/5F66-17ED";
|
|
||||||
fsType = "vfat";
|
|
||||||
};
|
|
||||||
|
|
||||||
swapDevices = [
|
|
||||||
{
|
|
||||||
device = "/swap/swapfile";
|
|
||||||
size = 1024 * 12; # 12GB
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
|
||||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
|
||||||
# still possible to use this option, but it's recommended to use it in conjunction
|
|
||||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
|
||||||
networking.useDHCP = lib.mkDefault true;
|
|
||||||
# networking.interfaces.enp2s0f1u1.useDHCP = lib.mkDefault true;
|
|
||||||
# networking.interfaces.wlan0.useDHCP = lib.mkDefault true;
|
|
||||||
|
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
|
||||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
|
||||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
|
||||||
# high-resolution display
|
|
||||||
}
|
|
||||||
|
|
@ -1,11 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [
|
|
||||||
<nixpkgs/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix>
|
|
||||||
<nixpkgs/nixos/modules/installer/cd-dvd/channel.nix>
|
|
||||||
./configuration.nix
|
|
||||||
];
|
|
||||||
}
|
|
||||||
3
justfile
3
justfile
|
|
@ -12,9 +12,6 @@ tbuild:
|
||||||
update: update-typst-configs
|
update: update-typst-configs
|
||||||
nix flake update --commit-lock-file --log-format multiline
|
nix flake update --commit-lock-file --log-format multiline
|
||||||
|
|
||||||
build-mac:
|
|
||||||
sudo nixos-rebuild switch --flake . --impure --override-input mac-brcm-fw path:/home/jade/mac-brcm-fw --fast --log-format multiline
|
|
||||||
|
|
||||||
update-typst-configs:
|
update-typst-configs:
|
||||||
#!/usr/bin/env nu
|
#!/usr/bin/env nu
|
||||||
let file = './modules/desktop-environment/media/typst.nix';
|
let file = './modules/desktop-environment/media/typst.nix';
|
||||||
|
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
||||||
{...}: {}
|
|
||||||
# dummy
|
|
||||||
|
|
||||||
|
|
@ -2,10 +2,11 @@
|
||||||
imports = [
|
imports = [
|
||||||
./shell
|
./shell
|
||||||
./desktop
|
./desktop
|
||||||
|
./desktop-legacy
|
||||||
./hardware
|
./hardware
|
||||||
./firewall.nix
|
./net
|
||||||
./desktop-environment
|
|
||||||
./input
|
./input
|
||||||
./graphics.nix
|
./media
|
||||||
|
./nix.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,16 +0,0 @@
|
||||||
{...}: {
|
|
||||||
imports = [
|
|
||||||
./audio.nix
|
|
||||||
./eduroam.nix
|
|
||||||
./home
|
|
||||||
./media
|
|
||||||
./dm.nix
|
|
||||||
./tlp.nix
|
|
||||||
./locale.nix
|
|
||||||
./printing.nix
|
|
||||||
];
|
|
||||||
services.flatpak.enable = true;
|
|
||||||
security.polkit.enable = true;
|
|
||||||
services.illum.enable = true;
|
|
||||||
services.upower.enable = true;
|
|
||||||
}
|
|
||||||
52
modules/desktop-legacy/default.nix
Normal file
52
modules/desktop-legacy/default.nix
Normal file
|
|
@ -0,0 +1,52 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
with lib; {
|
||||||
|
imports = [
|
||||||
|
./gaming.nix
|
||||||
|
./syncthing.nix
|
||||||
|
./kdeconnect.nix
|
||||||
|
./social.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
programs.seahorse.enable = true;
|
||||||
|
security.pam.services.jade.enableGnomeKeyring = true;
|
||||||
|
|
||||||
|
virtualisation.libvirtd.enable = true;
|
||||||
|
|
||||||
|
programs.xss-lock = {
|
||||||
|
enable = true;
|
||||||
|
lockerCommand = "${pkgs.i3lock}/bin/i3lock -c 1d2021";
|
||||||
|
};
|
||||||
|
|
||||||
|
services.illum.enable = true;
|
||||||
|
services.smartd = {
|
||||||
|
enable = true;
|
||||||
|
notifications.test = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
|
programs.ssh = {
|
||||||
|
controlMaster = "yes";
|
||||||
|
};
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
just
|
||||||
|
bacon
|
||||||
|
|
||||||
|
magic-wormhole-rs
|
||||||
|
|
||||||
|
# filemanager
|
||||||
|
xfce.thunar
|
||||||
|
xfce.tumbler
|
||||||
|
xfce.thunar-archive-plugin
|
||||||
|
file-roller
|
||||||
|
|
||||||
|
# from environment.systemPackages cleanup
|
||||||
|
virt-manager
|
||||||
|
ddccontrol-db
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -11,10 +11,8 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
pavucontrol
|
|
||||||
volumeicon
|
|
||||||
playerctl
|
playerctl
|
||||||
|
pulsemixer
|
||||||
helvum
|
helvum
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
@ -1,60 +1,15 @@
|
||||||
{
|
{...}: {
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib; {
|
|
||||||
imports = [
|
imports = [
|
||||||
./gaming.nix
|
./audio.nix
|
||||||
# TODO: more fine grained choices, not every setup needs fspy or rawtherapee
|
./home
|
||||||
./syncthing.nix
|
./dm.nix
|
||||||
./kdeconnect.nix
|
./tlp.nix
|
||||||
|
./locale.nix
|
||||||
|
./printing.nix
|
||||||
./themeing.nix
|
./themeing.nix
|
||||||
./networking.nix
|
|
||||||
./social.nix
|
|
||||||
];
|
];
|
||||||
|
services.flatpak.enable = true;
|
||||||
programs.seahorse.enable = true;
|
security.polkit.enable = true;
|
||||||
security.pam.services.jade.enableGnomeKeyring = true;
|
|
||||||
|
|
||||||
virtualisation.libvirtd.enable = true;
|
|
||||||
|
|
||||||
programs.xss-lock = {
|
|
||||||
enable = true;
|
|
||||||
lockerCommand = "${pkgs.i3lock}/bin/i3lock -c 1d2021";
|
|
||||||
};
|
|
||||||
|
|
||||||
services.illum.enable = true;
|
services.illum.enable = true;
|
||||||
services.avahi = {
|
services.upower.enable = true;
|
||||||
enable = true;
|
|
||||||
nssmdns4 = true;
|
|
||||||
openFirewall = true;
|
|
||||||
};
|
|
||||||
services.smartd = {
|
|
||||||
enable = true;
|
|
||||||
notifications.test = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
home-manager.users.jade = {pkgs, ...}: {
|
|
||||||
programs.ssh = {
|
|
||||||
controlMaster = "yes";
|
|
||||||
};
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
just
|
|
||||||
bacon
|
|
||||||
|
|
||||||
magic-wormhole-rs
|
|
||||||
|
|
||||||
# filemanager
|
|
||||||
xfce.thunar
|
|
||||||
xfce.tumbler
|
|
||||||
xfce.thunar-archive-plugin
|
|
||||||
file-roller
|
|
||||||
|
|
||||||
# from environment.systemPackages cleanup
|
|
||||||
virt-manager
|
|
||||||
ddccontrol-db
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,12 +2,18 @@ label {
|
||||||
font: 14pt "Departure Mono Nerd Font";
|
font: 14pt "Departure Mono Nerd Font";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
button {
|
||||||
|
border-radius: 0px;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.background {
|
.background {
|
||||||
background-color: #1d2021;
|
background-color: #1d2021;
|
||||||
}
|
}
|
||||||
|
|
||||||
.workspaces button {
|
.workspaces button {
|
||||||
border: 0px;
|
border: 0px;
|
||||||
|
padding: 0 3px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.workspaces button.focused {
|
.workspaces button.focused {
|
||||||
|
|
@ -19,7 +19,7 @@
|
||||||
command = [
|
command = [
|
||||||
"${pkgs.swaybg}/bin/swaybg"
|
"${pkgs.swaybg}/bin/swaybg"
|
||||||
"-i"
|
"-i"
|
||||||
"${../../../../other/assets/wallpaper/wallpaper.jpg}"
|
"${./wallpaper.jpg}"
|
||||||
"-m"
|
"-m"
|
||||||
"fill"
|
"fill"
|
||||||
];
|
];
|
||||||
|
|
@ -4,7 +4,10 @@
|
||||||
binds = {
|
binds = {
|
||||||
"Print".action.screenshot = [];
|
"Print".action.screenshot = [];
|
||||||
"Ctrl+Print".action.screenshot-screen = [];
|
"Ctrl+Print".action.screenshot-screen = [];
|
||||||
"Alt+Print".action.screenshot-window = [];
|
"Shift+Print".action.screenshot-window = [];
|
||||||
|
"Mod+S".action.screenshot = [];
|
||||||
|
"Mod+Ctrl+S".action.screenshot-screen = [];
|
||||||
|
"Mod+Shift+S".action.screenshot-window = [];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
Before Width: | Height: | Size: 8.4 MiB After Width: | Height: | Size: 8.4 MiB |
|
|
@ -14,6 +14,7 @@
|
||||||
foreground = "#ebdbb2";
|
foreground = "#ebdbb2";
|
||||||
frame_color = "#504945";
|
frame_color = "#504945";
|
||||||
frame_width = 2;
|
frame_width = 2;
|
||||||
|
font = "Atkinson Hyperlegible";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
@ -1,16 +1,14 @@
|
||||||
{...}: {
|
{...}: {
|
||||||
programs.kitty = {
|
programs.kitty = {
|
||||||
enable = true;
|
enable = true;
|
||||||
font = {
|
font.size = 12;
|
||||||
name = "Departure Mono Nerd Font";
|
font.name = "Departure Mono Nerd Font";
|
||||||
size = 12;
|
|
||||||
};
|
|
||||||
shellIntegration.enableFishIntegration = false;
|
shellIntegration.enableFishIntegration = false;
|
||||||
keybindings = {
|
keybindings = {
|
||||||
"ctrl+shift+n" = "new_os_window_with_cwd";
|
"ctrl+shift+n" = "new_os_window_with_cwd";
|
||||||
};
|
};
|
||||||
settings = rec {
|
settings = rec {
|
||||||
#adjust_column_width = "70%";
|
adjust_column_width = "95%";
|
||||||
color0 = "#282828";
|
color0 = "#282828";
|
||||||
color8 = "#928374";
|
color8 = "#928374";
|
||||||
color1 = "#cc241d";
|
color1 = "#cc241d";
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
{...}: {
|
{...}: {
|
||||||
|
time.timeZone = "Europe/Berlin";
|
||||||
i18n.extraLocaleSettings = {
|
i18n.extraLocaleSettings = {
|
||||||
LC_ADDRESS = "de_DE.UTF-8";
|
LC_ADDRESS = "de_DE.UTF-8";
|
||||||
LC_IDENTIFICATION = "de_DE.UTF-8";
|
LC_IDENTIFICATION = "de_DE.UTF-8";
|
||||||
|
|
@ -1,69 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
addNuShebang = path:
|
|
||||||
builtins.concatStringsSep "\n\n" [
|
|
||||||
"#!${pkgs.nushell}/bin/nu"
|
|
||||||
(builtins.readFile path)
|
|
||||||
];
|
|
||||||
in {
|
|
||||||
config = {
|
|
||||||
networking = {
|
|
||||||
networkmanager = {
|
|
||||||
wifi.backend = "wpa_supplicant";
|
|
||||||
dispatcherScripts = [
|
|
||||||
{
|
|
||||||
type = "basic";
|
|
||||||
source = pkgs.writeText "dispatcher" (addNuShebang ../../other/scripts/dispatcher.nu);
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
hosts = {
|
|
||||||
"127.0.0.1" = [
|
|
||||||
"www.tiktok.com"
|
|
||||||
"www.twitter.com"
|
|
||||||
"www.instagram.com"
|
|
||||||
"www.facebook.com"
|
|
||||||
"www.snapchat.com"
|
|
||||||
|
|
||||||
"tiktok.com"
|
|
||||||
"twitter.com"
|
|
||||||
"instagram.com"
|
|
||||||
"facebook.com"
|
|
||||||
"snapchat.com"
|
|
||||||
|
|
||||||
"google-analytics.com"
|
|
||||||
"stats.g.doubleclick.net"
|
|
||||||
"googleadservices.com"
|
|
||||||
"googletagmanager.com"
|
|
||||||
"googletagservices.com"
|
|
||||||
"googlesyndication.com"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
environment.etc = with builtins; (
|
|
||||||
listToAttrs (
|
|
||||||
map (v: {
|
|
||||||
name = "networkhooks/${v}";
|
|
||||||
value = {
|
|
||||||
text = addNuShebang ../../other/scripts/networkhooks/${v};
|
|
||||||
mode = "0755";
|
|
||||||
};
|
|
||||||
})
|
|
||||||
(attrNames (readDir ../../other/scripts/networkhooks))
|
|
||||||
)
|
|
||||||
);
|
|
||||||
systemd.services."NetworkManager-wait-online".enable = false;
|
|
||||||
services.mullvad-vpn.enable = true;
|
|
||||||
home-manager.users.jade = {pkgs, ...}: {
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
networkmanagerapplet
|
|
||||||
mullvad-vpn
|
|
||||||
macchanger
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,43 +1,53 @@
|
||||||
{
|
{pkgs, ...}: {
|
||||||
config,
|
stylix = {
|
||||||
lib,
|
enable = true;
|
||||||
pkgs,
|
polarity = "dark";
|
||||||
...
|
base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-hard.yaml";
|
||||||
}: {
|
fonts = {
|
||||||
config = {
|
serif = {
|
||||||
fonts.packages = with pkgs; [
|
package = pkgs.libertine;
|
||||||
atkinson-hyperlegible
|
name = "Linux Libertine O";
|
||||||
];
|
|
||||||
home-manager.users.jade = {pkgs, ...}: {
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
gtk-engine-murrine
|
|
||||||
gruvbox-dark-gtk
|
|
||||||
gruvbox-dark-icons-gtk
|
|
||||||
];
|
|
||||||
gtk = {
|
|
||||||
enable = true;
|
|
||||||
cursorTheme = {
|
|
||||||
package = pkgs.phinger-cursors;
|
|
||||||
name = "phinger-cursors";
|
|
||||||
size = 30;
|
|
||||||
};
|
|
||||||
font = {
|
|
||||||
package = pkgs.atkinson-hyperlegible;
|
|
||||||
name = "Atkinson Hyperlegible";
|
|
||||||
size = 11.5;
|
|
||||||
};
|
|
||||||
iconTheme = {
|
|
||||||
package = pkgs.gruvbox-dark-icons-gtk;
|
|
||||||
name = "gruvbox-dark-icons";
|
|
||||||
};
|
|
||||||
theme = {
|
|
||||||
package = pkgs.gruvbox-dark-gtk;
|
|
||||||
name = "gruvbox-dark";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
qt = {
|
|
||||||
enable = true;
|
sansSerif = {
|
||||||
platformTheme.name = "gtk";
|
package = pkgs.atkinson-hyperlegible;
|
||||||
|
name = "Atkinson Hyperlegible";
|
||||||
|
};
|
||||||
|
|
||||||
|
monospace = {
|
||||||
|
package = pkgs.nerd-fonts.departure-mono;
|
||||||
|
name = "Departure Mono Nerd Font";
|
||||||
|
};
|
||||||
|
|
||||||
|
emoji = {
|
||||||
|
package = pkgs.noto-fonts-emoji;
|
||||||
|
name = "Noto Color Emoji";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
|
stylix.targets = {
|
||||||
|
firefox = {
|
||||||
|
profileNames = ["jade"];
|
||||||
|
};
|
||||||
|
helix.enable = false;
|
||||||
|
btop.enable = false;
|
||||||
|
nushell.enable = false;
|
||||||
|
starship.enable = false;
|
||||||
|
kitty.enable = false;
|
||||||
|
dunst.enable = false;
|
||||||
|
wofi.enable = false;
|
||||||
|
};
|
||||||
|
gtk = {
|
||||||
|
enable = true;
|
||||||
|
cursorTheme = {
|
||||||
|
package = pkgs.phinger-cursors;
|
||||||
|
name = "phinger-cursors";
|
||||||
|
size = 30;
|
||||||
|
};
|
||||||
|
iconTheme = {
|
||||||
|
package = pkgs.gruvbox-dark-icons-gtk;
|
||||||
|
name = "gruvbox-dark-icons";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
||||||
{...}: {
|
|
||||||
hardware.graphics.enable = true;
|
|
||||||
}
|
|
||||||
20
modules/net/default.nix
Normal file
20
modules/net/default.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
{...}: {
|
||||||
|
imports = [
|
||||||
|
./firewall.nix
|
||||||
|
./hosts.nix
|
||||||
|
./eduroam.nix
|
||||||
|
./dispatchers
|
||||||
|
];
|
||||||
|
networking.networkmanager.enable = true;
|
||||||
|
networking.networkmanager.wifi.backend = "wpa_supplicant";
|
||||||
|
|
||||||
|
systemd.services."NetworkManager-wait-online".enable = false;
|
||||||
|
services.mullvad-vpn.enable = true;
|
||||||
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
networkmanagerapplet
|
||||||
|
mullvad-vpn
|
||||||
|
macchanger
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
27
modules/net/dispatchers/default.nix
Normal file
27
modules/net/dispatchers/default.nix
Normal file
|
|
@ -0,0 +1,27 @@
|
||||||
|
{pkgs, ...}: let
|
||||||
|
addNuShebang = path:
|
||||||
|
builtins.concatStringsSep "\n\n" [
|
||||||
|
"#!${pkgs.nushell}/bin/nu"
|
||||||
|
(builtins.readFile path)
|
||||||
|
];
|
||||||
|
in {
|
||||||
|
networking.networkmanager.dispatcherScripts = [
|
||||||
|
{
|
||||||
|
type = "basic";
|
||||||
|
source = pkgs.writeText "dispatcher" (addNuShebang ./dispatcher.nu);
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
environment.etc = with builtins; (
|
||||||
|
listToAttrs (
|
||||||
|
map (v: {
|
||||||
|
name = "networkhooks/${v}";
|
||||||
|
value = {
|
||||||
|
text = addNuShebang ./hooks/${v};
|
||||||
|
mode = "0755";
|
||||||
|
};
|
||||||
|
})
|
||||||
|
(attrNames (readDir ./hooks))
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
24
modules/net/hosts.nix
Normal file
24
modules/net/hosts.nix
Normal file
|
|
@ -0,0 +1,24 @@
|
||||||
|
{...}: {
|
||||||
|
networking.hosts = {
|
||||||
|
"127.0.0.1" = [
|
||||||
|
"www.tiktok.com"
|
||||||
|
"www.twitter.com"
|
||||||
|
"www.instagram.com"
|
||||||
|
"www.facebook.com"
|
||||||
|
"www.snapchat.com"
|
||||||
|
|
||||||
|
"tiktok.com"
|
||||||
|
"twitter.com"
|
||||||
|
"instagram.com"
|
||||||
|
"facebook.com"
|
||||||
|
"snapchat.com"
|
||||||
|
|
||||||
|
"google-analytics.com"
|
||||||
|
"stats.g.doubleclick.net"
|
||||||
|
"googleadservices.com"
|
||||||
|
"googletagmanager.com"
|
||||||
|
"googletagservices.com"
|
||||||
|
"googlesyndication.com"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
29
modules/nix.nix
Normal file
29
modules/nix.nix
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
{
|
||||||
|
rs-programs,
|
||||||
|
niri,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nix = {
|
||||||
|
extraOptions = ''
|
||||||
|
experimental-features = nix-command flakes
|
||||||
|
keep-outputs = true
|
||||||
|
keep-derivations = true
|
||||||
|
'';
|
||||||
|
gc = {
|
||||||
|
automatic = true;
|
||||||
|
dates = "weekly";
|
||||||
|
options = "--delete-older-than 60d";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nixpkgs = {
|
||||||
|
config = {
|
||||||
|
allowUnfree = true;
|
||||||
|
permittedInsecurePackages = [
|
||||||
|
"electron-27.3.11"
|
||||||
|
"nodejs-16.20.0"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
overlays = [rs-programs niri.overlays.niri];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
{...}: {
|
{pkgs, ...}: {
|
||||||
imports = [
|
imports = [
|
||||||
./helix.nix
|
./helix.nix
|
||||||
./nu.nix
|
./nu.nix
|
||||||
|
|
@ -7,6 +7,7 @@
|
||||||
./git.nix
|
./git.nix
|
||||||
./mprocs.nix
|
./mprocs.nix
|
||||||
./btop.nix
|
./btop.nix
|
||||||
|
./sudo.nix
|
||||||
];
|
];
|
||||||
programs.mosh.enable = true;
|
programs.mosh.enable = true;
|
||||||
programs.bat.enable = true;
|
programs.bat.enable = true;
|
||||||
|
|
@ -14,4 +15,6 @@
|
||||||
programs.carapace.enable = true;
|
programs.carapace.enable = true;
|
||||||
programs.direnv.enable = true;
|
programs.direnv.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
users.defaultUserShell = pkgs.nushell;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
6
modules/shell/sudo.nix
Normal file
6
modules/shell/sudo.nix
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
{...}: {
|
||||||
|
nixpkgs.config.packageOverrides = pkgs: {
|
||||||
|
sudo = pkgs.sudo.override {withInsults = true;};
|
||||||
|
};
|
||||||
|
security.sudo.extraConfig = "Defaults insults";
|
||||||
|
}
|
||||||
|
|
@ -1,10 +1,4 @@
|
||||||
{
|
{config, ...}: let
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
# generate shell command options for kmscon fom an attrset
|
|
||||||
generateOptions = with builtins; (
|
generateOptions = with builtins; (
|
||||||
opts:
|
opts:
|
||||||
toString (
|
toString (
|
||||||
|
|
@ -13,26 +7,6 @@
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
# generate a hexadecimal number lookup table to get integers from them
|
|
||||||
hexLookupTable = with lib; (listToAttrs (genList (i: {
|
|
||||||
name = let
|
|
||||||
r = toHexString i;
|
|
||||||
in (
|
|
||||||
# pad with 0 in front if only 1 digit
|
|
||||||
if (stringLength r) == 1
|
|
||||||
then "0${r}"
|
|
||||||
else r
|
|
||||||
);
|
|
||||||
value = toString i;
|
|
||||||
})
|
|
||||||
256));
|
|
||||||
# "parse" hex color strings and convert them to kmscon options
|
|
||||||
hexToOpt = with lib; (color:
|
|
||||||
concatStringsSep "," [
|
|
||||||
(getAttr (substring 1 2 (toUpper color)) hexLookupTable)
|
|
||||||
(getAttr (substring 3 2 (toUpper color)) hexLookupTable)
|
|
||||||
(getAttr (substring 5 2 (toUpper color)) hexLookupTable)
|
|
||||||
]);
|
|
||||||
in {
|
in {
|
||||||
# TODO: global colorscheme vars for everything
|
# TODO: global colorscheme vars for everything
|
||||||
console.colors = [
|
console.colors = [
|
||||||
|
|
@ -56,37 +30,10 @@ in {
|
||||||
|
|
||||||
services.kmscon = {
|
services.kmscon = {
|
||||||
enable = true;
|
enable = true;
|
||||||
fonts = [
|
|
||||||
{
|
|
||||||
name = "Departure Mono Nerd Font";
|
|
||||||
package = pkgs.nerd-fonts.departure-mono;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
extraConfig = "font-size=14";
|
extraConfig = "font-size=14";
|
||||||
# extraOptions = "--term xterm-256color";
|
|
||||||
extraOptions = generateOptions {
|
extraOptions = generateOptions {
|
||||||
xkb-layout = config.services.xserver.xkb.layout;
|
xkb-layout = config.services.xserver.xkb.layout;
|
||||||
xkb-variant = config.services.xserver.xkb.variant;
|
xkb-variant = config.services.xserver.xkb.variant;
|
||||||
|
|
||||||
palette = "custom";
|
|
||||||
palette-foreground = hexToOpt "#ebdbb2";
|
|
||||||
palette-background = hexToOpt "#282828";
|
|
||||||
palette-black = hexToOpt "#282828";
|
|
||||||
palette-red = hexToOpt "#cc241d";
|
|
||||||
palette-green = hexToOpt "#98971a";
|
|
||||||
palette-yellow = hexToOpt "#d79921";
|
|
||||||
palette-blue = hexToOpt "#458588";
|
|
||||||
palette-magenta = hexToOpt "#b16286";
|
|
||||||
palette-cyan = hexToOpt "#689d6a";
|
|
||||||
palette-light-grey = hexToOpt "#a89984";
|
|
||||||
palette-dark-grey = hexToOpt "#928374";
|
|
||||||
palette-light-red = hexToOpt "#fb4934";
|
|
||||||
palette-light-green = hexToOpt "#b8bb26";
|
|
||||||
palette-light-yellow = hexToOpt "#fabd2f";
|
|
||||||
palette-light-blue = hexToOpt "#83a598";
|
|
||||||
palette-light-magenta = hexToOpt "#d3869b";
|
|
||||||
palette-light-cyan = hexToOpt "#8ec07c";
|
|
||||||
palette-white = hexToOpt "#ebdbb2";
|
|
||||||
};
|
};
|
||||||
hwRender = true;
|
hwRender = true;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -1,16 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
cfg = config.jade.NAME;
|
|
||||||
in
|
|
||||||
with lib; {
|
|
||||||
options.jade.NAME = {
|
|
||||||
enable = mkEnableOption "Enable the module";
|
|
||||||
};
|
|
||||||
config =
|
|
||||||
mkIf cfg.enable {
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,56 +0,0 @@
|
||||||
{
|
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
}: rec {
|
|
||||||
# taken from https://github.com/NixOS/nixpkgs/blob/3650808d85dccbfa3be3d785dfd3ce33a757bd2c/pkgs/build-support/trivial-builders/default.nix#L335
|
|
||||||
writeNuShellApplication = {
|
|
||||||
name,
|
|
||||||
text,
|
|
||||||
runtimeInputs ? [],
|
|
||||||
meta ? {},
|
|
||||||
checkPhase ? null,
|
|
||||||
}:
|
|
||||||
writeTextFile {
|
|
||||||
inherit name meta;
|
|
||||||
executable = true;
|
|
||||||
destination = "/bin/${name}";
|
|
||||||
allowSubstitutes = true;
|
|
||||||
preferLocalBuild = false;
|
|
||||||
text =
|
|
||||||
''
|
|
||||||
#!${pkgs.nushell}
|
|
||||||
''
|
|
||||||
+ lib.optionalString (runtimeInputs != []) ''
|
|
||||||
|
|
||||||
$env.PATH = ($env.PATH | split row (char esep) | prepend '${lib.makeBinPath runtimeInputs}');
|
|
||||||
''
|
|
||||||
+ ''
|
|
||||||
|
|
||||||
${text}
|
|
||||||
'';
|
|
||||||
|
|
||||||
checkPhase =
|
|
||||||
# GHC (=> shellcheck) isn't supported on some platforms (such as risc-v)
|
|
||||||
# but we still want to use writeShellApplication on those platforms
|
|
||||||
if checkPhase == null
|
|
||||||
then ''
|
|
||||||
runHook preCheck
|
|
||||||
|
|
||||||
nu -c "nu-check -d $target"
|
|
||||||
|
|
||||||
runHook postCheck
|
|
||||||
''
|
|
||||||
else checkPhase;
|
|
||||||
};
|
|
||||||
packageNushellApplication = {
|
|
||||||
name,
|
|
||||||
path,
|
|
||||||
runtimeInputs ? [],
|
|
||||||
meta ? {},
|
|
||||||
checkPhase ? null,
|
|
||||||
}:
|
|
||||||
writeNuShellApplication {
|
|
||||||
inherit name runtimeInputs meta checkPhase;
|
|
||||||
text = builtins.readFile path;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -1,22 +0,0 @@
|
||||||
#! /usr/bin/env nix-shell
|
|
||||||
#! nix-shell -i bash -p curl htmlq
|
|
||||||
|
|
||||||
# echo "Fetching cookie and CSRF token..."
|
|
||||||
# form=$(curl --silent --location --junk-session-cookies --cookie-jar /tmp/wifionice "https://login.wifionice.de/en/" --resolve login.wifionice.de:443:10.101.64.10 -i | htmlq "input")
|
|
||||||
|
|
||||||
# keys=$(htmlq "input" --attribute "name" <<< "$form")
|
|
||||||
# values=$(htmlq "input" --attribute "value" <<< "$form")
|
|
||||||
# payload=$(paste --delimiters="=" <(echo "$keys") <(echo "$values") | tr "\n" "&")
|
|
||||||
|
|
||||||
# echo "Payload: \"$payload\""
|
|
||||||
# echo "POSTing payload..."
|
|
||||||
|
|
||||||
# curl --cookie /tmp/wifionice "https://login.wifionice.de/en/" --resolve login.wifionice.de:443:10.101.64.10 -d "$payload"
|
|
||||||
|
|
||||||
def main [
|
|
||||||
interface: string
|
|
||||||
type: string
|
|
||||||
] {
|
|
||||||
let form = curl --silent --location --junk-session-cookies --cookie-jar /tmp/wifionice 'https://login.wifionice.de/en/' --resolve 'login.wifionice.de:443:10.101.64.10' -i | htmlq 'input';
|
|
||||||
# TODO
|
|
||||||
}
|
|
||||||
7
todo.md
7
todo.md
|
|
@ -1,7 +0,0 @@
|
||||||
# TODOs
|
|
||||||
|
|
||||||
- add rofi thingy for editing rust stuff (with nix shell integration) or config
|
|
||||||
- project manager rofi script for opening tools in shell without open terminal
|
|
||||||
- sps rofi integration
|
|
||||||
|
|
||||||
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue