3
0
Fork 0
forked from mirrors/nixpkgs

virtualbox: 6.1.40 -> 7.0.6

- bump versions
- add new dependencies
- lrelease is an unconditional dependency now
- more Qt path hackery
- remove rdesktop-vrdp (removed upstream)
This commit is contained in:
K900 2023-03-04 11:10:37 +03:00
parent 0ab7f2e54c
commit 9692e965c6
4 changed files with 14 additions and 10 deletions

View file

@ -3,6 +3,7 @@
, libpng, glib, lvm2, libXrandr, libXinerama, libopus, qtbase, qtx11extras , libpng, glib, lvm2, libXrandr, libXinerama, libopus, qtbase, qtx11extras
, qttools, qtsvg, qtwayland, pkg-config, which, docbook_xsl, docbook_xml_dtd_43 , qttools, qtsvg, qtwayland, pkg-config, which, docbook_xsl, docbook_xml_dtd_43
, alsa-lib, curl, libvpx, nettools, dbus, substituteAll, gsoap, zlib , alsa-lib, curl, libvpx, nettools, dbus, substituteAll, gsoap, zlib
, yasm, glslang
# If open-watcom-bin is not passed, VirtualBox will fall back to use # If open-watcom-bin is not passed, VirtualBox will fall back to use
# the shipped alternative sources (assembly). # the shipped alternative sources (assembly).
, open-watcom-bin , open-watcom-bin
@ -23,19 +24,19 @@ let
buildType = "release"; buildType = "release";
# Use maintainers/scripts/update.nix to update the version and all related hashes or # Use maintainers/scripts/update.nix to update the version and all related hashes or
# change the hashes in extpack.nix and guest-additions/default.nix as well manually. # change the hashes in extpack.nix and guest-additions/default.nix as well manually.
version = "6.1.40"; version = "7.0.6";
in stdenv.mkDerivation { in stdenv.mkDerivation {
pname = "virtualbox"; pname = "virtualbox";
inherit version; inherit version;
src = fetchurl { src = fetchurl {
url = "https://download.virtualbox.org/virtualbox/${version}/VirtualBox-${version}.tar.bz2"; url = "https://download.virtualbox.org/virtualbox/${version}/VirtualBox-${version}.tar.bz2";
sha256 = "bc857555d3e836ad9350a8f7b03bb54d2fdc04dddb2043d09813f4634bca4814"; sha256 = "f146d9a86a35af0abb010e628636fd800cb476cc2ce82f95b0c0ca876e1756ff";
}; };
outputs = [ "out" "modsrc" ]; outputs = [ "out" "modsrc" ];
nativeBuildInputs = [ pkg-config which docbook_xsl docbook_xml_dtd_43 ] nativeBuildInputs = [ pkg-config which docbook_xsl docbook_xml_dtd_43 yasm glslang ]
++ optional (!headless) wrapQtAppsHook; ++ optional (!headless) wrapQtAppsHook;
# Wrap manually because we wrap just a small number of executables. # Wrap manually because we wrap just a small number of executables.
@ -94,7 +95,7 @@ in stdenv.mkDerivation {
qtPluginPath = "${qtbase.bin}/${qtbase.qtPluginPrefix}:${qtsvg.bin}/${qtbase.qtPluginPrefix}:${qtwayland.bin}/${qtbase.qtPluginPrefix}"; qtPluginPath = "${qtbase.bin}/${qtbase.qtPluginPrefix}:${qtsvg.bin}/${qtbase.qtPluginPrefix}:${qtwayland.bin}/${qtbase.qtPluginPrefix}";
}) })
++ [ ++ [
./qtx11extras.patch ./qt-dependency-paths.patch
# https://github.com/NixOS/nixpkgs/issues/123851 # https://github.com/NixOS/nixpkgs/issues/123851
./fix-audio-driver-loading.patch ./fix-audio-driver-loading.patch
]; ];
@ -130,14 +131,17 @@ in stdenv.mkDerivation {
VBOX_JAVA_HOME := ${jdk} VBOX_JAVA_HOME := ${jdk}
''} ''}
${optionalString (!headless) '' ${optionalString (!headless) ''
VBOX_WITH_VBOXSDL := 1
PATH_QT5_X11_EXTRAS_LIB := ${getLib qtx11extras}/lib PATH_QT5_X11_EXTRAS_LIB := ${getLib qtx11extras}/lib
PATH_QT5_X11_EXTRAS_INC := ${getDev qtx11extras}/include PATH_QT5_X11_EXTRAS_INC := ${getDev qtx11extras}/include
TOOL_QT5_LRC := ${getDev qttools}/bin/lrelease PATH_QT5_TOOLS_LIB := ${getLib qttools}/lib
PATH_QT5_TOOLS_INC := ${getDev qttools}/include
''} ''}
${optionalString enableWebService '' ${optionalString enableWebService ''
# fix gsoap missing zlib include and produce errors with --as-needed # fix gsoap missing zlib include and produce errors with --as-needed
VBOX_GSOAP_CXX_LIBS := gsoapssl++ z VBOX_GSOAP_CXX_LIBS := gsoapssl++ z
''} ''}
TOOL_QT5_LRC := ${getDev qttools}/bin/lrelease
LOCAL_CONFIG LOCAL_CONFIG
./configure \ ./configure \
@ -174,7 +178,7 @@ in stdenv.mkDerivation {
-name src -o -exec cp -avt "$libexec" {} + -name src -o -exec cp -avt "$libexec" {} +
mkdir -p $out/bin mkdir -p $out/bin
for file in ${optionalString (!headless) "VirtualBox VBoxSDL rdesktop-vrdp"} ${optionalString enableWebService "vboxwebsrv"} VBoxManage VBoxBalloonCtrl VBoxHeadless; do for file in ${optionalString (!headless) "VirtualBox VBoxSDL"} ${optionalString enableWebService "vboxwebsrv"} VBoxManage VBoxBalloonCtrl VBoxHeadless; do
echo "Linking $file to /bin" echo "Linking $file to /bin"
test -x "$libexec/$file" test -x "$libexec/$file"
ln -s "$libexec/$file" $out/bin/$file ln -s "$libexec/$file" $out/bin/$file

View file

@ -12,7 +12,7 @@ fetchurl rec {
# Manually sha256sum the extensionPack file, must be hex! # Manually sha256sum the extensionPack file, must be hex!
# Thus do not use `nix-prefetch-url` but instead plain old `sha256sum`. # Thus do not use `nix-prefetch-url` but instead plain old `sha256sum`.
# Checksums can also be found at https://www.virtualbox.org/download/hashes/${version}/SHA256SUMS # Checksums can also be found at https://www.virtualbox.org/download/hashes/${version}/SHA256SUMS
let value = "29cf8410e2514ea4393f63f5e955b8311787873679fc23ae9a897fb70ef3f84a"; let value = "292961aa8723b54f96f89f6d8abf7d8e29259d94b7de831dbffb9ae15d346434";
in assert (builtins.stringLength value) == 64; value; in assert (builtins.stringLength value) == 64; value;
meta = { meta = {

View file

@ -23,7 +23,7 @@ in stdenv.mkDerivation rec {
src = fetchurl { src = fetchurl {
url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso"; url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
sha256 = "d456c559926f1a8fdd7259056e0a50f12339fd494122cf30db7736e2032970c6"; sha256 = "21e0f407d2a4f5c286084a70718aa20235ea75969eca0cab6cfab43a3499a010";
}; };
KERN_DIR = "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"; KERN_DIR = "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build";

View file

@ -7,10 +7,10 @@ index 71b96a3..73391f0 100644
endif endif
else else
- $(eval $(target)_LIBS += $(foreach module,$(qt_modules), $(PATH_SDK_QT5_LIB)/lib$(qt_prefix)Qt5$(module)$(qt_infix)$(SUFF_DLL)) ) - $(eval $(target)_LIBS += $(foreach module,$(qt_modules), $(PATH_SDK_QT5_LIB)/lib$(qt_prefix)Qt5$(module)$(qt_infix)$(SUFF_DLL)) )
+ $(eval $(target)_LIBS += $(foreach module,$(qt_modules), $(if $(filter X11Extras,$(module)),$(PATH_QT5_X11_EXTRAS_LIB),$(PATH_SDK_QT5_LIB))/lib$(qt_prefix)Qt5$(module)$(qt_infix)$(SUFF_DLL)) ) + $(eval $(target)_LIBS += $(foreach module,$(qt_modules), $(if $(filter Help,$(module)),$(PATH_QT5_TOOLS_LIB),$(if $(filter X11Extras,$(module)),$(PATH_QT5_X11_EXTRAS_LIB),$(PATH_SDK_QT5_LIB)))/lib$(qt_prefix)Qt5$(module)$(qt_infix)$(SUFF_DLL)) )
endif endif
- $(eval $(target)_INCS += $(addprefix $(PATH_SDK_QT5_INC)/Qt,$(qt_modules)) $(PATH_SDK_QT5_INC) ) - $(eval $(target)_INCS += $(addprefix $(PATH_SDK_QT5_INC)/Qt,$(qt_modules)) $(PATH_SDK_QT5_INC) )
+ $(eval $(target)_INCS += $(addprefix $(PATH_SDK_QT5_INC)/Qt,$(qt_modules)) $(PATH_SDK_QT5_INC) $(PATH_QT5_X11_EXTRAS_INC)/QtX11Extras ) + $(eval $(target)_INCS += $(addprefix $(PATH_SDK_QT5_INC)/Qt,$(qt_modules)) $(PATH_SDK_QT5_INC) $(PATH_QT5_X11_EXTRAS_INC)/QtX11Extras $(PATH_QT5_TOOLS_INC))
endif endif
$(eval $(target)_DEFS += $(foreach module,$(toupper $(qt_modules)), QT_$(module)_LIB) ) $(eval $(target)_DEFS += $(foreach module,$(toupper $(qt_modules)), QT_$(module)_LIB) )