Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Virtualbox 5.2.22 #4569

Merged
merged 9 commits into from Dec 6, 2018
Merged

Virtualbox 5.2.22 #4569

merged 9 commits into from Dec 6, 2018

Conversation

alarcher
Copy link
Contributor

@alarcher alarcher commented Oct 30, 2018

Need to write install and patch USB possibly.

@timmooney
Copy link
Contributor

Just tried a build using the commit from @pyhalov and @alarcher 's pull with the 5.2.20 diffs, and I get a build failure on my build system because of missing sys/soundcard.h:

/export/home/mooney/oi-userland/components/sysutils/virtualbox/build/amd64/src/VBox/Devices/Audio/DrvHostOSSAudio.cpp:22:27: fatal error: sys/soundcard.h: No such file or directory
 #include <sys/soundcard.h>
                           ^
compilation terminated.
kmk: *** [/export/home/mooney/oi-userland/components/sysutils/virtualbox/build/amd64/out/solaris.amd64/release/obj/VBoxDD/Audio/DrvHostOSSAudio.o] Error 1

I see that --enable-pulse is specified as one of the configure options. Should that preclude the OSS stuff being built? I'm just trying to understand whether the intent is that pkg:/system/header/header-audio should be required to build or not.

@alarcher
Copy link
Contributor Author

@timmooney Since I have not been all the way to the REQUIRED_PACKAGES stage, build dependencies are not specified yet. You are correct that headers should be installed.

@alarcher alarcher force-pushed the virtualbox branch 2 times, most recently from cb416d9 to afa1853 Compare November 1, 2018 04:40
@alarcher alarcher force-pushed the virtualbox branch 2 times, most recently from 96eed1e to 7f43522 Compare November 13, 2018 18:45
@alarcher alarcher changed the title [WIP] Virtualbox Virtualbox 5.2.22 Nov 13, 2018
@alarcher
Copy link
Contributor Author

Works but some issue with the interface, only runs as root...

@@ -1,34 +1,161 @@
BINDIR = out/solaris.amd64/release/bin
DRVS = vboxnet vboxdrv vboxflt vboxusb vboxusbmon
PREFIX = /opt/VirtualBox
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is this file used?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I do not think so but I left it since you added it, just in case.
Should be cleaned up just before merge.

@@ -22,6 +22,111 @@ set name=org.opensolaris.consolidation value=$(CONSOLIDATION)

license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'

set name=variant.opensolaris.zone value="global"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we mark only drivers with it (if necessary)? I suppose, one can run VirtualBox in zone, if corresponding drivers are passed to zone.

@@ -22,6 +22,111 @@ set name=org.opensolaris.consolidation value=$(CONSOLIDATION)

license $(COMPONENT_LICENSE_FILE) license='$(COMPONENT_LICENSE)'

set name=variant.opensolaris.zone value="global"
set name=pkg.depend.runpath value=$PKGDEPEND_RUNPATH:opt/VirtualBox/amd64
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s/amd64/$(MACH64)/

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks

file path=usr/share/mime/packages/virtualbox.xml
file path=usr/share/pixmaps/VBox.png
file path=usr/share/pixmaps/virtualbox.png
file path=var/svc/manifest/application/virtualbox/virtualbox-autostart.xml
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we place it in /lib/svc/manifest ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK

#file path=vbox.pkginfo
#file path=vbox.space

driver name=vboxdrv
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we want to have separate driver package or mark drivers as GZ-only content?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Problem is that the script for post/pre-install steps assumes that all files are delivered. Would need some time to look at splitting the logic if a different package are provided for drivers.
Should I use a transform to mark drivers are GZ-only content? I have never done this.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just add variant.opensolaris.zone=global to driver action

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It does not work, it chokes on the actual driver files and if the same is added to them pkg returns an internal error.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, looking at illumos-gate build receipts, it seems variant.opensolaris.zone=global should be added only to actual files.

CONFIGURE_OPTIONS+= --disable-python
CONFIGURE_OPTIONS+= --disable-sdl-ttf
CONFIGURE_OPTIONS+= --disable-libvpx
CONFIGURE_OPTIONS+= --nofatal

VBOX_PREFIX = /opt/VirtualBox
Copy link
Contributor

@pyhalov pyhalov Nov 13, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we want to stick to /opt/VirtualBox layout or move it to /usr/virtualbox or /usr/lib/virtualbox to be more consistent with other packages?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we want another prefix we need to patch configuration and install scripts.
That would be better probably but I will not have time to look at this in the coming two weeks.

@alarcher
Copy link
Contributor Author

@pyhalov Given that I will be busy with relocation, feel free to push whichever change you want to the PR and merge it if you like. I cannot guarantee that I'll have time to review this in the coming two weeks.

@pyhalov
Copy link
Contributor

pyhalov commented Dec 5, 2018

kmk: *** No rule to make target `/libQt5Core.so', needed by `/export/home/alp/srcs/oi-userland/components/sysutils/virtualbox/build/amd64/out/solaris.amd64/release/obj/VBoxDbg/VBoxDbg.so'.  Stop.
kmk: *** Waiting for unfinished jobs....

@pyhalov
Copy link
Contributor

pyhalov commented Dec 5, 2018

I can install virtualbox in zone, but I haven't tried to actually run it there...


COMPONENT_NAME= VirtualBox
COMPONENT_VERSION= 5.2.22
COMPONENT_SUMMARY= VirtualBox - Host drivers
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

COMPONENT_SUMMARY should be fixed

@pyhalov
Copy link
Contributor

pyhalov commented Dec 5, 2018

Symbol relocation issue with qt5 is an issue with qt5/suid application. Briefly - for suid application to respect RUNPATH, it shouldn't contain $ORIGIN.

@pyhalov pyhalov merged commit 7134f97 into OpenIndiana:oi/hipster Dec 6, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants