Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 58603 - Genkernel doesn't install external kernel modules
Summary: Genkernel doesn't install external kernel modules
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo Genkernel Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-07-27 17:25 UTC by David Brown
Modified: 2004-07-28 00:00 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Brown 2004-07-27 17:25:33 UTC
When I use genkernel to make a new kernel alsa-drivers are wipped out and I have to emerge them after the kernel is made. I made a diff for /usr/share/genkernel/genkernel to fix this, it handles alsa-driver and nvidia just fine.

Reproducible: Always
Steps to Reproduce:
1. use genkernel to make a new kernel
2. reboot and find that alsa isn't working X doesn't either
3.

Actual Results:  
No sound or X

Expected Results:  
Made the sound still work and X work as well

Here's the diff

--- genkernel.org       2004-07-27 17:13:47.595657680 +0000
+++ genkernel   2004-07-27 17:13:08.394617144 +0000
@@ -130,7 +130,7 @@
        # Compile modules
        compile_modules

-       print_info 1 "Copying config for successful build to
/etc/kernels/kernel-config-${ARCH}-${KV}"
+       print_info 1 "Copying ${KERNEL_DIR}/.config for successful build to
/etc/kernels/kernel-config-${ARCH}-${KV}"
        [ ! -e "/etc/kernels" ] && mkdir -p /etc/kernels
        cp "${KERNEL_DIR}/.config" "/etc/kernels/kernel-config-${ARCH}-${KV}"
 fi
@@ -237,3 +237,19 @@
 print_info 1 'is about the default genkernel configuration...'
 print_info 1 ''
 print_info 1 'Make sure you have the latest genkernel before reporting bugs.'
+print_info 1 ''
+print_info 1 "Making external kernel drivers ${KERNEL_EXT_DRIVER}"
+
+# emerging external kernel modules
+export KERNEL_DIR="${KERNEL_DIR}"
+export KV_OUPUT="`basename ${KERNEL_DIR}`"
+for x in ${KERNEL_EXT_DRIVER}
+do
+       if [ "`echo $x | grep alsa`" != "" ]
+       then
+               print_info 2 "export ALSA_CARDS=${ALSA_CARDS}" 1 0 1
+               export ALSA_CARDS="${ALSA_CARDS}"
+       fi
+       print_info 2 "executing emerge =${x}" 1 0 1
+       emerge "=${x}"
+done


Have fun ;)
Comment 1 David Brown 2004-07-27 17:29:56 UTC
Sorry forgot to show my genkernel.conf file

# Genkernel Configuration File

# ===========GENKERNEL BASIC CONFIGURATION=============

# Run 'make menuconfig' before compiling this kernel?
MENUCONFIG="yes"

# Run 'make clean' before compilation?
# If set to NO, implies MRPROPER WILL NOT be run
# Also, if clean is NO, it won't copy over any configuration
# file, it will use what's there.
CLEAN="no"

# Run 'make mrproper' before configuration/compilation?
MRPROPER="no"

# Copy bootsplash into the initrd image?
BOOTSPLASH="yes"

# Override the arch detection?
# ARCH_OVERRIDE="x86"

# Mount /boot automatically if it isn't mounted?
MOUNTBOOT="yes"

# Use Color output in Genkernel?
USECOLOR="yes"

# External kernel drivers to recompile after kernel
KERNEL_EXT_DRIVER="media-sound/alsa-driver media-video/nvidia-kernel"
ALSA_CARDS="intel8x0"

# =========GENKERNEL LOCATION CONFIGURATION============
# Variables:
#   %%ARCH%% - Final determined architecture

# Default share directory location
GK_SHARE="/usr/share/genkernel"

# Location of helper-scripts
#GK_BIN="${GK_SHARE}/bin"
GK_BIN="${GK_SHARE}"
# Log output file
DEBUGFILE="/var/log/genkernel.log"
# Debug Level
DEBUGLEVEL=10

# Default location of kernel source
DEFAULT_KERNEL_SOURCE="/usr/src/linux"
# Default kernel config (only use to override using %%ARCH%%/kernel-config-${VER}.${PAT} !)
# DEFAULT_KERNEL_CONFIG="${GK_SHARE}/%%ARCH%%/kernel-config"

# Configuration file for busybox
BUSYBOX_CONFIG="${GK_SHARE}/%%ARCH%%/busy-config"
# BusyBox Version
BUSYBOX_VER="1.00-pre7-losetup-crypto-alpha"
# Busybox bin-cache location, to store pre-compiled busybox
# binary is just a bzip2 busybox executable
BUSYBOX_BINCACHE="${GK_SHARE}/pkg/%%ARCH%%/busybox-${BUSYBOX_VER}-%%ARCH%%.bz2"
# Location of BusyBox source tarball
BUSYBOX_SRCTAR="${GK_SHARE}/pkg/busybox-${BUSYBOX_VER}.tar.bz2"
# Directory created after busybox tarball is extracted
BUSYBOX_DIR="busybox-${BUSYBOX_VER}"

MODULE_INIT_TOOLS_VER="0.9.15-pre4"
MODULE_INIT_TOOLS_SRCTAR="${GK_SHARE}/pkg/module-init-tools-${MODULE_INIT_TOOLS_VER}.tar.bz2"
MODULE_INIT_TOOLS_DIR="module-init-tools-${MODULE_INIT_TOOLS_VER}"
MODULE_INIT_TOOLS_BINCACHE="${GK_SHARE}/pkg/%%ARCH%%/insmod-%%ARCH%%-static-2.6.bz2"

MODUTILS_VER="2.4.26"
MODUTILS_SRCTAR="${GK_SHARE}/pkg/modutils-${MODUTILS_VER}.tar.bz2"
MODUTILS_DIR="modutils-${MODUTILS_VER}"
MODUTILS_BINCACHE="${GK_SHARE}/pkg/%%ARCH%%/insmod-%%ARCH%%-static-2.4.bz2"

DIETLIBC_VER="0.24"
DIETLIBC_SRCTAR="${GK_SHARE}/pkg/dietlibc-${DIETLIBC_VER}.tar.bz2"
DIETLIBC_DIR="dietlibc-${DIETLIBC_VER}"
DIETLIBC_BINCACHE="${GK_SHARE}/pkg/%%ARCH%%/dietlibc-${DIETLIBC_VER}-%%ARCH%%.tar.bz2"
DIETLIBC_BINCACHE_TEMP="${GK_SHARE}/pkg/%%ARCH%%/dietlibc-${DIETLIBC_VER}-%%ARCH%%-tempdir"

DEVFSD_VER="1.3.25-dietlibc-kernel25"
DEVFSD_SRCTAR="${GK_SHARE}/pkg/devfsd-${DEVFSD_VER}.tar.bz2"
DEVFSD_DIR="devfsd"
DEVFSD_BINCACHE="${GK_SHARE}/pkg/%%ARCH%%/devfsd-${DEVFSD_VER}-%%ARCH%%.bz2"
DEVFSD_CONF_BINCACHE="${GK_SHARE}/pkg/%%ARCH%%/devfsd-conf-${DIETLIBC_VER}-%%ARCH%%.bz2"
Comment 2 Tim Yamin (RETIRED) gentoo-dev 2004-07-28 00:00:41 UTC
You should be able to do all of this and more by just running genkernel --callback="emerge $modules" or adding CMD_CALLBACK="..." to /etc/genkernel.conf; so I'm closing this as INVALID.