build(packaging): sync Nix flakes, devshell and Debian packaging

- Update flake.nix and package.nix to refresh package definitions and
pins
- Refresh devshell.nix to include updated development dependencies
- Adjust debian/control metadata to match packaging and dependency
changes
- Align packaging metadata between Nix and Debian to improve
reproducibility

Signed-off-by: Martin Wimpress <martin@wimpress.org>
This commit is contained in:
Martin Wimpress 2026-01-25 01:47:58 +00:00 committed by Martin Wimpress
parent e7b49430cf
commit 0742312aa5
4 changed files with 13 additions and 10 deletions

2
debian/control vendored
View File

@ -15,9 +15,11 @@ Architecture: all
Depends:
coreutils,
curl,
gdisk,
genisoimage,
jq,
mesa-utils,
mtools,
pciutils,
procps,
python3-minimal,

View File

@ -32,7 +32,7 @@ mkShell {
xorg.xrandr
zsync
]
++ lib.optionals stdenv.isLinux [
++ lib.optionals stdenv.hostPlatform.isLinux [
mesa-demos
usbutils
xdg-user-dirs
@ -57,7 +57,7 @@ mkShell {
-e '/OVMF_CODE_4M.secboot.fd/s|ovmfs=(|ovmfs=("${OVMFFull.firmware}","${OVMFFull.variables}" |' \
-e '/OVMF_CODE_4M.fd/s|ovmfs=(|ovmfs=("${OVMF.firmware}","${OVMF.variables}" |' \
''
}${lib.optionalString stdenv.isDarwin ''
}${lib.optionalString stdenv.hostPlatform.isDarwin ''
-e 's|ovmfs=("[$][{]SHARE_PATH}/OVMF/OVMF_CODE_4M.secboot.fd"|ovmfs=("${pkgs.qemu_full}/share/qemu/edk2-x86_64-secure-code.fd","${pkgs.qemu_full}/share/qemu/edk2-i386-vars.fd" "''${SHARE_PATH}/OVMF/OVMF_CODE_4M.secboot.fd"|' \
-e 's|ovmfs=("[$][{]SHARE_PATH}/OVMF/OVMF_CODE_4M.fd"|ovmfs=("${pkgs.qemu_full}/share/qemu/edk2-x86_64-code.fd","${pkgs.qemu_full}/share/qemu/edk2-i386-vars.fd" "''${SHARE_PATH}/OVMF/OVMF_CODE_4M.fd"|' \
-e 's|ovmfs=("/usr/share/AAVMF/AAVMF_CODE.fd"|ovmfs=("${pkgs.qemu_full}/share/qemu/edk2-aarch64-code.fd","${pkgs.qemu_full}/share/qemu/edk2-arm-vars.fd" "/usr/share/AAVMF/AAVMF_CODE.fd"|' \

View File

@ -41,7 +41,7 @@
let
# OVMF is only available/needed on Linux
ovmfArgs =
if final.stdenv.isLinux then
if final.stdenv.hostPlatform.isLinux then
{ }
else
{
@ -60,7 +60,7 @@
let
# OVMF is only available/needed on Linux
ovmfArgs =
if pkgs.stdenv.isLinux then
if pkgs.stdenv.hostPlatform.isLinux then
{ }
else
{
@ -80,7 +80,7 @@
let
# OVMF is only available/needed on Linux
ovmfArgs =
if pkgs.stdenv.isLinux then
if pkgs.stdenv.hostPlatform.isLinux then
{ }
else
{

View File

@ -30,7 +30,6 @@
zsync,
OVMF ? null,
OVMFFull ? null,
quickemu,
}:
let
runtimePaths = [
@ -54,7 +53,7 @@ let
xrandr
zsync
]
++ lib.optionals stdenv.isLinux [
++ lib.optionals stdenv.hostPlatform.isLinux [
mesa-demos
OVMF
OVMFFull
@ -67,7 +66,7 @@ let
.*
'' (builtins.readFile ./quickemu);
in
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "quickemu";
version = builtins.concatStringsSep "" versionMatches;
src = lib.cleanSource ./.;
@ -81,6 +80,7 @@ stdenv.mkDerivation rec {
''
} \
-e '/cp "''${VARS_IN}" "''${VARS_OUT}"/a chmod +w "''${VARS_OUT}"' \
-e 's/Icon=.*qemu.svg/Icon=qemu/' \
-e 's,\$(command -v smbd),${samba}/bin/smbd,' \
quickemu
'';
@ -107,11 +107,12 @@ stdenv.mkDerivation rec {
runHook postInstall
'';
passthru.tests = testers.testVersion { package = quickemu; };
passthru.tests = testers.testVersion { package = finalAttrs.finalPackage; };
meta = {
description = "Quickly create and run optimised Windows, macOS and Linux virtual machines";
homepage = "https://github.com/quickemu-project/quickemu";
changelog = "https://github.com/quickemu-project/quickemu/releases/tag/${finalAttrs.version}";
mainProgram = "quickemu";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
@ -119,4 +120,4 @@ stdenv.mkDerivation rec {
flexiondotorg
];
};
}
})