github lima-vm/lima v2.0.0

latest release: v2.0.1
20 hours ago

This is the second major release of Lima, featuring the support for pluggable VM drivers, GPU acceleration, and MCP.
This release also commemorates the promotion of the project from CNCF Sandbox to Incubating 🎉.

Highlights

Other notable changes

  • /tmp/lima is no longer mounted by default (#3951)
  • SSH port is no longer hard-coded to 60022 for the "default" instance (#3780)
  • Forward UDP ports by default (#4054)
  • Support CLI plugins (#3834, #4009, thanks to @olamilekan000)
  • Support custom URL scheme plugins (#3937, thanks to @jandubois).
    template://default is now recommended to be written as template:default. The old form is still supported.

Details

  • VM driver infrastructure:

  • krunkit:

  • VZ:

  • QEMU:

    • Fallback to TCG when KVM is not available on Linux hosts (#4204)
  • MCP:

  • limactl CLI:

    • Add limactl (start|restart) --progress flag to show the progress of provisioning (#3846, #3915, thanks to @olamilekan000 @norio-nomura)
    • Add limactl (create|start|edit) --port-forward flag for static port forwarding (#3699, thanks to @Horiodino).
      Usually not needed, but useful for instances created with --plain.
    • Add limactl (create|start|edit) --ssh-port flag (#3791)
    • Add limactl (create|start|edit) --mount-only flag (#3947).
      Similar to --mount, but overrides the existing mounts. Useful for mounting $(pwd).
    • Support specifying --set multiple times in limactl (create|start|edit) (#4197, thanks to @AndiDog)
    • Add limactl shell --preserve-env flag to propagate env vars from the host to VM (#3830, thanks to @olamilekan000).
      See also LIMA_SHELLENV_ALLOW and LIMA_SHELLENV_BLOCK.
    • Support CLI plugins (#3834, #4009, thanks to @olamilekan000)
    • Support custom URL scheme plugins (#3937, thanks to @jandubois).
      template://default is now recommended to be written as template:default. The old form is still supported.
    • Add limactl copy --backend=rsync flag as an alternative to scp backend (#3143, thanks to @olamilekan000)
    • Add limactl list--yq and limactl info --yq flags (#3998, thanks to @jandubois)
    • Add limactl rename OLD NEW (#4207)
    • Deprecate --yes and introduce limactl (clone|rename|edit|shell) --start instead (#4108, #4285, thanks to @Horiodino @nlordell)
  • YAML:

    • Migrate cpuType to vmOpts.qemu (#3500, thanks to @unsuman)
    • Add yq provision mode (#3892, thanks to @norio-nomura)
    • Prohibit relative paths in YAML (#3950).
      Relative paths were never intended to be supported,
      but they were accidentally allowed due to a regression in v1.1.0.
      The CLI command limactl (create|start|edit) --mount DIR still supports relative paths.
  • Default template:

    • Remove /tmp/lima mount (#3951)
    • Stop hardcoding SSH port 60022 (#3780)
  • Network:

  • Port forwarding:

    • Support port forwarding in plain mode (#3699, thanks to @Horiodino)
    • Support host sockets in gRPC port forwarder (#4008, thanks to @norio-nomura)
    • Forward UDP ports by default (#4054)
    • Eliminated 3-second delay for detecting ports (#4066)
    • Removed iptables watcher for sudo nerdctl run -p ... (#4107).
      sudo nerdctl run -p ... now requires nerdctl v2.1.6 or later.
    • Improved performance of gRPC forwarder (#4247, thanks to @balajiv113)
    • Support UDP in Kubernetes (#4233)
    • Change default of guestIPMustBeZero to true when guestIP is 0.0.0.0 (#4221, thanks to @jandubois)
  • Build system:

    • Remove Kconfig and config.mk, in favor of Makefile variables (#3732)
    • Support Fedora, RHEL, and relevant host distributions (#4228, thanks to @valdela1)
  • Templates:

    • alpine, alpine-iso: update to Alpine 3.22 (#4184, #4190, thanks to @jandubois)
    • debian: update to Debian 13 (#4029, thanks to @unsuman)
    • docker, docker-rootful: Enable containerd image store (#3941, thanks to @norio-nomura)
    • fedora: update to Fedora 43 (#4255)
    • opensuse: update to openSUSE Leap 16 (#4203)
    • oraclelinux: update to Oracle Linux 10 (#4236, thanks to @valdela1)
    • ubuntu, default: update Ubuntu to 25.10 (#4202)
    • k0s: New template (#3728, thanks to @plandem)
    • experimental/ubuntu-next: update to Ubuntu 26.04 pre-release (#4311)
  • Project:

Full changes: https://github.com/lima-vm/lima/milestone/59?closed=1

Thanks to @AndiDog @Horiodino @afbjorklund @alexandear @ashwat287 @balajiv113 @bonifaido @dharsanb @gnawhleinad @iamleot @jandubois @kachick @muchzill4 @ningmingxiao @nlordell @norio-nomura @olamilekan000 @plandem @stek29 @unsuman @valdela1 @vax-r @vishalanarase @zyfy29

EOL of v1.2

Lima v1.2 will continue to receive security updates and critical bug fixes until 2026-02-06 (3 months from now).
See also https://lima-vm.io/docs/releases/.

Usage

$ limactl create
$ limactl start
...
INFO[0029] READY. Run `lima` to open the shell.

$ lima uname
Linux

The binaries were built automatically on GitHub Actions.
The build log is available for 90 days: https://github.com/lima-vm/lima/actions/runs/19130682878

The sha256sum of the SHA256SUMS file itself is 112f1ef1d9850e29b4be425ca71e8b6ac686f593ff741164885b51fbd6919ca6 .


Release manager: @AkihiroSuda

Don't miss a new lima release

NewReleases is sending notifications on new releases.