From fcdffd6cf4f961b430642a69f826f1bb4c7387d4 Mon Sep 17 00:00:00 2001 From: h8d13 Date: Thu, 18 Dec 2025 12:24:16 +0100 Subject: [PATCH 01/18] Update general QEMU instructions in main README. Remove old docs in favor of Building and Testing guide. --- README.md | 71 ++++++++++++++++++++++++++++++------------------------- 1 file changed, 39 insertions(+), 32 deletions(-) diff --git a/README.md b/README.md index b6d5708503..ce161ada74 100644 --- a/README.md +++ b/README.md @@ -135,46 +135,53 @@ The profiles' definitions and the packages they will install can be directly vie ## Using a Live ISO Image -If you want to test a commit, branch, or bleeding edge release from the repository using the standard Arch Linux Live ISO image, -replace the archinstall version with a newer one and execute the subsequent steps defined below. - -*Note: When booting from a live USB, the space on the ramdisk is limited and may not be sufficient to allow -running a re-installation or upgrade of the installer. In case one runs into this issue, any of the following can be used -- Resize the root partition https://wiki.archlinux.org/title/Archiso#Adjusting_the_size_of_the_root_file_system -- The boot parameter `copytoram=y` (https://gitlab.archlinux.org/archlinux/mkinitcpio/mkinitcpio-archiso/-/blob/master/docs/README.bootparams#L26) -can be specified which will copy the root filesystem to tmpfs.* - -1. You need a working network connection -2. Install the build requirements with `pacman -Sy; pacman -S git python-pip gcc pkgconf` - *(note that this may or may not work depending on your RAM and current state of the squashfs maximum filesystem free space)* -3. Uninstall the previous version of archinstall with `pip uninstall --break-system-packages archinstall` -4. Now clone the latest repository with `git clone https://github.com/archlinux/archinstall` -5. Enter the repository with `cd archinstall` - *At this stage, you can choose to check out a feature branch for instance with `git checkout v2.3.1-rc1`* -6. To run the source code, there are 2 different options: - - Run a specific branch version from source directly using `python -m archinstall`, in most cases this will work just fine, the - rare case it will not work is if the source has introduced any new dependencies that are not installed yet - - Installing the branch version with `pip install --break-system-packages .` and `archinstall` +Using [`QEMU`](https://wiki.archlinux.org/title/QEMU): +> Provided you have KVM compatible hardware: check using `lsmod | grep -i "kvm"` this can often be enabled/disabled in motherboard settings under term "Virtualisation". -## Without a Live ISO Image +```shell +# deps +pacman -S qemu-system-x86 qemu-img +# create a disk (note its allocated not used yet) +qemu-img create -f qcow2 "$image_name" 40G +# boot for installation +qemu-system-x86 -enable-kvm -m 4096 -cpu host -smp 4 \ + -vga std -hda "$image_name" -cdrom archlinux-x86_64.iso -boot d +# once inside ISO (for testing branches) +pacman -Sy --noconfirm git && git clone -b testing-branch https://github.com/archlinux/archinstall +# alternative is to use pacman -Sy archinstall && archinstall +cd archinstall && python -m archinstall +``` + +To test with UEFI vars add: +```shell +-drive if=pflash,format=raw,readonly=on,file=/usr/share/edk2/x64/OVMF_CODE.4m.fd +-drive if=pflash,format=raw,file=/usr/share/ovmf/x64/OVMF_VARS.4m.fd +``` +Check these path exists on your system `ls -la /usr/share/ovmf/x64/`. + +Once install is done use `poweroff` then: + +```shell +# standard (after installation) +qemu-system-x86 -enable-kvm -m 4096 -cpu host -smp 4 \ + -vga std -hda "$image_name" -boot c +``` -To test this without a live ISO, the simplest approach is to use a local image and create a loop device.
-This can be done by installing `pacman -S arch-install-scripts util-linux` locally and doing the following: +More advanced use cases can use `qemu-hw-display-virtio-gpu-pci qemu-hw-display-virtio-gpu qemu-ui-sdl qemu-ui-gtk qemu-audio-pipewire`. - # truncate -s 20G testimage.img - # losetup --partscan --show --find ./testimage.img - # pip install --upgrade archinstall - # python -m archinstall --script guided - # qemu-system-x86_64 -enable-kvm -machine q35,accel=kvm -device intel-iommu -cpu host -m 4096 -boot order=d -drive file=./testimage.img,format=raw -drive if=pflash,format=raw,readonly,file=/usr/share/ovmf/x64/OVMF.4m.fd -drive if=pflash,format=raw,readonly,file=/usr/share/ovmf/x64/OVMF.4m.fd +Possibly get hardware acceleration/sound to work via `-device virtio-gpu-pci`, `-vga none -display sdl,gl=on` and `-audiodev pipewire,id=snd0 -device intel-hda -device hda-duplex,audiodev=snd0` -This will create a *20 GB* `testimage.img` and create a loop device which we can use to format and install to.
-`archinstall` is installed and executed in [guided mode](#docs-todo). Once the installation is complete, ~~you can use qemu/kvm to boot the test media.~~
-*(You'd actually need to do some EFI magic in order to point the EFI vars to the partition 0 in the test medium, so this won't work entirely out of the box, but that gives you a general idea of what we're going for here)* +Or use any of the GUI managers which should handle parts of this for you: [VirtualBox](https://wiki.archlinux.org/title/VirtualBox), [VMWare](https://wiki.archlinux.org/title/VMware), RemoteBox, etc. + +## Without a Live ISO Image + +Using [`archiso`](https://wiki.archlinux.org/title/Archiso) to create your own ISO. + +This is neat as you can pre-cache packages as a [local repo](https://wiki.archlinux.org/title/Archiso#Custom_local_repository) in order to shorten testing time. There's also a [Building and Testing](https://github.com/archlinux/archinstall/wiki/Building-and-Testing) guide.
It will go through everything from packaging, building and running *(with qemu)* the installer against a dev branch. - # FAQ ## Keyring out-of-date From e7e8bdc04cb25422b0b20d27465a8b0473147b97 Mon Sep 17 00:00:00 2001 From: h8d13 Date: Thu, 18 Dec 2025 13:12:38 +0100 Subject: [PATCH 02/18] Correct instructions --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index ce161ada74..328ae9c794 100644 --- a/README.md +++ b/README.md @@ -144,9 +144,9 @@ pacman -S qemu-system-x86 qemu-img # create a disk (note its allocated not used yet) qemu-img create -f qcow2 "$image_name" 40G # boot for installation -qemu-system-x86 -enable-kvm -m 4096 -cpu host -smp 4 \ +qemu-system-x86_64 -enable-kvm -m 4096 -cpu host -smp 4 \ -vga std -hda "$image_name" -cdrom archlinux-x86_64.iso -boot d -# once inside ISO (for testing branches) +# once inside ISO (example testing branches) pacman -Sy --noconfirm git && git clone -b testing-branch https://github.com/archlinux/archinstall # alternative is to use pacman -Sy archinstall && archinstall cd archinstall && python -m archinstall @@ -167,7 +167,7 @@ qemu-system-x86 -enable-kvm -m 4096 -cpu host -smp 4 \ -vga std -hda "$image_name" -boot c ``` -More advanced use cases can use `qemu-hw-display-virtio-gpu-pci qemu-hw-display-virtio-gpu qemu-ui-sdl qemu-ui-gtk qemu-audio-pipewire`. +More advanced use cases can use `virglrenderer qemu-hw-display-virtio-gpu-pci qemu-hw-display-virtio-gpu qemu-ui-sdl qemu-ui-gtk qemu-audio-pipewire`. Possibly get hardware acceleration/sound to work via `-device virtio-gpu-pci`, `-vga none -display sdl,gl=on` and `-audiodev pipewire,id=snd0 -device intel-hda -device hda-duplex,audiodev=snd0` From 8ea58d30119ece056c01ef3a5815804551ada2f1 Mon Sep 17 00:00:00 2001 From: h8d13 Date: Thu, 18 Dec 2025 13:13:22 +0100 Subject: [PATCH 03/18] Clarity --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 328ae9c794..c9847c4a01 100644 --- a/README.md +++ b/README.md @@ -146,7 +146,7 @@ qemu-img create -f qcow2 "$image_name" 40G # boot for installation qemu-system-x86_64 -enable-kvm -m 4096 -cpu host -smp 4 \ -vga std -hda "$image_name" -cdrom archlinux-x86_64.iso -boot d -# once inside ISO (example testing branches) +# once inside QEMU/ISO (example testing branches) pacman -Sy --noconfirm git && git clone -b testing-branch https://github.com/archlinux/archinstall # alternative is to use pacman -Sy archinstall && archinstall cd archinstall && python -m archinstall From bd35f857ea36ab6483e069285827364d02710b23 Mon Sep 17 00:00:00 2001 From: h8d13 Date: Thu, 18 Dec 2025 13:15:30 +0100 Subject: [PATCH 04/18] Add download --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c9847c4a01..0a2fb99b9f 100644 --- a/README.md +++ b/README.md @@ -136,7 +136,7 @@ The profiles' definitions and the packages they will install can be directly vie ## Using a Live ISO Image Using [`QEMU`](https://wiki.archlinux.org/title/QEMU): -> Provided you have KVM compatible hardware: check using `lsmod | grep -i "kvm"` this can often be enabled/disabled in motherboard settings under term "Virtualisation". +> Provided you have KVM compatible hardware: check using `lsmod | grep -i "kvm"` this can often be enabled/disabled in motherboard settings under term "Virtualisation". And an ISO from [ArchDownload](https://archlinux.org/download/) ```shell # deps From f740727d75ea7770a15e4f4d3e15d50eed1840f7 Mon Sep 17 00:00:00 2001 From: HADEON <52324046+h8d13@users.noreply.github.com> Date: Thu, 18 Dec 2025 17:32:24 +0100 Subject: [PATCH 05/18] forgot most important one --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 0a2fb99b9f..d77d505520 100644 --- a/README.md +++ b/README.md @@ -171,7 +171,7 @@ More advanced use cases can use `virglrenderer qemu-hw-display-virtio-gpu-pci qe Possibly get hardware acceleration/sound to work via `-device virtio-gpu-pci`, `-vga none -display sdl,gl=on` and `-audiodev pipewire,id=snd0 -device intel-hda -device hda-duplex,audiodev=snd0` -Or use any of the GUI managers which should handle parts of this for you: [VirtualBox](https://wiki.archlinux.org/title/VirtualBox), [VMWare](https://wiki.archlinux.org/title/VMware), RemoteBox, etc. +Or use any of the GUI managers which should handle parts of this for you: [VirtManager](https://wiki.archlinux.org/title/Virt-manager), [VirtualBox](https://wiki.archlinux.org/title/VirtualBox), [VMWare](https://wiki.archlinux.org/title/VMware), RemoteBox, etc. ## Without a Live ISO Image From 7f04c8dd1770f12c628943739536575bf0cac03b Mon Sep 17 00:00:00 2001 From: HADEON <52324046+h8d13@users.noreply.github.com> Date: Thu, 18 Dec 2025 17:41:57 +0100 Subject: [PATCH 06/18] update generic docs --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index d77d505520..1d344c1d3d 100644 --- a/README.md +++ b/README.md @@ -167,9 +167,9 @@ qemu-system-x86 -enable-kvm -m 4096 -cpu host -smp 4 \ -vga std -hda "$image_name" -boot c ``` -More advanced use cases can use `virglrenderer qemu-hw-display-virtio-gpu-pci qemu-hw-display-virtio-gpu qemu-ui-sdl qemu-ui-gtk qemu-audio-pipewire`. +More advanced use cases can use `virglrenderer qemu-hw-display-virtio-gpu-pci qemu-hw-display-virtio-gpu qemu-ui-sdl qemu-ui-gtk qemu-audio-pipewire`. And full list of subjects can be found [here](https://wiki.archlinux.org/title/Category:Virtualization) -Possibly get hardware acceleration/sound to work via `-device virtio-gpu-pci`, `-vga none -display sdl,gl=on` and `-audiodev pipewire,id=snd0 -device intel-hda -device hda-duplex,audiodev=snd0` +Possibly get hardware acceleration/sound to work via `-device virtio-gpu-pci`, `-vga none -display sdl,gl=on` and `-audiodev pipewire,id=snd0 -device intel-hda -device hda-duplex,audiodev=snd0`. Illustrative examples. Or use any of the GUI managers which should handle parts of this for you: [VirtManager](https://wiki.archlinux.org/title/Virt-manager), [VirtualBox](https://wiki.archlinux.org/title/VirtualBox), [VMWare](https://wiki.archlinux.org/title/VMware), RemoteBox, etc. From ce41775dab1d74b40b0759e36824e1deb67d6fce Mon Sep 17 00:00:00 2001 From: HADEON <52324046+h8d13@users.noreply.github.com> Date: Thu, 18 Dec 2025 17:43:47 +0100 Subject: [PATCH 07/18] add general qemu link --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 1d344c1d3d..d3aff8af69 100644 --- a/README.md +++ b/README.md @@ -167,7 +167,7 @@ qemu-system-x86 -enable-kvm -m 4096 -cpu host -smp 4 \ -vga std -hda "$image_name" -boot c ``` -More advanced use cases can use `virglrenderer qemu-hw-display-virtio-gpu-pci qemu-hw-display-virtio-gpu qemu-ui-sdl qemu-ui-gtk qemu-audio-pipewire`. And full list of subjects can be found [here](https://wiki.archlinux.org/title/Category:Virtualization) +More advanced use see [QEMU](https://wiki.archlinux.org/title/QEMU) cases can use `virglrenderer qemu-hw-display-virtio-gpu-pci qemu-hw-display-virtio-gpu qemu-ui-sdl qemu-ui-gtk qemu-audio-pipewire`. And full list of subjects can be found [here](https://wiki.archlinux.org/title/Category:Virtualization) Possibly get hardware acceleration/sound to work via `-device virtio-gpu-pci`, `-vga none -display sdl,gl=on` and `-audiodev pipewire,id=snd0 -device intel-hda -device hda-duplex,audiodev=snd0`. Illustrative examples. From acc03a4fc4a4de01d5ceca066f22f3c719e6ff9d Mon Sep 17 00:00:00 2001 From: HADEON <52324046+h8d13@users.noreply.github.com> Date: Thu, 18 Dec 2025 17:47:35 +0100 Subject: [PATCH 08/18] add another mention of isoless installs --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index d3aff8af69..81da4cbc7d 100644 --- a/README.md +++ b/README.md @@ -182,6 +182,8 @@ This is neat as you can pre-cache packages as a [local repo](https://wiki.archli There's also a [Building and Testing](https://github.com/archlinux/archinstall/wiki/Building-and-Testing) guide.
It will go through everything from packaging, building and running *(with qemu)* the installer against a dev branch. +You can also run archinstall from an existing host-system to install to another target without an ISO. + # FAQ ## Keyring out-of-date From 7ff176a6c54171f29ca9152ad50ee9edb4627d7e Mon Sep 17 00:00:00 2001 From: HADEON <52324046+h8d13@users.noreply.github.com> Date: Thu, 18 Dec 2025 17:48:43 +0100 Subject: [PATCH 09/18] duplicate link --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 81da4cbc7d..1b7349140a 100644 --- a/README.md +++ b/README.md @@ -167,7 +167,7 @@ qemu-system-x86 -enable-kvm -m 4096 -cpu host -smp 4 \ -vga std -hda "$image_name" -boot c ``` -More advanced use see [QEMU](https://wiki.archlinux.org/title/QEMU) cases can use `virglrenderer qemu-hw-display-virtio-gpu-pci qemu-hw-display-virtio-gpu qemu-ui-sdl qemu-ui-gtk qemu-audio-pipewire`. And full list of subjects can be found [here](https://wiki.archlinux.org/title/Category:Virtualization) +More advanced use cases can use `virglrenderer qemu-hw-display-virtio-gpu-pci qemu-hw-display-virtio-gpu qemu-ui-sdl qemu-ui-gtk qemu-audio-pipewire`. And full list of subjects can be found [here](https://wiki.archlinux.org/title/Category:Virtualization) Possibly get hardware acceleration/sound to work via `-device virtio-gpu-pci`, `-vga none -display sdl,gl=on` and `-audiodev pipewire,id=snd0 -device intel-hda -device hda-duplex,audiodev=snd0`. Illustrative examples. From daebc4b9e12eec4855993d82ea89f05e421c0951 Mon Sep 17 00:00:00 2001 From: HADEON <52324046+h8d13@users.noreply.github.com> Date: Thu, 18 Dec 2025 17:51:33 +0100 Subject: [PATCH 10/18] add mention og grub os-probe --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 1b7349140a..b50d060e68 100644 --- a/README.md +++ b/README.md @@ -210,6 +210,7 @@ To install Arch Linux alongside an existing Windows installation using `archins 11. Modify any additional settings for your installation as necessary. 12. Start the installation upon completion of setup. +Another approach is to install to a second disk (if you hardware support `Other OS` secure boot) and refer to [GrubWiki](https://wiki.archlinux.org/title/GRUB#Windows) # Mission Statement From 0010b337fac54f6602fab4d79c1469b130e7439b Mon Sep 17 00:00:00 2001 From: HADEON <52324046+h8d13@users.noreply.github.com> Date: Thu, 18 Dec 2025 17:52:58 +0100 Subject: [PATCH 11/18] better link --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b50d060e68..9393b49253 100644 --- a/README.md +++ b/README.md @@ -210,7 +210,7 @@ To install Arch Linux alongside an existing Windows installation using `archins 11. Modify any additional settings for your installation as necessary. 12. Start the installation upon completion of setup. -Another approach is to install to a second disk (if you hardware support `Other OS` secure boot) and refer to [GrubWiki](https://wiki.archlinux.org/title/GRUB#Windows) +Another approach is to install to a second disk (if you hardware support `Other OS` secure boot) and refer to [GrubWiki](https://wiki.archlinux.org/title/GRUB#Detecting_other_operating_systems) # Mission Statement From bcf190dc31477e912a75f5bd1233b310d940dfff Mon Sep 17 00:00:00 2001 From: HADEON <52324046+h8d13@users.noreply.github.com> Date: Thu, 18 Dec 2025 17:56:37 +0100 Subject: [PATCH 12/18] clarity --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 9393b49253..6076d1ee30 100644 --- a/README.md +++ b/README.md @@ -210,7 +210,7 @@ To install Arch Linux alongside an existing Windows installation using `archins 11. Modify any additional settings for your installation as necessary. 12. Start the installation upon completion of setup. -Another approach is to install to a second disk (if you hardware support `Other OS` secure boot) and refer to [GrubWiki](https://wiki.archlinux.org/title/GRUB#Detecting_other_operating_systems) +Another approach is to install to a second disk (if you hardware support `Other OS` secure boot) and refer to [GrubWiki](https://wiki.archlinux.org/title/GRUB#Detecting_other_operating_systems) or your respective bootloader. # Mission Statement From 8706e77e3d8c64df3ea725becfa11e592cbf098e Mon Sep 17 00:00:00 2001 From: HADEON <52324046+h8d13@users.noreply.github.com> Date: Fri, 19 Dec 2025 00:03:25 +0100 Subject: [PATCH 13/18] seperate --- README.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 6076d1ee30..b499c5c199 100644 --- a/README.md +++ b/README.md @@ -146,8 +146,11 @@ qemu-img create -f qcow2 "$image_name" 40G # boot for installation qemu-system-x86_64 -enable-kvm -m 4096 -cpu host -smp 4 \ -vga std -hda "$image_name" -cdrom archlinux-x86_64.iso -boot d -# once inside QEMU/ISO (example testing branches) -pacman -Sy --noconfirm git && git clone -b testing-branch https://github.com/archlinux/archinstall +``` +Once inside QEMU/ISO (example testing branches) +``` +pacman -Sy git +git clone -b testing-branch https://github.com/archlinux/archinstall # alternative is to use pacman -Sy archinstall && archinstall cd archinstall && python -m archinstall ``` From 086a658ad72983b1ed2f4157bf8f375075b5409c Mon Sep 17 00:00:00 2001 From: HADEON <52324046+h8d13@users.noreply.github.com> Date: Fri, 19 Dec 2025 00:05:36 +0100 Subject: [PATCH 14/18] syntaxhint --- README.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index b499c5c199..ca4b2fcade 100644 --- a/README.md +++ b/README.md @@ -147,11 +147,12 @@ qemu-img create -f qcow2 "$image_name" 40G qemu-system-x86_64 -enable-kvm -m 4096 -cpu host -smp 4 \ -vga std -hda "$image_name" -cdrom archlinux-x86_64.iso -boot d ``` -Once inside QEMU/ISO (example testing branches) -``` +Once inside QEMU/ISO (example testing branches): + +```shell pacman -Sy git git clone -b testing-branch https://github.com/archlinux/archinstall -# alternative is to use pacman -Sy archinstall && archinstall +# alternative is to clone master then checkout cd archinstall && python -m archinstall ``` From 3bca27b46a78fc89add05cde0b837a1e5146a598 Mon Sep 17 00:00:00 2001 From: h8d13 Date: Sun, 21 Dec 2025 16:41:37 +0100 Subject: [PATCH 15/18] Add forks tab sorted by last updated --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index ca4b2fcade..8daad8eb20 100644 --- a/README.md +++ b/README.md @@ -156,6 +156,8 @@ git clone -b testing-branch https://github.com/archlinux/archinstall cd archinstall && python -m archinstall ``` +Collaborators maintain their own [forks](https://github.com/archlinux/archinstall/forks?include=active&page=1&period=2y&sort_by=last_updated) that can also be tested. + To test with UEFI vars add: ```shell -drive if=pflash,format=raw,readonly=on,file=/usr/share/edk2/x64/OVMF_CODE.4m.fd From 967d21923c6abcfaadd7430dc124e870c7438910 Mon Sep 17 00:00:00 2001 From: h8d13 Date: Sun, 21 Dec 2025 16:47:17 +0100 Subject: [PATCH 16/18] Add wkd/ntp hang fixes --- README.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 8daad8eb20..026fad4af0 100644 --- a/README.md +++ b/README.md @@ -193,12 +193,17 @@ You can also run archinstall from an existing host-system to install to another # FAQ ## Keyring out-of-date -For a description of the problem see https://archinstall.archlinux.page/help/known_issues.html#keyring-is-out-of-date-2213 and discussion in issue https://github.com/archlinux/archinstall/issues/2213. +For a description of the problem [see here](https://archinstall.archlinux.page/help/known_issues.html#keyring-is-out-of-date-2213) and discussion in issue https://github.com/archlinux/archinstall/issues/2213. For a quick fix the below command will install the latest keyrings ```pacman -Sy archlinux-keyring``` +## Wkd or ntp hang +For a more complete solution see [here](https://archinstall.archlinux.page/help/known_issues.html#waiting-for-arch-linux-keyring-sync-archlinux-keyring-wkd-sync-to-complete-2679) + +```archinstall --skip-ntp --skip-wkd``` + ## How to dual boot with Windows To install Arch Linux alongside an existing Windows installation using `archinstall`, follow these steps: From 77f1ebf123ecbea1964843edfc64c45ba4cd4350 Mon Sep 17 00:00:00 2001 From: h8d13 Date: Sun, 21 Dec 2025 16:47:54 +0100 Subject: [PATCH 17/18] Wrap links properly and add wkd/ntp fixes --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 026fad4af0..46413da49d 100644 --- a/README.md +++ b/README.md @@ -193,7 +193,7 @@ You can also run archinstall from an existing host-system to install to another # FAQ ## Keyring out-of-date -For a description of the problem [see here](https://archinstall.archlinux.page/help/known_issues.html#keyring-is-out-of-date-2213) and discussion in issue https://github.com/archlinux/archinstall/issues/2213. +For a description of the problem [see here](https://archinstall.archlinux.page/help/known_issues.html#keyring-is-out-of-date-2213) and discussion in [issue](https://github.com/archlinux/archinstall/issues/2213.) For a quick fix the below command will install the latest keyrings From 3a012360ae285bf171f8bc34ffcafb0d24bbdda1 Mon Sep 17 00:00:00 2001 From: h8d13 Date: Thu, 25 Dec 2025 00:18:32 +0100 Subject: [PATCH 18/18] restore testing text + add driver details --- README.md | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 46413da49d..9958ce0c77 100644 --- a/README.md +++ b/README.md @@ -175,13 +175,27 @@ qemu-system-x86 -enable-kvm -m 4096 -cpu host -smp 4 \ More advanced use cases can use `virglrenderer qemu-hw-display-virtio-gpu-pci qemu-hw-display-virtio-gpu qemu-ui-sdl qemu-ui-gtk qemu-audio-pipewire`. And full list of subjects can be found [here](https://wiki.archlinux.org/title/Category:Virtualization) -Possibly get hardware acceleration/sound to work via `-device virtio-gpu-pci`, `-vga none -display sdl,gl=on` and `-audiodev pipewire,id=snd0 -device intel-hda -device hda-duplex,audiodev=snd0`. Illustrative examples. +Possibly get hardware acceleration/sound to work via `-device virtio-gpu-pci`, `-vga none -display sdl,gl=on` and `-audiodev pipewire,id=snd0 -device intel-hda -device hda-duplex,audiodev=snd0`. Illustrative examples. The guest system my also require drivers such as `vulkan-swrast` or `vulkan-virtio`. Or use any of the GUI managers which should handle parts of this for you: [VirtManager](https://wiki.archlinux.org/title/Virt-manager), [VirtualBox](https://wiki.archlinux.org/title/VirtualBox), [VMWare](https://wiki.archlinux.org/title/VMware), RemoteBox, etc. ## Without a Live ISO Image -Using [`archiso`](https://wiki.archlinux.org/title/Archiso) to create your own ISO. +To test this without a live ISO, the simplest approach is to use a local image and create a loop device. +This can be done by installing pacman -S arch-install-scripts util-linux locally and doing the following: +```shell +# truncate -s 20G testimage.img +# losetup --partscan --show ./testimage.img +# pip install --upgrade archinstall +# python -m archinstall --script guided +# qemu-system-x86_64 -enable-kvm -machine q35,accel=kvm -device intel-iommu -cpu host -m 4096 -boot order=d -drive file=./testimage.img,format=raw -drive if=pflash,format=raw,readonly,file=/usr/share/ovmf/x64/OVMF.4m.fd -drive if=pflash,format=raw,readonly,file=/usr/share/ovmf/x64/OVMF.4m.fd +``` + +This will create a 20 GB testimage.img and create a loop device which we can use to format and install to. +archinstall is installed and executed in guided mode. Once the installation is complete, you can use qemu/kvm to boot the test media. +(You'd actually need to do some EFI magic in order to point the EFI vars to the partition 0 in the test medium, so this won't work entirely out of the box, but that gives you a general idea of what we're going for here) + +Or using [`archiso`](https://wiki.archlinux.org/title/Archiso) to create your own ISO. This is neat as you can pre-cache packages as a [local repo](https://wiki.archlinux.org/title/Archiso#Custom_local_repository) in order to shorten testing time.