{ config, lib, pkgs, ... }: with lib; let cfg = config.dov.virtualisation.podman; in { options.dov.virtualisation.podman = { enable = mkEnableOption "podman config"; }; config = mkIf cfg.enable { # Enable common container config files in /etc/containers virtualisation.containers.enable = true; 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; }; }; # Useful other development tools environment.systemPackages = with pkgs; [ dive # look into docker image layers podman-tui # status of containers in the terminal #docker-compose # start group of containers for dev podman-compose # start group of containers for dev ]; }; }