Commit Graph
6856 Commits
Author SHA1 Message Date
ump45nose 8d48bd0d33 docs(config/plain): drop nonexistent limactl edit --plain
The edit command never registers --plain (only create/start do), so the
docs example failed with "unknown flag: --plain". Note that plain mode
can only be chosen when the instance is created.

Fixes #5688

Signed-off-by: ump45nose <52391318+ump45nose@users.noreply.github.com>
2026-10-27 23:38:36 +08:00
Jan Dubois 714f9b3dc3 Merge pull request #5686 from lima-vm/dependabot/go_modules/hack/tools/github.com/AkihiroSuda/gosocialcheck-0.2.1
build(deps): bump github.com/AkihiroSuda/gosocialcheck from 0.2.0 to 0.2.1 in /hack/tools
2026-10-26 21:36:51 -07:00
dependabot[bot] 190e648981 build(deps): bump github.com/AkihiroSuda/gosocialcheck in /hack/tools
Bumps [github.com/AkihiroSuda/gosocialcheck](https://github.com/AkihiroSuda/gosocialcheck) from 0.2.0 to 0.2.1.
- [Release notes](https://github.com/AkihiroSuda/gosocialcheck/releases)
- [Commits](https://github.com/AkihiroSuda/gosocialcheck/compare/v0.2.0...v0.2.1)

---
updated-dependencies:
- dependency-name: github.com/AkihiroSuda/gosocialcheck
  dependency-version: 0.2.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-27 01:44:07 +00:00
Ansuman Sahoo 3c6278f93e Merge pull request #5683 from AkihiroSuda/fix-5681
limactl-menu: do not leak `limactl list` warnings to the terminal
2026-10-27 01:58:22 +05:30
Akihiro Suda b0a0d62f7e limactl-menu: do not leak limactl list warnings to the terminal
`listInstances` passed the stderr of `limactl list --json` through to the
terminal. On a fresh installation it printed "No instance found. Run
`limactl create` to create an instance." before the TUI started. The
warning stayed hidden behind the TUI and reappeared when the menu
suspended to run `limactl create`, which was confusing.

Buffer the stderr and only include it in the error when the command fails.
Also fix the error from `cmd.Start()` being discarded.

Fixes #5681

Assisted-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2026-10-26 17:31:01 +09:00
Akihiro Suda fbd7568083 Merge pull request #5679 from lima-vm/dependabot/go_modules/hack/tools/github.com/golangci/golangci-lint/v2-2.15.0
build(deps): bump github.com/golangci/golangci-lint/v2 from 2.14.0 to 2.15.0 in /hack/tools
2026-10-26 17:11:27 +09:00
Jan Dubois 00c49d5cee Fix new lint findings from golangci-lint 2.15.0
errcheck v1.30.0 reports a bare receive from an error channel as an
unchecked error. Each receive it flagged waits for a process or server
to exit after Lima has stopped or killed it, so the error adds nothing;
discard it with "_ = <-ch".

But staticcheck's S1005 flags "_ = <-ch" as an unnecessary blank
assignment, so each spelling of the discard fails one of the two
linters. Disable S1005. It also flags blank identifiers in range loops,
such as "for _ = range", but gofmt's simplify step and revive's range
rule still catch those.

Signed-off-by: Jan Dubois <jan.dubois@suse.com>
2026-10-26 00:19:51 -07:00
Jan Dubois 05fb98fbd7 Merge pull request #5680 from lima-vm/dependabot/github_actions/ls-lint/action-2.3.2
build(deps): bump ls-lint/action from 2.3.1 to 2.3.2
2026-10-26 00:07:10 -07:00
Akihiro Suda 6b72522a05 Merge pull request #5677 from jandubois/cncf-maintainers-csv
docs: link the generated CNCF maintainer list
2026-10-26 13:11:08 +09:00
dependabot[bot] c2273669d7 build(deps): bump ls-lint/action from 2.3.1 to 2.3.2
Bumps [ls-lint/action](https://github.com/ls-lint/action) from 2.3.1 to 2.3.2.
- [Release notes](https://github.com/ls-lint/action/releases)
- [Commits](https://github.com/ls-lint/action/compare/02e380fe8733d499cbfc9e22276de5085508a5bd...a87c5eb4fb26d7af1bd0adba203dd1e76f7e94eb)

---
updated-dependencies:
- dependency-name: ls-lint/action
  dependency-version: 2.3.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-26 01:46:04 +00:00
dependabot[bot] b79e16b94b build(deps): bump github.com/golangci/golangci-lint/v2 in /hack/tools
Bumps [github.com/golangci/golangci-lint/v2](https://github.com/golangci/golangci-lint) from 2.14.0 to 2.15.0.
- [Release notes](https://github.com/golangci/golangci-lint/releases)
- [Changelog](https://github.com/golangci/golangci-lint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/golangci/golangci-lint/compare/v2.14.0...v2.15.0)

---
updated-dependencies:
- dependency-name: github.com/golangci/golangci-lint/v2
  dependency-version: 2.15.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-26 01:44:46 +00:00
Jan Dubois a3e5b52077 docs: link the generated CNCF maintainer list
CNCF moved Lima's maintainers from project-maintainers.csv to
project-maintainers-.project.csv, which it generates from
lima-vm/.project/maintainers.yaml and the maintainers' LFID profiles.
The governance page still linked the old file, and its note told
whoever changes an affiliation to edit that file.

Link the new file, and have the note point to those two sources
instead.

Signed-off-by: Jan Dubois <jan.dubois@suse.com>
2026-10-25 16:14:07 -07:00
Jan Dubois 78c1dc3838 Merge pull request #5669 from unsuman/blockdevice-sudoers-digest
sudoers: pin every helper in `lima/privileged` to its sha256 digest
2026-10-25 14:23:25 -07:00
Akihiro Suda 90b55f651d Merge pull request #5664 from mvanhorn/fix/5623-el10-buildkit-xt-comment
fix: load netfilter comment modules for rootless BuildKit on EL10
2026-10-24 21:19:30 +09:00
Matt Van Horn 343ca1f45d fix: load netfilter comment modules for rootless BuildKit on EL10
The boot modprobe list now includes nft_compat. On dnf, when iptables is
being installed and modprobe -n xt_comment fails, the package script
installs kernel-modules-extra for the running kernel, or
kernel-uek-modules when the release is UEK, then runs the modprobe
script again so xt_comment and nft_compat are loaded before rootless
BuildKit starts. On AlmaLinux 10 those modules ship in
kernel-modules-extra, not kernel-modules. A modules package missing
from the repositories yields a warning and the install continues. The
Oracle Linux virtiofs path still requests kernel-uek-modules, appends it
only when it is not already listed, and UEK repositories are enabled
whenever that package is in the extra set.

Fixes #5623

Signed-off-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com>
2026-10-23 17:28:23 -07:00
Jan Dubois 9c294f8a39 Merge pull request #5671 from SethFalco/hidutil
fix(tests): ignore STDERR for hidutil attach -nomount
2026-10-23 13:36:54 -07:00
Jan Dubois 75ab55d9a7 Merge pull request #4917 from peschmae/feat/sync-exclude-flags
shell: Add sync-exclude flag and .limasyncignore file
2026-10-23 12:59:24 -07:00
Ansuman Sahoo 37c9abfd9d sudoers: pin every helper in lima/privileged to its sha256 digest
Signed-off-by: Ansuman Sahoo <anshumansahoo500@gmail.com>
2026-10-24 00:58:37 +05:30
Seth Falco 8ade33617f fix(tests): ignore STDERR for hidutil attach -nomount
Running tests was failing on a fresh clone before! (っ╥﹏╥ς)

hidutil attach -nomount is deprecated on on macOS 27 (Touhou), so it logs
the following to STDERR whenever it's used:

hdiutil: WARNING: 'hdiutil attach -nomount ...' is deprecated. Please use
'diskutil image attach --noMount ...' instead.

For this specific command, it might be better to read STDOUT only.

Signed-off-by: Seth Falco <seth@falco.fun>
2026-10-23 20:15:51 +01:00
Mathias Petermann ace0b1bf98 shell: Add sync-exclude flag and .limasyncignore file
To avoid syncing generated or sensitive data into a vm, a new sync-exclude flag
is added, to be used in conjunction with --sync. This allows to specify rsync excludes
which are then not synced.

Additionally a .limasyncignore file can be created, which also considered and
passed to rsync as the exclude-from flag.

Signed-off-by: Mathias Petermann <mathias.petermann@gmail.com>
Signed-off-by: Ansuman Sahoo <anshumansahoo500@gmail.com>
2026-10-24 00:31:00 +05:30
Jan Dubois c30ccbe435 Merge pull request #5666 from lima-vm/dependabot/go_modules/github.com/Microsoft/hcsshim-0.15.0
build(deps): bump github.com/Microsoft/hcsshim from 0.14.1 to 0.15.0
2026-10-22 20:56:38 -07:00
dependabot[bot] 99afd6d80e build(deps): bump github.com/Microsoft/hcsshim from 0.14.1 to 0.15.0
Bumps [github.com/Microsoft/hcsshim](https://github.com/Microsoft/hcsshim) from 0.14.1 to 0.15.0.
- [Release notes](https://github.com/Microsoft/hcsshim/releases)
- [Commits](https://github.com/Microsoft/hcsshim/compare/v0.14.1...v0.15.0)

---
updated-dependencies:
- dependency-name: github.com/Microsoft/hcsshim
  dependency-version: 0.15.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-23 01:43:13 +00:00
Ansuman Sahoo d09a6d5750 Merge pull request #5602 from saswatsam786/fix-progress-log-lines
instance: redraw the pending progress line after log entries
2026-10-23 00:47:29 +05:30
Akihiro Suda 284b9913fb Merge pull request #5629 from AkihiroSuda/fix-5595
limactl-menu: add a form for creating new instances
2026-10-22 20:58:54 +09:00
Akihiro Suda 516ad5e1fb Merge pull request #5631 from jandubois/ssh-master-fd-limit
hostagent: lower ssh's soft fd limit to 1024 on macOS
2026-10-22 11:46:02 +09:00
Jan Dubois 48ce1d3fa2 Merge pull request #5659 from lima-vm/dependabot/github_actions/codeql-action-1b1ce9824d
build(deps): bump the codeql-action group with 3 updates
2026-10-21 19:39:59 -07:00
Jan Dubois 95925df204 Merge pull request #5660 from lima-vm/dependabot/github_actions/zizmorcore/zizmor-action-0.7.1
build(deps): bump zizmorcore/zizmor-action from 0.6.4 to 0.7.1
2026-10-21 19:39:24 -07:00
dependabot[bot] d93603b75c build(deps): bump zizmorcore/zizmor-action from 0.6.4 to 0.7.1
Bumps [zizmorcore/zizmor-action](https://github.com/zizmorcore/zizmor-action) from 0.6.4 to 0.7.1.
- [Release notes](https://github.com/zizmorcore/zizmor-action/releases)
- [Commits](https://github.com/zizmorcore/zizmor-action/compare/cc914d7f3750a2d13d75c7f184a1060aa0e9d482...85b2b9fb8e3325e7a23d7d0a9d7ba5ae0f999e3e)

---
updated-dependencies:
- dependency-name: zizmorcore/zizmor-action
  dependency-version: 0.7.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-22 01:44:31 +00:00
dependabot[bot] bffc089077 build(deps): bump the codeql-action group with 3 updates
Bumps the codeql-action group with 3 updates: [github/codeql-action/init](https://github.com/github/codeql-action), [github/codeql-action/analyze](https://github.com/github/codeql-action) and [github/codeql-action/upload-sarif](https://github.com/github/codeql-action).


Updates `github/codeql-action/init` from 4.38.3 to 4.39.0
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/24c54180a607b1449ed407dd24f251e4e9147c8d...6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee)

Updates `github/codeql-action/analyze` from 4.38.3 to 4.39.0
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/24c54180a607b1449ed407dd24f251e4e9147c8d...6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee)

Updates `github/codeql-action/upload-sarif` from 4.38.3 to 4.39.0
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/24c54180a607b1449ed407dd24f251e4e9147c8d...6f2ac81f5cd81fe351a197ba0b00d91d03cd2aee)

---
updated-dependencies:
- dependency-name: github/codeql-action/init
  dependency-version: 4.39.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: codeql-action
- dependency-name: github/codeql-action/analyze
  dependency-version: 4.39.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: codeql-action
- dependency-name: github/codeql-action/upload-sarif
  dependency-version: 4.39.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: codeql-action
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-22 01:44:27 +00:00
Jan Dubois dc86e27130 hostagent: lower ssh's soft fd limit to 1024 on macOS
macOS ssh polls with select(), so the ControlMaster quits with
"poll: Invalid argument" once it holds fd 1024. The hostagent raises
the fd limit that its children inherit, and Virtualization.framework
raises it again during VM start. So about 1000 forwarded connections
kill the master, and every forward it holds dies with it. Nothing logs
why.

Run every ssh that the hostagent package's own code starts under a soft
fd limit of at most 1024. Any of them started with ControlMaster=auto
can become the master, and an ssh -O forward that cannot reach a master
at its fd limit opens its own connection and holds the forward itself,
so it needs the limit too. At the limit, accept() fails with EMFILE and
ssh retries it a second later, so new connections wait or get reset
while open ones keep working. The hostagent itself keeps the higher
limit, which the gRPC forwarder needs.

sshocker's ExecuteScript starts ssh on its own, where the limit cannot
reach it. So every guest script now runs through the hostagent's copy
of that function, which only Windows guests used before.

Signed-off-by: Jan Dubois <jan.dubois@suse.com>
2026-10-21 13:13:38 -07:00
Jan Dubois 6e4c88f548 Merge pull request #5657 from AkihiroSuda/ubuntu-26.10
templates: update Ubuntu to 26.10
2026-10-21 11:01:47 -07:00
Akihiro Suda 02eafe9cfe limactl-menu: add a form for creating new instances
Press `c` or F7 in the instance list (or "Create Instance" in the
empty state) to open a form for the instance name, template, CPUs,
memory, disk, VM type, and whether to start the instance after
creation. Empty fields fall back to the template defaults.

The other `limactl create` flags (mounts, networks, port forwards,
`--set`, `--param`, etc.) are available in the "Details" section, which
is hidden by default. Its fields are generated from the flag
definitions of `limactl create`, and the description of the focused
field is shown below the form.

To minimize free-text input, the values are chosen from dropdowns
whenever the choices are known: the shell completion values of the
flags, the drivers, and the image variants of the selected template.
"Other..." in a dropdown allows entering a value that is not in the
list.

"Create" runs `limactl start` (or `limactl create`) with the
corresponding flags. "Edit" opens an editor for the template YAML with
the form values applied, and then creates the instance from the edited
YAML. In both cases, the menu is suspended while limactl is running, and
the new instance is selected when returning to the menu.

The form can be navigated with the arrow keys as well as with Tab:
Up/Down move between the fields and the buttons (except in an open
dropdown list, and except between the lines of a text area), and
Left/Right move between the buttons.

The single-key shortcuts of the instance list are now only handled
while the list has the focus, so that they do not interfere with typing
into the form.

Fixes #5595

Assisted-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2026-10-22 00:43:51 +09:00
Akihiro Suda 3290319cb1 Merge pull request #5635 from jandubois/reverse-sshfs-own-connection
hostagent: run reverse-sshfs mounts without the ControlMaster
2026-10-22 00:43:10 +09:00
Akihiro Suda 63c6a38a22 Merge pull request #5604 from unsuman/fix/krunkit-vsock
krunkit: fix `ssh.overVsock=true` on systemd >= 259 guests
2026-10-22 00:42:19 +09:00
Akihiro Suda 6369556883 Merge pull request #5658 from deltron-fr/fix/limactl-menu-color-contrast
limactl-menu: improve colour contrast across terminal themes
2026-10-22 00:40:15 +09:00
Ansuman Sahoo 23801758ae Merge pull request #5656 from AkihiroSuda/fix-5465
CI: run a smoke test for HCS
2026-10-21 20:24:52 +05:30
deltron-fr 65a9e7d5ad limactl-menu: improve color contrast across terminal themes
Use terminal-default colors for text and explicit styles for focused list items, modal buttons, and borders.

Signed-off-by: deltron-fr <kayceoogbonnaya2304@gmail.com>
2026-10-21 15:16:17 +01:00
Akihiro Suda a734076e36 templates: update Ubuntu to 26.10
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2026-10-21 19:26:58 +09:00
Akihiro Suda affe60b779 CI: run a smoke test for HCS
Merge the windows-plain-wsl2 and windows-plain-qemu jobs into a
windows-plain matrix job, and add HCS to the matrix, running the
plain-Windows smoke test against templates/experimental/hcs.yaml.

The full test suite is not run for HCS, as the HCS driver still lacks
several features (mounts, port forwarding, ...).

Fixes #5465

Assisted-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
2026-10-21 19:10:38 +09:00
Akihiro Suda 2283c9e5a9 Merge pull request #5302 from youdie006/docs/flaky-ci-runs
docs: document flaky CI runs and re-running failed jobs
2026-10-21 18:51:39 +09:00
Jan Dubois 3b20c28968 Merge pull request #5655 from lima-vm/dependabot/go_modules/github.com/Microsoft/go-winio-0.6.4
build(deps): bump github.com/Microsoft/go-winio from 0.6.3 to 0.6.4
2026-10-20 19:57:53 -07:00
dependabot[bot] 09ed666240 build(deps): bump github.com/Microsoft/go-winio from 0.6.3 to 0.6.4
Bumps [github.com/Microsoft/go-winio](https://github.com/Microsoft/go-winio) from 0.6.3 to 0.6.4.
- [Release notes](https://github.com/Microsoft/go-winio/releases)
- [Commits](https://github.com/Microsoft/go-winio/compare/v0.6.3...v0.6.4)

---
updated-dependencies:
- dependency-name: github.com/Microsoft/go-winio
  dependency-version: 0.6.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-21 01:43:22 +00:00
Akihiro Suda f08bbaf533 Merge pull request #5640 from deltron-fr/fix/editor-flags
editutil: support editor commands with arguments
2026-10-21 03:56:46 +09:00
Akihiro Suda 0f093a6718 Merge pull request #5642 from thc1006/fix/store-bootsession-marker
fix(store): write the boot session marker atomically
2026-10-21 03:52:00 +09:00
Jan Dubois 691c126448 Merge pull request #5652 from lima-vm/dependabot/go_modules/github.com/klauspost/compress-1.20.3
build(deps): bump github.com/klauspost/compress from 1.20.1 to 1.20.3
2026-10-19 20:28:55 -07:00
dependabot[bot] 0db679623e build(deps): bump github.com/klauspost/compress from 1.20.1 to 1.20.3
Bumps [github.com/klauspost/compress](https://github.com/klauspost/compress) from 1.20.1 to 1.20.3.
- [Release notes](https://github.com/klauspost/compress/releases)
- [Commits](https://github.com/klauspost/compress/compare/v1.20.1...v1.20.3)

---
updated-dependencies:
- dependency-name: github.com/klauspost/compress
  dependency-version: 1.20.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-20 01:43:42 +00:00
deltron-fr 6d1ce9854f editutil: support editor command arguments
Parse editor commands with shellwords while preserving standalone paths, and add Windows path tests.

Signed-off-by: deltron-fr <kayceoogbonnaya2304@gmail.com>
2026-10-19 08:15:34 +01:00
manon 54be0047c5 docs: document flaky CI runs and re-running failed jobs
Add a short Flaky runs note to the testing docs explaining that CI is
occasionally flaky (especially the macOS integration tests). Maintainers
can re-run failed jobs; contributors without write access can close and
reopen the PR, or amend the commit.

Closes #5266.

Signed-off-by: manon <youdie006@users.noreply.github.com>
2026-10-19 14:04:55 +09:00
Jan Dubois 4fab59e36c Merge pull request #5650 from lima-vm/dependabot/github_actions/ossf/scorecard-action-2.5.0
build(deps): bump ossf/scorecard-action from 2.4.4 to 2.5.0
2026-10-18 21:09:22 -07:00
thc1006 fcde1028b9 fix(store): write the boot session marker atomically
os.WriteFile truncates the boot session marker in place before rewriting it. A
concurrent staleBootSession can read it empty in that window, decide it does not
match the current boot ID, and have WritePIDFile delete PID files that belong to
the running boot.

Write the marker through a new fsutil.WriteFileAtomic helper that writes a
temporary file in the same directory and renames it into place, so a reader
always sees a complete marker. writePIDFileAtomically now uses the same helper
instead of its own temp-and-rename.

The temp name is a short fixed prefix, not the destination basename, so a long
custom PID path cannot overflow the filesystem name limit. os.CreateTemp creates
it 0600, so the marker and PID files are now 0600 masked by the umask rather than
the previous 0644, and a rewrite no longer preserves an existing file's mode.

Signed-off-by: thc1006 <84045975+thc1006@users.noreply.github.com>
2026-10-19 12:01:59 +08:00