Skip to content

Releases: pdtpartners/nix-snapshotter

nix-snapshotter v0.2.1

24 Oct 14:57
Compare
Choose a tag to compare

Welcome to the v0.2.1 release of nix-snapshotter!

Highlights

  • Support for gVisor
  • Various bug fixes

New options (NixOS & Home Manager)

  • New options for containerd & containerd.rootless

    config.virtualisation.containerd = {
      enable = true;
      # Register gvisor's runsc as a container runtime.
      gVisorIntegration = true;
      # Use runsc as the default container runtime.
      defaultRuntime = "runsc";
    }

Contributors

  • bglgwyng
  • Christian Kögler
  • Edgar Lee
  • Ian Becker
  • Robbie Buxton
  • Yureka

Dependency Changes

  • NixOS 23.11 -> 24.05

nix-snapshotter 0.2.0

18 Feb 07:05
Compare
Choose a tag to compare

Welcome to the v0.2.0 release of nix-snapshotter!

Highlights

  • Provides NixOS & Home Manager modules for rootless Kubernetes (k3s) + nix-snapshotter
  • Separate nix run .#vm and nix run .#vm-rootless
  • Separate preload-container service into independent modules
  • Pin k3s to v1.27.9+k3s1 with patches to enable embedded nix-snapshotter

New options (NixOS & Home Manager)

  • Services preload-containerd & preload-containerd.rootless:

    config.services.preload-containerd = {
      enable = true;
      targets = [{
        archives = [ pkgs.nix-snapshotter.buildImage { /* ... */ } ];
        namespace = "k8s.io";
        address = "/run/k3s/containerd/containerd.sock";
      }];
    };
  • New options for k3s & new service k3s.rootless:

    config.services.k3s = {
      enable = true;
      # Sets the snapshotter for embedded containerd.
      snapshotter = "nix";
      # Sets KUBECONFIG env var to point to k3s.
      setKubeConfig = true;
      # Sets CONTAINERD_* env vars to point to k3s embedded containerd.
      setEmbeddedContainerd = true;
    }
  • New options for containerd & containerd.rootless:

    config.virtualisation.containerd = {
      enable = true;
      # Enable integration with nix-snapshotter.
      nixSnapshotterIntegration = true;
      # Set the CONTAINERD_* env vars, but also set automatically by
      # `nixSnapshotterIntegration` or by `services.k3s.setEmbeddedContainerd`.
      setAddress = "/run/containerd/containerd.sock";
      setNamespace = "default";
      setSnapshotter = "nix";
    }
  • New option only for NixOS module containerd:

    config.virtualisation.containerd = {
      enable = true;
      # Enable integration with k3s. This is mutually exclusive with setting
      # `services.k3s.snapshotter` and `services.k3s.setEmbeddedContainerd`.
      k3sIntegration = true;
    };

Migration guide v0.1.x -> v0.2.0

  • Removed options.services.nix-snapshotter.setContainerdSnapshotter

    # v0.1.x
    services.nix-snapshotter = {
      enable = true;
      setContainerdSnapshotter = true;
    };
    
    # v0.2.0 (same for rootless)
    virtualisation.containerd = {
      enable = true;
      nixSnapshotterIntegration = true;
    };
    services.nix-snapshotter = {
      enable = true;
    };
  • Removed options.services.nix-snapshotter.preloadContainerdImages

    # v0.1.x
    services.nix-snapshotter = {
      enable = true;
      preloadContainerdImages = [ pkgs.nix-snapshotter.buildImage { /* ... */ } ];
    };
    
    # v0.2.0 (same for rootless)
    virtualisation.containerd = {
      enable = true;
      nixSnapshotterIntegration = true;
    }
    services.nix-snapshotter = {
      enable = true;
    };
    services.preload-containerd = {
      targets = [{
        archives = [ pkgs.nix-snapshotter.buildImage { /* ... */ } ];
      }];
    };

Contributors

  • Edgar Lee

Dependency Changes

  • None

nix-snapshotter 0.1.2

14 Feb 23:31
Compare
Choose a tag to compare

Welcome to the v0.1.2 release of nix-snapshotter!

New features

  • Provide pkg/plugin package to compile containerd with builtin support for nix-snapshotter (#112 )
  • Add new configuration option external_builder to provide an external executable as a NixBuilder (#113)

Please try it out and report any issues at:
https://github.com/pdtpartners/nix-snapshotter/issues

Contributors

  • Edgar Lee

Dependency Changes

  • None

nix-snapshotter 0.1.1

27 Jan 14:18
e8818ec
Compare
Choose a tag to compare

Welcome to the v0.1.1 release of nix-snapshotter!

Bug fixes

  • Correctly invokes nix build to substitute missing store paths (#107)
  • Enable k3s to use nix-snapshotter as an image-service-endpoint to resolve nix:0/<nix-store-path> image references (#110)

Please try it out and report any issues at:
https://github.com/pdtpartners/nix-snapshotter/issues

Contributors

  • Edgar Lee
  • Antoine Roy-Gobeil
  • Robbie Buxton
  • Graham Bennett
  • Cameron Smith

Dependency Changes

  • github:edolstra/flake-compat bumped
  • github:hercules-ci/flake-parts bumped
  • github:NixOS/nixpkgs/nixos-unstable changed to github:NixOS/nixpkgs/nixos-23.11

nix-snapshotter 0.1.0

06 Sep 16:22
Compare
Choose a tag to compare

Welcome to the v0.1.0 release of nix-snapshotter!

This is the first public release of nix-snapshotter. Please try it out and report any issues at:
https://github.com/pdtpartners/nix-snapshotter/issues

Contributors

  • Edgar Lee
  • Robbie Buxton
  • Graham Bennett