38 lines
696 B
Nix
38 lines
696 B
Nix
{
|
|
username ? throw "username argument is required",
|
|
}:
|
|
{
|
|
config,
|
|
inputs,
|
|
pkgs,
|
|
...
|
|
}:
|
|
let
|
|
hmConfig = config.home-manager.users.${username};
|
|
in
|
|
{
|
|
virtualisation.docker.rootless = {
|
|
enable = true;
|
|
setSocketVariable = true;
|
|
enableOnBoot = false;
|
|
storageDriver = "btrfs";
|
|
|
|
daemon.settings = {
|
|
experimental = true;
|
|
ipv6 = true;
|
|
fixed-cidr-v6 = "fd00::/80";
|
|
};
|
|
|
|
autoPrune = {
|
|
enable = true;
|
|
flags = [ "--all" ];
|
|
};
|
|
};
|
|
|
|
environment.persistence."/persist".users.${username}.directories = [
|
|
"${hmConfig.xdg.relativeDataHome}/docker"
|
|
];
|
|
|
|
home-manager.users.${username}.home.packages = with pkgs; [ docker-compose ];
|
|
}
|