I would like to make an alpine installation iso which has the following attributes:

  1. During installation it has an answerfile so that the setup process (the setup script) takes those default inputs for use during installation (timezone, keyboard type etc...)

  2. ISO comes prepackaged with certain "life saver dependencies" like wpa_supplicant (for wifi) and bluetooth drivers for connectivity.

  3. The installation once initiated manually proceeds to completion using the default values in #1 without ever requiring manual input.

  4. Post the installation it creates a user profile with necessary privileges and does a first time setup like pulling in required libs and/or connecting to "mother server" for further configuration.

I explored lot of options: alpine-linux-iso-maker script, Cobbler, Chef etc... The only thing that comes close to accomplishing this is /sbin/setup-* script using answer file.

Is there a standard way to bake in the answerfile and dependencies into alpine linux iso?

1 Answer 1

  1. Alpine is shipped with several helper scripts, one of those is setup-alpine. This scripts support an answer file, as you can see:
usage: setup-alpine [-ahq] [-c FILE | -f FILE]

Setup Alpine Linux

 -a  Create Alpine Linux overlay file
 -c  Create answer file (do not install anything)
 -e  Empty root password
 -f  Answer file to use installation
 -h  Show this help
 -q  Quick mode. Ask fewer questions.

So you can create an answer file with your preferred settings.

  1. Alpine Extended has these packages, otherwise if you want a custom ISO you can use the scripts shipped with aports: https://gitlab.alpinelinux.org/alpine/aports/tree/master/scripts

    A good tutorial on how create a custom iso for alpine can be found here: https://wiki.alpinelinux.org/wiki/How_to_make_a_custom_ISO_image_with_mkimage

  2. See point n.1 with the setup-alpine -c and setup-alpine -f

  3. This is slightly more complex. You can go ahead and make a script to put in /etc/local.d who does the job, but after the initial setup, you should remove from auto start (with rc-update del local). A good example of this kind of script can be found here: https://git.sr.ht/~sircmpwn/builds.sr.ht/tree/master/images/alpine/genimg

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.