diff options
Diffstat (limited to 'modules/system')
| -rw-r--r-- | modules/system/audio.nix | 12 | ||||
| -rw-r--r-- | modules/system/bluetooth.nix | 17 | ||||
| -rw-r--r-- | modules/system/kde.nix | 17 | ||||
| -rw-r--r-- | modules/system/mullvad-vpn.nix | 11 | ||||
| -rw-r--r-- | modules/system/plymouth.nix | 31 | ||||
| -rw-r--r-- | modules/system/printer.nix | 15 | ||||
| -rw-r--r-- | modules/system/secrets.nix | 50 | ||||
| -rw-r--r-- | modules/system/wooting.nix | 11 |
8 files changed, 164 insertions, 0 deletions
diff --git a/modules/system/audio.nix b/modules/system/audio.nix new file mode 100644 index 0000000..4dd829b --- /dev/null +++ b/modules/system/audio.nix @@ -0,0 +1,12 @@ +{ + flake.modules.nixos.audio = { + security.rtkit.enable = true; + services.pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + wireplumber.enable = true; + }; + }; +} diff --git a/modules/system/bluetooth.nix b/modules/system/bluetooth.nix new file mode 100644 index 0000000..2935b7d --- /dev/null +++ b/modules/system/bluetooth.nix @@ -0,0 +1,17 @@ +{ + flake.modules.nixos.bluetooth = { + hardware.bluetooth = { + enable = true; + powerOnBoot = true; + settings = { + General = { + Experimental = true; + FastConnectable = true; + }; + Policy = { + AutoEnable = true; + }; + }; + }; + }; +} diff --git a/modules/system/kde.nix b/modules/system/kde.nix new file mode 100644 index 0000000..f5b396b --- /dev/null +++ b/modules/system/kde.nix @@ -0,0 +1,17 @@ +{ + flake.modules.nixos.kde = + { pkgs, ... }: + { + services.displayManager.sddm = { + enable = true; + wayland.enable = true; + }; + services.desktopManager.plasma6.enable = true; + security.pam.services.sddm.enableKwallet = true; + environment.plasma6.excludePackages = with pkgs.kdePackages; [ + elisa + kate + ]; + environment.systemPackages = with pkgs.kdePackages; [ kcalc ]; + }; +} diff --git a/modules/system/mullvad-vpn.nix b/modules/system/mullvad-vpn.nix new file mode 100644 index 0000000..ac17615 --- /dev/null +++ b/modules/system/mullvad-vpn.nix @@ -0,0 +1,11 @@ +{ + flake.modules.nixos.mullvad-vpn = + { + pkgs, + ... + }: + { + services.mullvad-vpn.enable = true; + environment.systemPackages = [ pkgs.mullvad-vpn ]; + }; +} diff --git a/modules/system/plymouth.nix b/modules/system/plymouth.nix new file mode 100644 index 0000000..17ccddc --- /dev/null +++ b/modules/system/plymouth.nix @@ -0,0 +1,31 @@ +{ + flake.modules.nixos.plymouth = + { lib, pkgs, ... }: + { + boot = { + # Show password prompt for encrypted root + initrd.systemd.enable = true; + kernelParams = [ "quiet" ]; + loader.systemd-boot.consoleMode = "max"; + plymouth = { + enable = true; + theme = "loader_2"; + themePackages = with pkgs; [ + (adi1090x-plymouth-themes.override { + selected_themes = [ + #"lone" + #"red_loader" + #"cuts_alt" + #"abstract_ring_alt" + "loader_2" + #"sliced" + #"spinner_alt" + #"sphere" + #"loader" + ]; + }) + ]; + }; + }; + }; +} diff --git a/modules/system/printer.nix b/modules/system/printer.nix new file mode 100644 index 0000000..382fc1a --- /dev/null +++ b/modules/system/printer.nix @@ -0,0 +1,15 @@ +{ + flake.modules.nixos.printer = + { pkgs, ... }: + { + services.printing = { + enable = true; + drivers = [ pkgs.brlaser ]; + }; + services.avahi = { + enable = true; + nssmdns4 = true; + openFirewall = true; + }; + }; +} diff --git a/modules/system/secrets.nix b/modules/system/secrets.nix new file mode 100644 index 0000000..e59c7da --- /dev/null +++ b/modules/system/secrets.nix @@ -0,0 +1,50 @@ +{ + flake.modules.nixos.secrets = + { inputs, ... }: + { + imports = [ inputs.sops-nix.nixosModules.sops ]; + sops = { + defaultSopsFile = inputs.self + /secrets/secrets.yaml; + age.keyFile = "/etc/sops/age_key"; + secrets = { + "borgbase_ssh_key" = { + owner = "root"; + mode = "0600"; + }; + "nextcloud-secret" = { + owner = "nextcloud"; + group = "nextcloud"; + mode = "0400"; + }; + "nextcloud-admin-pass" = { + owner = "root"; + mode = "0600"; + }; + "ssh_github_key" = { + owner = "administrator"; + mode = "0600"; + }; + "ssh_jonsbo_key" = { + owner = "administrator"; + mode = "0600"; + }; + "ssh_sachiel_key" = { + owner = "administrator"; + mode = "0600"; + }; + "borg_repo" = { + owner = "root"; + mode = "0600"; + }; + "cert_fullchain" = { + owner = "nginx"; + group = "nginx"; + }; + "cert_private" = { + owner = "nginx"; + group = "nginx"; + }; + }; + }; + }; +} diff --git a/modules/system/wooting.nix b/modules/system/wooting.nix new file mode 100644 index 0000000..e2240ab --- /dev/null +++ b/modules/system/wooting.nix @@ -0,0 +1,11 @@ +{ + flake.modules.nixos.wooting = + { + pkgs, + ... + }: + { + services.udev.packages = [ pkgs.wooting-udev-rules ]; + environment.systemPackages = [ pkgs.wootility ]; + }; +} |
