From 349adbc483238a7fda10b19fe235c49dc6426e61 Mon Sep 17 00:00:00 2001 From: Animesh Pathak Date: Mon, 5 Oct 2026 01:15:19 +0530 Subject: [PATCH] fix: dead link from website content Signed-off-by: Animesh Pathak --- .../content/en/docs/community/contributing.md | 8 ++++---- website/content/en/docs/community/governance.md | 4 ++-- website/content/en/docs/community/subprojects.md | 2 +- website/content/en/docs/config/ai/_index.md | 4 ++-- .../content/en/docs/config/ai/inside/_index.md | 4 ++-- .../content/en/docs/config/ai/outside/gemini.md | 2 +- website/content/en/docs/config/gpu.md | 2 +- website/content/en/docs/config/mount.md | 4 ++-- website/content/en/docs/config/multi-arch.md | 6 +++--- website/content/en/docs/config/network/vmnet.md | 2 +- website/content/en/docs/config/plain.md | 12 ++++++------ website/content/en/docs/config/plugin/url.md | 4 ++-- website/content/en/docs/config/plugin/vm.md | 2 +- website/content/en/docs/config/port.md | 6 +++--- website/content/en/docs/config/vmtype/_index.md | 2 +- website/content/en/docs/config/vmtype/krunkit.md | 6 +++--- website/content/en/docs/dev/_index.md | 2 +- website/content/en/docs/dev/drivers.md | 2 +- website/content/en/docs/dev/internals.md | 6 +++--- website/content/en/docs/dev/testing/_index.md | 2 +- website/content/en/docs/examples/_index.md | 2 +- website/content/en/docs/examples/ai.md | 6 +++--- .../en/docs/examples/containers/_index.md | 4 ++-- .../examples/containers/containerd/_index.md | 4 ++-- .../containerd/advanced/bypass4netns.md | 2 +- .../examples/containers/kubernetes/_index.md | 2 +- website/content/en/docs/examples/gha.md | 2 +- website/content/en/docs/faq/_index.md | 10 +++++----- website/content/en/docs/installation/source.md | 2 +- website/content/en/docs/releases/breaking.md | 6 +++--- website/content/en/docs/releases/experimental.md | 16 ++++++++-------- website/content/en/docs/usage/_index.md | 8 ++++---- website/content/en/docs/usage/guests/freebsd.md | 2 +- website/content/en/docs/usage/guests/linux.md | 2 +- website/content/en/docs/usage/guests/macos.md | 4 ++-- website/content/en/docs/usage/ssh.md | 2 +- 36 files changed, 78 insertions(+), 78 deletions(-) diff --git a/website/content/en/docs/community/contributing.md b/website/content/en/docs/community/contributing.md index c59d154f..7c50a178 100644 --- a/website/content/en/docs/community/contributing.md +++ b/website/content/en/docs/community/contributing.md @@ -48,11 +48,11 @@ Before opening a pull request, open an issue first and explain your idea. Approv #### One fix per pull request Each pull request should fix one specific thing. Do not mix unrelated changes in one pull request. For large, ground-breaking work that needs many changes to test CI or integration, a draft pull request is okay first. After that, split the work into smaller pull requests that depend on each other. -It is highly suggested to add [tests](../../dev/testing/) for every non-trivial pull requests. +It is highly suggested to add [tests]({{< ref "/docs/dev/testing" >}}) for every non-trivial pull requests. A test can be implemented as a unit test rather than an integration test when it is possible, to avoid slowing the integration test CI. -Usually, all commits in a PR need to be squashed to a single commit before it can be merged. Rebase on the latest `master` branch in case GitHub shows that there are merge conflicts! For tips on squashing commits and rebasing before submitting your pull request, see [Git Tips](../dev/git.md). +Usually, all commits in a PR need to be squashed to a single commit before it can be merged. Rebase on the latest `master` branch in case GitHub shows that there are merge conflicts! For tips on squashing commits and rebasing before submitting your pull request, see [Git Tips]({{< ref "/docs/dev/git" >}}). ### AI Contribution Rules @@ -130,8 +130,8 @@ See also }}) can merge pull requests. +[Reviewers]({{< ref "/docs/community/governance" >}}) can approve, but cannot merge, pull requests. A Committer shouldn't merge their own pull requests without approval by at least one other Maintainer (Committer or Reviewer). diff --git a/website/content/en/docs/community/governance.md b/website/content/en/docs/community/governance.md index 2c904a73..a268a620 100644 --- a/website/content/en/docs/community/governance.md +++ b/website/content/en/docs/community/governance.md @@ -21,7 +21,7 @@ Maintainers consist of two roles: Committers must enable 2FA for their GitHub accounts. Committers are also recognized as Maintainers in . -- **Reviewer** (Limited maintainership): Reviewers may moderate GitHub issues and pull requests (such as adding labels and cleaning up spams), and make posts on [social accounts](./_index.md#social-accounts), +- **Reviewer** (Limited maintainership): Reviewers may moderate GitHub issues and pull requests (such as adding labels and cleaning up spams), and make posts on [social accounts]({{< ref "/docs/community#social-media-accounts" >}}), but they do not have any access to merge pull requests nor push commits. A Reviewer is considered as a candidate to become a Committer. Reviewers are not recognized as Maintainers in . @@ -31,7 +31,7 @@ Access control is enforced via GitHub team membership: * All reviewers are members of the `@lima-vm/reviewers` team and have the `Triage` role on all repos. * The `@lima-vm/maintainers` team includes both committers and reviewers, but doesn't grant any extra access. -See also the [Contributing](../contributing) page. +See also the [Contributing]({{< ref "/docs/community/contributing" >}}) page. ### Current maintainers diff --git a/website/content/en/docs/community/subprojects.md b/website/content/en/docs/community/subprojects.md index b9778e5d..95fe30a0 100644 --- a/website/content/en/docs/community/subprojects.md +++ b/website/content/en/docs/community/subprojects.md @@ -14,4 +14,4 @@ Some portions of Lima are useful for other projects too and split out to separat See also for other subprojects. -The maintainership of the subprojects corresponds to the [maintainership](../governance) of Lima itself. +The maintainership of the subprojects corresponds to the [maintainership]({{< ref "/docs/community/governance" >}}) of Lima itself. diff --git a/website/content/en/docs/config/ai/_index.md b/website/content/en/docs/config/ai/_index.md index 166071e1..2491c290 100644 --- a/website/content/en/docs/config/ai/_index.md +++ b/website/content/en/docs/config/ai/_index.md @@ -5,7 +5,7 @@ weight: 90 There are two kinds of scenario to use Lima with AI: -- [AI agents inside Lima](./inside): running an AI agent **inside** a VM -- [AI agents outside Lima](./outside): calling Lima's MCP tools from an AI agent running **outside** a VM +- [AI agents inside Lima]({{< ref "/docs/config/ai/inside" >}}): running an AI agent **inside** a VM +- [AI agents outside Lima]({{< ref "/docs/config/ai/outside" >}}): calling Lima's MCP tools from an AI agent running **outside** a VM diff --git a/website/content/en/docs/config/ai/inside/_index.md b/website/content/en/docs/config/ai/inside/_index.md index c87e45d7..b0a26a0e 100644 --- a/website/content/en/docs/config/ai/inside/_index.md +++ b/website/content/en/docs/config/ai/inside/_index.md @@ -7,5 +7,5 @@ Lima is useful for running AI agents (e.g., Claude Code, Codex, Gemini) inside a VM, so as to prevent agents from directly reading, writing, or executing the host files. See also: -- [Examples » AI](../../../examples/ai.md). -- [Config » GPU](../../gpu.md) +- [Examples » AI]({{< ref "/docs/examples/ai" >}}). +- [Config » GPU]({{< ref "/docs/config/gpu" >}}) diff --git a/website/content/en/docs/config/ai/outside/gemini.md b/website/content/en/docs/config/ai/outside/gemini.md index eef012dd..53e0d7be 100644 --- a/website/content/en/docs/config/ai/outside/gemini.md +++ b/website/content/en/docs/config/ai/outside/gemini.md @@ -18,7 +18,7 @@ limactl-mcp version 2.0.0-alpha.1 ``` The `limactl mcp` plugin is bundled in Lima since v2.0, however, it may not be installed -depending on the method of the [installation](../../../installation/). +depending on the method of the [installation]({{< ref "/docs/installation" >}}). ## Configuration 1. Run the default Lima instance, with a mount of your project directory: diff --git a/website/content/en/docs/config/gpu.md b/website/content/en/docs/config/gpu.md index 89111eb9..f2bd524d 100644 --- a/website/content/en/docs/config/gpu.md +++ b/website/content/en/docs/config/gpu.md @@ -4,7 +4,7 @@ weight: 90 --- Lima VM supports GPU acceleration for the following VM types: -- [krunkit](./vmtype/krunkit.md). +- [krunkit]({{< ref "/docs/config/vmtype/krunkit" >}}). {{% alert title="Note" color=success %}} "Lima" in this web site refers to [the Lima VM project](https://lima-vm.io). diff --git a/website/content/en/docs/config/mount.md b/website/content/en/docs/config/mount.md index 8b9a177d..c50fe67b 100644 --- a/website/content/en/docs/config/mount.md +++ b/website/content/en/docs/config/mount.md @@ -5,7 +5,7 @@ weight: 50 Lima supports several methods for mounting the host filesystem into the guest. -> **See also:** In [plain mode](./plain.md), all filesystem mounts are disabled. +> **See also:** In [plain mode]({{< ref "/docs/config/plain" >}}), all filesystem mounts are disabled. The default mount type is shown in the following table: @@ -140,7 +140,7 @@ mounts: {{< /tabpane >}} #### Caveats -- For macOS, the "virtiofs" mount type is supported only on macOS 13 or above with `vmType: vz` config. See also [`vmtype`](../vmtype/). +- For macOS, the "virtiofs" mount type is supported only on macOS 13 or above with `vmType: vz` config. See also [`vmtype`]({{< ref "/docs/config/vmtype" >}}). - For Linux, the "virtiofs" mount type requires the [Rust version of virtiofsd](https://gitlab.com/virtio-fs/virtiofsd). Using the version from QEMU (usually packaged as `qemu-virtiofsd`) will *not* work, as it requires root access to run. diff --git a/website/content/en/docs/config/multi-arch.md b/website/content/en/docs/config/multi-arch.md index 522c8e5b..4b504743 100644 --- a/website/content/en/docs/config/multi-arch.md +++ b/website/content/en/docs/config/multi-arch.md @@ -13,9 +13,9 @@ Lima supports several modes for running Intel-on-ARM and ARM-on-Intel: | ⚡ Requirement | QEMU, lima-additional-guestagents | |---------------|-----------------------------------| -Lima can run a VM with a foreign architecture, using [QEMU](./vmtype/qemu.md). +Lima can run a VM with a foreign architecture, using [QEMU]({{< ref "/docs/config/vmtype/qemu" >}}). -For [port forwarding](./port.md), the [`lima-additional-guestagents`](../installation/) package has to be installed on the host. +For [port forwarding]({{< ref "/docs/config/port" >}}), the [`lima-additional-guestagents`]({{< ref "/docs/installation" >}}) package has to be installed on the host. An example configuration: {{< tabpane text=true >}} @@ -84,7 +84,7 @@ See also https://github.com/containerd/nerdctl/blob/main/docs/multi-platform.md |-------------------|----------------------------------| [Rosetta](https://developer.apple.com/documentation/virtualization/running_intel_binaries_in_linux_vms_with_rosetta) is known to be much faster than QEMU User Mode Emulation. -Rosetta is available for [VZ](../vmtype/#vz) instances on ARM hosts. +Rosetta is available for [VZ]({{< ref "/docs/config/vmtype#vz" >}}) instances on ARM hosts. {{< tabpane text=true >}} {{% tab header="CLI" %}} diff --git a/website/content/en/docs/config/network/vmnet.md b/website/content/en/docs/config/network/vmnet.md index 27df7fa9..9dcc09b3 100644 --- a/website/content/en/docs/config/network/vmnet.md +++ b/website/content/en/docs/config/network/vmnet.md @@ -37,7 +37,7 @@ The range of the IP address is not specifiable. The "vzNAT" network does not need the `socket_vmnet` binary and the `sudoers` file. -The "vzNAT" network also has a significant advantage in the throughput. See the [benchmark result](../port.md#benchmarks). +The "vzNAT" network also has a significant advantage in the throughput. See the [benchmark result]({{< ref "/docs/config/port#benchmarks" >}}). ## socket_vmnet ### Managed (192.168.105.0/24) diff --git a/website/content/en/docs/config/plain.md b/website/content/en/docs/config/plain.md index ee093d92..98fcdb20 100644 --- a/website/content/en/docs/config/plain.md +++ b/website/content/en/docs/config/plain.md @@ -9,7 +9,7 @@ forwarding, and the built-in containerd. It is useful when you want to provision the guest with plain old `ssh` and `rsync`, without relying on Lima-specific integrations. See the -[GitHub Actions example](../examples/gha.md#plain-mode) for a typical use case. +[GitHub Actions example]({{< ref "/docs/examples/gha#plain-mode" >}}) for a typical use case. ## Enabling plain mode @@ -60,16 +60,16 @@ Dependency packages such as `sshfs` are not installed into the VM either. `limactl shell ` and `ssh` both work, as in a non-plain instance. In plain mode, plain `ssh` is often preferred to keep the guest free of -Lima-specific conventions. See [SSH](../usage/ssh.md) for details. +Lima-specific conventions. See [SSH]({{< ref "/docs/usage/ssh" >}}) for details. ## See also This page assumes Linux as the guest OS. -For OS-specific differences, see the [Guest OS](../usage/guests/_index.md) pages: +For OS-specific differences, see the [Guest OS]({{< ref "/docs/usage/guests" >}}) pages: -- [FreeBSD](../usage/guests/freebsd.md#plain-mode) -- [macOS](../usage/guests/macos.md#plain-mode) +- [FreeBSD]({{< ref "/docs/usage/guests/freebsd#plain-mode" >}}) +- [macOS]({{< ref "/docs/usage/guests/macos#plain-mode" >}}) For the underlying mechanics (boot scripts, `LIMA_CIDATA_PLAIN`, guest agent -injection), see the [internals reference](../dev/internals.md). +injection), see the [internals reference]({{< ref "/docs/dev/internals" >}}). diff --git a/website/content/en/docs/config/plugin/url.md b/website/content/en/docs/config/plugin/url.md index 38a43415..956d15b5 100644 --- a/website/content/en/docs/config/plugin/url.md +++ b/website/content/en/docs/config/plugin/url.md @@ -15,7 +15,7 @@ Lima's template locator supports custom URL schemes through plugins. A plugin na When Lima encounters a URL with an unrecognized scheme (e.g. `dev:webapp`), it: -1. Searches for an executable named `limactl-url-dev` using the standard [plugin discovery](../cli/#plugin-discovery) mechanism +1. Searches for an executable named `limactl-url-dev` using the standard [plugin discovery]({{< ref "/docs/config/plugin/cli#plugin-discovery" >}}) mechanism 2. Calls the plugin with the part after the colon as its sole argument (in this case, `webapp`) 3. Reads the plugin's stdout, which must be either a URL (with any supported scheme) or a local file path @@ -118,7 +118,7 @@ base: ## Composing schemes -Handlers can call `limactl template url` to resolve other schemes, including [`github:`](../../templates/github/). This lets a handler build on existing schemes rather than constructing raw URLs itself. +Handlers can call `limactl template url` to resolve other schemes, including [`github:`]({{< ref "/docs/templates/github" >}}). This lets a handler build on existing schemes rather than constructing raw URLs itself. ### Track the latest release diff --git a/website/content/en/docs/config/plugin/vm.md b/website/content/en/docs/config/plugin/vm.md index 1dea4c3c..1bdd0a35 100644 --- a/website/content/en/docs/config/plugin/vm.md +++ b/website/content/en/docs/config/plugin/vm.md @@ -3,5 +3,5 @@ title: VM driver plugins weight: 1 --- -See [Virtual Machine Drivers](../../dev/drivers.md). +See [Virtual Machine Drivers]({{< ref "/docs/dev/drivers" >}}). diff --git a/website/content/en/docs/config/port.md b/website/content/en/docs/config/port.md index da41b6e9..fc1c9180 100644 --- a/website/content/en/docs/config/port.md +++ b/website/content/en/docs/config/port.md @@ -5,7 +5,7 @@ weight: 31 Lima supports automatic port-forwarding of localhost ports from guest to host. -> **See also:** In [plain mode](./plain.md), dynamic port forwarding is disabled and only rules with `static: true` are forwarded. +> **See also:** In [plain mode]({{< ref "/docs/config/plain" >}}), dynamic port forwarding is disabled and only rules with `static: true` are forwarded. ## Port forwarding types @@ -81,14 +81,14 @@ LIMA_SSH_PORT_FORWARDER=false limactl start To access a guest's ports by its IP address, connect the guest to the `vzNAT` or the `lima:shared` network. -The `vzNAT` network is extremely faster and easier to use, however, `vzNAT` is only available for [VZ](./vmtype/vz.md) guests. +The `vzNAT` network is extremely faster and easier to use, however, `vzNAT` is only available for [VZ]({{< ref "/docs/config/vmtype/vz" >}}) guests. ```bash limactl start --network vzNAT lima ip addr show lima0 ``` -See [Config » Network » VMNet networks](./network/vmnet.md) for the further information. +See [Config » Network » VMNet networks]({{< ref "/docs/config/network/vmnet" >}}) for the further information. ## Benchmarks diff --git a/website/content/en/docs/config/vmtype/_index.md b/website/content/en/docs/config/vmtype/_index.md index c8a5692e..a3b54a7f 100644 --- a/website/content/en/docs/config/vmtype/_index.md +++ b/website/content/en/docs/config/vmtype/_index.md @@ -8,7 +8,7 @@ Lima supports several VM drivers for running guest machines: The vmType can be specified only on creating the instance. The vmType of existing instances cannot be changed. -> **💡 For developers**: See [Virtual Machine Drivers](../../dev/drivers) for technical details about driver architecture and creating custom drivers. +> **💡 For developers**: See [Virtual Machine Drivers]({{< ref "/docs/dev/drivers" >}}) for technical details about driver architecture and creating custom drivers. See the following flowchart to choose the best vmType for you: diff --git a/website/content/en/docs/config/vmtype/krunkit.md b/website/content/en/docs/config/vmtype/krunkit.md index b95b73f2..ce538373 100644 --- a/website/content/en/docs/config/vmtype/krunkit.md +++ b/website/content/en/docs/config/vmtype/krunkit.md @@ -50,7 +50,7 @@ make ADDITIONAL_DRIVERS=krunkit additional-drivers cp -a _output/libexec/lima/lima-driver-krunkit /usr/local/libexec/lima/ ``` -See also [Developers' guide » Virtual Machine Drivers](../../dev/drivers.md). +See also [Developers' guide » Virtual Machine Drivers]({{< ref "/docs/dev/drivers" >}}). ## Quick start @@ -100,7 +100,7 @@ You can now chat with the model. ### 2) Run models without containers (hard way) -This path builds and installs dependencies (which can take some time. For faster builds, allocate more CPUs and memory to the VM. See [`options`](../../reference/limactl_start/#options)). Use Fedora as the image. +This path builds and installs dependencies (which can take some time. For faster builds, allocate more CPUs and memory to the VM. See [`options`](/docs/reference/limactl_start/#options)). Use Fedora as the image. {{< tabpane text=true >}} {{% tab header="CLI" %}} @@ -211,4 +211,4 @@ and enjoy chatting with the AI model. - To verify GPU/Vulkan in the guest container or VM, use tools like `vulkaninfo --summary`. - AI models on containers can run on any Linux distribution but without containers Fedora is required. - For more information about usage of `llama-cli`. See [llama.cpp](https://github.com/ggml-org/llama.cpp) `README.md`. -- Driver architecture details: see [Virtual Machine Drivers](../../dev/drivers). +- Driver architecture details: see [Virtual Machine Drivers]({{< ref "/docs/dev/drivers" >}}). diff --git a/website/content/en/docs/dev/_index.md b/website/content/en/docs/dev/_index.md index 0af89886..962c9892 100644 --- a/website/content/en/docs/dev/_index.md +++ b/website/content/en/docs/dev/_index.md @@ -5,5 +5,5 @@ weight: 500 This section provides technological resources for developers of Lima. -See also [`Community`](../community) » [`Contributing`](../community/contributing) +See also [`Community`]({{< ref "/docs/community" >}}) » [`Contributing`]({{< ref "/docs/community/contributing" >}}) for how to contribute to the project. diff --git a/website/content/en/docs/dev/drivers.md b/website/content/en/docs/dev/drivers.md index 07a9a8ea..446b0166 100644 --- a/website/content/en/docs/dev/drivers.md +++ b/website/content/en/docs/dev/drivers.md @@ -8,7 +8,7 @@ weight: 15 Lima supports two types of drivers: **internal** and **external**. This architecture allows for extensibility and platform-specific implementations. Drivers are unware whether they are internal or external. -> **💡 See also**: [VM Types](../../config/vmtype) for user configuration of different virtualization backends. +> **💡 See also**: [VM Types]({{< ref "/docs/config/vmtype" >}}) for user configuration of different virtualization backends. ## Internal vs External Drivers diff --git a/website/content/en/docs/dev/internals.md b/website/content/en/docs/dev/internals.md index 224771d9..1d15fcc5 100644 --- a/website/content/en/docs/dev/internals.md +++ b/website/content/en/docs/dev/internals.md @@ -173,11 +173,11 @@ See [Building Ansible inventories](https://docs.ansible.com/ansible/latest/inven - `network-config`: [Cloud-init Networking Config Version 2](https://docs.cloud-init.io/en/latest/reference/network-config-format-v2.html) - `lima.env`: The `LIMA_CIDATA_*` environment variables (see below) available during `boot.sh` processing - `param.env`: The `PARAM_*` environment variables corresponding to the `param` settings from `lima.yaml` -- `lima-guestagent`: Lima guest agent binary. On Linux, omitted in [plain mode](../config/plain.md) (the guest agent daemon does not run). On macOS, always injected, as it is required for fake-cloud-init. +- `lima-guestagent`: Lima guest agent binary. On Linux, omitted in [plain mode]({{< ref "/docs/config/plain" >}}) (the guest agent daemon does not run). On macOS, always injected, as it is required for fake-cloud-init. - `nerdctl-full.tgz`: [`nerdctl-full---.tar.gz`](https://github.com/containerd/nerdctl/releases) - `boot.sh`: Boot script - `boot./*`: Boot script modules -- `boot.essential./*`: Essential boot script modules, executed in [plain mode](../config/plain.md) too (unlike `boot./*`, which is skipped in plain mode). +- `boot.essential./*`: Essential boot script modules, executed in [plain mode]({{< ref "/docs/config/plain" >}}) too (unlike `boot./*`, which is skipped in plain mode). - `util/*`: Utility command scripts, executed in the boot script modules - `provision.data/*`: Custom provision files (data) - `provision.dependency/*`: Custom provision scripts (dependency) @@ -239,7 +239,7 @@ The volume label is "cidata", as defined by [cloud-init NoCloud](https://docs.cl - `LIMA_CIDATA_VIRTIO_PORT`: the virtio-serial port name used by the guest agent (empty when virtio-serial is not used). - `LIMA_CIDATA_GUEST_OS_VERSION`: for macOS guests on the `vz` driver, the macOS version of the restore image the instance was created from, e.g. `27.0.0`. Empty for other guests and for instances created before this was recorded. - `LIMA_CIDATA_GUEST_OS_BUILD_VERSION`: the corresponding build number, e.g. `26A428`. Empty in the same cases. -- `LIMA_CIDATA_PLAIN`: set to "1" when the instance is in [plain mode](../config/plain.md) (no mounts, port forwarding, or containerd), empty otherwise. +- `LIMA_CIDATA_PLAIN`: set to "1" when the instance is in [plain mode]({{< ref "/docs/config/plain" >}}) (no mounts, port forwarding, or containerd), empty otherwise. - `LIMA_CIDATA_NO_CLOUD_INIT`: set to "1" if cloud-init should be skipped on this boot, empty otherwise. diff --git a/website/content/en/docs/dev/testing/_index.md b/website/content/en/docs/dev/testing/_index.md index 5bd7646d..20b10a1c 100644 --- a/website/content/en/docs/dev/testing/_index.md +++ b/website/content/en/docs/dev/testing/_index.md @@ -57,7 +57,7 @@ to execute tests, with a virtual machine template file, e.g.,: ## CI [`.github/workflows/test.yml`](https://github.com/lima-vm/lima/blob/master/.github/workflows/test.yml) -executes the tests on the GitHub Actions with the ["Tier 1"](../../templates/) templates. +executes the tests on the GitHub Actions with the ["Tier 1"]({{< ref "/docs/templates" >}}) templates. Most tests are executed on Linux runners, as macOS runners are slow and flaky. diff --git a/website/content/en/docs/examples/_index.md b/website/content/en/docs/examples/_index.md index 45e2c684..f532f698 100644 --- a/website/content/en/docs/examples/_index.md +++ b/website/content/en/docs/examples/_index.md @@ -63,7 +63,7 @@ kubectl create service nodeport nginx --node-port=31080 --tcp=80:80 - is accessible from the host, as well as from the VM. -- See more [examples](./containers/). +- See more [examples]({{< ref "/docs/examples/containers" >}}). ## Advanced configuration diff --git a/website/content/en/docs/examples/ai.md b/website/content/en/docs/examples/ai.md index 2d8b985e..9efc81ad 100644 --- a/website/content/en/docs/examples/ai.md +++ b/website/content/en/docs/examples/ai.md @@ -136,7 +136,7 @@ See also . | ⚡ Requirement | Lima >= 2.1 | |----------------|-------------| -The `--sync` flag for [`limactl shell`](../reference/limactl_shell) enables bidirectional synchronization of your host working directory with the guest VM. This is particularly useful when running AI agents (like Claude, Copilot, or Gemini) inside VMs to prevent them from accidentally modifying or breaking files on your host system. +The `--sync` flag for [`limactl shell`](/docs/reference/limactl_shell/) enables bidirectional synchronization of your host working directory with the guest VM. This is particularly useful when running AI agents (like Claude, Copilot, or Gemini) inside VMs to prevent them from accidentally modifying or breaking files on your host system. ### Comparison with `mount` @@ -194,5 +194,5 @@ limactl shell --sync . default ## See also -- [Config » AI](../config/ai/) -- [Config » GPU](../config/gpu.md) +- [Config » AI]({{< ref "/docs/config/ai" >}}) +- [Config » GPU]({{< ref "/docs/config/gpu" >}}) diff --git a/website/content/en/docs/examples/containers/_index.md b/website/content/en/docs/examples/containers/_index.md index ac114eca..ab9255ca 100644 --- a/website/content/en/docs/examples/containers/_index.md +++ b/website/content/en/docs/examples/containers/_index.md @@ -4,7 +4,7 @@ weight: 3 --- Lima was designed to facilitate running containers inside a virtual machine, with automatic -[filesystem sharing](../../config/mount.md) and [port forwarding](../../config/port.md). +[filesystem sharing]({{< ref "/docs/config/mount" >}}) and [port forwarding]({{< ref "/docs/config/port" >}}). -The original motivation of Lima was to promote [containerd](./containerd) for macOS users, however, +The original motivation of Lima was to promote [containerd]({{< ref "/docs/examples/containers/containerd" >}}) for macOS users, however, the current version of Lima supports other container engines too, and does not depend on macOS hosts. diff --git a/website/content/en/docs/examples/containers/containerd/_index.md b/website/content/en/docs/examples/containers/containerd/_index.md index 0517c199..6a36fb0c 100644 --- a/website/content/en/docs/examples/containers/containerd/_index.md +++ b/website/content/en/docs/examples/containers/containerd/_index.md @@ -18,8 +18,8 @@ or nerdctl.lima run -d --name nginx -p 127.0.0.1:8080:80 nginx:alpine ``` -- If you have installed Lima by [`make install`](../../../installation/source.md), the `nerdctl.lima` command is also available as `nerdctl`. -- If you have installed Lima by [`brew install lima`](../../../installation/_index.md), you may make an alias (or a symlink) by yourself: +- If you have installed Lima by [`make install`]({{< ref "/docs/installation/source" >}}), the `nerdctl.lima` command is also available as `nerdctl`. +- If you have installed Lima by [`brew install lima`]({{< ref "/docs/installation" >}}), you may make an alias (or a symlink) by yourself: `alias nerdctl=nerdctl.lima` {{% /tab %}} {{% tab header="Rootful" %}} diff --git a/website/content/en/docs/examples/containers/containerd/advanced/bypass4netns.md b/website/content/en/docs/examples/containers/containerd/advanced/bypass4netns.md index d161c5a6..91aa9a63 100644 --- a/website/content/en/docs/examples/containers/containerd/advanced/bypass4netns.md +++ b/website/content/en/docs/examples/containers/containerd/advanced/bypass4netns.md @@ -6,7 +6,7 @@ weight: 2 [bypass4netns](https://github.com/rootless-containers/bypass4netns) is an experimental accelerator for rootless networking. -On macOS hosts, it is highly recommended to use the [vzNAT](../../../../config/network/vmnet.md#vznat) networking in conjunction +On macOS hosts, it is highly recommended to use the [vzNAT]({{< ref "/docs/config/network/vmnet#vznat" >}}) networking in conjunction to reduce the overhead of Lima's user-mode networking: ```bash diff --git a/website/content/en/docs/examples/containers/kubernetes/_index.md b/website/content/en/docs/examples/containers/kubernetes/_index.md index 4baa88c8..b2691acf 100644 --- a/website/content/en/docs/examples/containers/kubernetes/_index.md +++ b/website/content/en/docs/examples/containers/kubernetes/_index.md @@ -64,7 +64,7 @@ See also . ## Multi-node -A multi-node cluster can be created by creating multiple VMs connected via the [`lima:user-v2`](../../../config/network/user-v2.md) network. +A multi-node cluster can be created by creating multiple VMs connected via the [`lima:user-v2`]({{< ref "/docs/config/network/user-v2" >}}) network. The following templates are designed to support multi-node mode: - `k8s` (since Lima v2.0) diff --git a/website/content/en/docs/examples/gha.md b/website/content/en/docs/examples/gha.md index 32b6c70d..25946b9c 100644 --- a/website/content/en/docs/examples/gha.md +++ b/website/content/en/docs/examples/gha.md @@ -59,7 +59,7 @@ See also . ### Plain mode The `--plain` mode is useful when you want the VM instance to be as close as possible to a physical host. -See [Config » Plain mode](../config/plain.md) for the full behavior: +See [Config » Plain mode]({{< ref "/docs/config/plain" >}}) for the full behavior: ```yaml - name: "Start Fedora" diff --git a/website/content/en/docs/faq/_index.md b/website/content/en/docs/faq/_index.md index 9e4f9af2..05e68372 100644 --- a/website/content/en/docs/faq/_index.md +++ b/website/content/en/docs/faq/_index.md @@ -42,9 +42,9 @@ weight: 6 ### Generic #### "How does Lima work?" -- Hypervisor: [QEMU (default on Linux), or Virtualization.framework (default on macOS)](../config/vmtype/) -- Filesystem sharing: [Reverse SSHFS, virtio-9p-pci aka virtfs (default for QEMU), or virtiofs (default for Virtualization.framework)](../config/mount/) -- Port forwarding: [`ssh -L`](../config/port), automated by watching `/proc/net/tcp` and `iptables` events in the guest +- Hypervisor: [QEMU (default on Linux), or Virtualization.framework (default on macOS)]({{< ref "/docs/config/vmtype" >}}) +- Filesystem sharing: [Reverse SSHFS, virtio-9p-pci aka virtfs (default for QEMU), or virtiofs (default for Virtualization.framework)]({{< ref "/docs/config/mount" >}}) +- Port forwarding: [`ssh -L`]({{< ref "/docs/config/port" >}}), automated by watching `/proc/net/tcp` and `iptables` events in the guest #### "What's my login password?" For Linux and FreeBSD guests, the password is disabled and locked by default. @@ -65,7 +65,7 @@ AlmaLinux, Alpine, Arch Linux, Debian, Fedora, openSUSE, Oracle Linux, and Rocky See [`./templates/`](./templates/). {{% /fixlinks %}} -Starting with Lima v2.1, non-Linux guests such as [macOS guests](../usage/guests/macos.md) are experimentally supported too. +Starting with Lima v2.1, non-Linux guests such as [macOS guests]({{< ref "/docs/usage/guests/macos" >}}) are experimentally supported too. An image for Linux guests has to satisfy the following requirements: - systemd or OpenRC @@ -176,7 +176,7 @@ Note: **Only** on macOS versions **before** 10.15.7 you might need to add this e #### error "killed -9" - make sure qemu is codesigned, See ["QEMU crashes with `HV_ERROR`"](#qemu-crashes-with-hv_error). -- if you are on macOS 10.15.7 or 11.0 or later make sure the entitlement `com.apple.vm.hypervisor` is **not** added. It only works on older macOS versions. You can clear the codesigning with `codesign --remove-signature /usr/local/bin/qemu-system-x86_64` and [start over](../installation/). +- if you are on macOS 10.15.7 or 11.0 or later make sure the entitlement `com.apple.vm.hypervisor` is **not** added. It only works on older macOS versions. You can clear the codesigning with `codesign --remove-signature /usr/local/bin/qemu-system-x86_64` and [start over]({{< ref "/docs/installation" >}}). #### "QEMU crashes with `vmx_write_mem: mmu_gva_to_gpa XXXXXXXXXXXXXXXX failed`" This error is known to happen when running an image of RHEL8-compatible distribution such as Rocky Linux 8.x on Intel Mac. diff --git a/website/content/en/docs/installation/source.md b/website/content/en/docs/installation/source.md index 9fd60571..ab6f0222 100644 --- a/website/content/en/docs/installation/source.md +++ b/website/content/en/docs/installation/source.md @@ -37,7 +37,7 @@ export PATH=$HOME/.local/bin:$PATH > **⚠️ Building drivers as external mode is experimental** -Lima supports building drivers as external executables. For detailed information on creating and building external drivers, see the [Virtual Machine Drivers](../../dev/drivers) guide. +Lima supports building drivers as external executables. For detailed information on creating and building external drivers, see the [Virtual Machine Drivers]({{< ref "/docs/dev/drivers" >}}) guide. ## Packaging Lima for Distribution After building Lima from source, you may want to package it for installation on other machines: diff --git a/website/content/en/docs/releases/breaking.md b/website/content/en/docs/releases/breaking.md index de1a473c..db2bdbf2 100644 --- a/website/content/en/docs/releases/breaking.md +++ b/website/content/en/docs/releases/breaking.md @@ -12,7 +12,7 @@ weight: 20 update their snapshot implementations and regenerate their protobuf bindings. ## v2.2.0 -- The default [`socket_vmnet` group](../config/network/vmnet.md) in `networks.yaml` was changed from `everyone` to +- The default [`socket_vmnet` group]({{< ref "/docs/config/network/vmnet" >}}) in `networks.yaml` was changed from `everyone` to `admin`. A non-admin user must set `group` to a group they belong to (e.g. `staff`). - The default VM driver on Windows hosts was changed from `wsl2` to `qemu`, as `wsl2` is not compatible with most templates. @@ -33,8 +33,8 @@ weight: 20 - The `lima-additional-guestagent` package was split from the main `lima` package. ## [v1.0.0](https://github.com/lima-vm/lima/releases/tag/v1.0.0) -- The default [VM type](../config/vmtype/_index.md) was changed from `qemu` to `vz` on macOS hosts with the support for `vz`. -- The default [mount type](../config/mount.md) was changed from `reverse-sshfs` to `virtiofs` for `vz`, `9p` for `qemu`. +- The default [VM type]({{< ref "/docs/config/vmtype" >}}) was changed from `qemu` to `vz` on macOS hosts with the support for `vz`. +- The default [mount type]({{< ref "/docs/config/mount" >}}) was changed from `reverse-sshfs` to `virtiofs` for `vz`, `9p` for `qemu`. - `socket_vmnet` binary has to be strictly owned by root. - The default value of `ssh.loadDotSSHPubKeys` was changed from `true` to `false`. - Several templates were removed or renamed. diff --git a/website/content/en/docs/releases/experimental.md b/website/content/en/docs/releases/experimental.md index f6833908..a3851eba 100644 --- a/website/content/en/docs/releases/experimental.md +++ b/website/content/en/docs/releases/experimental.md @@ -13,14 +13,14 @@ The following features are experimental and subject to change: - `audio.device`, `audio.interface`, and `audio.microphone` - `mountInotify: true` - `tpm: true` -- `user.passwordlessSudo` (See [Sudo](../config/sudo)) -- `External drivers`: building and using drivers as separate executables (see [Virtual Machine Drivers](../dev/drivers)) -- [`vmType: krunkit`](../config/vmtype/krunkit.md) -- [`vmType:hcs`]((../config/vmtype/hcs.md)) -- [`github` URL scheme](../templates/github.md): referencing templates on GitHub with `github:` URLs -- [macOS guests](../usage/guests/macos.md) -- [FreeBSD guests](../usage/guests/freebsd.md) -- [Windows guests](../usage/guests/windows.md) +- `user.passwordlessSudo` (See [Sudo]({{< ref "/docs/config/sudo" >}})) +- `External drivers`: building and using drivers as separate executables (see [Virtual Machine Drivers]({{< ref "/docs/dev/drivers" >}})) +- [`vmType: krunkit`]({{< ref "/docs/config/vmtype/krunkit" >}}) +- [`vmType:hcs`]({{< ref "/docs/config/vmtype/hcs" >}}) +- [`github` URL scheme]({{< ref "/docs/templates/github" >}}): referencing templates on GitHub with `github:` URLs +- [macOS guests]({{< ref "/docs/usage/guests/macos" >}}) +- [FreeBSD guests]({{< ref "/docs/usage/guests/freebsd" >}}) +- [Windows guests]({{< ref "/docs/usage/guests/windows" >}}) The following commands are experimental and subject to change: diff --git a/website/content/en/docs/usage/_index.md b/website/content/en/docs/usage/_index.md index d014cced..5bff9ddd 100644 --- a/website/content/en/docs/usage/_index.md +++ b/website/content/en/docs/usage/_index.md @@ -31,9 +31,9 @@ limactl start default ``` See also the command reference: -- [`limactl create`](../reference/limactl_create/) -- [`limactl start`](../reference/limactl_start/) -- [`limactl edit`](../reference/limactl_edit/) +- [`limactl create`](/docs/reference/limactl_create/) +- [`limactl start`](/docs/reference/limactl_start/) +- [`limactl edit`](/docs/reference/limactl_edit/) ### Executing Linux commands Run `limactl shell ` to launch `` on the VM: @@ -42,7 +42,7 @@ limactl shell default uname -a ``` See also the command reference: -- [`limactl shell`](../reference/limactl_shell/) +- [`limactl shell`](/docs/reference/limactl_shell/) For the "default" instance, this command can be shortened as `lima `. ```bash diff --git a/website/content/en/docs/usage/guests/freebsd.md b/website/content/en/docs/usage/guests/freebsd.md index 375f9d1d..b88625d4 100644 --- a/website/content/en/docs/usage/guests/freebsd.md +++ b/website/content/en/docs/usage/guests/freebsd.md @@ -39,5 +39,5 @@ Prerequisites: ## Plain mode The guest agent, containerd, and automatic port forwarding are not available on -FreeBSD guests regardless of the mode, so [plain mode](../../config/plain.md) +FreeBSD guests regardless of the mode, so [plain mode]({{< ref "/docs/config/plain" >}}) additionally disables only the host directory mounts (on FreeBSD 15.1 and later). diff --git a/website/content/en/docs/usage/guests/linux.md b/website/content/en/docs/usage/guests/linux.md index e85b7181..4bf953c7 100644 --- a/website/content/en/docs/usage/guests/linux.md +++ b/website/content/en/docs/usage/guests/linux.md @@ -6,4 +6,4 @@ weight: 1 Linux is the default guest operating system. ## See also -- [Templates](../../templates/_index.md) +- [Templates]({{< ref "/docs/templates" >}}) diff --git a/website/content/en/docs/usage/guests/macos.md b/website/content/en/docs/usage/guests/macos.md index c0bb1076..7215a409 100644 --- a/website/content/en/docs/usage/guests/macos.md +++ b/website/content/en/docs/usage/guests/macos.md @@ -120,10 +120,10 @@ target OS release if needed. - No support for turning off the video display. - No support for automatic port forwarding. Use `ssh -L` to manually set up port forwarding, or, - use the [`vzNAT`](../../config/network/vmnet.md#vznat) network to access the guest by its IP. + use the [`vzNAT`]({{< ref "/docs/config/network/vmnet#vznat" >}}) network to access the guest by its IP. - No support for installing custom `caCerts` ## Plain mode containerd and automatic port forwarding are not available on macOS guests regardless -of the mode, so [plain mode](../../config/plain.md) additionally disables only the +of the mode, so [plain mode]({{< ref "/docs/config/plain" >}}) additionally disables only the host directory mounts. diff --git a/website/content/en/docs/usage/ssh.md b/website/content/en/docs/usage/ssh.md index ad28ecca..75651937 100644 --- a/website/content/en/docs/usage/ssh.md +++ b/website/content/en/docs/usage/ssh.md @@ -27,7 +27,7 @@ Then you can connect directly without specifying `-F`: ssh lima-default ``` -This configuration is notably useful for the Remote Development mode of [Visual Studio Code](../examples/vscode.md). +This configuration is notably useful for the Remote Development mode of [Visual Studio Code]({{< ref "/docs/examples/vscode" >}}). ## Using SSH without a config file