Make podman enablement a personal module
Podman needs some configuration, so I'm splitting it out to its own module
This commit is contained in:
@@ -28,6 +28,7 @@
|
|||||||
greg = {
|
greg = {
|
||||||
home = true;
|
home = true;
|
||||||
gnome.enable = true;
|
gnome.enable = true;
|
||||||
|
podman.enable = true;
|
||||||
print.enable = true;
|
print.enable = true;
|
||||||
tailscale.enable = true;
|
tailscale.enable = true;
|
||||||
vmdev = {
|
vmdev = {
|
||||||
@@ -52,7 +53,6 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
virtualisation = {
|
virtualisation = {
|
||||||
podman.enable = true;
|
|
||||||
oci-containers.backend = "podman";
|
oci-containers.backend = "podman";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
+47
-54
@@ -10,51 +10,23 @@
|
|||||||
imports = [
|
imports = [
|
||||||
./boot.nix
|
./boot.nix
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
./podman.nix
|
|
||||||
./virt.nix
|
./virt.nix
|
||||||
./work.nix
|
./work.nix
|
||||||
top.nix-hardware.nixosModules.system76
|
top.nix-hardware.nixosModules.system76
|
||||||
];
|
];
|
||||||
programs = {
|
|
||||||
adb.enable = true;
|
|
||||||
steam.enable = true;
|
|
||||||
nix-index = {
|
|
||||||
enable = true;
|
|
||||||
enableBashIntegration = false;
|
|
||||||
enableFishIntegration = false;
|
|
||||||
enableZshIntegration = false;
|
|
||||||
};
|
|
||||||
nix-ld.enable = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
networking = {
|
boot.extraModulePackages = [ config.boot.kernelPackages.v4l2loopback ];
|
||||||
hostName = "jude";
|
|
||||||
networkmanager.enable = lib.mkForce true;
|
|
||||||
enableIPv6 = false;
|
|
||||||
interfaces.enp12s0.useDHCP = true;
|
|
||||||
firewall = {
|
|
||||||
enable = false;
|
|
||||||
allowedTCPPorts = [ 21000 ];
|
|
||||||
allowedUDPPorts = [
|
|
||||||
21000
|
|
||||||
21010
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
nixpkgs.config.permittedInsecurePackages = [ "ventoy-1.1.05" ];
|
|
||||||
|
|
||||||
greg = {
|
greg = {
|
||||||
tailscale.enable = true;
|
tailscale.enable = true;
|
||||||
sway.enable = false;
|
sway.enable = false;
|
||||||
gnome.enable = true;
|
gnome.enable = true;
|
||||||
kde.enable = false;
|
kde.enable = false;
|
||||||
|
podman.enable = true;
|
||||||
print.enable = true;
|
print.enable = true;
|
||||||
remote-builder.enable = true;
|
remote-builder.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
boot.extraModulePackages = [ config.boot.kernelPackages.v4l2loopback ];
|
|
||||||
|
|
||||||
environment.systemPackages =
|
environment.systemPackages =
|
||||||
with pkgs;
|
with pkgs;
|
||||||
lib.mkMerge [
|
lib.mkMerge [
|
||||||
@@ -98,31 +70,7 @@
|
|||||||
gst_all_1.gst-vaapi
|
gst_all_1.gst-vaapi
|
||||||
]
|
]
|
||||||
];
|
];
|
||||||
fileSystems = {
|
|
||||||
"/boot" = {
|
|
||||||
device = "/dev/nvme0n1p1";
|
|
||||||
fsType = "auto";
|
|
||||||
};
|
|
||||||
"/windows11" = {
|
|
||||||
device = "/dev/nvme1n1p2";
|
|
||||||
fsType = "ntfs-3g";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# Let's do a sound thing
|
|
||||||
services = {
|
|
||||||
pipewire = {
|
|
||||||
enable = true;
|
|
||||||
alsa.enable = true;
|
|
||||||
audio.enable = true;
|
|
||||||
jack.enable = true;
|
|
||||||
pulse.enable = true;
|
|
||||||
wireplumber.enable = true;
|
|
||||||
};
|
|
||||||
pulseaudio.enable = false; # This conflicts with pipewire
|
|
||||||
locate.enable = true;
|
|
||||||
xserver.videoDrivers = [ "nvidia" ];
|
|
||||||
};
|
|
||||||
hardware = {
|
hardware = {
|
||||||
nvidia = {
|
nvidia = {
|
||||||
package = config.boot.kernelPackages.nvidiaPackages.vulkan_beta;
|
package = config.boot.kernelPackages.nvidiaPackages.vulkan_beta;
|
||||||
@@ -139,6 +87,51 @@
|
|||||||
#kernel-modules.enable = true;
|
#kernel-modules.enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
networking = {
|
||||||
|
hostName = "jude";
|
||||||
|
networkmanager.enable = lib.mkForce true;
|
||||||
|
enableIPv6 = false;
|
||||||
|
interfaces.enp12s0.useDHCP = true;
|
||||||
|
firewall = {
|
||||||
|
enable = false;
|
||||||
|
allowedTCPPorts = [ 21000 ];
|
||||||
|
allowedUDPPorts = [
|
||||||
|
21000
|
||||||
|
21010
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nixpkgs.config.permittedInsecurePackages = [ "ventoy-1.1.05" ];
|
||||||
|
|
||||||
|
programs = {
|
||||||
|
adb.enable = true;
|
||||||
|
steam.enable = true;
|
||||||
|
nix-index = {
|
||||||
|
enable = true;
|
||||||
|
enableBashIntegration = false;
|
||||||
|
enableFishIntegration = false;
|
||||||
|
enableZshIntegration = false;
|
||||||
|
};
|
||||||
|
nix-ld.enable = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Let's do a sound thing
|
||||||
|
services = {
|
||||||
|
pipewire = {
|
||||||
|
enable = true;
|
||||||
|
alsa.enable = true;
|
||||||
|
audio.enable = true;
|
||||||
|
jack.enable = true;
|
||||||
|
pulse.enable = true;
|
||||||
|
wireplumber.enable = true;
|
||||||
|
};
|
||||||
|
pulseaudio.enable = false; # This conflicts with pipewire
|
||||||
|
locate.enable = true;
|
||||||
|
xserver.videoDrivers = [ "nvidia" ];
|
||||||
|
};
|
||||||
|
|
||||||
users.users.greg.extraGroups = [
|
users.users.greg.extraGroups = [
|
||||||
"adbusers"
|
"adbusers"
|
||||||
"kvm"
|
"kvm"
|
||||||
|
|||||||
@@ -23,11 +23,21 @@
|
|||||||
boot.kernelModules = [ "kvm-amd" ];
|
boot.kernelModules = [ "kvm-amd" ];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
fileSystems."/" = {
|
fileSystems = {
|
||||||
|
"/" = {
|
||||||
#device = "/dev/disk/by-uuid/27ae91ed-32e9-411e-8227-0d99e360fbbf";
|
#device = "/dev/disk/by-uuid/27ae91ed-32e9-411e-8227-0d99e360fbbf";
|
||||||
device = "/dev/nvme0n1p4";
|
device = "/dev/nvme0n1p4";
|
||||||
fsType = "btrfs";
|
fsType = "btrfs";
|
||||||
};
|
};
|
||||||
|
"/boot" = {
|
||||||
|
device = "/dev/nvme0n1p1";
|
||||||
|
fsType = "auto";
|
||||||
|
};
|
||||||
|
"/windows11" = {
|
||||||
|
device = "/dev/nvme1n1p2";
|
||||||
|
fsType = "ntfs-3g";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
swapDevices = [ ];
|
swapDevices = [ ];
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
virtualisation.podman = {
|
|
||||||
enable = true;
|
|
||||||
dockerCompat = true;
|
|
||||||
extraPackages = [
|
|
||||||
pkgs.podman-compose
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -17,6 +17,7 @@
|
|||||||
./kde.nix
|
./kde.nix
|
||||||
./kiwix-serve.nix
|
./kiwix-serve.nix
|
||||||
./linode.nix
|
./linode.nix
|
||||||
|
./podman.nix
|
||||||
./print.nix
|
./print.nix
|
||||||
./proxy.nix
|
./proxy.nix
|
||||||
./remote-builder.nix
|
./remote-builder.nix
|
||||||
|
|||||||
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.greg.podman;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.greg.podman.enable = lib.mkEnableOption "Enable podman in NixOS with my updates";
|
||||||
|
|
||||||
|
config.virtualisation.podman = lib.mkIf cfg.enable {
|
||||||
|
enable = true;
|
||||||
|
dockerCompat = true;
|
||||||
|
extraPackages = [
|
||||||
|
pkgs.podman-compose
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user