You are not logged in.

#1 2016-03-06 17:27:49

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 10,719
Website

Suppress a pacman hook? virtualbox-host-dkms related [SOLVED]

Long story short, I am unable to build a custom package virtualbox-modules-custom which I have adapted to run on my own kernel since virtualbox-host-dkms runs the a hook that automatically builds the module that my PKGBUILD supplies.  Is there a way I can have pacman skip running this hook as I try to work through this?  My goal is to continue building my virtualbox-modules-custom package without simply using the dkms package.  Thanks!

...or perhaps the problem lies with my PKGBUILD?  Here is what happens when I attempt to build it post pacman-5.0.x:

% makepkg -s
==> Making package: virtualbox-custom-modules 5.0.14-3 (Sun Mar  6 12:24:51 EST 2016)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Installing missing dependencies...
resolving dependencies...
looking for conflicting packages...

Packages (2) dkms-2.2.0.3+git151023-6  virtualbox-host-dkms-5.0.14-4

Total Download Size:    0.05 MiB
Total Installed Size:  10.39 MiB

:: Proceed with installation? [Y/n] 
:: Retrieving packages...
 dkms-2.2.0.3+git151023-6-any                        50.9 KiB   760K/s 00:00 [############################################] 100%
(2/2) checking keys in keyring                                               [############################################] 100%
(2/2) checking package integrity                                             [############################################] 100%
(2/2) loading package files                                                  [############################################] 100%
(2/2) checking for file conflicts                                            [############################################] 100%
:: Processing package changes...
(1/2) installing dkms                                                        [############################################] 100%
Optional dependencies for dkms
    linux-headers: build modules against Arch kernel
    linux-lts-headers: build modules against LTS Arch kernel
(2/2) installing virtualbox-host-dkms                                        [############################################] 100%
Optional dependencies for virtualbox-host-dkms
    linux-headers
    linux-lts-headers
:: Running post-transaction hooks...
(1/1) Install DKMS modules

Creating symlink /var/lib/dkms/vboxhost/5.0.14_OSE/source ->
                 /usr/src/vboxhost-5.0.14_OSE

DKMS: add completed.

Kernel preparation unnecessary for this kernel.  Skipping...

Building module:
cleaning build area...
make KERNELRELEASE=4.3.6-1-custom -C /usr/lib/modules/4.3.6-1-custom/build M=/var/lib/dkms/vboxhost/5.0.14_OSE/build........
cleaning build area...
Kernel cleanup unnecessary for this kernel.  Skipping...

DKMS: build completed.

vboxdrv.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /usr/lib/modules/4.3.6-1-custom/kernel/misc/

vboxnetflt.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /usr/lib/modules/4.3.6-1-custom/kernel/misc/

vboxnetadp.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /usr/lib/modules/4.3.6-1-custom/kernel/misc/

vboxpci.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /usr/lib/modules/4.3.6-1-custom/kernel/misc/

depmod...

DKMS: install completed.
==> Retrieving sources...
==> Extracting sources...
==> Starting build()...
  -> Host modules
Error! Could not find module source directory.
Directory: /usr/src/vboxhost-5.0.14 does not exist.
==> ERROR: A failure occurred in build().
    Aborting...

Last edited by graysky (2016-03-06 18:37:07)

Offline

#2 2016-03-06 17:31:45

eschwartz
Fellow
Registered: 2014-08-08
Posts: 4,097

Re: Suppress a pacman hook? virtualbox-host-dkms related [SOLVED]

Hooks can be overridden by placing a matching hookname.hook in a later HookDir (e.g. the default pacman..conf HookDir /etc/pacman.d/hooks/ will override the builtin /usr/share/libalpm/hooks/).

A symlink to /dev/null will disable the hook. (See `man alpm-hooks` under "Overriding Hooks".)


Managing AUR repos The Right Way -- aurpublish (now a standalone tool)

Offline

#3 2016-03-06 17:46:36

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 10,719
Website

Re: Suppress a pacman hook? virtualbox-host-dkms related [SOLVED]

@Eschwatrz - Thanks for that info... upon looking closer I am unable to see in the virtualbox-host-dkms PKGBUILD that pacman is even asked to call a hook, yet:

...
(2/2) installing virtualbox-host-dkms                                        [############################################] 100%
Optional dependencies for virtualbox-host-dkms
    linux-headers
    linux-lts-headers
:: Running post-transaction hooks...

Further, I have no dir /etc/pacman.d/hooks and /usr/share/libalpm/hooks which does exist on my filesystem is empty.

Offline

#4 2016-03-06 17:51:16

eschwartz
Fellow
Registered: 2014-08-08
Posts: 4,097

Re: Suppress a pacman hook? virtualbox-host-dkms related [SOLVED]

That's odd, because the "dkms" package provides the files "/usr/share/libalpm/hooks/70-dkms-install.hook" and "/usr/share/libalpm/hooks/70-dkms-remove.hook". And "virtualbox-host-dkms" depends on "dkms"...

As for /etc/pacman.d/hooks, you will have to create it manually if you want to use it.


Managing AUR repos The Right Way -- aurpublish (now a standalone tool)

Offline

#5 2016-03-06 18:36:52

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 10,719
Website

Re: Suppress a pacman hook? virtualbox-host-dkms related [SOLVED]

@E - Ah! The makedeps was removed when I checked.... I got it working with the /dev/null symlinks.  Thanks!

% ls -l /etc/pacman.d/hooks
total 0
lrwxrwxrwx 1 root root 9 Mar  6 13:29 70-dkms-install.hook -> /dev/null
lrwxrwxrwx 1 root root 9 Mar  6 13:29 70-dkms-remove.hook -> /dev/null

For someone else finding this thread in the future, I also needed to modify the PKGBUILD since now, dkms expects the source to be under:
/usr/src/5.0.14_OSE rather than /usr/src/5.0.14

Link to the new functional PKGBUILD.

Last edited by graysky (2016-03-06 18:38:03)

Offline

Board footer

Powered by FluxBB