pinwheel: Remove docker and podman in favor of containers

This commit is contained in:
Alexander Heldt
2024-01-10 15:26:55 +01:00
parent 5bb14cc504
commit 6dc8b14dea
4 changed files with 40 additions and 58 deletions

View File

@@ -0,0 +1,36 @@
{ pkgs, lib, config, ... }:
let
dockerEnabled = config.mod.containers.docker.enable;
podmanEnabled = config.mod.containers.podman.enable;
in
{
options = {
mod.containers = {
docker = {
enable = lib.mkEnableOption "enable docker";
};
podman = {
enable = lib.mkEnableOption "enable podman";
};
};
};
config = {
virtualisation = {
docker = lib.mkIf dockerEnabled {
enable = true;
};
podman = lib.mkIf podmanEnabled {
enable = true;
};
};
users.users.alex.extraGroups = lib.mkIf dockerEnabled [ "docker" ];
home-manager.users.alex = lib.mkIf dockerEnabled {
home.packages = [ pkgs.docker-compose ];
};
};
}

View File

@@ -25,8 +25,10 @@ in
go.enable = true;
rust.enable = true;
keyboard.enable = true;
containers = {
docker.enable = true;
podman.enable = false;
};
vm.enable = true;
scripts.enable = true;
pppdotpm-site.enable = false;

View File

@@ -1,25 +0,0 @@
{ pkgs, lib, config, ... }:
let
enabled = config.mod.docker.enable;
in
{
options = {
mod.docker = {
enable = lib.mkEnableOption "enable docker module";
};
};
config = lib.mkIf enabled {
virtualisation = {
docker = {
enable = true;
};
};
users.users.alex.extraGroups = [ "docker" ];
home-manager.users.alex = {
home.packages = [ pkgs.docker-compose ];
};
};
}

View File

@@ -1,31 +0,0 @@
{ pkgs, lib, config, ... }:
let
enabled = config.mod.podman.enable;
in
{
options = {
mod.podman = {
enable = lib.mkEnableOption "enable podman module";
};
};
config = lib.mkIf enabled {
virtualisation = {
podman = {
enable = true;
# Create a `docker` alias for podman, to use it as a drop-in replacement
dockerCompat = true;
# Required for containers under podman-compose to be able to talk to each other.
defaultNetwork.settings = {
dns_enabled = true;
};
};
};
home-manager.users.alex = {
home.packages = [ pkgs.podman-compose ];
};
};
}