Virtualbox + Tumbleweed

Hi guys.

I am using Tumbleweed on a normal PC install, I want to use virtualbox on that machine but whenever I try to install Virtualbox it tries to download and install kernel version 2.6.37.
I currently have v2.6.39 installed on my PC. Is there a way to install virtualbox without the kernel downgrade?

Greg KH explained he had to drop Virtualbox from Tumbleweed, because it was too much work to support the Virtual Box kernel modules required for the regular kernel updates.

May be you could work round this, by enabling multiple kernel versions, then install the 11.4 kernel with virtual box stuff and boot from that kernel by default, rather than the Tumbleweed kernel. There may be problems doing that, it’s what I’d try first. Look for in /etc/zypp/zypp.conf :

multiversion = provides:multiversion(kernel)

There used to be docs explaining feature on opensuse.org (dating from when it was developed 2-3 yrs back). I’m running a SuSE Studio DVD appliance right now, so can’t tell you how it’s set up by default in 11.4 install.

hmm… do you maybe know off hand if vmware works?

According to the auspices at httphttp://en.opensuse.org/Portal:Tumbleweed:// the net gods are benevolent.

Special Concerns

Virtual Machines 

openSUSE 11.4 supports VirtualBox. Due to it not being in the mainline kernel and Tumbleweed routinely receiving kernel updates, it has been decided not to support VirtualBox in the main Tumbleweed repo.

Tumbleweed does support the vmware and hyper-v virtual machine architectures.

This is because they are in the main upstream kernel and require no significant extra resources to make available with each kernel update.

Third Party Drivers 

If you have 3rd party kernel modules, Greg KH (the primary Tumbleweed maintainer) STRONGLY suggests that you not use Tumbleweed. Seriously, it’s not worth the pain and extra work, unless you really want to do it.

And if you do do it, then again, you are on your own, sorry.

Have faith in Greg KH, I haven’t tried it myself…

Tumbleweed runs virtualbox just fine. I’ve been running VMs in virtualbox in Tumbleweed through all kernel upgrades from 2.6.37.1 through 2.6.39.1.

Careful:
With the 2.6.37 kernel and also with the earlier Tumblweed kernels, I needed to add in the guest-kmp RPM (e.g. virtualbox-guest-kmp-desktop). I got this from the VBox Tumbleweed repo, here: 'http://download.opensuse.org/repositories/Virtualization:/VirtualBox_Tumbleweed/openSUSE_Tumbleweed

Somewhere along the way, the virtualbox-guest-kmp-desktop RPM was no longer needed. Now I need only the one VBox RPM for it to run well in the later kernel 2.6.39.1. My RPM is “VirtualBox-4.0”. I have kept the 11.4 OracleVBox repo attached but now that the later kernel no longer needs “guest-kmp”, I’ve detached the TumbleweedVBox repo. The repos I now use successfully with Tumbleweed and VBox are below:

#  | Alias                            | Name                      | Enabled | Refresh | URI                                                                                                
---+----------------------------------+---------------------------+---------+---------+---------------------------------------------------------------------------------------------------- 
 1 | Tumbleweed                       | Tumbleweed                | Yes     | Yes     | http://download.opensuse.org/repositories/openSUSE:/Tumbleweed/standard/                           
 2 | TumbleweedPackman                | TumbleweedPackman         | Yes     | Yes     | http://packman.inode.at/suse/openSUSE_Tumbleweed                                                   
 3 | OracleVbox114                    | OracleVbox114             | Yes     | Yes     | http://download.virtualbox.org/virtualbox/rpm/opensuse/11.4/
 4 | Updates-for-openSUSE-11.4-11.4-0 | Updates-11.4              | Yes     | Yes     | http://download.opensuse.org/update/11.4/                                                             
 5 | download.opensuse.org-standard   | Main Repository (Contrib) | Yes     | Yes     | http://download.opensuse.org/repositories/openSUSE:/11.4:/Contrib/standard/                        
 6 | repo-non-oss                     | openSUSE-11.4-Non-Oss     | Yes     | Yes     | http://download.opensuse.org/distribution/11.4/repo/non-oss/                                       
 7 | repo-oss                         | openSUSE-11.4-Oss         | Yes     | Yes     | http://download.opensuse.org/distribution/11.4/repo/oss/  

Since the 2.6.39 kernel doesn’t seem to need the guest-kmp RPM. If you have it as a hangover from the 11.4 kernel, you’ll have to get rid of it or it might try to pull the kernel down to 2.6.37.

Somebody created a Tumbleweed VBox repo and put the VBox kernel modules in there, so it ran OK from the get go. As I explained in my earlier post, seems to be unnecessary to have those RPMs now with the later kernels, which I truly don’t understand why.

Perhaps they had a period of interface churn, which settled down for a while?
Broke in past, works today… will break again, because Vbox isn’t in mainline & someone has to integrate changes, which must be done by the mainline kernel hackers for modules included in the mainline tree (like vmware).

VirtualBox is running fine for me also in Tumbleweed. One difference I noticed from 11.4 is the app won’t even launch after a kernel update until I run the setup script.

/etc/init.d/vboxdrv setup

Sad but true, it might break again if they don’t add the modules. I have needed to pause a while at times,for them to catch up, then run my ‘zypper dup’, so it seems someone is on the job, thank goodness. But, re “it will break again”, I can say with absolute conviction that VBox is well in front of that unsupported shambles they call VMware for Linux (just my 2cents and IM[NSV]HO).

Not a burden for me, just a bit of a nerve tightener each time I run it LOL.

At the risk of just another ‘well it worked for me’ post … well it works for me lol!

Seriously, reason I’m posting is that most people seem to use some vbox repo or other whereas I’ve installed it from an rpm downloaded from virtualbox.org, same way I’ve always done it and so far even since using tumbleweed I’ve not had a problem though it does mean running the /etc/init.d/vboxdrv setup command after every kernel update and manually downloading and installing the rpm when a new version is released, but I find both a painless exercise if have beer close to hand

Don’t know if I’m just lucky but not once has the install ever tried to downgrade a kernel on me

All of you have accepted need to do some tinkering to get it working. It shows really why Greg KH documented that it’s unsupported. Able to “get it working” is very different from install & forget, no maintenance required, which should be the true aim.

Perhaps a documented “it just works” solution could be made? With & without additional repos. I’ve got to run gpart(8) on my main desktop disk, because something hosed the partition table, so I’ve got a “Tumbleweed” ready fresh install, I could play around with Virtual box on, including keeping an 11.4 + updates kernel.

VBox in tumbleweed with the advanced kernel is actually easier, less tinkering, than VBox in 11.4.

(because 11.4’s kernel needs guest-kmp RPM. They aren’t necessary in Tumbleweed ATM).

Who’s responsible for the Tumbleweed Vbox & Packman Tumbleweed Vbox repos? I’ve had kernel downgrades in Tumbleweed simply because preload-kmp-desktop build failed, when the kernel was updated, which is packages that actually are in the same repo!

If the install of VIrtual Box in 11.4 sorts out the guest kmp for you, then it’s not really a significant issue; update will sort it.

Hello, that happens because the kernel module use the 2.6.37 kernel. You can do the following:

  1. access Index of /virtualbox/rpm/opensuse/11.4/ and add the virtual box repo
  2. open Yast -> Software Management -> type virtual box and install it
  3. add yourself to the vboxusers group
  4. re-login and enjoy virtual box.

Thanks for clarifying that creatura85. There’s a long hisory in this thread of ways to deal with earlier combos of kernels and modules etc that did tend to generate dependency issues. That’s over now as you pointed out.

For future readers: the earlier posts in this thread reflect the need with earlier kernels and earlier issues of VirtualBox to install additional kernel modules (kmp RPMs). That’s over now.

Time has passed, things have improved and you can ignore all that now. You don’t need a special Tumbleweed repo for VirtualBox.

VirtualBox is now really simple: Attach the normal Sun VirtualBox Repo for openSUSE 11.4 and install only one RPM: VirtualBox. Then each time the kernel changes in Tumbleweed, run the command “/etc/init.d/vboxdrv setup” (utterly trivial) – that’s it, that’s all.

Oh, yes, that would be step 5: every time the kernel in Tumbleweed changes run the command: “/etc/init.d/vboxdrv setup”; sorry i have forgot to mention that :slight_smile:

On 07/22/2011 01:46 PM, creatura85 wrote:
>
> Oh, yes, that would be step 5: every time the kernel in Tumbleweed
> changes run the command: “/etc/init.d/vboxdrv setup”;

why couldn’t a dev automate that process in the upgrade?

if VBox exists
then ‘/etc/init.d/vboxdrv setup’
else have an orange juice


DD
Caveat-Hardware-Software
openSUSE®, the “German Engineered Automobiles” of operating systems!

I do it with a small script started from /etc/init.d/boot.local. Hacked together with - at best - semi knowledge of Linux scripting, so not elegant, no guarantees at all, may be hazardous etc.

#! /bin/sh
VERSIONS_LASTBOOT="/var/tmp/vbcheck.lastboot"
VERSIONS_CURRENT="/var/tmp/vbcheck.current"
. /etc/rc.status
rc_reset
echo -n "Check whether recompiling VirtualBox driver is necessary..."
if  -f "$VERSIONS_CURRENT" ]; then 
 rm "$VERSIONS_CURRENT"; 
fi
test -f "$VERSIONS_LASTBOOT" || touch "$VERSIONS_LASTBOOT"
uname -r >> "$VERSIONS_CURRENT"
rpm -qf /usr/bin/VirtualBox >> "$VERSIONS_CURRENT"
if cmp  --silent "$VERSIONS_LASTBOOT" "$VERSIONS_CURRENT"; then
  echo -n "no, continuing boot"
else
 echo -e "recompiling - please wait
" 
 /etc/init.d/vboxdrv setup 
 rm "$VERSIONS_LASTBOOT"
 mv "$VERSIONS_CURRENT" "$VERSIONS_LASTBOOT" 
fi
rc_status -v

I asked myself the same question, I think it comes down to kernel package not wanting to worry about triggering N package scripts, if you do it for Vbox, then perhaps Nvidia recompile should be triggered etc etc.

Perhaps it’d be workable to have a trigger, that started “on kernel update” scripts stored in a directory?

When I had a Nvidia gfx card, I used a similar script, checking not only for newer kernel versions, but also for Mesa- and Xorg updates in order to trigger recompiles.