31 lines
956 B
Nix
31 lines
956 B
Nix
{ pkgs, lib, config, ... }:
|
|
let cfg = config.custom.misc.podman;
|
|
in {
|
|
options = {
|
|
custom.misc.podman = { enable = lib.mkEnableOption "Enable podman service"; };
|
|
};
|
|
config = lib.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
|
|
];
|
|
};
|
|
}
|