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

Building debian-installer CD images - was: Re: Debian Sid PPC64 / IBM pSeries 550 --- Bootloaders don't work after succesful install



On 11/13/20 5:55 PM, Anatoly Pugachev wrote:
> It would nice to have instructions on how to build an iso image,
> probably step by step,
> since all my attempts to build something bootable on sparc64 and/or
> ppc64 actually failed.

It doesn't really involve much. You can mostly follow Helge's instructions
from [1].

You don't need to build debian-installer manually and you don't need
to include the bootloader installers manually.

Just create a local repository copy of Debian Ports with reprepro and
make sure you include both unstable and unreleased.

Then edit CONF.sh and easy-build.sh to work with Debian Ports and your local
mirror paths. You can just use script versions attached to this mail, just
edit "MIRROR", "OUT" and "APTTMP" in CONF.sh to match your personal setup.

In easy-build.sh, you also must set the path to where the debian-installer
images can be found, e.g.:

export DI_DIR="/home/glaubitz/d-i/%ARCH%/installer-%ARCH%/current/images/"

I usually build current d-i images locally (natively or with qemu-user),
then copy the resulting tarball into /home/glaubitz/d-i on the CD building
machine and extract the tarball there which includes the folder installer-$ARCH.

You just have to make sure the kernel packages that are in your local repo
have the same _ABI_ (not kernel) version as the kernel in the debian-installer
you are using.

For example, if you have "linux-image-5.9.0-2-powerpc_5.9.6-1_powerpc.deb" in
the mirror in $MIRROR/debian-ports/pool-powerpc/main/l/linux/, then debian-installer
must have been built with "LINUX_KERNEL_ABI ?= 5.9.0-2" in build/config/common.

You can just build debian-installer locally with a regular sbuild setup.

Then build an image with:

# ./easy-build-ports.sh NETINST powerpc # or whatever arch you want

That's it.

If you run into any problems, let me know and I'll help you.

Oh, and for m68k, you need to use genisoimage from cdrkit instead of xorriso since
the latter does not support legacy HFS filesystems yet (also something that I
would like to see fixed upstream):

export MKISOFS="xorriso"
export MKISOFS_OPTS="-as mkisofs -r -checksum_algorithm_iso md5,sha256,sha512"
export m68k_MKISOFS="genisoimage"
export m68k_MKISOFS_OPTS="-r -checksum_algorithm_iso md5,sha256,sha512"

Adrian

> [1] https://parisc.wiki.kernel.org/index.php/How_to_create_Debian_unstable_iso_images

-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer - glaubitz@debian.org
`. `'   Freie Universitaet Berlin - glaubitz@physik.fu-berlin.de
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913

Attachment: easy-build-ports.sh
Description: application/shellscript

Attachment: CONF-ports.sh
Description: application/shellscript


Reply to: