Initial commit
This commit is contained in:
44
nixos/full.nix
Normal file
44
nixos/full.nix
Normal file
@@ -0,0 +1,44 @@
|
||||
{
|
||||
pkgs,
|
||||
stateVersion,
|
||||
user,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./global
|
||||
./users/demenik.nix
|
||||
|
||||
./optional/backup.nix
|
||||
./optional/greetd.nix
|
||||
./optional/networkmanager.nix
|
||||
./optional/bluetooth.nix
|
||||
./optional/fprint.nix
|
||||
./optional/vm.nix
|
||||
./optional/gaming.nix
|
||||
./optional/adb.nix
|
||||
./optional/docker.nix
|
||||
./optional/direnv.nix
|
||||
./optional/wireshark.nix
|
||||
];
|
||||
|
||||
programs.zsh.enable = true;
|
||||
users.users.${user}.shell = pkgs.zsh;
|
||||
|
||||
boot = {
|
||||
loader = {
|
||||
efi.canTouchEfiVariables = true;
|
||||
grub = {
|
||||
enable = true;
|
||||
device = "nodev";
|
||||
efiSupport = true;
|
||||
};
|
||||
};
|
||||
|
||||
kernelPackages = pkgs.linuxPackages_latest;
|
||||
};
|
||||
|
||||
programs.hyprland.enable = true;
|
||||
services.displayManager.defaultSession = "hyprland";
|
||||
|
||||
system = {inherit stateVersion;};
|
||||
}
|
||||
49
nixos/global/default.nix
Normal file
49
nixos/global/default.nix
Normal file
@@ -0,0 +1,49 @@
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./nix.nix
|
||||
];
|
||||
|
||||
programs.dconf.enable = true;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
home-manager
|
||||
neovim
|
||||
(lib.hiPrio uutils-coreutils-noprefix)
|
||||
];
|
||||
|
||||
services.xserver.xkb = {
|
||||
layout = "de";
|
||||
variant = "nodeadkeys";
|
||||
};
|
||||
console.keyMap = "de";
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
i18n.extraLocaleSettings = {
|
||||
LC_ADDRESS = "de_DE.UTF-8";
|
||||
LC_IDENTIFICATION = "de_DE.UTF-8";
|
||||
LC_MEASUREMENT = "de_DE.UTF-8";
|
||||
LC_MONETARY = "de_DE.UTF-8";
|
||||
LC_NAME = "de_DE.UTF-8";
|
||||
LC_NUMERIC = "de_DE.UTF-8";
|
||||
LC_PAPER = "de_DE.UTF-8";
|
||||
LC_TELEPHONE = "de_DE.UTF-8";
|
||||
LC_TIME = "de_DE.UTF-8";
|
||||
};
|
||||
time.timeZone = "Europe/Berlin";
|
||||
|
||||
services.pulseaudio.enable = false;
|
||||
services.pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
};
|
||||
|
||||
security = {
|
||||
rtkit.enable = true;
|
||||
sudo-rs.enable = true;
|
||||
};
|
||||
}
|
||||
19
nixos/global/nix.nix
Normal file
19
nixos/global/nix.nix
Normal file
@@ -0,0 +1,19 @@
|
||||
{pkgs, ...}: {
|
||||
nix = {
|
||||
package = pkgs.nix;
|
||||
|
||||
settings = {
|
||||
auto-optimise-store = true;
|
||||
trusted-users = ["root" "@wheel"];
|
||||
experimental-features = "nix-command flakes";
|
||||
warn-dirty = false;
|
||||
};
|
||||
gc = {
|
||||
automatic = true;
|
||||
options = "--delete-older-than 2d";
|
||||
};
|
||||
optimise.automatic = true;
|
||||
};
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
}
|
||||
19
nixos/headless.nix
Normal file
19
nixos/headless.nix
Normal file
@@ -0,0 +1,19 @@
|
||||
{
|
||||
pkgs,
|
||||
stateVersion,
|
||||
user,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./global
|
||||
./users/demenik.nix
|
||||
|
||||
./optional/docker.nix
|
||||
./optional/direnv.nix
|
||||
];
|
||||
|
||||
programs.zsh.enable = true;
|
||||
users.users.${user}.shell = pkgs.zsh;
|
||||
|
||||
system = {inherit stateVersion;};
|
||||
}
|
||||
4
nixos/optional/adb.nix
Normal file
4
nixos/optional/adb.nix
Normal file
@@ -0,0 +1,4 @@
|
||||
{user, ...}: {
|
||||
programs.adb.enable = true;
|
||||
users.users."${user}".extraGroups = ["adbusers"];
|
||||
}
|
||||
1
nixos/optional/backup.nix
Normal file
1
nixos/optional/backup.nix
Normal file
@@ -0,0 +1 @@
|
||||
{}
|
||||
3
nixos/optional/bluetooth.nix
Normal file
3
nixos/optional/bluetooth.nix
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
hardware.bluetooth.enable = true;
|
||||
}
|
||||
6
nixos/optional/direnv.nix
Normal file
6
nixos/optional/direnv.nix
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
programs.direnv = {
|
||||
enable = true;
|
||||
nix-direnv.enable = true;
|
||||
};
|
||||
}
|
||||
8
nixos/optional/docker.nix
Normal file
8
nixos/optional/docker.nix
Normal file
@@ -0,0 +1,8 @@
|
||||
{user, ...}: {
|
||||
virtualisation.docker = {
|
||||
enable = true;
|
||||
rootless.enable = true;
|
||||
};
|
||||
|
||||
users.users.${user}.extraGroups = ["docker"];
|
||||
}
|
||||
19
nixos/optional/eduroam.nix
Normal file
19
nixos/optional/eduroam.nix
Normal file
@@ -0,0 +1,19 @@
|
||||
{user, ...}: {
|
||||
networking.wireless = {
|
||||
enable = true;
|
||||
networks = {
|
||||
eduroam = {
|
||||
auth = ''
|
||||
proto=RSN
|
||||
key_mgmt=WPA-EAP
|
||||
eap=PEAP
|
||||
identity="dominik.bernroider@uni-ulm.de"
|
||||
password=hash:9446aa5c94d8f72165905212d0e62d36
|
||||
phase1="peaplabel=0"
|
||||
phase2="auth=MSCHAPV2"
|
||||
ca_cert="/home/${user}/.config/cat_installer/ca.pem"
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
7
nixos/optional/fprint.nix
Normal file
7
nixos/optional/fprint.nix
Normal file
@@ -0,0 +1,7 @@
|
||||
{pkgs, ...}: {
|
||||
services.fprintd = {
|
||||
enable = true;
|
||||
tod.enable = true;
|
||||
tod.driver = pkgs.libfprint-2-tod1-goodix-550a;
|
||||
};
|
||||
}
|
||||
15
nixos/optional/gaming.nix
Normal file
15
nixos/optional/gaming.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
{pkgs, ...}: {
|
||||
programs.steam = {
|
||||
enable = true;
|
||||
|
||||
remotePlay.openFirewall = true;
|
||||
dedicatedServer.openFirewall = true;
|
||||
localNetworkGameTransfers.openFirewall = true;
|
||||
|
||||
extest.enable = true;
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
lutris
|
||||
];
|
||||
}
|
||||
17
nixos/optional/greetd.nix
Normal file
17
nixos/optional/greetd.nix
Normal file
@@ -0,0 +1,17 @@
|
||||
{pkgs, ...}: {
|
||||
services.greetd = {
|
||||
enable = true;
|
||||
settings = {
|
||||
default_session = {
|
||||
command = ''
|
||||
${pkgs.tuigreet}/bin/tuigreet \
|
||||
--cmd "${pkgs.hyprland}/bin/hyprland" \
|
||||
--remember \
|
||||
--remember-session \
|
||||
--asterisks
|
||||
'';
|
||||
user = "demenik";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
9
nixos/optional/networkmanager.nix
Normal file
9
nixos/optional/networkmanager.nix
Normal file
@@ -0,0 +1,9 @@
|
||||
{user, ...}: {
|
||||
networking.networkmanager.enable = true;
|
||||
users.users."${user}".extraGroups = ["networkmanager"];
|
||||
|
||||
# networking.networkmanager.dns = "none";
|
||||
# networking.useDHCP = false;
|
||||
# networking.dhcpcd.enable = false;
|
||||
# networking.nameservers = [ homelabipv4 "8.8.8.8" ];
|
||||
}
|
||||
6
nixos/optional/vm.nix
Normal file
6
nixos/optional/vm.nix
Normal file
@@ -0,0 +1,6 @@
|
||||
{user, ...}: {
|
||||
virtualisation.libvirtd.enable = true;
|
||||
programs.virt-manager.enable = true;
|
||||
|
||||
users.users."${user}".extraGroups = ["libvirtd"];
|
||||
}
|
||||
10
nixos/optional/wireshark.nix
Normal file
10
nixos/optional/wireshark.nix
Normal file
@@ -0,0 +1,10 @@
|
||||
{
|
||||
pkgs,
|
||||
user,
|
||||
...
|
||||
}: {
|
||||
programs.wireshark.enable = true;
|
||||
environment.systemPackages = with pkgs; [wireshark-qt];
|
||||
|
||||
users.users."${user}".extraGroups = ["wireshark"];
|
||||
}
|
||||
7
nixos/users/demenik.nix
Normal file
7
nixos/users/demenik.nix
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
users.users.demenik = {
|
||||
isNormalUser = true;
|
||||
description = "Dominik";
|
||||
extraGroups = ["wheel" "networkmanager" "audio" "video" "tlp" "power"];
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user