diff --git a/diskimage_builder/elements/debootstrap/finalise.d/80-update-initramfs b/diskimage_builder/elements/debootstrap/finalise.d/80-update-initramfs new file mode 100755 index 00000000..a02dd649 --- /dev/null +++ b/diskimage_builder/elements/debootstrap/finalise.d/80-update-initramfs @@ -0,0 +1,38 @@ +#!/bin/bash +# +# Copyright 2017 Andreas Florath +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# +if [ "${DIB_DEBUG_TRACE:-0}" -gt 0 ]; then + set -x +fi +set -eu +set -o pipefail + +# Many elements install additional distribution packages. +# In addition the user can provide a set of packages to be installed +# via the '-p' switch. +# Some of them influence the boot process and therefore the initramfs +# needs to be updated. Because the package manager during the image +# creation process is configured not to run package scripts, this needs +# to be done explicitly. +update-initramfs -u + +# Please note that the 'dracut-regenerate' element does a similar job. +# Nevertheless the update-initramfs / mkinitramfs are (currently) the +# standard way for Debian / Ubuntu. +# Also the 'dracut-regenerate' element can currently (Sep 2017) not +# be used with Ubuntu, because of some problems, e.g. it clashes with +# the ubuntu-minimal distribution package (not the DIB element with +# the same name).