summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorlilac2022-11-12 04:44:39 +0800
committerlilac2022-11-12 04:44:39 +0800
commit8fe336f99c610c54f055285bd60a33907c91dd06 (patch)
tree4f13736a318a21acd90b6e91d171b4b4936a6d80
parentcff16b439bf2a1cc438838a73e203af0339b2484 (diff)
downloadaur-8fe336f99c610c54f055285bd60a33907c91dd06.tar.gz
[lilac] updated to 97514-1
-rw-r--r--.SRCINFO49
-rw-r--r--004-drop-Wno-format.patch85
-rw-r--r--009-i3wm.patch50
-rw-r--r--009-properly-handle-i3wm.patch77
-rw-r--r--013-support-building-from-dkms.patch (renamed from 013-Makefile.patch)32
-rw-r--r--017-fix-narrowing-conversion.patch37
-rw-r--r--018-upate-xclient-script.patch35
-rw-r--r--019-fix-liblzf-linkage.patch13
-rw-r--r--PKGBUILD90
9 files changed, 270 insertions, 198 deletions
diff --git a/.SRCINFO b/.SRCINFO
index c5f5a1db5705..093c8ab45256 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,13 +1,12 @@
pkgbase = virtualbox-svn
- pkgver = 95556
- pkgrel = 2
+ pkgver = 97514
+ pkgrel = 1
url = http://virtualbox.org
arch = x86_64
license = GPL
- license = custom
+ license = custom:CDDL
makedepends = subversion
makedepends = alsa-lib
- makedepends = bin86
makedepends = cdrkit
makedepends = curl
makedepends = dev86
@@ -15,6 +14,7 @@ pkgbase = virtualbox-svn
makedepends = git
makedepends = glu
makedepends = gsoap
+ makedepends = glslang
makedepends = iasl
makedepends = jdk8-openjdk
makedepends = libidl2
@@ -60,10 +60,11 @@ pkgbase = virtualbox-svn
source = 004-drop-Wno-format.patch
source = 005-gsoap-build.patch
source = 008-no-vboxvideo.patch
- source = 009-i3wm.patch
+ source = 009-properly-handle-i3wm.patch
source = 012-vbglR3GuestCtrlDetectPeekGetCancelSupport.patch
- source = 013-Makefile.patch
- source = 017-fix-narrowing-conversion.patch
+ source = 013-support-building-from-dkms.patch
+ source = 018-upate-xclient-script.patch
+ source = 019-fix-liblzf-linkage.patch
sha256sums = SKIP
sha256sums = 76d98ea062fcad9e5e3fa981d046a6eb12a3e718a296544a68b66f4b65cb56db
sha256sums = 2101ebb58233bbfadf3aa74381f22f7e7e508559d2b46387114bc2d8e308554c
@@ -78,38 +79,40 @@ pkgbase = virtualbox-svn
sha256sums = e6e875ef186578b53106d7f6af48e426cdaf1b4e86834f01696b8ef1c685787f
sha256sums = 4001b5927348fe669a541e80526d4f9ea91b883805f102f7d571edbb482a9b9d
sha256sums = 9ee947c9b5ec5b25f52d3e72340fc3a57ca6e65a604e15b669ac582a3fb0dc1b
- sha256sums = 37e77dca542ee07152101fbfa81ab924dc36c19520320410e77df2a68c75cdd8
+ sha256sums = f11d8bd17e4e2a13d00a621373a2c26e5703870f110ea7de78c540d7d169e734
sha256sums = 7d2da8fe10a90f76bbfc80ad1f55df4414f118cd10e10abfb76070326abebd46
sha256sums = 053bfeee8863f3ffdf2f0e3f9f0d77dc61dd32764700a97a7635fd8611e20491
- sha256sums = cd83f4c9f3befb344c7e143aec65550444647890b676d6ea8502d67c7c1b3d93
+ sha256sums = c74a5daca598c12d375026fddc557b487d213fe46bb1c8ef1f7b6d1c44500eb4
sha256sums = 81900e13d36630488accd8c0bfd2ceb69563fb2c4f0f171caba1cca59d438024
- sha256sums = fb21aafdc0bc14312b9618ebd7550cb7ecf2228486a121c75a0d94bf90ba54fb
- sha256sums = 5aac692909a0a0ec56b08bdece9e42cf7463abdca9da2f990d441ff463be6a99
+ sha256sums = 00f68b86d32a1fada900c2da8dad2ab4215106cd58004f049bded99727cda2ff
+ sha256sums = 87dddfd9047480e4c2b73367facf5dd3702148418c2efcd606af17c07da90fe0
+ sha256sums = df9cc091d577935ea56d86d07be6abf519ab119a3558ded566507083f9d3fea5
pkgname = virtualbox-svn
pkgdesc = Powerful x86 virtualization for enterprise as well as home use
- depends = glibc
- depends = openssl
depends = curl
depends = gcc-libs
+ depends = glibc
+ depends = liblzf
depends = libpng
- depends = python
- depends = sdl
+ depends = libtpms
depends = libvpx
- depends = libxml2
- depends = procps-ng
- depends = shared-mime-info
- depends = zlib
- depends = libxcursor
- depends = libxinerama
depends = libx11
+ depends = libxcursor
depends = libxext
+ depends = libxinerama
+ depends = libxml2
depends = libxmu
depends = libxt
- depends = opus
+ depends = openssl
+ depends = procps-ng
+ depends = python
depends = qt5-base
- depends = qt5-x11extras
depends = qt5-tools
+ depends = qt5-x11extras
+ depends = sdl
+ depends = shared-mime-info
+ depends = zlib
depends = VIRTUALBOX-HOST-MODULES-SVN
optdepends = vde2: Virtual Distributed Ethernet support
optdepends = virtualbox-guest-iso: Guest Additions CD image
diff --git a/004-drop-Wno-format.patch b/004-drop-Wno-format.patch
index 858f69ecf74b..02440b9b2cd8 100644
--- a/004-drop-Wno-format.patch
+++ b/004-drop-Wno-format.patch
@@ -1,23 +1,24 @@
-From ff59d7f89a64a9386b3b97a3e7b062df59474192 Mon Sep 17 00:00:00 2001
+From 9736107f45a17f04e4a0f9ab14fe913660cde3ad Mon Sep 17 00:00:00 2001
From: Christian Hesse <mail@eworm.de>
-Date: Tue, 18 Jan 2022 21:16:33 +0100
-Subject: [PATCH 1/1] drop -Wno-format
+Date: Mon, 17 Oct 2022 15:07:30 +0200
+Subject: [PATCH] drop -Wno-format
---
- src/VBox/Devices/EFI/Firmware/Config.kmk | 2 +-
- .../EFI/Firmware/CryptoPkg/Library/OpensslLib/OpensslLib.inf | 4 ++--
- .../CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf | 4 ++--
- src/VBox/Devices/Makefile.kmk | 2 +-
- src/VBox/Devices/PC/ipxe/Makefile.kmk | 2 +-
- src/VBox/ExtPacks/VBoxDTrace/Makefile.kmk | 2 +-
- src/VBox/Main/webservice/Makefile.kmk | 2 --
- 7 files changed, 8 insertions(+), 10 deletions(-)
+ src/VBox/Devices/EFI/Firmware/Config.kmk | 2 +-
+ .../Firmware/CryptoPkg/Library/OpensslLib/OpensslLib.inf | 6 +++---
+ .../CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf | 6 +++---
+ src/VBox/Devices/Makefile.kmk | 2 +-
+ src/VBox/Devices/PC/ipxe/Makefile.kmk | 2 +-
+ src/VBox/ExtPacks/VBoxDTrace/Makefile.kmk | 2 +-
+ src/VBox/Main/webservice/Makefile.kmk | 3 +--
+ src/libs/xpcom18a4/Config.kmk | 6 +++---
+ 8 files changed, 14 insertions(+), 15 deletions(-)
diff --git a/src/VBox/Devices/EFI/Firmware/Config.kmk b/src/VBox/Devices/EFI/Firmware/Config.kmk
-index a5affd4d..d8dd9ed0 100644
+index e2e537f1..de640194 100644
--- a/src/VBox/Devices/EFI/Firmware/Config.kmk
+++ b/src/VBox/Devices/EFI/Firmware/Config.kmk
-@@ -126,7 +126,7 @@ TEMPLATE_VBoxEfiBldProg_LIBS = \
+@@ -155,7 +155,7 @@ TEMPLATE_VBoxEfiBldProg_LIBS = \
ifn1of ($(KBUILD_HOST),win) # This stuff isn't up to our standard at all! :/
TEMPLATE_VBoxEfiBldProg_CFLAGS = $(filter-out -pedantic,$(TEMPLATE_VBoxBldProg_CFLAGS)) \
-Wno-sign-compare -Wno-missing-prototypes -Wno-strict-prototypes \
@@ -27,7 +28,7 @@ index a5affd4d..d8dd9ed0 100644
TEMPLATE_VBoxEfiBldProg_CXXFLAGS = $(filter-out -pedantic,$(TEMPLATE_VBoxBldProg_CXXFLAGS)) \
-Wno-all -Wno-shadow -Wno-empty-body -Wno-unused-parameter -Wno-unused-variable \
diff --git a/src/VBox/Devices/EFI/Firmware/CryptoPkg/Library/OpensslLib/OpensslLib.inf b/src/VBox/Devices/EFI/Firmware/CryptoPkg/Library/OpensslLib/OpensslLib.inf
-index 83831a1a..8b22fa0b 100644
+index 5300ea32..e9485765 100644
--- a/src/VBox/Devices/EFI/Firmware/CryptoPkg/Library/OpensslLib/OpensslLib.inf
+++ b/src/VBox/Devices/EFI/Firmware/CryptoPkg/Library/OpensslLib/OpensslLib.inf
@@ -618,10 +618,10 @@
@@ -44,9 +45,8 @@ index 83831a1a..8b22fa0b 100644
GCC:*_CLANG35_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized
GCC:*_CLANG38_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized
GCC:*_CLANGPDB_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized -Wno-error=incompatible-pointer-types -Wno-error=pointer-sign -Wno-error=implicit-function-declaration -Wno-error=ignored-pragma-optimize
-
diff --git a/src/VBox/Devices/EFI/Firmware/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf b/src/VBox/Devices/EFI/Firmware/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
-index fe28ee67..de03e6df 100644
+index 1b1d46b0..df9998a5 100644
--- a/src/VBox/Devices/EFI/Firmware/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
+++ b/src/VBox/Devices/EFI/Firmware/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
@@ -567,10 +567,10 @@
@@ -63,12 +63,11 @@ index fe28ee67..de03e6df 100644
GCC:*_CLANG35_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized
GCC:*_CLANG38_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized
GCC:*_CLANGPDB_*_CC_FLAGS = -std=c99 -Wno-error=uninitialized -Wno-error=incompatible-pointer-types -Wno-error=pointer-sign -Wno-error=implicit-function-declaration -Wno-error=ignored-pragma-optimize
-
diff --git a/src/VBox/Devices/Makefile.kmk b/src/VBox/Devices/Makefile.kmk
-index bd64e790..136e203b 100644
+index 02da1255..c2cbbc1c 100644
--- a/src/VBox/Devices/Makefile.kmk
+++ b/src/VBox/Devices/Makefile.kmk
-@@ -727,7 +727,7 @@ endif
+@@ -836,7 +836,7 @@ VBOX_WITH_VMSVGA3D_DYNAMIC_LOAD = 1
ifeq ($(KBUILD_TARGET),win)
$(file)_CFLAGS = -wd4018
else
@@ -78,23 +77,23 @@ index bd64e790..136e203b 100644
endef
diff --git a/src/VBox/Devices/PC/ipxe/Makefile.kmk b/src/VBox/Devices/PC/ipxe/Makefile.kmk
-index d35d50c0..64d0079b 100644
+index 8a611f6d..c57f0454 100644
--- a/src/VBox/Devices/PC/ipxe/Makefile.kmk
+++ b/src/VBox/Devices/PC/ipxe/Makefile.kmk
-@@ -358,7 +358,7 @@ endif
+@@ -401,7 +401,7 @@ endif
#
BLDPROGS += ipxezbin
ipxezbin_TEMPLATE = VBoxBldProg
-- ipxezbin_CFLAGS = -Wno-format -Wno-unused-function
-+ ipxezbin_CFLAGS = -Wno-unused-function
+- ipxezbin_CFLAGS = -Wno-format -Wno-unused-function -Wno-pointer-arith
++ ipxezbin_CFLAGS = -Wno-unused-function -Wno-pointer-arith
ipxezbin_SOURCES = src/util/zbin.c
+ ipxezbin_LIBS = lzma # @todo Can't assume liblzma on the build system
- endif
diff --git a/src/VBox/ExtPacks/VBoxDTrace/Makefile.kmk b/src/VBox/ExtPacks/VBoxDTrace/Makefile.kmk
-index 4c1a863f..c1af03f6 100644
+index b2bd260b..133e7398 100644
--- a/src/VBox/ExtPacks/VBoxDTrace/Makefile.kmk
+++ b/src/VBox/ExtPacks/VBoxDTrace/Makefile.kmk
-@@ -107,7 +107,7 @@ if defined(VBOX_WITH_EXTPACK_VBOXDTRACE) && defined(VBOX_WITH_EXTPACK)
+@@ -118,7 +118,7 @@ if defined(VBOX_WITH_EXTPACK_VBOXDTRACE) && defined(VBOX_WITH_EXTPACK)
VBoxDTraceCmd_DEFS.win = YY_USE_PROTOS=1 YYENABLE_NLS=0 YYLTYPE_IS_TRIVIAL=0
VBoxDTraceCmd_SDKS = VBOX_ZLIB
ifn1of ($(KBUILD_TARGET), win)
@@ -104,10 +103,10 @@ index 4c1a863f..c1af03f6 100644
VBoxDTraceCmd_INCS = \
include \
diff --git a/src/VBox/Main/webservice/Makefile.kmk b/src/VBox/Main/webservice/Makefile.kmk
-index 6e088b14..3c1d9fa7 100644
+index 072d066e..d2feea75 100644
--- a/src/VBox/Main/webservice/Makefile.kmk
+++ b/src/VBox/Main/webservice/Makefile.kmk
-@@ -250,7 +250,7 @@ ifdef VBOX_GSOAP_INSTALLED
+@@ -260,7 +260,7 @@ ifdef VBOX_GSOAP_INSTALLED
ifn1of ($(KBUILD_TARGET), win)
vboxsoap_CXXFLAGS += -Wno-shadow -Wno-parentheses $(VBOX_GCC_Wno-literal-suffix) \
$(VBOX_GCC_Wno-stringop-overflow) $(VBOX_GCC_Wno-stringop-truncation) \
@@ -116,7 +115,7 @@ index 6e088b14..3c1d9fa7 100644
ifn1of ($(KBUILD_TYPE), debug) # Save time+memory by using -O0 instead of -O2.
vboxsoap_CXXFLAGS += -O0 ## @todo this could be interesting for g++ (not clang++): -fcprop-registers
endif
-@@ -321,7 +321,6 @@ ifdef VBOX_GSOAP_INSTALLED
+@@ -331,7 +331,6 @@ ifdef VBOX_GSOAP_INSTALLED
$(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts
ifn1of ($(KBUILD_TARGET), win)
$(VBOX_GSOAP_CXX_SOURCES)_CXXFLAGS = \
@@ -124,7 +123,27 @@ index 6e088b14..3c1d9fa7 100644
$(VBOX_GCC_Wno-int-in-bool-context) \
$(VBOX_GCC_Wno-logical-op)
# currently necessary when compiling against OpenSSL 1.0 due to a missing
-
---
-2.34.1
-
+diff --git a/src/libs/xpcom18a4/Config.kmk b/src/libs/xpcom18a4/Config.kmk
+index 3b0831e5..a83a080b 100644
+--- a/src/libs/xpcom18a4/Config.kmk
++++ b/src/libs/xpcom18a4/Config.kmk
+@@ -243,8 +243,8 @@ TEMPLATE_XPCOMEXE_LDFLAGS.darwin = -bind_at_load $(filter-out -current_version
+ #
+ TEMPLATE_XPCOMTSTEXE = XPCOM executable files (testcases)
+ TEMPLATE_XPCOMTSTEXE_EXTENDS = XPCOMEXE
+-TEMPLATE_XPCOMTSTEXE_CXXFLAGS = $(TEMPLATE_XPCOMEXE_CXXFLAGS) -Wno-format
+-TEMPLATE_XPCOMTSTEXE_CFLAGS = $(TEMPLATE_XPCOMEXE_CFLAGS) -Wno-format
++TEMPLATE_XPCOMTSTEXE_CXXFLAGS = $(TEMPLATE_XPCOMEXE_CXXFLAGS)
++TEMPLATE_XPCOMTSTEXE_CFLAGS = $(TEMPLATE_XPCOMEXE_CFLAGS)
+ TEMPLATE_XPCOMTSTEXE_INST = $(INST_TESTCASE)
+ ifdef VBOX_WITH_RUNPATH
+ TEMPLATE_XPCOMTSTEXE_LDFLAGS = '$(VBOX_GCC_RPATH_OPT)$(VBOX_WITH_RUNPATH)' $(TEMPLATE_XPCOMEXE_LDFLAGS)
+@@ -277,7 +277,7 @@ TEMPLATE_XPCOMBLDPROG_INCS = \
+ $(VBOX_PATH_SDK)/bindings/xpcom/include/string \
+ $(VBOX_PATH_SDK)/bindings/xpcom/include/xpcom \
+ $(VBOX_PATH_SDK)/bindings/xpcom/include/ipcd
+-TEMPLATE_XPCOMBLDPROG_CFLAGS = $(filter-out -pedantic -Wshadow, $(TEMPLATE_VBOX_BLDPROG_CFLAGS)) $(VBOX_GCC_Wno-int-to-pointer-cast) $(VBOX_GCC_Wno-pointer-to-int-cast) -Wno-format
++TEMPLATE_XPCOMBLDPROG_CFLAGS = $(filter-out -pedantic -Wshadow, $(TEMPLATE_VBOX_BLDPROG_CFLAGS)) $(VBOX_GCC_Wno-int-to-pointer-cast) $(VBOX_GCC_Wno-pointer-to-int-cast)
+ TEMPLATE_XPCOMBLDPROG_CXXFLAGS.darwin = $(TEMPLATE_VBoxBldProg_CXXFLAGS.darwin) -fpascal-strings -fshort-wchar -fno-common -fno-rtti
+ TEMPLATE_XPCOMBLDPROG_CXXFLAGS.solaris = $(TEMPLATE_VBoxBldProg_CXXFLAGS.solaris) -fno-omit-frame-pointer # for now anyway.
+ TEMPLATE_XPCOMBLDPROG_LDFLAGS.darwin = $(TEMPLATE_VBoxBldProg_LDFLAGS.darwin) -fpascal-strings -fshort-wchar -fno-rtti -fno-exceptions
diff --git a/009-i3wm.patch b/009-i3wm.patch
deleted file mode 100644
index eca4341fff74..000000000000
--- a/009-i3wm.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-diff -Naur VirtualBox/src/VBox/Frontends/VirtualBox/src/globals/UIDesktopWidgetWatchdog.cpp VirtualBox/src/VBox/Frontends/VirtualBox/src/globals/UIDesktopWidgetWatchdog.cpp
---- VirtualBox/src/VBox/Frontends/VirtualBox/src/globals/UIDesktopWidgetWatchdog.cpp 2017-03-08 18:19:53.000000000 +0100
-+++ VirtualBox/src/VBox/Frontends/VirtualBox/src/globals/UIDesktopWidgetWatchdog.cpp 2017-03-10 10:25:58.876132400 +0100
-@@ -282,7 +282,7 @@
- /* Get cached available-geometry: */
- const QRect availableGeometry = m_availableGeometryData.value(iHostScreenIndex);
- /* Return cached available-geometry if it's valid or screen-geometry otherwise: */
-- return availableGeometry.isValid() ? availableGeometry :
-+ return availableGeometry.isValid() && X11WMType() != X11WMType_i3 ? availableGeometry :
- QApplication::desktop()->screenGeometry(iHostScreenIndex);
- #else /* !VBOX_WS_X11 */
- /* Redirect call to desktop-widget: */
-diff -Naur VirtualBox/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.cpp VirtualBox/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.cpp
---- VirtualBox/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.cpp 2017-03-08 18:19:54.000000000 +0100
-+++ VirtualBox/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.cpp 2017-03-10 10:23:15.729460200 +0100
-@@ -93,6 +93,9 @@
- else
- if (QString((const char*)pcData).contains("Xfwm4", Qt::CaseInsensitive))
- wmType = X11WMType_Xfwm4;
-+ else
-+ if (QString((const char*)pcData).contains("i3", Qt::CaseInsensitive))
-+ wmType = X11WMType_i3;
- if (pcData)
- XFree(pcData);
- }
-diff -Naur VirtualBox/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.h VirtualBox/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.h
---- VirtualBox/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.h 2017-03-08 18:19:54.000000000 +0100
-+++ VirtualBox/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.h 2017-03-10 10:22:11.876123200 +0100
-@@ -27,6 +27,7 @@
- X11WMType_KWin,
- X11WMType_Mutter,
- X11WMType_Xfwm4,
-+ X11WMType_i3,
- };
-
- /** X11: Determines and returns whether the compositing manager is running. */
-diff -Naur VirtualBox/src/VBox/Frontends/VirtualBox/src/widgets/UIMiniToolBar.cpp VirtualBox/src/VBox/Frontends/VirtualBox/src/widgets/UIMiniToolBar.cpp
---- VirtualBox/src/VBox/Frontends/VirtualBox/src/widgets/UIMiniToolBar.cpp 2017-03-08 18:19:58.000000000 +0100
-+++ VirtualBox/src/VBox/Frontends/VirtualBox/src/widgets/UIMiniToolBar.cpp 2017-03-10 10:29:12.549409400 +0100
-@@ -727,6 +727,10 @@
- /* Enable translucency through Qt API if supported: */
- if (vboxGlobal().isCompositingManagerRunning())
- setAttribute(Qt::WA_TranslucentBackground);
-+
-+ if (X11WMType() == X11WMType_i3)
-+ setWindowFlags(Qt::FramelessWindowHint);
-+
- #endif /* VBOX_WS_X11 */
-
- /* Make sure we have no focus: */
diff --git a/009-properly-handle-i3wm.patch b/009-properly-handle-i3wm.patch
new file mode 100644
index 000000000000..b8ade3678d79
--- /dev/null
+++ b/009-properly-handle-i3wm.patch
@@ -0,0 +1,77 @@
+From 9284f5a37708ddf0108898a48eca5db0e5316a43 Mon Sep 17 00:00:00 2001
+From: Christian Hesse <mail@eworm.de>
+Date: Mon, 17 Oct 2022 16:35:53 +0200
+Subject: [PATCH] properly handle i3wm
+
+---
+ .../VirtualBox/src/globals/UIDesktopWidgetWatchdog.cpp | 4 ++--
+ .../Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.cpp | 3 +++
+ .../Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.h | 3 ++-
+ src/VBox/Frontends/VirtualBox/src/widgets/UIMiniToolBar.cpp | 4 ++++
+ 4 files changed, 11 insertions(+), 3 deletions(-)
+
+diff --git a/src/VBox/Frontends/VirtualBox/src/globals/UIDesktopWidgetWatchdog.cpp b/src/VBox/Frontends/VirtualBox/src/globals/UIDesktopWidgetWatchdog.cpp
+index 9c5faa42..5439e2a7 100644
+--- a/src/VBox/Frontends/VirtualBox/src/globals/UIDesktopWidgetWatchdog.cpp
++++ b/src/VBox/Frontends/VirtualBox/src/globals/UIDesktopWidgetWatchdog.cpp
+@@ -443,8 +443,8 @@ const QRect UIDesktopWidgetWatchdog::availableGeometry(int iHostScreenIndex /* =
+ /* Get cached available-geometry: */
+ const QRect availableGeometry = m_availableGeometryData.value(iHostScreenIndex);
+ /* Return cached available-geometry if it's valid or screen-geometry otherwise: */
+- return availableGeometry.isValid() ? availableGeometry :
+- QApplication::desktop()->screenGeometry(iHostScreenIndex);
++ return availableGeometry.isValid() && NativeWindowSubsystem::X11WindowManagerType() != X11WMType_i3 ?
++ availableGeometry : QApplication::desktop()->screenGeometry(iHostScreenIndex);
+ # endif /* !VBOX_GUI_WITH_CUSTOMIZATIONS1 */
+ # else /* !VBOX_WS_X11 */
+ /* Redirect call to desktop-widget: */
+diff --git a/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.cpp b/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.cpp
+index 53927559..ea648da7 100644
+--- a/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.cpp
++++ b/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.cpp
+@@ -117,6 +117,9 @@ X11WMType NativeWindowSubsystem::X11WindowManagerType()
+ else
+ if (QString((const char*)pcData).contains("Xfwm4", Qt::CaseInsensitive))
+ wmType = X11WMType_Xfwm4;
++ else
++ if (QString((const char*)pcData).contains("i3", Qt::CaseInsensitive))
++ wmType = X11WMType_i3;
+ if (pcData)
+ XFree(pcData);
+ }
+diff --git a/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.h b/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.h
+index bad78665..f2a0b462 100644
+--- a/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.h
++++ b/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxUtils-x11.h
+@@ -49,6 +49,7 @@ enum X11WMType
+ X11WMType_Metacity,
+ X11WMType_Mutter,
+ X11WMType_Xfwm4,
++ X11WMType_i3,
+ };
+
+ /** X11: Screen-saver inhibit methods. */
+@@ -95,7 +96,7 @@
+ /** X11: Determines and returns whether the compositing manager is running. */
+ bool X11IsCompositingManagerRunning();
+ /** X11: Determines and returns current Window Manager type. */
+- X11WMType X11WindowManagerType();
++ SHARED_LIBRARY_STUFF X11WMType X11WindowManagerType();
+
+ #if 0 // unused for now?
+ /** X11: Inits the screen saver save/restore mechanism. */
+diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/UIMiniToolBar.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/UIMiniToolBar.cpp
+index 815db408..8cddb431 100644
+--- a/src/VBox/Frontends/VirtualBox/src/widgets/UIMiniToolBar.cpp
++++ b/src/VBox/Frontends/VirtualBox/src/widgets/UIMiniToolBar.cpp
+@@ -888,6 +888,10 @@ void UIMiniToolBar::prepare()
+ /* Enable translucency through Qt API if supported: */
+ if (uiCommon().isCompositingManagerRunning())
+ setAttribute(Qt::WA_TranslucentBackground);
++
++ if (NativeWindowSubsystem::X11WindowManagerType() == X11WMType_i3)
++ setWindowFlags(Qt::FramelessWindowHint);
++
+ #endif /* VBOX_WS_X11 */
+
+ /* Make sure we have no focus: */
diff --git a/013-Makefile.patch b/013-support-building-from-dkms.patch
index 02ae6715d7cd..e2d0ebd67205 100644
--- a/013-Makefile.patch
+++ b/013-support-building-from-dkms.patch
@@ -1,19 +1,28 @@
+From eb9ded87d9d1a6755f2bb7258641c9c80c54c347 Mon Sep 17 00:00:00 2001
+From: Christian Hesse <mail@eworm.de>
+Date: Mon, 17 Oct 2022 16:30:32 +0200
+Subject: [PATCH] support building from dkms
+
+---
+ src/VBox/HostDrivers/linux/Makefile | 18 +++++++++---------
+ 1 file changed, 9 insertions(+), 9 deletions(-)
+
diff --git a/src/VBox/HostDrivers/linux/Makefile b/src/VBox/HostDrivers/linux/Makefile
-index 18466b48..7c7de4e5 100644
+index badeb4f4..314281f3 100644
--- a/src/VBox/HostDrivers/linux/Makefile
+++ b/src/VBox/HostDrivers/linux/Makefile
-@@ -23,25 +23,25 @@
- # terms and conditions of either the GPL or the CDDL or both.
+@@ -33,25 +33,25 @@
+ # SPDX-License-Identifier: GPL-3.0-only OR CDDL-1.0
#
-
+
-ifneq ($(KERNELRELEASE),)
+ifneq ($(KBUILD_EXTMOD),)
-
+
-# Building from kBuild (make -C <kernel_directory> M=`pwd`),
-# or inside a kernel source tree.
+# Building from kBuild (make -C <kernel_directory> M=`pwd`).
+# KBUILD_EXTMOD is set to $(M) in this case.
-
+
obj-m = vboxdrv/
- ifneq ($(wildcard $(CURDIR)/vboxnetflt/Makefile),)
+ ifneq ($(wildcard $(KBUILD_EXTMOD)/vboxnetflt/Makefile),)
@@ -27,18 +36,19 @@ index 18466b48..7c7de4e5 100644
+ ifneq ($(wildcard $(KBUILD_EXTMOD)/vboxpci/Makefile),)
obj-m += vboxpci/
endif
-
+
-else # ! KERNELRELEASE
+else # ! KBUILD_EXTMOD
-
+
-# convenience Makefile without KERNELRELEASE
+# convenience Makefile without KBUILD_EXTMOD
-
+
ifndef SUDO
ifneq ($(shell id -u),0)
-@@ -234,5 +234,5 @@
+@@ -244,5 +244,5 @@ load: unload
fi; \
done
-
+
-endif # ! KERNELRELEASE
+endif # ! KBUILD_EXTMOD
+
diff --git a/017-fix-narrowing-conversion.patch b/017-fix-narrowing-conversion.patch
deleted file mode 100644
index 5ca8215675ee..000000000000
--- a/017-fix-narrowing-conversion.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From ee6ae088673d14c407d4773855dbda821024653c Mon Sep 17 00:00:00 2001
-From: Christian Hesse <mail@eworm.de>
-Date: Sun, 17 May 2020 00:40:18 +0200
-Subject: [PATCH 1/1] fix narrowing conversion
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Building fails with:
-
-/build/virtualbox/src/VirtualBox-6.1.8/src/VBox/Debugger/DBGCDumpImage.cpp: In function ‘const char* dbgcMachoCpuType(uint32_t, uint32_t)’:
-/build/virtualbox/src/VirtualBox-6.1.8/include/iprt/formats/mach-o.h:41:46: error: narrowing conversion of ‘-1’ from ‘int’ to ‘unsigned int’ [-Wnarrowing]
- 41 | #define CPU_TYPE_ANY INT32_C(-1)
- | ^
-/build/virtualbox/src/VirtualBox-6.1.8/src/VBox/Debugger/DBGCDumpImage.cpp:471:14: note: in expansion of macro ‘CPU_TYPE_ANY’
- 471 | case CPU_TYPE_ANY: return "CPU_TYPE_ANY";
- | ^~~~~~~~~~~~
-
-As uType is unsigned it can never match CPU_TYPE_ANY, which is -1.
-
-Signed-off-by: Christian Hesse <mail@eworm.de>
----
- src/VBox/Debugger/DBGCDumpImage.cpp | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/src/VBox/Debugger/DBGCDumpImage.cpp b/src/VBox/Debugger/DBGCDumpImage.cpp
-index 02ba3158..d906c37c 100644
---- a/src/VBox/Debugger/DBGCDumpImage.cpp
-+++ b/src/VBox/Debugger/DBGCDumpImage.cpp
-@@ -468,7 +468,6 @@ static const char *dbgcMachoCpuType(uint32_t uType, uint32_t uSubType)
- {
- switch (uType)
- {
-- case CPU_TYPE_ANY: return "CPU_TYPE_ANY";
- case CPU_TYPE_VAX: return "VAX";
- case CPU_TYPE_MC680x0: return "MC680x0";
- case CPU_TYPE_X86: return "X86";
diff --git a/018-upate-xclient-script.patch b/018-upate-xclient-script.patch
new file mode 100644
index 000000000000..eeb5e0e878a7
--- /dev/null
+++ b/018-upate-xclient-script.patch
@@ -0,0 +1,35 @@
+From 12e0a15f8893187ee92fa5af8095b8bb33adefe5 Mon Sep 17 00:00:00 2001
+From: Christian Hesse <mail@eworm.de>
+Date: Mon, 17 Oct 2022 16:40:29 +0200
+Subject: [PATCH] upate xclient script
+
+---
+ src/VBox/Additions/x11/Installer/98vboxadd-xclient | 13 +++----------
+ 1 file changed, 3 insertions(+), 10 deletions(-)
+
+diff --git a/src/VBox/Additions/x11/Installer/98vboxadd-xclient b/src/VBox/Additions/x11/Installer/98vboxadd-xclient
+index 7c9b5989..271261a4 100755
+--- a/src/VBox/Additions/x11/Installer/98vboxadd-xclient
++++ b/src/VBox/Additions/x11/Installer/98vboxadd-xclient
+@@ -31,18 +31,11 @@ for i in $HOME/.vboxclient-*.pid; do
+ test -w $i || rm -f $i
+ done
+
+-if ! test -c /dev/vboxguest 2>/dev/null; then
+- # Do not start if the kernel module is not present.
+- # Execute notify-send in the back-ground to avoid racing with sddm,
+- # as notify-send may wait for sddm to start while it waits for us to exit.
+- notify-send "VBoxClient: the VirtualBox kernel service is not running. Exiting." &
+-elif test -z "${SSH_CONNECTION}"; then
+- # This script can also be triggered by a connection over SSH, which is not
+- # what we had in mind, so we do not start VBoxClient in that case. We do
+- # not use "exit" here as this script is "source"d, not executed.
++# Do not start if the kernel module is not present; or if this script is
++# triggered by a connection over SSH.
++if [ -c /dev/vboxguest -a -z "${SSH_CONNECTION}" ]; then
+ /usr/bin/VBoxClient --clipboard
+ /usr/bin/VBoxClient --checkhostversion
+ /usr/bin/VBoxClient --seamless
+ /usr/bin/VBoxClient --draganddrop
+- /usr/bin/VBoxClient --vmsvga-session # In case VMSVGA emulation is enabled
+ fi
diff --git a/019-fix-liblzf-linkage.patch b/019-fix-liblzf-linkage.patch
new file mode 100644
index 000000000000..a47997d456d1
--- /dev/null
+++ b/019-fix-liblzf-linkage.patch
@@ -0,0 +1,13 @@
+Fix compiling with shared liblzf library by not mangling the needed symbols
+--- a/src/VBox/Runtime/common/zip/zip.cpp 2022-10-07 01:11:55.000000000 +0800
++++ b/src/VBox/Runtime/common/zip/zip.cpp 2022-10-19 22:35:37.996450458 +0800
+@@ -61,7 +61,9 @@
+ # include <zlib.h>
+ #endif
+ #ifdef RTZIP_USE_LZF
++extern "C" {
+ # include <lzf.h>
++}
+ # include <iprt/crc.h>
+ #endif
+ #ifdef RTZIP_USE_LZJB
diff --git a/PKGBUILD b/PKGBUILD
index a1ec4dc869c0..ecaed9c30a3d 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -9,14 +9,14 @@ pkgname=('virtualbox-svn'
'virtualbox-guest-utils-svn'
'virtualbox-guest-utils-nox-svn'
'virtualbox-ext-vnc-svn')
-pkgver=95556
-pkgrel=2
+pkgver=97514
+_tarver=${pkgver}
+pkgrel=1
arch=('x86_64')
url='http://virtualbox.org'
-license=('GPL' 'custom')
+license=('GPL' 'custom:CDDL')
makedepends=('subversion'
'alsa-lib'
- 'bin86'
'cdrkit'
'curl'
'dev86'
@@ -24,6 +24,7 @@ makedepends=('subversion'
'git'
'glu'
'gsoap'
+ 'glslang'
'iasl'
'jdk8-openjdk'
'libidl2'
@@ -69,10 +70,11 @@ source=("VirtualBox::svn+http://www.virtualbox.org/svn/vbox/trunk"
'004-drop-Wno-format.patch'
'005-gsoap-build.patch'
'008-no-vboxvideo.patch'
- '009-i3wm.patch'
+ '009-properly-handle-i3wm.patch'
'012-vbglR3GuestCtrlDetectPeekGetCancelSupport.patch'
- '013-Makefile.patch'
- '017-fix-narrowing-conversion.patch')
+ '013-support-building-from-dkms.patch'
+ '018-upate-xclient-script.patch'
+ '019-fix-liblzf-linkage.patch')
pkgver() {
cd "VirtualBox"
@@ -116,22 +118,16 @@ build() {
source ./env.sh
kmk
- #echo 'Build rdesktop-vrdp'
- #kmk -C src/VBox/RDP/client-1.8.4
-
echo 'Build VNC extension pack'
kmk -C src/VBox/ExtPacks/VNC packing
-
- echo 'Build vboximg-mount'
- kmk -C src/VBox/ImageMounter/vboximg-mount
}
package_virtualbox-svn() {
pkgdesc='Powerful x86 virtualization for enterprise as well as home use'
- depends=('glibc' 'openssl' 'curl' 'gcc-libs' 'libpng' 'python' 'sdl'
- 'libvpx' 'libxml2' 'procps-ng' 'shared-mime-info' 'zlib'
- 'libxcursor' 'libxinerama' 'libx11' 'libxext' 'libxmu' 'libxt'
- 'opus' 'qt5-base' 'qt5-x11extras' 'qt5-tools' 'VIRTUALBOX-HOST-MODULES-SVN')
+ depends=('curl' 'gcc-libs' 'glibc' 'liblzf' 'libpng' 'libtpms' 'libvpx' 'libx11' 'libxcursor'
+ 'libxext' 'libxinerama' 'libxml2' 'libxmu' 'libxt' 'openssl' 'procps-ng' 'python'
+ 'qt5-base' 'qt5-tools' 'qt5-x11extras' 'sdl' 'shared-mime-info' 'zlib'
+ 'VIRTUALBOX-HOST-MODULES-SVN')
optdepends=('vde2: Virtual Distributed Ethernet support'
'virtualbox-guest-iso: Guest Additions CD image'
'virtualbox-ext-vnc: VNC server support'
@@ -144,25 +140,25 @@ package_virtualbox-svn() {
source "VirtualBox/env.sh"
cd "VirtualBox/out/linux.$BUILD_PLATFORM_ARCH/release/bin"
- # binaries
- install -dm0755 "$pkgdir/usr/bin"
- install -m0755 VBox.sh "$pkgdir/usr/bin/VBox"
- for i in VBoxHeadless VBoxManage VBoxSDL VirtualBox vboxwebsrv VBoxBalloonCtrl; do
- ln -sf VBox "$pkgdir/usr/bin/$i"
- ln -sf VBox "$pkgdir/usr/bin/${i,,}"
- done
- #install -m0755 VBoxTunctl "$pkgdir/usr/bin"
- #install -m0755 rdesktop-vrdp "$pkgdir/usr/bin"
- install -m0755 vboximg-mount "$pkgdir/usr/bin"
-
- # libraries
- install -dm0755 "$pkgdir/usr/lib/virtualbox"
- install -m0755 *.so "$pkgdir/usr/lib/virtualbox"
- install -m0644 *.r0 VBoxEFI*.fd "$pkgdir/usr/lib/virtualbox"
+ # libraries (and non-PATH executables)
+ install -d -m0755 "${pkgdir}/usr/lib/virtualbox"
+ install -m0755 *.so -t "${pkgdir}/usr/lib/virtualbox"
+ install -m0644 *.r0 VBoxEFI*.fd -t "${pkgdir}/usr/lib/virtualbox"
## setuid root binaries
- install -m4755 VirtualBoxVM VBoxHeadless VBoxNetDHCP VBoxNetAdpCtl VBoxNetNAT -t "$pkgdir/usr/lib/virtualbox"
+ install -m4755 VirtualBoxVM VBoxHeadless VBoxNetAdpCtl VBoxNetDHCP VBoxNetNAT -t "${pkgdir}/usr/lib/virtualbox"
## other binaries
- install -m0755 VirtualBox VBoxManage VBoxSVC VBoxExtPackHelperApp VBoxXPCOMIPCD VBoxTestOGL VBoxBalloonCtrl -t "$pkgdir/usr/lib/virtualbox"
+ install -m0755 VirtualBox VBoxManage VBoxSVC VBoxExtPackHelperApp VBoxXPCOMIPCD VBoxTestOGL VBoxBalloonCtrl vboximg-mount vboxwebsrv webtest -t "${pkgdir}/usr/lib/virtualbox"
+
+ # binaries (in /usr/bin)
+ install -d -m0755 "${pkgdir}/usr/bin"
+ install -m0755 VBox.sh "${pkgdir}/usr/bin/VBox"
+ for i in VirtualBox VirtualBoxVM VBoxManage VBoxHeadless VBoxBugReport VBoxBalloonCtrl VBoxAutostart vboxwebsrv; do
+ ln -sf VBox "${pkgdir}/usr/bin/${i}"
+ ln -sf VBox "${pkgdir}/usr/bin/${i,,}"
+ done
+ for i in vboximg-mount; do
+ ln -s ../lib/virtualbox/"${i}" "${pkgdir}/usr/bin/${i}"
+ done
# components
install -dm0755 "$pkgdir/usr/lib/virtualbox/components"
@@ -181,10 +177,6 @@ package_virtualbox-svn() {
install -dm0755 "$pkgdir/usr/share/virtualbox/nls"
install -m0755 nls/*.qm -t "$pkgdir/usr/share/virtualbox/nls"
- # rdesktop keymaps
- #install -dm0755 "$pkgdir/usr/share/virtualbox/rdesktop-vrdp-keymaps"
- #install -m0644 rdesktop-vrdp-keymaps/* "$pkgdir/usr/share/virtualbox/rdesktop-vrdp-keymaps"
-
# useless scripts
install -m0755 VBoxCreateUSBNode.sh VBoxSysInfo.sh -t "$pkgdir/usr/share/virtualbox"
@@ -211,7 +203,8 @@ package_virtualbox-svn() {
#licence
install -Dm0644 VirtualBox/COPYING "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
-
+ install -D -m0644 VirtualBox/COPYING.CDDL "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.CDDL"
+
# install systemd stuff
install -Dm0644 60-vboxdrv.rules "$pkgdir/usr/lib/udev/rules.d/60-vboxdrv.rules"
install -Dm0644 vboxweb.service "$pkgdir/usr/lib/systemd/system/vboxweb.service"
@@ -243,6 +236,8 @@ package_virtualbox-sdk-svn() {
# licence
install -Dm0644 "$srcdir/VirtualBox/COPYING" \
"$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+ install -D -m0644 "${srcdir}/VirtualBox/COPYING.CDDL" \
+ "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.CDDL"
}
package_virtualbox-host-dkms-svn() {
@@ -262,6 +257,8 @@ package_virtualbox-host-dkms-svn() {
# licence
install -Dm0644 "$srcdir/VirtualBox/COPYING" \
"$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+ install -D -m0644 "${srcdir}/VirtualBox/COPYING.CDDL" \
+ "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.CDDL"
# module loading
local _p="$pkgdir/usr/lib/modules-load.d/virtualbox-host-dkms.conf"
install -Dm0644 /dev/null "$_p"
@@ -299,6 +296,7 @@ package_virtualbox-guest-utils-svn() {
install -Dm0644 virtualbox-guest-utils.sysusers "$pkgdir/usr/lib/sysusers.d/virtualbox-guest-utils.conf"
# licence
install -Dm0644 VirtualBox/COPYING "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+ install -Dm0644 VirtualBox/COPYING.CDDL "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.CDDL"
}
package_virtualbox-guest-utils-nox-svn() {
@@ -321,6 +319,8 @@ package_virtualbox-guest-utils-nox-svn() {
# licence
install -Dm0644 "$srcdir/VirtualBox/COPYING" \
"$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+ install -Dm0644 "${srcdir}/VirtualBox/COPYING.CDDL" \
+ "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.CDDL"
}
package_virtualbox-ext-vnc-svn() {
@@ -337,8 +337,9 @@ package_virtualbox-ext-vnc-svn() {
# licence
install -Dm0644 "$srcdir/VirtualBox/COPYING" \
"$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+ install -Dm0644 "${srcdir}/VirtualBox/COPYING.CDDL" \
+ "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.CDDL"
}
-
sha256sums=('SKIP'
'76d98ea062fcad9e5e3fa981d046a6eb12a3e718a296544a68b66f4b65cb56db'
'2101ebb58233bbfadf3aa74381f22f7e7e508559d2b46387114bc2d8e308554c'
@@ -353,10 +354,11 @@ sha256sums=('SKIP'
'e6e875ef186578b53106d7f6af48e426cdaf1b4e86834f01696b8ef1c685787f'
'4001b5927348fe669a541e80526d4f9ea91b883805f102f7d571edbb482a9b9d'
'9ee947c9b5ec5b25f52d3e72340fc3a57ca6e65a604e15b669ac582a3fb0dc1b'
- '37e77dca542ee07152101fbfa81ab924dc36c19520320410e77df2a68c75cdd8'
+ 'f11d8bd17e4e2a13d00a621373a2c26e5703870f110ea7de78c540d7d169e734'
'7d2da8fe10a90f76bbfc80ad1f55df4414f118cd10e10abfb76070326abebd46'
'053bfeee8863f3ffdf2f0e3f9f0d77dc61dd32764700a97a7635fd8611e20491'
- 'cd83f4c9f3befb344c7e143aec65550444647890b676d6ea8502d67c7c1b3d93'
+ 'c74a5daca598c12d375026fddc557b487d213fe46bb1c8ef1f7b6d1c44500eb4'
'81900e13d36630488accd8c0bfd2ceb69563fb2c4f0f171caba1cca59d438024'
- 'fb21aafdc0bc14312b9618ebd7550cb7ecf2228486a121c75a0d94bf90ba54fb'
- '5aac692909a0a0ec56b08bdece9e42cf7463abdca9da2f990d441ff463be6a99')
+ '00f68b86d32a1fada900c2da8dad2ab4215106cd58004f049bded99727cda2ff'
+ '87dddfd9047480e4c2b73367facf5dd3702148418c2efcd606af17c07da90fe0'
+ 'df9cc091d577935ea56d86d07be6abf519ab119a3558ded566507083f9d3fea5')