Ticket #19537 (closed defect: fixed)
We need dedicated RPM packages for upcoming Fedora 32 release. (fixed with 6.1.10)
Reported by: | fbatschu | Owned by: | fbatschu |
---|---|---|---|
Component: | installer | Version: | VirtualBox 6.1.6 |
Keywords: | fedora32 fedora 32 rpm | Cc: | |
Guest type: | all | Host type: | Linux |
Description (last modified by fbatschu) (diff)
We need dedicated RPM packages for upcoming Fedora 32 release.
The following had been reported:
i have a issue with https://download.virtualbox.org/virtualbox/6.1.6/VirtualBox-6.1-6.1.6_137129_fedora31-1.x86_64.rpm The installation of this rpm on Fedora 32 (which will be released tomorrow) fails with the following message: # dnf install VirtualBox-6.1-6.1.6_137129_fedora31-1.x86_64.rpm Letzte Prüfung auf abgelaufene Metadaten: vor 2:14:28 am Mo 27 Apr 2020 16:01:09 CEST. Fehler: Problem: conflicting requests - nothing provides python(abi) = 3.7 needed by VirtualBox-6.1-6.1.6_137129_fedora31-1.x86_64 (try to add '--skip-broken' to skip uninstallable packages)
We need to provide dedicated Fedora 32 RPM packages going forward.
see also #19431 Dependency failure on Fedora 32 - python(abi)
Change History
comment:1 Changed 3 years ago by fbatschu
- Keywords fedora32 fedora 32 rpm added
- Owner set to fbatschu
- Status changed from new to accepted
comment:2 Changed 3 years ago by fbatschu
Step 1, small adjustements we need for rpmbuild:
VBox/Trunk root@lserver trunk # svn diff Index: src/VBox/Installer/linux/distributions_rpm =================================================================== --- src/VBox/Installer/linux/distributions_rpm (revision 137597) +++ src/VBox/Installer/linux/distributions_rpm (working copy) @@ -8,6 +8,7 @@ sles11.0 = SLES_11_0 sles10.1 = SLES_10_1 mdv2011.0 = MANDRIVA_2011_0 +fedora32 = FEDORA_32 fedora31 = FEDORA_31 fedora29 = FEDORA_29 fedora26 = FEDORA_26 Index: src/VBox/Installer/linux/rpm/rules =================================================================== --- src/VBox/Installer/linux/rpm/rules (revision 137597) +++ src/VBox/Installer/linux/rpm/rules (working copy) @@ -104,7 +104,7 @@ $(error Cannot detect package distribution (rpmrel=$(rpmrel))) endif - ifeq ($(filter-out el5 el6 el7 el8 fedora18 fedora19 fedora20 fedora21 fedora22 fedora24 fedora25 fedora26 fedora29 fedora31,$(rpmrel)),) + ifeq ($(filter-out el5 el6 el7 el8 fedora18 fedora19 fedora20 fedora21 fedora22 fedora24 fedora25 fedora26 fedora29 fedora31 fedora32,$(rpmrel)),) rpmspec := rpm_redhat endif ifeq ($(filter-out openSUSE110 openSUSE111 openSUSE112 openSUSE113 openSUSE114 openSUSE123 openSUSE131 openSUSE132 openSUSE150 openSUSETW,$(rpmrel)),)
Putbacked to trunk in revision r137625
Backported to 6.1 in revision r137627
Backported to 6.0.X in revision r137628
Backported to 5.2.X in revision r137632
comment:5 Changed 3 years ago by fbatschu
the following changesets are requried internally for build purposes on trunk ( r137774 r137761 r137760 r136377 r138328 r138351) and 6.1 ( r137793 r137904 r138060 r138063 r138340 138377.).
r137760 & r138060 are:
dbgcMachoCpuType: the type and sub-types are int32_t not uint32_t.
Index: trunk/src/VBox/Debugger/DBGCDumpImage.cpp =================================================================== --- trunk/src/VBox/Debugger/DBGCDumpImage.cpp (revision 137759) +++ trunk/src/VBox/Debugger/DBGCDumpImage.cpp (revision 137760) @@ -464,16 +464,16 @@ } -static const char *dbgcMachoCpuType(uint32_t uType, uint32_t uSubType) +static const char *dbgcMachoCpuType(int32_t iType, int32_t iSubType) { - switch (uType) + switch (iType) { 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"; case CPU_TYPE_X86_64: - switch (uSubType) + switch (iSubType) { case CPU_SUBTYPE_X86_64_ALL: return "X86_64/ALL64";
r136377 & r138063 are:
VBoxService: Use strncmp rather than strcmp as the ut_user field is only zero terminated if the username has shorter than the size of the field (from the utmp manpage)
Index: trunk/src/VBox/Additions/common/VBoxService/VBoxServiceVMInfo.cpp =================================================================== --- trunk/src/VBox/Additions/common/VBoxService/VBoxServiceVMInfo.cpp (revision 136376) +++ trunk/src/VBox/Additions/common/VBoxService/VBoxServiceVMInfo.cpp (revision 136377) @@ -606,7 +606,7 @@ { bool fFound = false; for (uint32_t i = 0; i < cUsersInList && !fFound; i++) - fFound = strcmp(papszUsers[i], ut_user->ut_user) == 0; + fFound = strncmp(papszUsers[i], ut_user->ut_user, sizeof(ut_user->ut_user)) == 0; if (!fFound) {
comment:6 Changed 3 years ago by FreddyW
Is there some kind of ETA when we can expect a fedora 32 RPM? I am currently using a test build but would rather use an 'official' released RPM. Thanks in advance.
comment:7 Changed 3 years ago by fbatschu
for Fedora32 support we also need to address:
#19583 GUI crashes when using Qt on Xwayland sessions
comment:8 Changed 3 years ago by ngrennan
Can you release without fixing the Wayland issue? I am on Fedora 32 and using Xorg, as I have for many Fedora releases. It would work for me as is. The only thing blocking using the 31 rpm, for me, is that it has a dependency on python 3.7 instead of 3.8.
comment:9 Changed 3 years ago by fbatschu
with the changesets for Trunk r138351 and for 6.1.X r138377 the shebang line for vboxshell.py will be switched from unspecified python to python3 during the package build for now. That'll allow rpmbuild to create a package on Fedora 32. /usr/bin/pathfix.py is contained within the python3-devel package which is a pre-requisite for a Virtualbox build server.
Index: src/VBox/Installer/linux/rpm/VirtualBox.tmpl.spec =================================================================== --- src/VBox/Installer/linux/rpm/VirtualBox.tmpl.spec (revision 138375) +++ src/VBox/Installer/linux/rpm/VirtualBox.tmpl.spec (working copy) @@ -220,6 +220,11 @@ fi test -f $RPM_BUILD_ROOT/usr/lib/virtualbox/VBoxSDL && \ chmod 4511 $RPM_BUILD_ROOT/usr/lib/virtualbox/VBoxSDL +%if %{?with_python:1}%{!?with_python:0} +if [ -x /usr/bin/pathfix.py ]; then + /usr/bin/pathfix.py -pni "%{__python3} %{py3_shbang_opts}" $RPM_BUILD_ROOT/usr/lib/virtualbox/vboxshell.py +fi +%endif
comment:10 Changed 3 years ago by robatino
Installed VirtualBox-6.1-6.1.10_138449_fedora32-1.x86_64.rpm on F32. Seems to work fine. Thanks!
comment:11 follow-up: ↓ 12 Changed 3 years ago by dude
VirtualBox-6.1-6.1.10_138449_fedora31-1.x86_64.rpm does *not* work on Fedora 32. Same error as 6.1.8:
sudo dnf install VirtualBox-6.1-6.1.10_138449_fedora31-1.x86_64.rpm Last metadata expiration check: 2:35:35 ago on Sat 06 Jun 2020 11:35:57 AM EDT. Error: Problem: conflicting requests - nothing provides python(abi) = 3.7 needed by VirtualBox-6.1-6.1.10_138449_fedora31-1.x86_64 (try to add '--skip-broken' to skip uninstallable packages)
comment:12 in reply to: ↑ 11 Changed 3 years ago by fbatschu
Replying to dude:
VirtualBox-6.1-6.1.10_138449_fedora31-1.x86_64.rpm does *not* work
I have marked your problem for you. Your welcome.
comment:13 Changed 3 years ago by fbatschu
- Status changed from accepted to closed
- Resolution set to fixed
- Summary changed from We need dedicated RPM packages for upcoming Fedora 32 release. to We need dedicated RPM packages for upcoming Fedora 32 release. (fixed with 6.1.10)
fixed with Virtualbox release 6.1.10
https://download.virtualbox.org/virtualbox/6.1.10/VirtualBox-6.1-6.1.10_138449_fedora32-1.x86_64.rpm
comment:14 Changed 3 years ago by fbatschu
there will be no Fedora32 packages for the 6.0.X and 5.2.X branches.