Add NixOS config

This commit is contained in:
Zeph Levy 2025-11-11 16:09:55 +01:00
commit 6020d64797
43 changed files with 1372 additions and 0 deletions

View file

@ -0,0 +1,5 @@
{
services.udev.extraRules = ''
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="amdgpu_bl1", GROUP="video", MODE="0660"
'';
}

16
nixos/modules/bundle.nix Normal file
View file

@ -0,0 +1,16 @@
{
imports = [
./hypr/bundle.nix
./steam.nix
./waybar.nix
./user.nix
./brightness.nix
./fingerprint.nix
./rebinding.nix
./foot.nix
./git.nix
./thunderbird.nix
./lidswitch.nix
];
}

View file

@ -0,0 +1,3 @@
{
services.fprintd.enable = true;
}

7
nixos/modules/foot.nix Normal file
View file

@ -0,0 +1,7 @@
{ pkgs, ... }: {
programs.foot = {
enable = true;
enableBashIntegration = true;
enableFishIntegration = true;
};
}

6
nixos/modules/git.nix Normal file
View file

@ -0,0 +1,6 @@
{ pkgs, ... }: {
# For libsecret
services.gnome.gnome-keyring.enable = true;
security.pam.services.login.enableGnomeKeyring = true;
security.pam.services.hyprlock.enableGnomeKeyring = true;
}

View file

@ -0,0 +1,6 @@
{
imports = [
./hyprland.nix
./hyprlock.nix
];
}

View file

@ -0,0 +1,5 @@
{ pkgs, ...}: {
programs.hyprland.enable = true;
environment.sessionVariables.NIXOS_OZONE_WL = "1";
}

View file

@ -0,0 +1,4 @@
{
programs.hyprlock.enable = true;
services.hypridle.enable = true;
}

View file

@ -0,0 +1,4 @@
{
services.logind.settings.Login.HandleLidSwitch = "suspend";
services.logind.settings.Login.HandleLidSwitchDocked = "ignore";
}

View file

@ -0,0 +1,14 @@
{ pkgs, ... }: {
services.keyd.enable = true;
services.keyd.keyboards = {
default = {
ids = [ "*" ];
settings = {
main = {
capslock = "overload(control, esc)";
};
};
};
};
}

View file

@ -0,0 +1,4 @@
{
programs.regreet.enable = true;
security.pam.services.greetd.enableGnomeKeyring = true;
}

3
nixos/modules/steam.nix Normal file
View file

@ -0,0 +1,3 @@
{ lib, pkgs, ... }: {
programs.steam.enable = true;
}

View file

@ -0,0 +1,3 @@
{
programs.thunderbird.enable = true;
}

31
nixos/modules/user.nix Normal file
View file

@ -0,0 +1,31 @@
{ pkgs, ...} : {
programs.fish.enable = true;
documentation.man.generateCaches = false;
# virtualisation.docker.enable = true;
virtualisation.containers.enable = true;
virtualisation = {
podman = {
enable = true;
dockerCompat = true;
defaultNetwork.settings = { dns_enabled = true; };
};
};
users = {
defaultUserShell = pkgs.bash;
users.zeph = {
isNormalUser = true;
extraGroups = [
"wheel"
"networkmanager"
"video"
"kvm"
"docker"
];
packages = with pkgs; [];
};
};
services.fwupd.enable = true;
}

3
nixos/modules/waybar.nix Normal file
View file

@ -0,0 +1,3 @@
{
programs.waybar.enable = true;
}

11
nixos/modules/xfce.nix Normal file
View file

@ -0,0 +1,11 @@
{ pkgs, ... }: {
services.xserver = {
enable = true;
desktopManager.xfce.enable = true;
# Don't start on boot
displayManager.startx = {
enable = true;
generateScript = true;
};
};
}