Skip to content

Releases: lima-vm/lima

v1.0.0

06 Nov 01:41
v1.0.0
3f8c1b6
Compare
Choose a tag to compare

With the support from 110+ contributors in 3+ years, the Lima project has finally reached v1.0. 🎉

This release introduces several breaking changes, such as switching the default machine driver from QEMU to VZ for better filesystem performance.

The limactl CLI is designed to print hints when the user hits those breaking changes.
e.g., limactl create template://experimental/vz now fails with a hint that suggests using limactl create --vm-type=vz template://default instead.

🔴 = Major breaking changes
🟡 = Minor breaking changes

  • VZ:

  • QEMU:

    • Graduate 9p mount driver from experimental (#2758)
    • 🔴 Use 9p by default for most templates (#1953, #2822)
    • riscv64: switch from u-boot to EDK2 (#2592)
  • Network:

    • Graduate user-v2 network driver from experimental (#2758)
    • Support UDP port forwarding (#2411, thanks to @balajiv113)
    • 🔴 Strictly require socket_vmnet binary to be owned by root (#2734)
  • SSH:

    • 🟡 Disable ssh.loadDotSSHPubKeys by default (#2706)
  • YAML:

  • limactl CLI:

    • Add limactl tunnel command so as to allow the host to join the guest network (#2710)
    • Add --log-format=json (#2584, thanks to @nirs)
    • limactl prune: Add --keep-referred (#2569, thanks to @norio-nomura)
  • nerdctl:

    • Updated to v2.0.0 (#2178)
    • rootless: allocate 1G subuids from 524288 (0x80000) for new users (#2725)
  • Templates:

    • 🔴 experimental/vz: Merged into the default template (#2730, #2736)
    • 🟡 experimental/{riscv64, armv7l}: Merged into the default template (#2730, #2736)
    • 🔴 vmnet: Removed in favor of limactl create --network=lima:shared template://default (#2736)
    • 🟡 experimental/net-user-v2: Removed in favor of limactl create --network=lima:user-v2 template://default (#2736)
    • 🔴 experimental/9p: Removed in favor of limactl create --mount-type=9p template://default (#2736)
    • 🟡 experimental/virtiofs-linux: Removed in favor of limactl create --mount-type=virtiofs template://default (#2736)
    • 🔴 alpine: Renamed to alpine-iso (#2704)
    • 🔴 alpine-image: Renamed to alpine (#2704)
    • archlinux: Demoted from Tier 1 to Tier 2 (#2717, #2823)
    • default, ubuntu, ...: Updated to Ubuntu 24.10. The older versions are available as ubuntu-20.04, ubuntu-22.04, and ubuntu-24.04 (#2755, #2795)
    • fedora: Updated to Fedora 41 (#2821, #2822, thanks to @subpop)
    • opensuse: Renamed to opensuse-leap. Still aliased as opensuse (#2612, thanks to @afbjorklund)
    • experimental/opensuse-tumbleweed: Support aarch64 (#2613, thanks to @afbjorklund)
    • hack/update-template.sh is added for automating updates (#1347, thanks to @norio-nomura)
  • Project:

Full changes: https://github.com/lima-vm/lima/milestone/47?closed=1
Thanks to @AdamKorcz @Mr-Sunglasses @SmartManoj @YorikSar @abiosoft @afbjorklund @alexandear @balajiv113 @hasan4791 @jandubois @nirs @norio-nomura @pvdvreede @subpop @tsukasaI

Usage

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

[macOS]$ 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/11695321667

The sha256sum of the SHA256SUMS file itself is 4bd200a163111fe78c6f3e6de405113d416053802fe1507597f9a42f89a98c90 .


Release manager: @AkihiroSuda

v1.0.0-beta.0

20 Oct 22:58
v1.0.0-beta.0
8eb855a
Compare
Choose a tag to compare
v1.0.0-beta.0 Pre-release
Pre-release

With the support from 110+ contributors in 3+ years, the Lima project has finally reached v1.0 (Pre-release). 🎉

This release introduces several breaking changes, such as switching the default machine driver from QEMU to VZ for better filesystem performance.

The limactl CLI is designed to print hints when the user hits those breaking changes.
e.g., limactl create template://experimental/vz now fails with a hint that suggests using limactl create --vm-type=vz template://default instead.

🔴 = Major breaking changes
🟡 = Minor breaking changes

  • VZ:

  • QEMU:

    • Graduate 9p mount driver from experimental (#2758)
    • 🔴 Use 9p by default (#1953)
    • riscv64: switch from u-boot to EDK2 (#2592)
  • Network:

    • Graduate user-v2 network driver from experimental (#2758)
    • Support UDP port forwarding (#2411, thanks to @balajiv113)
    • 🔴 Strictly require socket_vmnet binary to be owned by root (#2734)
  • SSH:

    • 🟡 Disable ssh.loadDotSSHPubKeys by default (#2706)
  • YAML:

  • limactl CLI:

  • nerdctl:

    • rootless: allocate 1G subuids from 524288 (0x80000) for new users (#2725)
  • Templates:

    • 🔴 experimental/vz: Merged into the default template (#2730, #2736)
    • 🟡 experimental/{riscv64, armv7l}: Merged into the default template (#2730, #2736)
    • 🔴 vmnet: Removed in favor of limactl create --network=lima:shared template://default (#2736)
    • 🟡 experimental/net-user-v2: Removed in favor of limactl create --network=lima:user-v2 template://default (#2736)
    • 🔴 experimental/9p: Removed in favor of limactl create --mount-type=9p template://default (#2736)
    • 🟡 experimental/virtiofs-linux: Removed in favor of limactl create --mount-type=virtiofs template://default (#2736)
    • 🔴 alpine: renamed to alpine-iso (#2704)
    • 🔴 alpine-image: renamed to alpine (#2704)
    • archlinux: Demoted from Tier 1 (#2717)
    • opensuse: Renamed to opensuse-leap (#2612, thanks to @afbjorklund)
    • experimental/opensuse-tumbleweed: Support aarch64 (#2613, thanks to @afbjorklund)
  • Project:

Full changes: https://github.com/lima-vm/lima/milestone/47?closed=1
Thanks to @AdamKorcz @SmartManoj @YorikSar @abiosoft @afbjorklund @alexandear @balajiv113 @hasan4791 @jandubois @nirs @norio-nomura @tsukasaI

Usage

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

[macOS]$ 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/11430109582

The sha256sum of the SHA256SUMS file itself is 85671aa3701b7b206af26ecd5a2e5a30dca3aa2d9dce9f35a5f58a6fcfad5779 .


Release manager: @AkihiroSuda

v1.0.0-alpha.0

30 Aug 06:49
v1.0.0-alpha.0
b3067dc
Compare
Choose a tag to compare
v1.0.0-alpha.0 Pre-release
Pre-release

Changes

  • vz:
    • Use VZ by default for new instances on macOS >= 13.5 (#1951)

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

Usage

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

[macOS]$ 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/10628063124

The sha256sum of the SHA256SUMS file itself is 69bbfccf7e046e03edd5d3facd8bf699f8276ee91dd1c2e50ecd97fd7ed36def .


Release manager: @AkihiroSuda

v0.23.2

29 Aug 07:36
v0.23.2
74e2fda
Compare
Choose a tag to compare

Changes

  • Network:

  • Templates:

    • Updated to the latest revisions (#2556)

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

Usage

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

[macOS]$ 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/10610584784

The sha256sum of the SHA256SUMS file itself is 9183a5703205d331d89f4a62abdbbb377cb77f1f49f8171cfa722960d7174bf1 .


Release manager: @AkihiroSuda

v0.23.1

18 Aug 16:08
v0.23.1
d7669be
Compare
Choose a tag to compare

Changes

  • Fixed the CI to generate the release note (#2555)

Usage

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

[macOS]$ 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/10441930092

The sha256sum of the SHA256SUMS file itself is e93a48f3a011c25367da50ab3609bb28437fcde259371f005f8b234caa46efff .


Release manager: @AkihiroSuda

v0.23.0

18 Aug 15:42
v0.23.0
6b05c00
Compare
Choose a tag to compare
  • YAML:

  • vz:

  • Templates:

    • add alpine-image (#2360, thanks to @jandubois)
    • remove centos-stream-8, deprecated/centos-7 (#2457)
    • update to the latest revisions (#2553)
  • Governance:

Full changes: https://github.com/lima-vm/lima/milestone/46?closed=1
Thanks to @AdamKorcz @AmedeeBulle @SmartManoj @afbjorklund @alexandear @danchr @fwilhe2 @jandubois @norio-nomura @tcooper @why168

v0.22.0

07 May 05:26
v0.22.0
13f1a58
Compare
Choose a tag to compare

This release drops the support for vde_vmnet (deprecated since 2022) in favor of socket_vmnet.

vmnet users will need to regenerate the /etc/sudoers.d/lima file:

limactl sudoers >etc_sudoers.d_lima
sudo install -o root etc_sudoers.d_lima /etc/sudoers.d/lima

Users may also want to clean up the vde-related lines from their ~/.lima/_config/networks.yaml:

--- /Users/user/.lima/_config/networks.yaml.bak 2024-05-07 14:17:28
+++ /Users/user/.lima/_config/networks.yaml     2024-05-07 14:18:09
@@ -13,9 +13,6 @@
 # socketVMNet requires Lima >= 0.12 .
 # socketVMNet has precedence over vdeVMNet.
   socketVMNet: "/opt/socket_vmnet/bin/socket_vmnet"
-# vdeSwitch and vdeVMNet are DEPRECATED.
-  vdeSwitch: /opt/vde/bin/vde_switch
-  vdeVMNet: /opt/vde/bin/vde_vmnet
   varRun: /private/var/run/lima
   sudoers: /private/etc/sudoers.d/lima

Changes

  • vmnet:

    • Remove the support for vde_vmnet (Deprecated since Sep 2022, in favor of socket_vmnet) (#2311)
  • limactl CLI:

    • limactl ls $INSTANCE now exits with non-zero status if the instance does not exist (#2295, thanks to @BajuMcBites)
  • nerdctl:

  • Misc:

    • Drop support for Go 1.20 (#2258)
  • Templates:

    • Ubuntu: update to 24.04 (#2300)
    • Fedora: update to 40 (#2292)
    • Update Alpine, Arch Linux, CentOS Stream, and Debian to the latest revisions (#2299, #2308, #2318 thanks to @jandubois)

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

Thanks to @BajuMcBites @afbjorklund @alexandear @jandubois @vasileknik76

Usage

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

[macOS]$ 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/8980002249

The sha256sum of the SHA256SUMS file itself is ae6c43a8f145d574142deb1c6e105e4ab79156947b9098bf57c94d91ff15da97 .

v0.21.0

16 Mar 11:00
v0.21.0
6587349
Compare
Choose a tag to compare

This release adds the support for limactl start-at-login and inotify.

Changes

  • limactl CLI:

  • Mounts:

    • Support for inotify: limactl start --mount-inotify (#1913, thanks to @balajiv113)
  • YAML:

    • Allow {{.Name}} in provision scripts (#2179)
  • nerdctl:

  • Templates:

    • Alpine: demote from Tier 1 to Tier 2 (#2236)
    • Update Ubuntu, Arch Linux, CentOS Stream, and Debian to the latest revisions (#2248)

Full changes: https://github.com/lima-vm/lima/milestone/43?closed=1
Thanks to @afbjorklund @alexandear @balajiv113 @blmhemu @jandubois @norio-nomura @pendo324 @roman-kiselenko @terev

Usage

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

[macOS]$ 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/8307250970

The sha256sum of the SHA256SUMS file itself is 3a4fc483678ef5aea033a9d19b5e4db1ddc480f54d1a12afb257f255d72b5395 .

v0.21.0-beta.0

12 Mar 08:11
v0.21.0-beta.0
7ebd1a9
Compare
Choose a tag to compare
v0.21.0-beta.0 Pre-release
Pre-release

Changes

  • limactl CLI:

  • Mounts:

    • Support for inotify: limactl start --mount-inotify (#1913, thanks to @balajiv113)
  • YAML:

    • Allow {{.Name}} in provision scripts (#2179)
  • Templates:

    • Alpine: demote from Tier 1 to Tier 2 (#2236)

Full changes: https://github.com/lima-vm/lima/milestone/43?closed=1
Thanks to @afbjorklund @alexandear @balajiv113 @blmhemu @jandubois @norio-nomura @pendo324
@roman-kiselenko

Usage

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

[macOS]$ 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/8245128886

The sha256sum of the SHA256SUMS file itself is a7d9e816923b4c027393d7eb37084288e8808807937a9d38fd13bea2e4367cf7 .

v0.20.2

12 Mar 06:16
v0.20.2
b14a40c
Compare
Choose a tag to compare

Changes

  • alpine: avoid wiping out writable host mounts under /home, etc (#2244, thanks to @jandubois)

Prior to Lima v0.20.2, a host directory could be wiped out when all the following conditions are met:

  • The directory is mounted to Lima via virtiofs or 9p (reverse-sshfs is not affected)
  • The mount is writable
  • The mount point in the guest is under one of: /etc /home /root /usr/local /var/lib
  • The guest OS is Alpine Linux

Usage

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

[macOS]$ 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/8244166862

The sha256sum of the SHA256SUMS file itself is 1aa58b5567fb1e2ca60500ed0e8b7fefbdf930d74214b3858add6b20f5dbdec3 .