2022-08-02 09:55:12 +02:00
|
|
|
|
# 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’).
|
2022-08-12 12:14:32 +02:00
|
|
|
|
{
|
2023-11-26 21:26:49 +01:00
|
|
|
|
config,
|
|
|
|
|
pkgs,
|
|
|
|
|
lib,
|
2024-05-06 21:27:45 +02:00
|
|
|
|
lix-module,
|
2024-04-16 21:37:01 +02:00
|
|
|
|
rs-programs,
|
2023-11-26 21:26:49 +01:00
|
|
|
|
...
|
|
|
|
|
}:
|
|
|
|
|
with lib;
|
|
|
|
|
with builtins; {
|
2024-05-06 21:27:45 +02:00
|
|
|
|
imports = [lix-module.nixosModules.default];
|
2022-08-02 09:55:12 +02:00
|
|
|
|
nix = {
|
2022-10-02 17:39:04 +02:00
|
|
|
|
package = pkgs.nixVersions.stable;
|
2024-05-06 21:27:45 +02:00
|
|
|
|
settings = {
|
|
|
|
|
extra-substituters = [
|
|
|
|
|
"https://cache.lix.systems"
|
|
|
|
|
];
|
|
|
|
|
trusted-public-keys = [
|
|
|
|
|
"cache.lix.systems:aBnZUw8zA7H35Cz2RyKFVs3H4PlGTLawyY5KRbvJR8o="
|
|
|
|
|
];
|
|
|
|
|
};
|
2022-08-02 09:55:12 +02:00
|
|
|
|
extraOptions = ''
|
|
|
|
|
experimental-features = nix-command flakes
|
|
|
|
|
keep-outputs = true
|
|
|
|
|
keep-derivations = true
|
|
|
|
|
'';
|
|
|
|
|
};
|
|
|
|
|
|
2023-02-03 17:43:17 +01:00
|
|
|
|
nixpkgs = {
|
|
|
|
|
config = {
|
|
|
|
|
allowUnfree = true;
|
2023-05-25 09:03:43 +02:00
|
|
|
|
permittedInsecurePackages = [
|
2024-07-30 22:06:36 +02:00
|
|
|
|
"electron-27.3.11"
|
2023-05-25 09:03:43 +02:00
|
|
|
|
"nodejs-16.20.0"
|
|
|
|
|
];
|
2023-02-03 17:43:17 +01:00
|
|
|
|
};
|
2024-04-16 21:37:01 +02:00
|
|
|
|
overlays = [rs-programs];
|
2023-02-03 17:43:17 +01:00
|
|
|
|
};
|
2022-08-02 09:55:12 +02:00
|
|
|
|
|
2023-02-03 17:43:17 +01:00
|
|
|
|
environment = {
|
|
|
|
|
systemPackages = with pkgs; [
|
2024-11-09 23:27:47 +01:00
|
|
|
|
overskride
|
|
|
|
|
pulsemixer
|
|
|
|
|
|
2023-11-14 12:22:19 +01:00
|
|
|
|
htmlq
|
2022-08-02 09:55:12 +02:00
|
|
|
|
|
2024-07-28 20:53:38 +02:00
|
|
|
|
prusa-slicer
|
|
|
|
|
zed-editor
|
2023-11-26 21:26:49 +01:00
|
|
|
|
wget
|
|
|
|
|
git
|
|
|
|
|
neofetch
|
|
|
|
|
pciutils
|
|
|
|
|
zip
|
|
|
|
|
unzip
|
|
|
|
|
gnutar
|
|
|
|
|
iw
|
|
|
|
|
btop
|
|
|
|
|
nodejs
|
2024-11-03 19:48:04 +01:00
|
|
|
|
|
2024-11-03 19:46:36 +01:00
|
|
|
|
maven
|
|
|
|
|
jetbrains.idea-ultimate
|
|
|
|
|
jetbrains.rust-rover
|
2023-11-26 21:26:49 +01:00
|
|
|
|
jdk
|
2024-11-03 19:48:04 +01:00
|
|
|
|
|
2023-11-26 21:26:49 +01:00
|
|
|
|
libsecret
|
|
|
|
|
fzf
|
|
|
|
|
ripgrep
|
|
|
|
|
appimage-run
|
|
|
|
|
git-crypt
|
|
|
|
|
file
|
|
|
|
|
whois
|
|
|
|
|
p7zip
|
|
|
|
|
file
|
|
|
|
|
tree
|
|
|
|
|
socat
|
|
|
|
|
smartmontools
|
|
|
|
|
mprocs
|
|
|
|
|
dig
|
|
|
|
|
aria2
|
2024-09-26 19:15:58 +02:00
|
|
|
|
cyme
|
2023-11-26 21:26:49 +01:00
|
|
|
|
numbat
|
2024-03-14 16:04:48 +01:00
|
|
|
|
devd
|
2024-04-10 17:37:24 +02:00
|
|
|
|
|
|
|
|
|
libjxl
|
2024-04-16 21:37:01 +02:00
|
|
|
|
|
|
|
|
|
s10e-jrnl
|
2024-09-02 19:08:10 +02:00
|
|
|
|
|
|
|
|
|
ungoogled-chromium
|
|
|
|
|
scc
|
|
|
|
|
speedtest-rs
|
2023-02-03 17:43:17 +01:00
|
|
|
|
];
|
2022-08-12 12:14:32 +02:00
|
|
|
|
};
|
2022-08-02 09:55:12 +02:00
|
|
|
|
|
2023-02-03 17:43:17 +01:00
|
|
|
|
networking = {
|
|
|
|
|
networkmanager = {
|
|
|
|
|
enable = true;
|
|
|
|
|
};
|
2022-09-28 18:55:03 +02:00
|
|
|
|
};
|
|
|
|
|
|
2023-02-03 17:43:17 +01:00
|
|
|
|
services = {
|
2024-11-03 19:48:04 +01:00
|
|
|
|
systemd-lock-handler.enable = true;
|
2023-03-18 17:54:57 +01:00
|
|
|
|
openssh = {
|
|
|
|
|
enable = true;
|
2023-04-25 14:52:33 +02:00
|
|
|
|
# settings.PasswordAuthentication = false;
|
|
|
|
|
# settings.KbdInteractiveAuthentication = false;
|
2023-03-18 17:54:57 +01:00
|
|
|
|
};
|
2023-02-03 17:43:17 +01:00
|
|
|
|
};
|
|
|
|
|
|
2024-02-02 11:28:26 +01:00
|
|
|
|
programs = {
|
|
|
|
|
ssh.startAgent = false;
|
2023-02-03 17:43:17 +01:00
|
|
|
|
gnupg.agent = {
|
2022-08-12 18:31:05 +02:00
|
|
|
|
enable = true;
|
2023-02-03 17:43:17 +01:00
|
|
|
|
enableSSHSupport = true;
|
2022-08-12 18:31:05 +02:00
|
|
|
|
};
|
2024-02-02 11:28:26 +01:00
|
|
|
|
|
|
|
|
|
dconf.enable = true;
|
|
|
|
|
mtr.enable = true;
|
2023-02-03 17:43:17 +01:00
|
|
|
|
};
|
2022-09-10 12:18:11 +02:00
|
|
|
|
|
2024-06-12 13:24:47 +02:00
|
|
|
|
hardware.gpgSmartcards.enable = true;
|
2024-06-12 13:26:34 +02:00
|
|
|
|
|
2023-02-03 17:43:17 +01:00
|
|
|
|
time.timeZone = "Europe/Berlin";
|
2022-08-02 09:55:12 +02:00
|
|
|
|
|
2023-11-26 21:26:49 +01:00
|
|
|
|
home-manager.users.jade = {
|
|
|
|
|
nixosConfig,
|
|
|
|
|
pkgs,
|
|
|
|
|
...
|
|
|
|
|
}: {
|
2023-02-03 17:43:17 +01:00
|
|
|
|
home.sessionVariables.TZ = nixosConfig.time.timeZone;
|
|
|
|
|
};
|
2022-08-02 09:55:12 +02:00
|
|
|
|
|
2023-09-25 19:24:42 +02:00
|
|
|
|
nixpkgs.config.packageOverrides = pkgs: {
|
2023-11-26 21:26:49 +01:00
|
|
|
|
sudo = pkgs.sudo.override {withInsults = true;};
|
2023-09-25 19:24:42 +02:00
|
|
|
|
};
|
|
|
|
|
security.sudo.extraConfig = "Defaults insults";
|
2023-02-03 17:43:17 +01:00
|
|
|
|
|
2023-05-14 12:07:54 +02:00
|
|
|
|
boot.kernel.sysctl."vm.max_map_count" = 2147483642;
|
2022-08-02 09:55:12 +02:00
|
|
|
|
|
2023-11-14 12:22:19 +01:00
|
|
|
|
hardware = {
|
2023-11-26 21:26:49 +01:00
|
|
|
|
uinput.enable = true;
|
2023-11-14 12:22:19 +01:00
|
|
|
|
bluetooth.enable = true;
|
2024-02-13 21:22:25 +01:00
|
|
|
|
# keyboard.uhk.enable = true;
|
2023-11-14 12:22:19 +01:00
|
|
|
|
};
|
2023-01-29 13:39:48 +01:00
|
|
|
|
|
2024-02-27 18:17:36 +01:00
|
|
|
|
services.avahi = {
|
|
|
|
|
enable = true;
|
|
|
|
|
};
|
|
|
|
|
|
2022-08-02 09:55:12 +02:00
|
|
|
|
security.rtkit.enable = true;
|
|
|
|
|
|
2023-11-17 11:53:46 +01:00
|
|
|
|
users.users.jade = {
|
2022-08-02 09:55:12 +02:00
|
|
|
|
isNormalUser = true;
|
2023-11-26 21:26:49 +01:00
|
|
|
|
extraGroups = ["wheel" "input" "uinput" "libvirtd" "adbusers" "dialout" "plugdev" "wireshark"];
|
2022-08-02 09:55:12 +02:00
|
|
|
|
};
|
|
|
|
|
|
2022-09-26 19:33:48 +02:00
|
|
|
|
zramSwap = {
|
|
|
|
|
enable = true;
|
|
|
|
|
algorithm = "zstd";
|
|
|
|
|
};
|
|
|
|
|
|
2024-06-12 13:26:34 +02:00
|
|
|
|
users.defaultUserShell = pkgs.nushell;
|
2024-07-28 20:53:38 +02:00
|
|
|
|
|
|
|
|
|
nix.gc = {
|
|
|
|
|
automatic = true;
|
|
|
|
|
dates = "weekly";
|
|
|
|
|
options = "--delete-older-than 60d";
|
|
|
|
|
};
|
2022-08-02 09:55:12 +02:00
|
|
|
|
}
|