mirror of
https://forge.katzen.cafe/schrottkatze/nix-configs.git
synced 2025-09-24 15:31:31 +02: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 builtins; {
|
||||
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 = {
|
||||
systemPackages = with pkgs; [
|
||||
overskride
|
||||
pulsemixer
|
||||
|
||||
htmlq
|
||||
|
||||
|
@ -88,18 +69,14 @@ with builtins; {
|
|||
];
|
||||
};
|
||||
|
||||
networking = {
|
||||
networkmanager = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
hardware.graphics.enable = true;
|
||||
|
||||
services = {
|
||||
systemd-lock-handler.enable = true;
|
||||
openssh = {
|
||||
enable = true;
|
||||
# settings.PasswordAuthentication = false;
|
||||
# settings.KbdInteractiveAuthentication = false;
|
||||
settings.PasswordAuthentication = false;
|
||||
settings.KbdInteractiveAuthentication = false;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -116,31 +93,11 @@ with builtins; {
|
|||
|
||||
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;
|
||||
|
||||
hardware = {
|
||||
uinput.enable = true;
|
||||
bluetooth.enable = true;
|
||||
# keyboard.uhk.enable = true;
|
||||
};
|
||||
|
||||
services.avahi = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
security.rtkit.enable = true;
|
||||
|
@ -154,12 +111,4 @@ with builtins; {
|
|||
enable = true;
|
||||
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": {
|
||||
"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": {
|
||||
"locked": {
|
||||
"lastModified": 1742394900,
|
||||
|
@ -73,7 +140,60 @@
|
|||
"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": {
|
||||
"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": {
|
||||
"nixpkgs-lib": "nixpkgs-lib"
|
||||
},
|
||||
|
@ -109,6 +229,27 @@
|
|||
"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": {
|
||||
"locked": {
|
||||
"lastModified": 1712898590,
|
||||
|
@ -124,6 +265,87 @@
|
|||
"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": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
@ -144,6 +366,27 @@
|
|||
"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": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
|
@ -181,19 +424,6 @@
|
|||
"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": {
|
||||
"inputs": {
|
||||
"niri-stable": "niri-stable",
|
||||
|
@ -252,18 +482,16 @@
|
|||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1687903496,
|
||||
"narHash": "sha256-4PPwbFM4dNqso3zBya5rgfRvnBoIbN2J7qZ2ZpRyOUc=",
|
||||
"owner": "networkException",
|
||||
"lastModified": 1742806253,
|
||||
"narHash": "sha256-zvQ4GsCJT6MTOzPKLmlFyM+lxo0JGQ0cSFaZSACmWfY=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "8e28b9ee431b265d1fc74b8b819ea0816344c4a1",
|
||||
"rev": "ecaa2d911e77c265c2a5bac8b583c40b0f151726",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "networkException",
|
||||
"ref": "apple-t2-init",
|
||||
"repo": "nixos-hardware",
|
||||
"type": "github"
|
||||
"id": "nixos-hardware",
|
||||
"type": "indirect"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
|
@ -356,6 +584,22 @@
|
|||
}
|
||||
},
|
||||
"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": {
|
||||
"lastModified": 1726937504,
|
||||
"narHash": "sha256-bvGoiQBvponpZh8ClUcmJ6QnsNKw0EMrCQJARK3bI1c=",
|
||||
|
@ -371,18 +615,41 @@
|
|||
"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": {
|
||||
"inputs": {
|
||||
"crane": "crane",
|
||||
"fenix": "fenix",
|
||||
"home-manager": "home-manager",
|
||||
"lix-module": "lix-module",
|
||||
"mac-brcm-fw": "mac-brcm-fw",
|
||||
"niri": "niri",
|
||||
"nixos-hardware": "nixos-hardware",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"nixpkgs-stable": "nixpkgs-stable_2",
|
||||
"nixpkgs-unstable-small": "nixpkgs-unstable-small",
|
||||
"stylix": "stylix",
|
||||
"typst-within": "typst-within"
|
||||
}
|
||||
},
|
||||
|
@ -432,6 +699,41 @@
|
|||
"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": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
|
@ -462,14 +764,133 @@
|
|||
"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": {
|
||||
"inputs": {
|
||||
"crane": "crane_2",
|
||||
"fenix": "fenix_2",
|
||||
"flake-parts": "flake-parts",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"flake-parts": "flake-parts_2",
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"rust-manifest": "rust-manifest",
|
||||
"systems": "systems_2"
|
||||
"systems": "systems_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739736913,
|
||||
|
|
46
flake.nix
46
flake.nix
|
@ -6,9 +6,9 @@
|
|||
nixpkgs-stable.url = "nixpkgs/nixos-24.11";
|
||||
nixpkgs-unstable-small.url = "nixpkgs/nixos-unstable-small";
|
||||
niri.url = "github:sodiboo/niri-flake";
|
||||
typst-within = {
|
||||
url = "github:schrottkatze/typst";
|
||||
};
|
||||
stylix.url = "github:danth/stylix";
|
||||
typst-within.url = "github:schrottkatze/typst";
|
||||
crane.url = "github:ipetkov/crane";
|
||||
lix-module = {
|
||||
url = "git+https://git.lix.systems/lix-project/nixos-module";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
@ -17,14 +17,6 @@
|
|||
url = "github:nix-community/home-manager";
|
||||
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 = {
|
||||
url = "github:nix-community/fenix";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
@ -40,8 +32,8 @@
|
|||
typst-within,
|
||||
home-manager,
|
||||
nixos-hardware,
|
||||
mac-brcm-fw,
|
||||
niri,
|
||||
stylix,
|
||||
fenix,
|
||||
crane,
|
||||
...
|
||||
|
@ -78,6 +70,7 @@
|
|||
system = "x86_64-linux";
|
||||
modules = [
|
||||
inputs.niri.nixosModules.niri
|
||||
stylix.nixosModules.stylix
|
||||
./hosts/monosodium-glutamate-g/configuration.nix
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
|
@ -104,6 +97,7 @@
|
|||
system = "x86_64-linux";
|
||||
modules = [
|
||||
inputs.niri.nixosModules.niri
|
||||
stylix.nixosModules.stylix
|
||||
./hosts/denkbrett/configuration.nix
|
||||
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
|
||||
# your system. Help is available in the configuration.nix(5) man page
|
||||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
{pkgs, ...}: {
|
||||
nixpkgs.config.permittedInsecurePackages = [
|
||||
"electron-25.9.0"
|
||||
"electron-27.3.11"
|
||||
|
@ -46,7 +41,6 @@
|
|||
|
||||
boot.binfmt.emulatedSystems = ["aarch64-linux"];
|
||||
|
||||
hardware.bluetooth.enable = true;
|
||||
services.blueman.enable = true;
|
||||
|
||||
environment.systemPackages = [
|
||||
|
|
|
@ -47,7 +47,6 @@
|
|||
gnome.gnome-keyring.enable = true;
|
||||
};
|
||||
hardware = {
|
||||
bluetooth.enable = true;
|
||||
keyboard.uhk.enable = 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
|
||||
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:
|
||||
#!/usr/bin/env nu
|
||||
let file = './modules/desktop-environment/media/typst.nix';
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
{...}: {}
|
||||
# dummy
|
||||
|
|
@ -2,10 +2,11 @@
|
|||
imports = [
|
||||
./shell
|
||||
./desktop
|
||||
./desktop-legacy
|
||||
./hardware
|
||||
./firewall.nix
|
||||
./desktop-environment
|
||||
./net
|
||||
./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; [
|
||||
pavucontrol
|
||||
volumeicon
|
||||
playerctl
|
||||
|
||||
pulsemixer
|
||||
helvum
|
||||
];
|
||||
}
|
|
@ -1,60 +1,15 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
with lib; {
|
||||
{...}: {
|
||||
imports = [
|
||||
./gaming.nix
|
||||
# TODO: more fine grained choices, not every setup needs fspy or rawtherapee
|
||||
./syncthing.nix
|
||||
./kdeconnect.nix
|
||||
./audio.nix
|
||||
./home
|
||||
./dm.nix
|
||||
./tlp.nix
|
||||
./locale.nix
|
||||
./printing.nix
|
||||
./themeing.nix
|
||||
./networking.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.flatpak.enable = true;
|
||||
security.polkit.enable = true;
|
||||
services.illum.enable = true;
|
||||
services.avahi = {
|
||||
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
|
||||
];
|
||||
};
|
||||
services.upower.enable = true;
|
||||
}
|
||||
|
|
|
@ -2,12 +2,18 @@ label {
|
|||
font: 14pt "Departure Mono Nerd Font";
|
||||
}
|
||||
|
||||
button {
|
||||
border-radius: 0px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.background {
|
||||
background-color: #1d2021;
|
||||
}
|
||||
|
||||
.workspaces button {
|
||||
border: 0px;
|
||||
padding: 0 3px;
|
||||
}
|
||||
|
||||
.workspaces button.focused {
|
|
@ -19,7 +19,7 @@
|
|||
command = [
|
||||
"${pkgs.swaybg}/bin/swaybg"
|
||||
"-i"
|
||||
"${../../../../other/assets/wallpaper/wallpaper.jpg}"
|
||||
"${./wallpaper.jpg}"
|
||||
"-m"
|
||||
"fill"
|
||||
];
|
|
@ -4,7 +4,10 @@
|
|||
binds = {
|
||||
"Print".action.screenshot = [];
|
||||
"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";
|
||||
frame_color = "#504945";
|
||||
frame_width = 2;
|
||||
font = "Atkinson Hyperlegible";
|
||||
};
|
||||
};
|
||||
};
|
|
@ -1,16 +1,14 @@
|
|||
{...}: {
|
||||
programs.kitty = {
|
||||
enable = true;
|
||||
font = {
|
||||
name = "Departure Mono Nerd Font";
|
||||
size = 12;
|
||||
};
|
||||
font.size = 12;
|
||||
font.name = "Departure Mono Nerd Font";
|
||||
shellIntegration.enableFishIntegration = false;
|
||||
keybindings = {
|
||||
"ctrl+shift+n" = "new_os_window_with_cwd";
|
||||
};
|
||||
settings = rec {
|
||||
#adjust_column_width = "70%";
|
||||
adjust_column_width = "95%";
|
||||
color0 = "#282828";
|
||||
color8 = "#928374";
|
||||
color1 = "#cc241d";
|
|
@ -1,4 +1,5 @@
|
|||
{...}: {
|
||||
time.timeZone = "Europe/Berlin";
|
||||
i18n.extraLocaleSettings = {
|
||||
LC_ADDRESS = "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 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
config = {
|
||||
fonts.packages = with pkgs; [
|
||||
atkinson-hyperlegible
|
||||
];
|
||||
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";
|
||||
};
|
||||
{pkgs, ...}: {
|
||||
stylix = {
|
||||
enable = true;
|
||||
polarity = "dark";
|
||||
base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-hard.yaml";
|
||||
fonts = {
|
||||
serif = {
|
||||
package = pkgs.libertine;
|
||||
name = "Linux Libertine O";
|
||||
};
|
||||
qt = {
|
||||
enable = true;
|
||||
platformTheme.name = "gtk";
|
||||
|
||||
sansSerif = {
|
||||
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 = [
|
||||
./helix.nix
|
||||
./nu.nix
|
||||
|
@ -7,6 +7,7 @@
|
|||
./git.nix
|
||||
./mprocs.nix
|
||||
./btop.nix
|
||||
./sudo.nix
|
||||
];
|
||||
programs.mosh.enable = true;
|
||||
programs.bat.enable = true;
|
||||
|
@ -14,4 +15,6 @@
|
|||
programs.carapace.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 @@
|
|||
{
|
||||
pkgs,
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
# generate shell command options for kmscon fom an attrset
|
||||
{config, ...}: let
|
||||
generateOptions = with builtins; (
|
||||
opts:
|
||||
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 {
|
||||
# TODO: global colorscheme vars for everything
|
||||
console.colors = [
|
||||
|
@ -56,37 +30,10 @@ in {
|
|||
|
||||
services.kmscon = {
|
||||
enable = true;
|
||||
fonts = [
|
||||
{
|
||||
name = "Departure Mono Nerd Font";
|
||||
package = pkgs.nerd-fonts.departure-mono;
|
||||
}
|
||||
];
|
||||
extraConfig = "font-size=14";
|
||||
# extraOptions = "--term xterm-256color";
|
||||
extraOptions = generateOptions {
|
||||
xkb-layout = config.services.xserver.xkb.layout;
|
||||
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;
|
||||
};
|
||||
|
|
|
@ -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