quadlet-nix

NixOS module for Quadlet / podman-systemd. Inspired by the excellent work of SEIAROTg, but rewritten from scratch. You can get started with the following minimal configuration:

{
  inputs = {
    nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
    quadlet-nix = {
      url = "github:mirkolenz/quadlet-nix/v1";
      inputs.nixpkgs.follows = "nixpkgs";
    };
  };
  outputs = {nixpkgs, flocken, ...}:  {
    nixosConfigurations.default = nixpkgs.lib.nixosSystem {
      system = "x86_64-linux";
      modules = [
        ({pkgs, ...}: {
          virtualisation.quadlet.enable = true;
          virtualisation.quadlet.containers = {
            hello-world = {
              containerConfig.Image = "docker.io/library/hello-world:latest";
            };
            nginx = {
              imageStream = pkgs.dockerTools.examples.nginxStream;
            };
          };
        })
      ];
    };
  };
}

All available options are described in the documentation. You may also want to take a look at the tests for more examples.

virtualisation.quadlet.enable

Whether to enable quadlet.

Type: boolean

Default: false

Example: true

virtualisation.quadlet.autoUpdate.enable

Whether to enable quadlet auto update.

Type: boolean

Default: false

Example: true

virtualisation.quadlet.autoUpdate.startAt

The time to start the auto update

Type: string

Default: "*-*-* 00:00:00"

virtualisation.quadlet.builds

The builds to manage

Type: attribute set of (submodule)

Default: { }

virtualisation.quadlet.builds.<name>.enable

Whether to enable the service.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.builds.<name>.aliases

The list of aliases for the systemd unit

Type: list of string

Default: [ ]

virtualisation.quadlet.builds.<name>.autoStart

Whether to enable service auto-start.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.builds.<name>.buildConfig

The systemd build configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.builds.<name>.extraConfig

Additional systemd unit configuration

Type: attribute set of attribute set of (systemd option)

Default: { }

virtualisation.quadlet.builds.<name>.name

The attribute name used to derive the other names

Type: string

Default: "‹name›"

virtualisation.quadlet.builds.<name>.podmanName

The name of the podman object

Type: string (read only)

virtualisation.quadlet.builds.<name>.quadletConfig

The systemd quadlet configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.builds.<name>.rawConfig

Raw systemd unit configuration text

Type: null or strings concatenated with “\n”

Default: null

virtualisation.quadlet.builds.<name>.ref

The reference of the podman object (i.e., the filename)

Type: string (read only)

virtualisation.quadlet.builds.<name>.requiredBy

The list of systemd targets that require the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.builds.<name>.serviceConfig

The systemd service configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.builds.<name>.serviceName

The name of the systemd service (without the .service suffix)

Type: string (read only)

virtualisation.quadlet.builds.<name>.text

The generated systemd unit file text

Type: string (read only)

virtualisation.quadlet.builds.<name>.uid

The user ID to run the service as.

Type: null or signed integer

Default: null

Example: 1000

virtualisation.quadlet.builds.<name>.unitConfig

The systemd unit configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.builds.<name>.upheldBy

The list of systemd targets that uphold the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.builds.<name>.wantedBy

The list of systemd targets to install the unit into

Type: list of string

Default: [ ]

virtualisation.quadlet.containers

The containers to manage

Type: attribute set of (submodule)

Default: { }

virtualisation.quadlet.containers.<name>.enable

Whether to enable the service.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.containers.<name>.aliases

The list of aliases for the systemd unit

Type: list of string

Default: [ ]

virtualisation.quadlet.containers.<name>.autoStart

Whether to enable service auto-start.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.containers.<name>.containerConfig

The systemd container configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.containers.<name>.extraConfig

Additional systemd unit configuration

Type: attribute set of attribute set of (systemd option)

Default: { }

virtualisation.quadlet.containers.<name>.imageFile

The image file to load before starting the service

Type: null or package

Default: null

virtualisation.quadlet.containers.<name>.imageStream

The image stream to load before starting the service

Type: null or package

Default: null

virtualisation.quadlet.containers.<name>.name

The attribute name used to derive the other names

Type: string

Default: "‹name›"

virtualisation.quadlet.containers.<name>.podmanName

The name of the podman object

Type: string (read only)

virtualisation.quadlet.containers.<name>.quadletConfig

The systemd quadlet configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.containers.<name>.rawConfig

Raw systemd unit configuration text

Type: null or strings concatenated with “\n”

Default: null

virtualisation.quadlet.containers.<name>.ref

The reference of the podman object (i.e., the filename)

Type: string (read only)

virtualisation.quadlet.containers.<name>.requiredBy

The list of systemd targets that require the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.containers.<name>.serviceConfig

The systemd service configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.containers.<name>.serviceName

The name of the systemd service (without the .service suffix)

Type: string (read only)

virtualisation.quadlet.containers.<name>.text

The generated systemd unit file text

Type: string (read only)

virtualisation.quadlet.containers.<name>.uid

The user ID to run the service as.

Type: null or signed integer

Default: null

Example: 1000

virtualisation.quadlet.containers.<name>.unitConfig

The systemd unit configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.containers.<name>.upheldBy

The list of systemd targets that uphold the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.containers.<name>.wantedBy

The list of systemd targets to install the unit into

Type: list of string

Default: [ ]

virtualisation.quadlet.images

The images to manage

Type: attribute set of (submodule)

Default: { }

virtualisation.quadlet.images.<name>.enable

Whether to enable the service.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.images.<name>.aliases

The list of aliases for the systemd unit

Type: list of string

Default: [ ]

virtualisation.quadlet.images.<name>.autoStart

Whether to enable service auto-start.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.images.<name>.extraConfig

Additional systemd unit configuration

Type: attribute set of attribute set of (systemd option)

Default: { }

virtualisation.quadlet.images.<name>.imageConfig

The systemd image configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.images.<name>.name

The attribute name used to derive the other names

Type: string

Default: "‹name›"

virtualisation.quadlet.images.<name>.podmanName

The name of the podman object

Type: string (read only)

virtualisation.quadlet.images.<name>.quadletConfig

The systemd quadlet configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.images.<name>.rawConfig

Raw systemd unit configuration text

Type: null or strings concatenated with “\n”

Default: null

virtualisation.quadlet.images.<name>.ref

The reference of the podman object (i.e., the filename)

Type: string (read only)

virtualisation.quadlet.images.<name>.requiredBy

The list of systemd targets that require the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.images.<name>.serviceConfig

The systemd service configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.images.<name>.serviceName

The name of the systemd service (without the .service suffix)

Type: string (read only)

virtualisation.quadlet.images.<name>.text

The generated systemd unit file text

Type: string (read only)

virtualisation.quadlet.images.<name>.uid

The user ID to run the service as.

Type: null or signed integer

Default: null

Example: 1000

virtualisation.quadlet.images.<name>.unitConfig

The systemd unit configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.images.<name>.upheldBy

The list of systemd targets that uphold the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.images.<name>.wantedBy

The list of systemd targets to install the unit into

Type: list of string

Default: [ ]

virtualisation.quadlet.kubes

The kubes to manage

Type: attribute set of (submodule)

Default: { }

virtualisation.quadlet.kubes.<name>.enable

Whether to enable the service.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.kubes.<name>.aliases

The list of aliases for the systemd unit

Type: list of string

Default: [ ]

virtualisation.quadlet.kubes.<name>.autoStart

Whether to enable service auto-start.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.kubes.<name>.extraConfig

Additional systemd unit configuration

Type: attribute set of attribute set of (systemd option)

Default: { }

virtualisation.quadlet.kubes.<name>.kubeConfig

The systemd kube configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.kubes.<name>.name

The attribute name used to derive the other names

Type: string

Default: "‹name›"

virtualisation.quadlet.kubes.<name>.podmanName

The name of the podman object

Type: string (read only)

virtualisation.quadlet.kubes.<name>.quadletConfig

The systemd quadlet configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.kubes.<name>.rawConfig

Raw systemd unit configuration text

Type: null or strings concatenated with “\n”

Default: null

virtualisation.quadlet.kubes.<name>.ref

The reference of the podman object (i.e., the filename)

Type: string (read only)

virtualisation.quadlet.kubes.<name>.requiredBy

The list of systemd targets that require the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.kubes.<name>.serviceConfig

The systemd service configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.kubes.<name>.serviceName

The name of the systemd service (without the .service suffix)

Type: string (read only)

virtualisation.quadlet.kubes.<name>.text

The generated systemd unit file text

Type: string (read only)

virtualisation.quadlet.kubes.<name>.uid

The user ID to run the service as.

Type: null or signed integer

Default: null

Example: 1000

virtualisation.quadlet.kubes.<name>.unitConfig

The systemd unit configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.kubes.<name>.upheldBy

The list of systemd targets that uphold the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.kubes.<name>.wantedBy

The list of systemd targets to install the unit into

Type: list of string

Default: [ ]

virtualisation.quadlet.networks

The networks to manage

Type: attribute set of (submodule)

Default: { }

virtualisation.quadlet.networks.<name>.enable

Whether to enable the service.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.networks.<name>.aliases

The list of aliases for the systemd unit

Type: list of string

Default: [ ]

virtualisation.quadlet.networks.<name>.autoStart

Whether to enable service auto-start.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.networks.<name>.extraConfig

Additional systemd unit configuration

Type: attribute set of attribute set of (systemd option)

Default: { }

virtualisation.quadlet.networks.<name>.name

The attribute name used to derive the other names

Type: string

Default: "‹name›"

virtualisation.quadlet.networks.<name>.networkConfig

The systemd network configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.networks.<name>.podmanName

The name of the podman object

Type: string (read only)

virtualisation.quadlet.networks.<name>.quadletConfig

The systemd quadlet configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.networks.<name>.rawConfig

Raw systemd unit configuration text

Type: null or strings concatenated with “\n”

Default: null

virtualisation.quadlet.networks.<name>.ref

The reference of the podman object (i.e., the filename)

Type: string (read only)

virtualisation.quadlet.networks.<name>.requiredBy

The list of systemd targets that require the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.networks.<name>.serviceConfig

The systemd service configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.networks.<name>.serviceName

The name of the systemd service (without the .service suffix)

Type: string (read only)

virtualisation.quadlet.networks.<name>.text

The generated systemd unit file text

Type: string (read only)

virtualisation.quadlet.networks.<name>.uid

The user ID to run the service as.

Type: null or signed integer

Default: null

Example: 1000

virtualisation.quadlet.networks.<name>.unitConfig

The systemd unit configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.networks.<name>.upheldBy

The list of systemd targets that uphold the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.networks.<name>.wantedBy

The list of systemd targets to install the unit into

Type: list of string

Default: [ ]

virtualisation.quadlet.pods

The pods to manage

Type: attribute set of (submodule)

Default: { }

virtualisation.quadlet.pods.<name>.enable

Whether to enable the service.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.pods.<name>.aliases

The list of aliases for the systemd unit

Type: list of string

Default: [ ]

virtualisation.quadlet.pods.<name>.autoStart

Whether to enable service auto-start.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.pods.<name>.extraConfig

Additional systemd unit configuration

Type: attribute set of attribute set of (systemd option)

Default: { }

virtualisation.quadlet.pods.<name>.name

The attribute name used to derive the other names

Type: string

Default: "‹name›"

virtualisation.quadlet.pods.<name>.podConfig

The systemd pod configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.pods.<name>.podmanName

The name of the podman object

Type: string (read only)

virtualisation.quadlet.pods.<name>.quadletConfig

The systemd quadlet configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.pods.<name>.rawConfig

Raw systemd unit configuration text

Type: null or strings concatenated with “\n”

Default: null

virtualisation.quadlet.pods.<name>.ref

The reference of the podman object (i.e., the filename)

Type: string (read only)

virtualisation.quadlet.pods.<name>.requiredBy

The list of systemd targets that require the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.pods.<name>.serviceConfig

The systemd service configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.pods.<name>.serviceName

The name of the systemd service (without the .service suffix)

Type: string (read only)

virtualisation.quadlet.pods.<name>.text

The generated systemd unit file text

Type: string (read only)

virtualisation.quadlet.pods.<name>.uid

The user ID to run the service as.

Type: null or signed integer

Default: null

Example: 1000

virtualisation.quadlet.pods.<name>.unitConfig

The systemd unit configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.pods.<name>.upheldBy

The list of systemd targets that uphold the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.pods.<name>.wantedBy

The list of systemd targets to install the unit into

Type: list of string

Default: [ ]

virtualisation.quadlet.volumes

The volumes to manage

Type: attribute set of (submodule)

Default: { }

virtualisation.quadlet.volumes.<name>.enable

Whether to enable the service.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.volumes.<name>.aliases

The list of aliases for the systemd unit

Type: list of string

Default: [ ]

virtualisation.quadlet.volumes.<name>.autoStart

Whether to enable service auto-start.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.volumes.<name>.extraConfig

Additional systemd unit configuration

Type: attribute set of attribute set of (systemd option)

Default: { }

virtualisation.quadlet.volumes.<name>.name

The attribute name used to derive the other names

Type: string

Default: "‹name›"

virtualisation.quadlet.volumes.<name>.podmanName

The name of the podman object

Type: string (read only)

virtualisation.quadlet.volumes.<name>.quadletConfig

The systemd quadlet configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.volumes.<name>.rawConfig

Raw systemd unit configuration text

Type: null or strings concatenated with “\n”

Default: null

virtualisation.quadlet.volumes.<name>.ref

The reference of the podman object (i.e., the filename)

Type: string (read only)

virtualisation.quadlet.volumes.<name>.requiredBy

The list of systemd targets that require the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.volumes.<name>.serviceConfig

The systemd service configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.volumes.<name>.serviceName

The name of the systemd service (without the .service suffix)

Type: string (read only)

virtualisation.quadlet.volumes.<name>.text

The generated systemd unit file text

Type: string (read only)

virtualisation.quadlet.volumes.<name>.uid

The user ID to run the service as.

Type: null or signed integer

Default: null

Example: 1000

virtualisation.quadlet.volumes.<name>.unitConfig

The systemd unit configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.volumes.<name>.upheldBy

The list of systemd targets that uphold the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.volumes.<name>.volumeConfig

The systemd volume configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.volumes.<name>.wantedBy

The list of systemd targets to install the unit into

Type: list of string

Default: [ ]

virtualisation.quadlet.enable

Whether to enable quadlet.

Type: boolean

Default: false

Example: true

virtualisation.quadlet.autoUpdate.enable

Whether to enable quadlet auto update.

Type: boolean

Default: false

Example: true

virtualisation.quadlet.autoUpdate.startAt

The time to start the auto update

Type: string

Default: "*-*-* 00:00:00"

virtualisation.quadlet.builds

The builds to manage

Type: attribute set of (submodule)

Default: { }

virtualisation.quadlet.builds.<name>.enable

Whether to enable the service.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.builds.<name>.aliases

The list of aliases for the systemd unit

Type: list of string

Default: [ ]

virtualisation.quadlet.builds.<name>.autoStart

Whether to enable service auto-start.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.builds.<name>.buildConfig

The systemd build configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.builds.<name>.extraConfig

Additional systemd unit configuration

Type: attribute set of attribute set of (systemd option)

Default: { }

virtualisation.quadlet.builds.<name>.name

The attribute name used to derive the other names

Type: string

Default: "‹name›"

virtualisation.quadlet.builds.<name>.podmanName

The name of the podman object

Type: string (read only)

virtualisation.quadlet.builds.<name>.quadletConfig

The systemd quadlet configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.builds.<name>.rawConfig

Raw systemd unit configuration text

Type: null or strings concatenated with “\n”

Default: null

virtualisation.quadlet.builds.<name>.ref

The reference of the podman object (i.e., the filename)

Type: string (read only)

virtualisation.quadlet.builds.<name>.requiredBy

The list of systemd targets that require the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.builds.<name>.serviceConfig

The systemd service configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.builds.<name>.serviceName

The name of the systemd service (without the .service suffix)

Type: string (read only)

virtualisation.quadlet.builds.<name>.text

The generated systemd unit file text

Type: string (read only)

virtualisation.quadlet.builds.<name>.unitConfig

The systemd unit configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.builds.<name>.upheldBy

The list of systemd targets that uphold the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.builds.<name>.wantedBy

The list of systemd targets to install the unit into

Type: list of string

Default: [ ]

virtualisation.quadlet.containers

The containers to manage

Type: attribute set of (submodule)

Default: { }

virtualisation.quadlet.containers.<name>.enable

Whether to enable the service.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.containers.<name>.aliases

The list of aliases for the systemd unit

Type: list of string

Default: [ ]

virtualisation.quadlet.containers.<name>.autoStart

Whether to enable service auto-start.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.containers.<name>.containerConfig

The systemd container configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.containers.<name>.extraConfig

Additional systemd unit configuration

Type: attribute set of attribute set of (systemd option)

Default: { }

virtualisation.quadlet.containers.<name>.imageFile

The image file to load before starting the service

Type: null or package

Default: null

virtualisation.quadlet.containers.<name>.imageStream

The image stream to load before starting the service

Type: null or package

Default: null

virtualisation.quadlet.containers.<name>.name

The attribute name used to derive the other names

Type: string

Default: "‹name›"

virtualisation.quadlet.containers.<name>.podmanName

The name of the podman object

Type: string (read only)

virtualisation.quadlet.containers.<name>.quadletConfig

The systemd quadlet configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.containers.<name>.rawConfig

Raw systemd unit configuration text

Type: null or strings concatenated with “\n”

Default: null

virtualisation.quadlet.containers.<name>.ref

The reference of the podman object (i.e., the filename)

Type: string (read only)

virtualisation.quadlet.containers.<name>.requiredBy

The list of systemd targets that require the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.containers.<name>.serviceConfig

The systemd service configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.containers.<name>.serviceName

The name of the systemd service (without the .service suffix)

Type: string (read only)

virtualisation.quadlet.containers.<name>.text

The generated systemd unit file text

Type: string (read only)

virtualisation.quadlet.containers.<name>.unitConfig

The systemd unit configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.containers.<name>.upheldBy

The list of systemd targets that uphold the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.containers.<name>.wantedBy

The list of systemd targets to install the unit into

Type: list of string

Default: [ ]

virtualisation.quadlet.images

The images to manage

Type: attribute set of (submodule)

Default: { }

virtualisation.quadlet.images.<name>.enable

Whether to enable the service.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.images.<name>.aliases

The list of aliases for the systemd unit

Type: list of string

Default: [ ]

virtualisation.quadlet.images.<name>.autoStart

Whether to enable service auto-start.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.images.<name>.extraConfig

Additional systemd unit configuration

Type: attribute set of attribute set of (systemd option)

Default: { }

virtualisation.quadlet.images.<name>.imageConfig

The systemd image configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.images.<name>.name

The attribute name used to derive the other names

Type: string

Default: "‹name›"

virtualisation.quadlet.images.<name>.podmanName

The name of the podman object

Type: string (read only)

virtualisation.quadlet.images.<name>.quadletConfig

The systemd quadlet configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.images.<name>.rawConfig

Raw systemd unit configuration text

Type: null or strings concatenated with “\n”

Default: null

virtualisation.quadlet.images.<name>.ref

The reference of the podman object (i.e., the filename)

Type: string (read only)

virtualisation.quadlet.images.<name>.requiredBy

The list of systemd targets that require the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.images.<name>.serviceConfig

The systemd service configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.images.<name>.serviceName

The name of the systemd service (without the .service suffix)

Type: string (read only)

virtualisation.quadlet.images.<name>.text

The generated systemd unit file text

Type: string (read only)

virtualisation.quadlet.images.<name>.unitConfig

The systemd unit configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.images.<name>.upheldBy

The list of systemd targets that uphold the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.images.<name>.wantedBy

The list of systemd targets to install the unit into

Type: list of string

Default: [ ]

virtualisation.quadlet.kubes

The kubes to manage

Type: attribute set of (submodule)

Default: { }

virtualisation.quadlet.kubes.<name>.enable

Whether to enable the service.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.kubes.<name>.aliases

The list of aliases for the systemd unit

Type: list of string

Default: [ ]

virtualisation.quadlet.kubes.<name>.autoStart

Whether to enable service auto-start.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.kubes.<name>.extraConfig

Additional systemd unit configuration

Type: attribute set of attribute set of (systemd option)

Default: { }

virtualisation.quadlet.kubes.<name>.kubeConfig

The systemd kube configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.kubes.<name>.name

The attribute name used to derive the other names

Type: string

Default: "‹name›"

virtualisation.quadlet.kubes.<name>.podmanName

The name of the podman object

Type: string (read only)

virtualisation.quadlet.kubes.<name>.quadletConfig

The systemd quadlet configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.kubes.<name>.rawConfig

Raw systemd unit configuration text

Type: null or strings concatenated with “\n”

Default: null

virtualisation.quadlet.kubes.<name>.ref

The reference of the podman object (i.e., the filename)

Type: string (read only)

virtualisation.quadlet.kubes.<name>.requiredBy

The list of systemd targets that require the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.kubes.<name>.serviceConfig

The systemd service configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.kubes.<name>.serviceName

The name of the systemd service (without the .service suffix)

Type: string (read only)

virtualisation.quadlet.kubes.<name>.text

The generated systemd unit file text

Type: string (read only)

virtualisation.quadlet.kubes.<name>.unitConfig

The systemd unit configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.kubes.<name>.upheldBy

The list of systemd targets that uphold the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.kubes.<name>.wantedBy

The list of systemd targets to install the unit into

Type: list of string

Default: [ ]

virtualisation.quadlet.networks

The networks to manage

Type: attribute set of (submodule)

Default: { }

virtualisation.quadlet.networks.<name>.enable

Whether to enable the service.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.networks.<name>.aliases

The list of aliases for the systemd unit

Type: list of string

Default: [ ]

virtualisation.quadlet.networks.<name>.autoStart

Whether to enable service auto-start.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.networks.<name>.extraConfig

Additional systemd unit configuration

Type: attribute set of attribute set of (systemd option)

Default: { }

virtualisation.quadlet.networks.<name>.name

The attribute name used to derive the other names

Type: string

Default: "‹name›"

virtualisation.quadlet.networks.<name>.networkConfig

The systemd network configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.networks.<name>.podmanName

The name of the podman object

Type: string (read only)

virtualisation.quadlet.networks.<name>.quadletConfig

The systemd quadlet configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.networks.<name>.rawConfig

Raw systemd unit configuration text

Type: null or strings concatenated with “\n”

Default: null

virtualisation.quadlet.networks.<name>.ref

The reference of the podman object (i.e., the filename)

Type: string (read only)

virtualisation.quadlet.networks.<name>.requiredBy

The list of systemd targets that require the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.networks.<name>.serviceConfig

The systemd service configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.networks.<name>.serviceName

The name of the systemd service (without the .service suffix)

Type: string (read only)

virtualisation.quadlet.networks.<name>.text

The generated systemd unit file text

Type: string (read only)

virtualisation.quadlet.networks.<name>.unitConfig

The systemd unit configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.networks.<name>.upheldBy

The list of systemd targets that uphold the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.networks.<name>.wantedBy

The list of systemd targets to install the unit into

Type: list of string

Default: [ ]

virtualisation.quadlet.pods

The pods to manage

Type: attribute set of (submodule)

Default: { }

virtualisation.quadlet.pods.<name>.enable

Whether to enable the service.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.pods.<name>.aliases

The list of aliases for the systemd unit

Type: list of string

Default: [ ]

virtualisation.quadlet.pods.<name>.autoStart

Whether to enable service auto-start.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.pods.<name>.extraConfig

Additional systemd unit configuration

Type: attribute set of attribute set of (systemd option)

Default: { }

virtualisation.quadlet.pods.<name>.name

The attribute name used to derive the other names

Type: string

Default: "‹name›"

virtualisation.quadlet.pods.<name>.podConfig

The systemd pod configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.pods.<name>.podmanName

The name of the podman object

Type: string (read only)

virtualisation.quadlet.pods.<name>.quadletConfig

The systemd quadlet configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.pods.<name>.rawConfig

Raw systemd unit configuration text

Type: null or strings concatenated with “\n”

Default: null

virtualisation.quadlet.pods.<name>.ref

The reference of the podman object (i.e., the filename)

Type: string (read only)

virtualisation.quadlet.pods.<name>.requiredBy

The list of systemd targets that require the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.pods.<name>.serviceConfig

The systemd service configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.pods.<name>.serviceName

The name of the systemd service (without the .service suffix)

Type: string (read only)

virtualisation.quadlet.pods.<name>.text

The generated systemd unit file text

Type: string (read only)

virtualisation.quadlet.pods.<name>.unitConfig

The systemd unit configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.pods.<name>.upheldBy

The list of systemd targets that uphold the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.pods.<name>.wantedBy

The list of systemd targets to install the unit into

Type: list of string

Default: [ ]

virtualisation.quadlet.volumes

The volumes to manage

Type: attribute set of (submodule)

Default: { }

virtualisation.quadlet.volumes.<name>.enable

Whether to enable the service.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.volumes.<name>.aliases

The list of aliases for the systemd unit

Type: list of string

Default: [ ]

virtualisation.quadlet.volumes.<name>.autoStart

Whether to enable service auto-start.

Type: boolean

Default: true

Example: true

virtualisation.quadlet.volumes.<name>.extraConfig

Additional systemd unit configuration

Type: attribute set of attribute set of (systemd option)

Default: { }

virtualisation.quadlet.volumes.<name>.name

The attribute name used to derive the other names

Type: string

Default: "‹name›"

virtualisation.quadlet.volumes.<name>.podmanName

The name of the podman object

Type: string (read only)

virtualisation.quadlet.volumes.<name>.quadletConfig

The systemd quadlet configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.volumes.<name>.rawConfig

Raw systemd unit configuration text

Type: null or strings concatenated with “\n”

Default: null

virtualisation.quadlet.volumes.<name>.ref

The reference of the podman object (i.e., the filename)

Type: string (read only)

virtualisation.quadlet.volumes.<name>.requiredBy

The list of systemd targets that require the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.volumes.<name>.serviceConfig

The systemd service configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.volumes.<name>.serviceName

The name of the systemd service (without the .service suffix)

Type: string (read only)

virtualisation.quadlet.volumes.<name>.text

The generated systemd unit file text

Type: string (read only)

virtualisation.quadlet.volumes.<name>.unitConfig

The systemd unit configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.volumes.<name>.upheldBy

The list of systemd targets that uphold the unit

Type: list of string

Default: [ ]

virtualisation.quadlet.volumes.<name>.volumeConfig

The systemd volume configuration

Type: attribute set of (systemd option)

Default: { }

virtualisation.quadlet.volumes.<name>.wantedBy

The list of systemd targets to install the unit into

Type: list of string

Default: [ ]