Fix linux-headers package version detection

The `uname -r` command returns the version of the running kernel running
on the host machine, as the chroot environment doesn't load a new one.
This prevents the proper version of the `linux-headers-*` package from
being added when the target has a different kernel version or
architecure.

This closes #121.
This commit is contained in:
Tiago Ilieve 2014-09-02 19:53:10 -03:00
parent 881ea41a1a
commit 89a74a33c8

View file

@ -27,11 +27,11 @@ class AddGuestAdditionsPackages(Task):
info.packages.add('bzip2') info.packages.add('bzip2')
info.packages.add('build-essential') info.packages.add('build-essential')
info.packages.add('dkms') info.packages.add('dkms')
kernel_headers_pkg = 'linux-headers-'
from bootstrapvz.common.tools import log_check_call if info.manifest.system['architecture'] == 'i386':
[kernel_version] = log_check_call(['chroot', info.root, kernel_headers_pkg += '686-pae'
'uname', '-r']) else:
kernel_headers_pkg = 'linux-headers-' + kernel_version kernel_headers_pkg += 'amd64'
info.packages.add(kernel_headers_pkg) info.packages.add(kernel_headers_pkg)