[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Customizing the kernel installation process



On Sun, 4 Apr 2010 14:19:08 -0400 (EDT), Manoj Srivastava wrote:
> On Sun, Apr 04 2010, briand@aracnet.com wrote:
>>
>> for the longest time I have downloaded the kernel tarball and built
>> outside of debian.  however I'd like to use the debian nvidia packages,
>> so I'm trying to build the kernel in the debian framework.  however,
>> rebuilding nvidia for the latest kernel has now become a problem (in
>> the debian framework), so I'm thinking about dropping back to the
>> tarball method.
>>
>> Maybe I need to be a little more persistent and then write something
>> about rebuilding nvidia to complement Stephen's work.
>>
>> It is very handy having things installed as packages.
> 
>         For what it is worth, I also have an nvidia card. I nowadays
>  just use the kernel git tree. My usual sequence of action is to
> 
> ,----
> |  % cd /usr/local/src/kernel/linus-tree.git
> |  % git fetch stable
> |  % git co -b my-machine-v2.6.33.2 v2.6.33.2
> |  % make oldconfig
> |  % ./.compile_command
> |  % sudo dpkg -i ../*.deb
> `----
> 
>        Where .compile command looks like:
> 
> ,----
> | #!/bin/sh
> |
> | export MODULE_LOC=/usr/local/src/kernel/modules
> |
> | # Optionally, refresh the nvidia module
> | # rm -rf ${MODULE_LOC}/nvidia-kernel
> | ># (cd /usr/local/src/kernel; tar jfx /usr/src/nvidia-kernel.tar.bz2
> |
> | # make sure we get a machine specific name for the image, even if
> | # I forgot to specify one on the command line
> | ev=$(uname -n)
> |
> | # Use the version extension given on the command line, if any
> | if [ -n "$1" ]; then
> |	  ev=$1
> | fi
> |
> | make-kpkg --rootcmd=fakeroot --append-to-version=-$ev kernel_image
> | fakeroot make-kpkg           --append-to-version=-$ev modules_image
> `----
> 
> Once you have your variant of .compile_command, building kernels
> and nvidia packages is  painless :-)
>

Thanks for participating, Manoj.  If you needed to compile a custom
kernel for some reason, and you were going to use an official Debian
kernel source package (linux-source-2.6.32, for example), and you
were going to use make-kpkg to create your custom kernel image, and
you also wanted to use the proprietary Nvidia drivers, how would you
do it?  That's a specific example that I would like to integrate into
my HOWTO.  If I were smarter, or more experienced, I would probably
be able to derive the steps from the above.  But unfortunately, I'm not.

Use official Debian packages wherever possible.  But if the user has
a custom kernel, I seem to remember that a kernel module that is
customized for that kernel has to be built somehow.  And I'd like
make-kpkg do do as much of the work as possible.  A single invocation
of make-kpkg that has both the kernel_image and modules_image targets
would be ideal.  I haven't built a separate modules_image package since
the days when ALSA was not part of the kernel.  That's been a while!

-- 
  .''`.     Stephen Powell    <zlinuxman@wowway.com>
 : :'  :
 `. `'`
   `-


Reply to: