Commit Graph

2206 Commits

Author SHA1 Message Date
Martin Wimpress a10864541b fix(quickget): remove unavailable KolibriOS Italian locale
The it_IT locale no longer has ISO builds available.
2026-01-23 23:52:27 +00:00
Martin Wimpress 08f8313a96 fix(quickget): update Garuda Linux editions
Remove discontinued editions: kde-git, lxqt-kwin, mate, qtile, wayfire
Add new editions: hyprland, mokka
2026-01-23 23:52:27 +00:00
Martin Wimpress b94bc69728 fix(quickget): update MX Linux Xfce ISO naming
Xfce edition now uses 'MX-VERSION_Xfce_x64.iso' naming convention.
2026-01-23 23:52:27 +00:00
Martin Wimpress c67a9971f6 fix(quickget): remove discontinued KDE Neon developer edition
The developer edition no longer provides ISO images.
2026-01-23 23:52:27 +00:00
Martin Wimpress e08e84c720 fix(quickget): update Guix releases to 1.5.0 and 1.4.0
Remove EOL 1.3.0 which has unreliable mirror availability.
Add latest 1.5.0 release.
2026-01-23 23:52:27 +00:00
Martin Wimpress 98735ad60a fix(quickget): only list Debian archive versions with live images
Filter archive releases to only include those with -live directories,
ensuring live image editions are actually available for download.
2026-01-23 23:52:27 +00:00
Martin Wimpress f725c1998b fix(quickget): fix Artix Linux editions parsing
Community editions now include init system suffix (e.g., community-gtk-openrc).
Updated parsing to correctly extract full edition-init combinations.
2026-01-23 23:52:27 +00:00
Martin Wimpress 542987bdbc fix(quickget): update Athena OS ISO naming for v23.11+
Newer releases use 'athenaos-rolling' prefix instead of 'athena-rolling'.
Detect which naming scheme to use by checking URL availability.
2026-01-23 23:52:27 +00:00
Martin Wimpress 07dee441b0 fix(quickget): fix failing downloads and remove discontinued distros
Fixes:
- slint: Update version from 15.0-5 to 15.0-10
- blendos: Replace dead mirror with official GitLab build server
- void: Filter out directories without standard base ISOs (fixes
20250401)

Removals:
- holoiso: Project archived Feb 2024, download server returns 404
- truenas-core: Discontinued, merged into TrueNAS Community Edition
- truenas-scale: Rebranded to TrueNAS Community Edition
2026-01-23 23:52:27 +00:00
Martin Wimpress 9d76158196 fix(quickget): use mirrors.kernel.org for Gentoo, Linux Mint and LMDE
- Replace mirror.bytemark.co.uk with mirrors.kernel.org in get_gentoo,
  get_linuxmint and get_lmde
- Prefer kernel.org mirrors for improved availability and fresher
releases
- No change to ISO selection or hash verification logic; behaviour
unchanged

Signed-off-by: Martin Wimpress <martin@wimpress.org>
2026-01-23 23:52:27 +00:00
Martin Wimpress 7d5de87c2f fix(quickget): exclude EOL and pre-release distro versions
- Remove Devuan 'beowulf' from the release list
- Drop Mageia '8' from the release list
- Filter Fedora releases JSON and exclude Fedora 41 (prevent EOL
entries)
- Restrict GNOME OS parsing to stable numeric versions and keep
"nightly"
- Rationale: avoid presenting EOL or alpha/beta/rc images to users and
reduce failed downloads

Signed-off-by: Martin Wimpress <martin@wimpress.org>
2026-01-23 23:52:27 +00:00
Martin Wimpress fed267550d ci(test-quickget): use temp file to collect distro rows for sorting
Replace string concatenation with temp file approach to fix issue where
only the first distro appeared in the summary table. Writing rows to a
temp file and sorting it directly is more robust than piping concatenated
strings through sort.
2026-01-23 19:29:23 +00:00
Martin Wimpress 84c77bd3c3 ci(test-quickget): improve test summary formatting and status logic
- Set status to  only when failed>0 and passed==0; use ⚠️ when failures
exist but some passed
- Build per-distro rows with printf to preserve newlines and avoid
trailing whitespace
- Replace heredoc cat with explicit echo lines for consistent GitHub
summary formatting
- Append sorted distro rows without extra blank lines

Signed-off-by: Martin Wimpress <martin@wimpress.org>
2026-01-23 19:29:23 +00:00
Martin Wimpress a2baa3b489 ci(test-quickget): narrow artifact globs and remove merge-multiple
- Remove merge-multiple: true from actions/download-artifact step
- Use results/result-*/result.json and results/result-*/failed.txt globs
- Ensure per-distro result files and failed lists are read consistently
for summary

Signed-off-by: Martin Wimpress <martin@wimpress.org>
2026-01-23 19:29:23 +00:00
Martin Wimpress 9073738ade ci(test-quickget): use wc -l to count test results
Signed-off-by: Martin Wimpress <martin@wimpress.org>
2026-01-23 19:29:23 +00:00
Martin Wimpress a4d8329ba7 refactor(quickget): centralise qemu-img detection into require_qemu_img
- Add require_qemu_img() to detect qemu-img and print a clear error if
missing
- Call require_qemu_img before any qemu-img operations (RecoveryImage,
.img conversions)
- Remove duplicate global qemu-img existence check to avoid repetition

Signed-off-by: Martin Wimpress <martin@wimpress.org>
2026-01-23 19:29:23 +00:00
Martin Wimpress e259ade5fa ci(test-quickget): split tests into detect/matrix per-distro workflow
- Replace single quickget-tests job with detect-distros, test-distro,
and report-results
- detect-distros extracts unique distro list and emits JSON for matrix
strategy
- test-distro runs ./quickget --check per distro, captures
PASS/FAIL/SKIP counts,
  archives results, and exposes per-distro outputs
- report-results downloads artifacts, aggregates counts into a GitHub
step summary,
  includes failed URLs, and fails the workflow if any distro has
failures
- Use actions/checkout@v6 and upload/download-artifact@v4; allow
per-distro jobs to
  continue-on-error so all distros are exercised before reporting

Signed-off-by: Martin Wimpress <martin@wimpress.org>
2026-01-23 19:29:23 +00:00
Martin Wimpress d83db9843b fix(public_dir): respect public_dir setting when loading VM
- Read public_dir from the sourced VM config into PUBLIC
- Preserve existing PUBLIC when public_dir is not set
- Prevent PUBLIC being empty when a VM specifies public_dir

Fixes #1634

Signed-off-by: Martin Wimpress <martin@wimpress.org>
2026-01-23 17:56:32 +00:00
Martin Wimpress 59f908ea6d refactor(firmware): use od to read qcow2 magic bytes
- Replace head-based check with od -tx1 to read first 4 bytes as hex
- Compare hex string to 514649fb to detect qcow2 reliably
- Avoid null-byte warnings from command substitution; keep same
true/false output

Fixes #1796

Signed-off-by: Martin Wimpress <martin@wimpress.org>
2026-01-23 17:26:53 +00:00
Martin Wimpress 1534e2cf8e
chore: remove Formula directory
The Homebrew formula has been migrated to a dedicated tap:
https://github.com/quickemu-project/homebrew-quickemu
2026-01-23 17:03:29 +00:00
Martin Wimpress 179b65d6a8
chore: update flake.nix
Signed-off-by: Martin Wimpress <martin@wimpress.org>
2026-01-23 16:42:42 +00:00
Martin Wimpress 1f8e6addcc
fix(windows): correct order of first logon commands in unattended XML
Signed-off-by: Martin Wimpress <martin@wimpress.org>
2026-01-23 16:42:28 +00:00
Martin Wimpress 9b22109d90 chore(opensuse): remove aeon appliance handling. fixes #1793
Signed-off-by: Martin Wimpress <martin@wimpress.org>
2026-01-23 16:25:11 +00:00
Martin Wimpress cfc6856e30 fix(bios): set machine type to pc for legacy BIOS boot
Fixes #1764
Fixes #1755

Signed-off-by: Martin Wimpress <martin@wimpress.org>
2026-01-23 16:03:37 +00:00
Martin Wimpress 4d334454de fix(windows): enforce minimum 2 CPU cores for Windows 11 guests
Fixes #1423

Signed-off-by: Martin Wimpress <martin@wimpress.org>
2026-01-23 15:25:07 +00:00
Martin Wimpress 5cd0149f3a
chore(deps): update flake, devshell and package Nix files
- Refresh flake.nix inputs and pins to align with current upstream
- Update devshell.nix to use revised development environment packages
- Adjust package.nix to match dependency and tooling changes from the
flake update
- Keep reproducible builds and developer tooling current

Signed-off-by: Martin Wimpress <martin@wimpress.org>
2026-01-23 13:10:55 +00:00
Ivan Tolmachev 1878a308e0 feat: add support for CPU pinning 2026-01-23 08:02:18 +00:00
Anton Alekseev 9ee7db9915 fix: Use a portable grep option
Fixes #1713
2026-01-23 07:55:15 +00:00
Marin efb71ecdcb s/glxinfo/mesa-demos
The nix package was renamed, but binary stays the same
2026-01-23 07:50:06 +00:00
Phil Clifford 138fc1f689 fix(arcolinux): arcolinux has gone away 2026-01-23 07:44:14 +00:00
dependabot[bot] b8bf619a50 chore(deps): bump DeterminateSystems/update-flake-lock from 27 to 28
Bumps [DeterminateSystems/update-flake-lock](https://github.com/determinatesystems/update-flake-lock) from 27 to 28.
- [Release notes](https://github.com/determinatesystems/update-flake-lock/releases)
- [Commits](https://github.com/determinatesystems/update-flake-lock/compare/v27...v28)

---
updated-dependencies:
- dependency-name: DeterminateSystems/update-flake-lock
  dependency-version: '28'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-23 07:41:59 +00:00
dependabot[bot] 4262b91ed8 chore(deps): bump actions/checkout from 5 to 6
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-23 07:41:37 +00:00
dependabot[bot] 88a4e64d82 chore(deps): bump DeterminateSystems/nix-installer-action from 19 to 21
Bumps [DeterminateSystems/nix-installer-action](https://github.com/determinatesystems/nix-installer-action) from 19 to 21.
- [Release notes](https://github.com/determinatesystems/nix-installer-action/releases)
- [Commits](https://github.com/determinatesystems/nix-installer-action/compare/v19...v21)

---
updated-dependencies:
- dependency-name: DeterminateSystems/nix-installer-action
  dependency-version: '21'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-23 07:41:11 +00:00
Phil Clifford 49f71fff63 chore: pacify shellcheck
address an SC2001 to remove unwanted 'echo | sed'  pipeline
2026-01-23 07:38:52 +00:00
Phil Clifford 063f655303 chore: fix small typo 2026-01-23 07:37:44 +00:00
github-actions[bot] f3a3133949 flake.lock: Update
Flake lock file updates:

• Updated input 'flake-schemas':
    'https://api.flakehub.com/f/pinned/DeterminateSystems/flake-schemas/0.1.5/0190ef2f-61e0-794b-ba14-e82f225e55e6/source.tar.gz' (2024-07-26)
  → 'https://api.flakehub.com/f/pinned/DeterminateSystems/flake-schemas/0.2.0/019a4a84-544d-7c59-b26d-e334e320c932/source.tar.gz' (2025-10-27)
• Updated input 'nixpkgs':
    'https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.2505.808864%2Brev-4e7667a90c167f7a81d906e5a75cba4ad8bee620/0198eaa3-105a-74fa-a9b2-0a930acea8de/source.tar.gz' (2025-08-26)
  → 'https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.2511.905687%2Brev-1327e798cb055f96f92685df444e9a2c326ab5ed/019bb874-9b65-73ec-9dd5-8f14598e59e0/source.tar.gz' (2026-01-12)
2026-01-23 07:35:43 +00:00
Martin Wimpress c24c27c8f8 Update docs/quickget.1
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
2026-01-23 07:34:47 +00:00
Phil Clifford 46ac98ed00 docs: update to reflect currently supported OSes
Also reflect tweaks to wiki since native support in Debian Trixie, Ubuntu Plucky and Fedora 41 onwards.
A lot of pandoc-generated changes to man page source style
2026-01-23 07:34:47 +00:00
Dino Korah 2c997916f1
feat: add elementary OS 8.1 (#1789)
* feat(elementary): add elementary 8.1
* doc(elementary): add info URL
* feat(quickget): add display config for Elementary OS 8.1
* SDL display seems to struggle with Wayland. Fixed display issues by setting display=spice

---------

Co-authored-by: Dino Korah <691011+codemedic@users.noreply.github.com>
2026-01-22 23:48:03 +00:00
Dino Korah 7ea4e95508 feat(popos): Add support for Pop!_OS 24.04 release 2025-12-28 12:56:25 +00:00
Rémi Palancher 402ce97451
fix: URL of openSUSE Leap 16.0 ISO URL (#1777)
* fix: URL of openSUSE Leap 16.0 ISO URL

The fallback else case didn't work for OpenSUSE Leap 16.
2025-12-12 14:02:02 +00:00
TheMuso 703fe861f8 feat: Add Zorin 18 2025-11-01 09:30:51 +00:00
TheMuso a6273247dc
fix: Use the correct ethernet device for bridged networking (#1588)
* fix: Use the correct ethernet device for bridged networking (#1588)
* fix: Use virtio-net-pci everywhere

Works for NAT and bridged networking.
2025-10-20 13:10:25 +01:00
Lorenzo Villani 2311b95a14 fix(windows): make local account passwords never expire
Co-authored-by: bogiord <bogiord@users.noreply.github.com>
2025-10-20 11:15:45 +01:00
Lorenzo Villani 934ffacdd3 refactor(windows): don't install usbdk 2025-10-17 22:59:22 +01:00
Lorenzo Villani 3bb13330cc fix(windows): load viogpudo after Windows PE pass 2025-10-17 22:33:29 +01:00
Lorenzo Villani 6a34e59f7b fix(windows): remove E:\amd64\w10 from driver search paths
The E:\amd64\w10 directory contains vioscsi and viostor drivers, but
these are already included via E:\vioscsi\w10\amd64 and
E:\viostor\w10\amd64. This duplication causes issues with Windows 11
24H2 and later.
2025-10-17 22:33:29 +01:00
Jeremy Fleischman 68e1eb5382 fix: don't crash if public dir does not exist
On my machine, I do not have a `~/Public` directory, which causes
quickqemu to spit out a warning and then crash:

```console
$ quickemu --vm vm.conf
 - WARNING! Public directory: '/home/jeremy/Public' doesn't exist!
Quickemu 4.9.7 using /nix/store/nk59c14nwf79bafmrsnnhndmpnrlplrv-qemu-10.1.0/bin/qemu-system-x86_64 v10.1.0
...
 - 9P:       On guest: sudo mount -t 9p -o trans=virtio,version=9p2000.L,msize=104857600  ~/Public
...
 - Process:  ERROR! Failed to start /nix/store/va3md6gv82fqf7pxbfxd0cd5gfnmnz9f-vm.conf as va3md6gv82fqf7pxbfxd0cd5gfnmnz9f-vm

qemu-system-x86_64: -netdev user,hostname=va3md6gv82fqf7pxbfxd0cd5gfnmnz9f-vm,hostfwd=tcp::22220-:22,smb=/home/jeremy/Public,id=nic: Error accessing shared directory '/home/jeremy/Public': No such file or directory
```

Here's my `vm.conf`. Note how I'm not asking for a public dir:

```
iso="/nix/store/q3j8357dz3kmyjv84wfj4pyn20b65h9l-nixos-minimal-25.11pre-git-x86_64-linux.iso/iso/nixos-minimal-25.11pre-git-x86_64-linux.iso"
```
2025-10-17 21:51:45 +01:00
Alex Haydock aaf00ca76a
fix: Support 4M qcow2 images (#1749)
* Initial changes to support qcow2 firmware
2025-10-17 21:42:24 +01:00
github-actions[bot] 78b938facf
flake.lock: Update (#1681)
Flake lock file updates:

• Updated input 'nixpkgs':
    'https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.2505.803882%2Brev-fd487183437963a59ba763c0cc4f27e3447dd6dd/019767cd-a737-7649-ab6d-467a58ba9f92/source.tar.gz?narHash=sha256-mHv/yeUbmL91/TvV95p%2BmBVahm9mdQMJoqaTVTALaFw%3D' (2025-06-12)
  → 'https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.2505.808864%2Brev-4e7667a90c167f7a81d906e5a75cba4ad8bee620/0198eaa3-105a-74fa-a9b2-0a930acea8de/source.tar.gz?narHash=sha256-TH1SfSP523QI7kcPiNtMAEuwZR3Jdz0MCDXPs7TS8uo%3D' (2025-08-26)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-09-04 02:22:23 +01:00