Recipe: 004-No Raspi Config

Recipe Card


004 : No Rasp-Config


Recipe Files Ingredients
Tested: Testing in progress

See the markdown version of this recipe on the Pi-Kitchen GitHub site see:





The standard NOOBS install also triggers a program called raspi-config to run on the first boot of the operating system.

Although this program contains many useful settings, we can now apply our own settings using the Pi-Kitchen so we do not need this.

Particularly important is if we create an automatic installation, we may not even have a keyboard or display attached. Therefore, raspi-config may cause an issue on the first boot, as it will sit there waiting for user input rather than continuing with our own startup/installation scripts.

NOTE: If you do want to run raspi-config at a later point, you can, just use the command sudo raspi-config.

Stopping raspi-config running

We can stop raspi-config running by replacing the script which normally runs it with an alternative.

The recipe will replace etc/profile.d/ which doesn’t include the call to raspi-config.

Performing post raspi-config steps

Once raspi-config runs, it performs two actions:

  1. It deletes the etc/profile.d/ script (we don’t need to do this since our version doesn’t run raspi-config).
  2. It modifies etc/inittab.

The etc/inittab file before raspi-config:

#1:2345:respawn:/sbin/getty --noclear 38400 tty1 # RPICFG_TO_ENABLE

1:2345:respawn:/bin/login -f root tty1 </dev/tty1 >/dev/tty1 2>&1 # RPICFG_TO_DISABLE

The etc/inittab file after raspi-config:

1:2345:respawn:/sbin/getty --noclear 38400 tty1 # RPICFG_TO_ENABLE

#1:2345:respawn:/bin/login -f root tty1 </dev/tty1 >/dev/tty1 2>&1 # RPICFG_TO_DISABLE

Within raspi-config the program performs the following actions:

disable_raspi_config_at_boot() {

  if [ -e /etc/profile.d/ ]; then

    rm -f /etc/profile.d/

    sed -i /etc/inittab 

      -e "s/^#(.*)#s*RPICFG_TO_ENABLEs*/1/" 

      -e "/#s*RPICFG_TO_DISABLE/d"

    telinit q



Additionally, we have to set the environment variable TERM (for some reason this is not set if raspi-config is not run on start up). If not then programs will not run correctly from the command line:

Error Opening Terminal: Unknown

tput: No value for $TERM and no -T specified

This only happens when connected to a local screen – remote connections do not have a problem (hence I did not notice until I used a HDMI screen).

Therefore we add the following to etc/profile.d/ to fix this:


WARNING: Although this recipe does work, there are still parts which I am not happy with. The terminal is fine for remote connections, but the local (via a screen) has pi@raspberrypi added to the terminal name. However it does the job and allows the start-up scripts to run. This recipe will be updated when I’ve fixed it.


The ingredient files should be placed in the following location on the NOOBS RECOVERY partition:




This recipe uses the following files:





You can download all the ingredient files, and extracted directly to the NOOBS SD-Card (ensuring you remove the ZIP file’s name from the directory – the files should be extracted to pi-kitchen/004-no-raspiconfig).

The Recipe Files

Each recipe will use one file for each of the partitions it installs to – boot, root and data).

You will need to suitably rename or copy the content of each of the following files into your recipe files (i.e. RaspbianPiKitchen_root.txt) and place them in your os folder in the NOOBS partition (i.e. os/Raspbian).

For more information see the Pi-Kitchen: Creating Flavours guide.



#Recipe: 004-no-raspiconfig

#- Stop raspi-config being run on first boot by replacing the defaults file

../../pi-kitchen/004-no-raspiconfig/etc/profile.d/ /etc/profile.d # root root

../../pi-kitchen/004-no-raspiconfig/etc/inittab /etc 644 root root

Enjoy baking your Raspberry Pi SD-Card fresh from the Pi-Kitchen.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.