Discussion:
Change install kernel from kern-GENERIC.tgz for custom media
William D. Jones
2014-05-28 22:30:26 UTC
Permalink
Hello all,

I am attempting to install NetBSD on an old 486 to bring it back to life (for fun). Because the default installation media created a kernel which was too big, I needed to create my own custom boot media (two floppies modified from the commented-out INSTALL_TINY kernel). One particular snag I encountered is that my boot media always want to download a kernel named “kern-generic.tgz” from the i386/binary/sets directory of my chosen mirror. This includes the source tree that I compiled available on my home network.

For similar reasons, I needed to compile a custom kernel (based off of GENERIC_TINY) so my 486 is usable. I have figured out from browsing the NetBSD source tree that extra kernels can be included into the final release directory on a server by modifying makefiles under ${NETBSD_SRC}/etc (/usr/src/etc), which I found out purely by accident by Googling “$RELEASEDIR/binary/kernel”. I want my custom kernel to be available both i386/binary/kernel and i386/binary/sets- the default seems to be to place all kernels in i386/binary/kernel, and only a subset in i386/binary/sets) . Therefore, I can create a release directory on my home network and point my boot media to that computer. However, I can’t seem to get sysinst to try to download any kernel besides the seemingly-hardcoded kern-GENERIC.tgz. Is it possible to set an option in the NetBSD source tree- in either the Makefiles or ./build.sh- to create installation media that can choose from a list of possible kernels in a release directory?

Currently, what I have to do is boot my installation media, open ftp, download the kernel from my home network mirror under i386/binary/kernel, to the root of my drive, reboot the installation media and run the install program, telling the program to skip grabbing the kernel sources. This is error-prone and I have already had to restart the 20-minute installation no less than 5 times .

Thanks for any help any of you can give me!

Sincerely,

--
William D. Jones
Rowan University | ECE | 2012
Member IEEE
Member Tau Beta Pi
***@comcast.net
Message sent using 'Windows Live Mail' client.
David Brownlee
2014-06-07 18:04:36 UTC
Permalink
Post by William D. Jones
Hello all,
I am attempting to install NetBSD on an old 486 to bring it back to life
(for fun). Because the default installation media created a kernel which
was too big, I needed to create my own custom boot media (two floppies
modified from the commented-out INSTALL_TINY kernel). One particular snag I
encountered is that my boot media always want to download a kernel named
“kern-generic.tgz” from the i386/binary/sets directory of my chosen mirror.
This includes the source tree that I compiled available on my home network.
For similar reasons, I needed to compile a custom kernel (based off of
GENERIC_TINY) so my 486 is usable. I have figured out from browsing the
NetBSD source tree that extra kernels can be included into the final
release directory on a server by modifying makefiles under
${NETBSD_SRC}/etc (/usr/src/etc), which I found out purely by accident by
Googling “$RELEASEDIR/binary/kernel”. I want my custom kernel to be
available *both* i386/binary/kernel and i386/binary/sets- the default
seems to be to place all kernels in i386/binary/kernel, and only a subset
in i386/binary/sets) . Therefore, I can create a release directory on my
home network and point my boot media to that computer. However, I can’t
seem to get sysinst to try to download any kernel besides the
seemingly-hardcoded kern-GENERIC.tgz. Is it possible to set an option in
the NetBSD source tree- in either the Makefiles or ./build.sh- to create
installation media that can choose from a list of possible kernels in a
release directory?
Currently, what I have to do is boot my installation media, open ftp,
download the kernel from my home network mirror under i386/binary/kernel,
to the root of my drive, reboot the installation media and run the install
program, telling the program to skip grabbing the kernel sources. This is
error-prone and I have already had to restart the 20-minute installation no
less than 5 times [image: Smile].
Thanks for any help any of you can give me!
You should be able to adjust distrib/utils/sysinst (pathnames below from
the directory)

I believe you should be able to set SET_KERNEL_2 in arch/i386/md.h (or
alter SET_KERNEL_1)

See SET_KERNEL_C700 usage in arch/zaurus/md.h & arch/zaurus/md.c - to
automatically set the generic kernel to use based on the install kernel
name.

Loading...