nix-config/modules/nixos/system/podman/default.nix

53 lines
1 KiB
Nix
Raw Normal View History

2022-01-12 18:22:43 +01:00
# Podman related settings
{ config, lib, ... }:
2022-01-12 18:22:43 +01:00
let
cfg = config.my.system.podman;
in
{
options.my.system.podman = with lib; {
enable = mkEnableOption "podman configuration";
};
config = lib.mkIf cfg.enable {
assertions = [
{
assertion = cfg.enable -> !config.my.system.docker.enable;
message = ''
`config.my.system.podman` is incompatible with
`config.my.system.docker`.
'';
}
];
2022-01-12 18:22:43 +01:00
virtualisation.podman = {
enable = true;
# Use fake `docker` command to redirect to `podman`
dockerCompat = true;
# Expose a docker-like socket
dockerSocket.enable = true;
# Allow DNS resolution in the default network
defaultNetwork.settings = {
dns_enabled = true;
};
# Remove unused data on a weekly basis
autoPrune = {
enable = true;
dates = "weekly";
flags = [
"--all"
];
};
2022-01-12 18:22:43 +01:00
};
2024-11-07 15:53:50 +01:00
my.system.persist.directories = [
"/var/lib/containers"
];
2022-01-12 18:22:43 +01:00
};
}