Install this version:
emerge -a =sys-apps/dkms-gentoo-9999
If this version is masked, you can unmask it using the autounmask tool or standard emerge options:
autounmask =sys-apps/dkms-gentoo-9999
Or alternatively:
emerge --autounmask-write -a =sys-apps/dkms-gentoo-9999
| Version | EAPI | Keywords | Slot |
|---|---|---|---|
| 9999 | 9 | 0 |
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=9
inherit git-r3
DESCRIPTION="DKMS analog for gentoo"
HOMEPAGE="https://github.com/megabaks/dkms-gentoo"
EGIT_REPO_URI="https://github.com/megabaks/${PN}.git"
LICENSE="GPL-3"
SLOT="0"
RDEPEND="
app-shells/bash
sys-apps/gawk
sys-apps/gentoo-functions
sys-apps/openrc
sys-apps/portage
"
DEPEND="${RDEPEND}"
src_prepare() {
default
sed -i '1s|#!/sbin/runscript|#!/sbin/openrc-run|' dkms-gentoo/dkms || die
# Trunk sources isolated-functions.sh from /usr/lib*/portage/bin, which
# portage no longer installs, so eend is undefined; use gentoo-functions.
sed -i 's|^source /usr/lib\*/portage/bin/isolated-functions\.sh$|. /lib/gentoo/functions.sh|' \
dkms-gentoo/dkms-gentoo || die
grep -q '^\. /lib/gentoo/functions\.sh$' dkms-gentoo/dkms-gentoo ||
die "dkms-gentoo no longer sources isolated-functions.sh; recheck"
}
src_install() {
dosbin dkms-gentoo/dkms-gentoo
newinitd dkms-gentoo/dkms dkms
dodir /var/lib/portage
DKMS_DB="${D}/var/lib/portage/dkms_db" "${D}"/usr/sbin/dkms-gentoo --db || die
# The script ends its database run with an unchecked touch and eend 0.
[[ -f ${D}/var/lib/portage/dkms_db ]] || die "dkms-gentoo --db did not create the database"
}
pkg_preinst() {
# Keep the existing database across reinstalls.
if [[ -f "${EROOT}/var/lib/portage/dkms_db" ]]; then
cp "${EROOT}/var/lib/portage/dkms_db" \
"${D}/var/lib/portage/dkms_db" || die
fi
}
pkg_postinst() {
[[ ! -f /etc/runlevels/*/dkms ]] && elog "Now you need run 'rc-update add dkms boot'"
}
app-shells/bash sys-apps/gawk sys-apps/gentoo-functions sys-apps/openrc sys-apps/portage
app-shells/bash sys-apps/gawk sys-apps/gentoo-functions sys-apps/openrc sys-apps/portage