diff options
| author | Collin Williams <96917990+bluedragon1221@users.noreply.github.com> | 2025-09-08 14:01:35 -0500 |
|---|---|---|
| committer | Collin Williams <96917990+bluedragon1221@users.noreply.github.com> | 2025-09-08 14:01:35 -0500 |
| commit | 7e7c8947fc2ff5598124c4a4c18bd28432fa017e (patch) | |
| tree | 18ada198e818600e3be4b5412424f71c3149f4cd /modules/services/nixos | |
| parent | 9497b67ef9e6f397ba146cc4c12fec8e9ecae7b2 (diff) | |
rework most of config; probably broke jupiter again; working to add ganymede (non-nixos) to this repo
Diffstat (limited to 'modules/services/nixos')
| -rw-r--r-- | modules/services/nixos/audio.nix | 20 | ||||
| -rw-r--r-- | modules/services/nixos/bluetooth.nix | 19 | ||||
| -rw-r--r-- | modules/services/nixos/default.nix | 8 | ||||
| -rw-r--r-- | modules/services/nixos/networking/default.nix | 18 | ||||
| -rw-r--r-- | modules/services/nixos/networking/iwd.nix | 26 | ||||
| -rw-r--r-- | modules/services/nixos/networking/networkmanager.nix | 15 | ||||
| -rw-r--r-- | modules/services/nixos/tailscale.nix | 15 |
7 files changed, 121 insertions, 0 deletions
diff --git a/modules/services/nixos/audio.nix b/modules/services/nixos/audio.nix new file mode 100644 index 0000000..93f8289 --- /dev/null +++ b/modules/services/nixos/audio.nix @@ -0,0 +1,20 @@ +{ + pkgs, + config, + lib, + ... +}: let + cfg = config.collinux.services.audio; +in + lib.mkIf cfg.enable { + security.rtkit.enable = true; + services.pipewire = { + enable = true; + wireplumber.enable = true; + alsa.enable = true; + + pulse.enable = cfg.pulse.enable; + }; + + environment.systemPackages = [pkgs.pwvucontrol]; + } diff --git a/modules/services/nixos/bluetooth.nix b/modules/services/nixos/bluetooth.nix new file mode 100644 index 0000000..a86b5b3 --- /dev/null +++ b/modules/services/nixos/bluetooth.nix @@ -0,0 +1,19 @@ +{ + pkgs, + lib, + config, + ... +}: let + cfg = config.collinux.services.bluetooth; +in + lib.mkIf cfg.enable { + hardware.bluetooth = { + enable = true; + powerOnBoot = true; + }; + + environment.systemPackages = [ + (lib.mkIf cfg.blueman.enable pkgs.blueman) + (lib.mkIf cfg.bluetuith.enable pkgs.bluetuith) + ]; + } diff --git a/modules/services/nixos/default.nix b/modules/services/nixos/default.nix new file mode 100644 index 0000000..b9ae4c7 --- /dev/null +++ b/modules/services/nixos/default.nix @@ -0,0 +1,8 @@ +{ + imports = [ + ./networking + ./audio.nix + ./bluetooth.nix + ./tailscale.nix + ]; +} diff --git a/modules/services/nixos/networking/default.nix b/modules/services/nixos/networking/default.nix new file mode 100644 index 0000000..68c794c --- /dev/null +++ b/modules/services/nixos/networking/default.nix @@ -0,0 +1,18 @@ +{ + imports = [ + ./iwd.nix + ./networkmanager.nix + ]; + + config = { + services.resolved = { + enable = true; + domains = [ + "10.0.0.1" + "10.0.0.10" + ]; + }; + + networking.resolvconf.enable = false; + }; +} diff --git a/modules/services/nixos/networking/iwd.nix b/modules/services/nixos/networking/iwd.nix new file mode 100644 index 0000000..d081792 --- /dev/null +++ b/modules/services/nixos/networking/iwd.nix @@ -0,0 +1,26 @@ +{ + lib, + config, + ... +}: let + cfg = config.collinux.services.networking; +in + lib.mkIf (cfg.enable && cfg.iwd.enable) { + networking = { + wireless.iwd = { + enable = true; + settings = { + General = { + EnableNetworkConfiguration = true; # use builtin dhcp client + AddressRandomization = "once"; + }; + Network.NameResolvingService = "systemd"; # either systemd or resolvconf + }; + }; + + # Disable default networking stuff + dhcpcd.enable = false; + useDHCP = false; + networkmanager.enable = false; + }; + } diff --git a/modules/services/nixos/networking/networkmanager.nix b/modules/services/nixos/networking/networkmanager.nix new file mode 100644 index 0000000..f22f922 --- /dev/null +++ b/modules/services/nixos/networking/networkmanager.nix @@ -0,0 +1,15 @@ +{ + lib, + config, + ... +}: let + cfg = config.collinux.services.networking; +in + lib.mkIf (cfg.enable && cfg.networkmanager.enable) { + networking = { + nameservers = ["1.1.1.1" "1.0.0.1"]; + enableIPv6 = false; + + networkmanager.enable = true; + }; + } diff --git a/modules/services/nixos/tailscale.nix b/modules/services/nixos/tailscale.nix new file mode 100644 index 0000000..3fbd691 --- /dev/null +++ b/modules/services/nixos/tailscale.nix @@ -0,0 +1,15 @@ +{ + config, + pkgs, + lib, + ... +}: let + cfg = config.collinux.services.networking.tailscale; +in + lib.mkIf cfg.enable { + services.tailscale = { + enable = true; + useRoutingFeatures = "both"; + }; + environment.systemPackages = [pkgs.tailscale]; + } |
