From 024123a072c7ed55d54cb6b572aef8f1f4392ceb Mon Sep 17 00:00:00 2001 From: quantenzitrone Date: Sat, 10 Jan 2026 06:30:57 +0100 Subject: [PATCH] xf86-video-vbox: refactor, move to pkgs/by-name & rename from xorg.xf86videovboxvideo relevant changes: - switch to GitLab source instead of release tarball - mark broken on aarch64 (missing I/O port functions https://stackoverflow.com/a/70538833) --- pkgs/by-name/xf/xf86-video-vbox/package.nix | 63 +++++++++++++++++++ pkgs/servers/x11/xorg/default.nix | 40 +----------- .../x11/xorg/generate-expr-from-tarballs.pl | 2 + pkgs/servers/x11/xorg/tarballs.list | 1 - 4 files changed, 67 insertions(+), 39 deletions(-) create mode 100644 pkgs/by-name/xf/xf86-video-vbox/package.nix diff --git a/pkgs/by-name/xf/xf86-video-vbox/package.nix b/pkgs/by-name/xf/xf86-video-vbox/package.nix new file mode 100644 index 000000000000..c658c40d623a --- /dev/null +++ b/pkgs/by-name/xf/xf86-video-vbox/package.nix @@ -0,0 +1,63 @@ +{ + lib, + stdenv, + fetchFromGitLab, + autoreconfHook, + pkg-config, + util-macros, + xorg-server, + xorgproto, + libpciaccess, + nix-update-script, +}: +stdenv.mkDerivation (finalAttrs: { + pname = "xf86-video-vbox"; + version = "1.0.1"; + + src = fetchFromGitLab { + domain = "gitlab.freedesktop.org"; + group = "xorg"; + owner = "driver"; + repo = "xf86-video-vbox"; + tag = "xf86-video-vboxvideo-${finalAttrs.version}"; + hash = "sha256-C+5spc9EABu3p5Ck7R4bWedLDm8h0DrbYic2AwIUAqU="; + }; + + strictDeps = true; + + nativeBuildInputs = [ + autoreconfHook + pkg-config + util-macros + xorg-server # for some autoconf macros + ]; + + buildInputs = [ + xorg-server + xorgproto + libpciaccess + ]; + + passthru = { + updateScript = nix-update-script { extraArgs = [ "--version-regex=xf86-video-vboxvideo-(.*)" ]; }; + }; + + meta = { + description = "VirtualBox video driver for the Xorg X server"; + longDescription = '' + This driver is only for use in VirtualBox guests without the vboxvideo kernel modesetting + driver in the guest kernel, and which are configured to use the VBoxVGA device instead of a + VMWare-compatible video device emulation. + Guests with the vboxvideo kernel modesetting driver should use the Xorg "modesetting" driver + module instead of this one. + ''; + homepage = "https://gitlab.freedesktop.org/xorg/driver/xf86-video-vbox"; + license = with lib.licenses; [ + mit + x11 + ]; + maintainers = [ ]; + platforms = lib.platforms.unix; + broken = stdenv.hostPlatform.isAarch64; + }; +}) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index 9923fae3d974..2fa5f942fb2a 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -137,6 +137,7 @@ xf86-video-nouveau, xf86-video-s3virge, xf86-video-v4l, + xf86-video-vbox, xfd, xfontsel, xfs, @@ -352,6 +353,7 @@ self: with self; { xf86videonouveau = xf86-video-nouveau; xf86videos3virge = xf86-video-s3virge; xf86videov4l = xf86-video-v4l; + xf86videovboxvideo = xf86-video-vbox; xkeyboardconfig = xkeyboard-config; xorgcffiles = xorg-cf-files; xorgdocs = xorg-docs; @@ -1638,44 +1640,6 @@ self: with self; { }) ) { }; - # THIS IS A GENERATED FILE. DO NOT EDIT! - xf86videovboxvideo = callPackage ( - { - stdenv, - pkg-config, - fetchurl, - xorgproto, - libpciaccess, - xorgserver, - testers, - }: - stdenv.mkDerivation (finalAttrs: { - pname = "xf86-video-vboxvideo"; - version = "1.0.1"; - builder = ./builder.sh; - src = fetchurl { - url = "mirror://xorg/individual/driver/xf86-video-vboxvideo-1.0.1.tar.xz"; - sha256 = "12kzgf516mbdygpni0jzm3dv60vz6vf704f3hgc6pi9bgpy6bz4f"; - }; - hardeningDisable = [ - "bindnow" - "relro" - ]; - strictDeps = true; - nativeBuildInputs = [ pkg-config ]; - buildInputs = [ - xorgproto - libpciaccess - xorgserver - ]; - passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; - meta = { - pkgConfigModules = [ ]; - platforms = lib.platforms.unix; - }; - }) - ) { }; - # THIS IS A GENERATED FILE. DO NOT EDIT! xf86videovesa = callPackage ( { diff --git a/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl b/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl index aeb72a556c36..03edaace9feb 100755 --- a/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl +++ b/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl @@ -469,6 +469,7 @@ print OUT <