.Dd August 13, 2017 .Dt ADELIE-BUILD-CD 8 SMM .Os "Adélie Linux" .Sh NAME .Nm adelie-build-cd .Nd create an Adélie Linux live CD image or install media .Sh SYNOPSIS .Nm .Op Fl a Ar ARCH .Op Fl f .Op Fl p Ar PHASE .Op Fl s .Op Fl v Ar VERSION .Sh DESCRIPTION .Nm creates a live CD image or installer CD image for Adélie Linux using .Xr apk 8 and .Xr mkisofs 8 . .Bl -tag -width "-v VERSION" -offset indent -compact .It Fl a Ar ARCH You may specify any architecture available in the Adélie repository for .Ar ARCH ; however, some architectures may require you to have additional utilities present on your system to be made bootable. Specifically, x86 and x86_64 require .Xr syslinux 1 to be installed. This defaults to the currently running system's architecture as reported by .Xr uname 1 . .It Fl f Specifies that a full installation image should be created, including a .Pa packages/ directory containing .apk files that can be used for an offline install. If this flag is not specified, a live image will be created instead. .It Fl p Ar PHASE Specifies the phase of image creation to make as specified in the .Sy Phases section. .It Fl s If you specify .Fl f and .Fl s , the created package index will be signed using the same key configured in .Xr abuild.conf 5 . This requires the .Xr abuild 1 suite of utilities to be available. .It Fl v Ar VERSION Specifies the version of Adélie Linux to use for the created ISO. .El .Ss Phases The .Nm utility defines the following phases for .Fl p , which can be run independently, or can be run in order by specifying the special .Sy all phase. .Bl -tag -width "install" -offset indent -compact .It clean Erase all temporary files. Typically required for predictable build results. .It install Install packages to the squash root. If .Fl f is specified, additionally create the package root and copy .apk files to it. .It initrd Generate the initrd contents in the initrd root, and create the initrd file from it. .It iso Run .Xr mksquashfs 1 on the squash root, copy the kernel to the CD root, run any architecture-specific scripts necessary to make the CD bootable, and then run .Xr mkisofs 8 to create the .ISO file. .It all_but_iso Run all of the above phases, except iso, in the above order. .It all Run all of the above phases in the above order. This is the default if .Fl p is not specified. .El .Sh ENVIRONMENT .Bl -tag -width "EXTRA_MIRROR" -offset indent -compact .It Ev Sy LDARCH If the musl ld library file is different from the apk arch (such as ppc vs ld-musl-powerpc.so.1), you may specify the name of the ld architecture as .Ev LDARCH . .It Ev Sy EXTRA_MIRROR For architectures that have subarchitectures (such as x86 with i486 and i525), you may specify the extra mirror directory to use as .Ev EXTRA_MIRROR . .It Ev Sy MY_URL Use a custom URL for downloading. This does not change the URLs written to /etc/apk/repositories on the generated image. .Pp For instance, a speedy way to generate a testing ISO on a builder would be to specify MY_URL=/srv/packages. .El .Sh FILES .Bl -ohang -width "iso-params-$ARCH" -offset indent -compact .It Pa iso-params-$ARCH A list of additional parameters to provide to .Xr mkisofs 8 when generating the ISO image for the specified architecture. This is used to specify the correct layout for bootable discs on that architecture. .Pp .It Pa packages-$ARCH A list of architecture-specific packages to install on the created media, in addition to the default packages installed on every architecture. This is typically used for bootloaders and firmware manipulation packages. It can also be used to provide further debugging tools (such as .Xr gdb 1 or .Xr strace 1 and so on) on architectures that are still experimental. .Pp .It Pa post-$ARCH.sh If this file exists and is executable, it will be run just before .Xr mkisofs 8 to do any final preparation to the disc root before creating the image. .El .Sh EXAMPLES adelie-build-cd -a x86_64 .Pp LDARCH=powerpc adelie-build-cd -a ppc .Pp EXTRA_MIRROR=i525 LDARCH=i386 SIGNING_KEY=/etc/portage/adelie.key ./build-cd -a x86 .Sh SEE ALSO .Xr mksquashfs 1 , .Xr apk 8 , .Xr mkisofs 8 . .Sh HISTORY The .Nm command first appeared during the 1.0 ALPHA1 phase. It is written in portable .St -p1003.2a-92 shell language. Any deviation from the standard should be considered a bug. .Sh AUTHORS .An A. Wilcox .Aq awilfox@adelielinux.org .Sh BUGS There is no way to specify packages that should only be included on a full disc or live disc. All disc types have the same packages installed.