Skip to content

Add environment variables documentation #3

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 96 commits into from

Conversation

SmartManoj
Copy link
Owner

@SmartManoj SmartManoj commented Aug 2, 2024

Created a new PR to avoid the blockage of lima-vm#2455

Add documentation for environment variables used in Lima.

  • New Documentation Page: Add website/content/en/docs/config/environment-variables.md to document environment variables LIMA_INSTANCE, LIMA_SHELL, LIMA_WORKDIR, LIMACTL, and LIMA_USERNET_RESOLVE_IP_ADDRESS_TIMEOUT.
  • Update Configuration Guide: Modify website/content/en/docs/config/_index.md to include a link to the new 'Environment Variables' page.
  • Update README: Modify README.md to include a link to the new 'Environment Variables' page.
  • Add Comments in Scripts:
    • cmd/lima: Add comments documenting LIMA_INSTANCE, LIMA_SHELL, LIMA_WORKDIR, and LIMACTL.
    • cmd/lima.bat: Add comments documenting LIMA_INSTANCE and LIMACTL.
    • cmd/docker.lima: Add comments documenting LIMA_INSTANCE.
    • cmd/kubectl.lima: Add comments documenting LIMA_INSTANCE.
    • cmd/limactl/usernet.go: Add comments documenting LIMA_USERNET_RESOLVE_IP_ADDRESS_TIMEOUT.

For more details, open the Copilot Workspace session.

alexandear and others added 30 commits June 25, 2024 13:05
`containerd-rootless-setuptool.sh uninstall` was called without
uninstalling BuildKit

Signed-off-by: Akihiro Suda <[email protected]>
Shorten the descriptions to fit in width 100
templates: remove centos-stream-8, deprecated/centos-7
Signed-off-by: Anders F Björklund <[email protected]>
Bumps [github.com/sethvargo/go-password](https://github.com/sethvargo/go-password) from 0.2.0 to 0.3.1.
- [Commits](sethvargo/go-password@v0.2.0...v0.3.1)

---
updated-dependencies:
- dependency-name: github.com/sethvargo/go-password
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Allow compressing lima-guestagent with gzip
…thub.com/sethvargo/go-password-0.3.1

build(deps): bump github.com/sethvargo/go-password from 0.2.0 to 0.3.1
cmd/limactl: return error instead of calling os.Exit
`mount=fscache` is printed as `mount=8f` in /proc/mounts

https://github.com/torvalds/linux/blob/v6.6/fs/9p/v9fs.h#L61

Signed-off-by: Akihiro Suda <[email protected]>
pkg/store: split pkg/version/versionutil
Bumps [github.com/containerd/containerd](https://github.com/containerd/containerd) from 1.7.18 to 1.7.19.
- [Release notes](https://github.com/containerd/containerd/releases)
- [Changelog](https://github.com/containerd/containerd/blob/main/RELEASES.md)
- [Commits](containerd/containerd@v1.7.18...v1.7.19)

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

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.64.0 to 1.65.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](grpc/grpc-go@v1.64.0...v1.65.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
…ogle.golang.org/grpc-1.65.0

build(deps): bump google.golang.org/grpc from 1.64.0 to 1.65.0
boot/04-persistent-data-volume.sh: fix 9p cache options
…thub.com/containerd/containerd-1.7.19

build(deps): bump github.com/containerd/containerd from 1.7.18 to 1.7.19
…nt-dot

docs: remove redundant dot in examples
Can now use .audio.device=default similar to .video.display=default

You can still pick another driver, such as alsa or oss, if you want.

Signed-off-by: Anders F Björklund <[email protected]>
Signed-off-by: Anders F Björklund <[email protected]>
On some distributions this configuration was only readable
by members in the "fuse" group, not by the general public.

Signed-off-by: Anders F Björklund <[email protected]>
Bumps the golang-x group with 1 update: [golang.org/x/sys](https://github.com/golang/sys).


Updates `golang.org/x/sys` from 0.21.0 to 0.22.0
- [Commits](golang/sys@v0.21.0...v0.22.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sys
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: golang-x
...

Signed-off-by: dependabot[bot] <[email protected]>
…lang-x-c1deb5af2b

build(deps): bump golang.org/x/sys from 0.21.0 to 0.22.0 in the golang-x group
Add sudo when trying to read fuse.conf
AkihiroSuda and others added 27 commits July 17, 2024 13:27
…s-binfmt

Make sure /proc/sys/fs/binfmt_misc has been mounted (on Alpine)
Signed-off-by: Anders F Björklund <[email protected]>
Signed-off-by: Anders F Björklund <[email protected]>
Signed-off-by: Anders F Björklund <[email protected]>
Signed-off-by: Anders F Björklund <[email protected]>
Signed-off-by: Anders F Björklund <[email protected]>
Signed-off-by: Anders F Björklund <[email protected]>
Signed-off-by: Anders F Björklund <[email protected]>
Store time of last modified in cache dir
Co-authored-by: Oleksandr Redko <[email protected]>
Signed-off-by: Anders F Björklund <[email protected]>
Add unittest for pkg/limayaml/default.yaml
…abstract socket

This change allows starting the `/mnt/lima-rosetta/rosttad daemon` in the VM.
Without this change, it cannot be started as shown below:
```console
$ sudo /mnt/lima-rosetta/rosettad daemon
rosetta error: Failed bind socket: 98
Trace/breakpoint trap
```

Since `rosettad` needs to run in the same namespace as `rosetta` and must be executed directly from `/mnt/lima-rosetta/rosettad` (copies of `rosettad` do not work), it is difficult to use during container image builds or similar processes.

In a container, `rosettad` can be run as follows:
```console
$ docker run -it --rm --platform linux/amd64 --name test-rosettad -v/mnt/lima-rosetta:/mnt/lima-rosetta ubuntu
root@45f887cb0eaa:/# ls -la ~/.cache/rosettad
/usr/bin/ls: cannot access '/root/.cache/rosettad': No such file or directory
root@45f887cb0eaa:/# /mnt/lima-rosetta/rosettad daemon&
[1] 10
root@45f887cb0eaa:/# ls -la ~/.cache/rosettad
total 2700
drwxr-xr-x 2 root root    4096 Jul 17 04:16 .
drwxr-xr-x 3 root root    4096 Jul 17 04:16 ..
-rwxr-xr-x 1 root root  186600 Jul 17 04:16 169a47096736cdeb5714fa040c30ef80426e439f02a3f4e4137733cbaae1fec5.aotcache
-rwxr-xr-x 1 root root  104848 Jul 17 04:16 1bea8094b78a3910345d80af3d182390fda07ae5788352651eb7773505dc39af.aotcache
-rwxr-xr-x 1 root root  121772 Jul 17 04:16 9fb501baf5ceec1ff4c9abb0473492ab4a66893203b932e28dfaa5c73c05e191.aotcache
-rwxr-xr-x 1 root root  244608 Jul 17 04:16 b7695da977e205398b33922d61493cc1e436cd2321bb2e54fbdc39b95fabeff7.aotcache
-rwxr-xr-x 1 root root 2092260 Jul 17 04:16 fc4c52f3910ed57a088d19ab86c671358f5e917cd4e95b21fd08e4fd922c0aa2.aotcache
```

Even if `rosettad` is not running, it does not affect the operation of `rosetta`, so the existing functionality remains unchanged.

There is also a configuration to use Unix Domain Sockets instead of Abstract Sockets. However, it appears that some preparation is required on the VM guest side before mounting, and I was unable to make it work. Therefore, I am using the configuration with Abstract Sockets.

SeeAlso: https://developer.apple.com/documentation/virtualization/running_intel_binaries_in_linux_vms_with_rosetta#4239539

Signed-off-by: Norio Nomura <[email protected]>
Signed-off-by: Adam Korczynski <[email protected]>
…t-socket-caching-option

vz: configure Rosetta’s ahead of time (AOT) caching options using an abstract socket
Currently, both the timeout for waiting for the hostAgent to stop in `limactl stop` and the timeout for `LimaQemuDriver.Stop()` calling `shutdownQEMU()` are set to 3 minutes.
https://github.com/lima-vm/lima/blob/6fa914519f9412519fee64619755aa4a9b3774f9/pkg/qemu/qemu_driver.go#L204
As a result, the `limactl stop` might time out before QEMU is forcibly terminated, leading to the error:
> level=fatal msg="did not receive an event with the \"exiting\" status"

With this change, `limactl stop` should be able to receive the `"status":{"exiting":true}` event output by the hostAgent after it has forcibly terminated QEMU, preventing `limactl stop` from resulting in an error.

Signed-off-by: Norio Nomura <[email protected]>
…t-some-grace-time-to-forcibly-kill-qemu

limactl stop: extend the timeout for waiting for the hostAgent to stop
Signed-off-by: Adam Korczynski <[email protected]>
Signed-off-by: Adam Korczynski <[email protected]>
add fuzz test for ConvertToRaw
…on-pointer-ctx

executil: change ctx parameter to be non-pointer
…existing instance's `lima.yaml` without validation.

Signed-off-by: Norio Nomura <[email protected]>
…fore-overwriting

limactl start: fix the issue where using `--set` would overwrite the existing instance's `lima.yaml` without validation.
Created a new PR to avoid the blockage of lima-vm#2455

Add documentation for environment variables used in Lima.

* **New Documentation Page**: Add `website/content/en/docs/config/environment-variables.md` to document environment variables `LIMA_INSTANCE`, `LIMA_SHELL`, `LIMA_WORKDIR`, `LIMACTL`, and `LIMA_USERNET_RESOLVE_IP_ADDRESS_TIMEOUT`.
* **Update Configuration Guide**: Modify `website/content/en/docs/config/_index.md` to include a link to the new 'Environment Variables' page.
* **Update README**: Modify `README.md` to include a link to the new 'Environment Variables' page.
* **Add Comments in Scripts**:
  - `cmd/lima`: Add comments documenting `LIMA_INSTANCE`, `LIMA_SHELL`, `LIMA_WORKDIR`, and `LIMACTL`.
  - `cmd/lima.bat`: Add comments documenting `LIMA_INSTANCE` and `LIMACTL`.
  - `cmd/docker.lima`: Add comments documenting `LIMA_INSTANCE`.
  - `cmd/kubectl.lima`: Add comments documenting `LIMA_INSTANCE`.
  - `cmd/limactl/usernet.go`: Add comments documenting `LIMA_USERNET_RESOLVE_IP_ADDRESS_TIMEOUT`.

---

For more details, open the [Copilot Workspace session](https://copilot-workspace.githubnext.com/lima-vm/lima/pull/2455?shareId=XXXX-XXXX-XXXX-XXXX).

Signed-off-by: மனோஜ்குமார் பழனிச்சாமி <[email protected]>
@SmartManoj SmartManoj force-pushed the add-environment-variables branch from ca18f30 to beabc0b Compare August 2, 2024 05:21
@SmartManoj SmartManoj closed this Aug 2, 2024
@SmartManoj
Copy link
Owner Author

Should be in the main repo.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants