3
3
# This script will be run by 'mkinitramfs' when it creates the image.
4
4
# Its job is to decide which files to install, then install them into
5
5
# the staging area, where the initramfs is being created. This
6
# happens when a new 'linux-image' package is installed, or when an
6
# happens when a new 'linux-image' package is installed, or when the
7
7
# administrator runs 'update-initramfs' by hand to update an initramfs
68
68
CONFDIR="/conf/conf.d/mandos"
69
69
MANDOSDIR="/lib/mandos"
70
70
PLUGINDIR="${MANDOSDIR}/plugins.d"
71
HOOKDIR="${MANDOSDIR}/network-hooks.d"
74
73
install --directory --mode=u=rwx,go=rx "${DESTDIR}${CONFDIR}" \
75
"${DESTDIR}${MANDOSDIR}" "${DESTDIR}${HOOKDIR}"
74
"${DESTDIR}${MANDOSDIR}"
76
75
install --owner=${mandos_user} --group=${mandos_group} --directory \
77
76
--mode=u=rwx "${DESTDIR}${PLUGINDIR}"
110
# Get DEVICE from initramfs.conf and other files
111
. /etc/initramfs-tools/initramfs.conf
112
for conf in /etc/initramfs-tools/conf.d/*; do
113
if [ -n `basename \"$conf\" | grep '^[[:alnum:]][[:alnum:]\._-]*$' \
114
| grep -v '\.dpkg-.*$'` ]; then
115
[ -f ${conf} ] && . ${conf}
121
for hook in /etc/mandos/network-hooks.d/*; do
122
case "`basename \"$hook\"`" in
124
*[!A-Za-z0-9_.-]*) continue ;;
125
*) test -d "$hook" || copy_exec "$hook" "${HOOKDIR}" ;;
127
if [ -x "$hook" ]; then
128
# Copy any files needed by the network hook
129
MANDOSNETHOOKDIR=/etc/mandos/network-hooks.d MODE=files \
130
VERBOSITY=0 "$hook" files | while read file target; do
131
if [ ! -e "${file}" ]; then
132
echo "WARNING: file ${file} not found, requested by Mandos network hook '${hook##*/}'" >&2
134
if [ -z "${target}" ]; then
137
copy_exec "$file" "$target"
140
# Copy and load any modules needed by the network hook
141
MANDOSNETHOOKDIR=/etc/mandos/network-hooks.d MODE=modules \
142
VERBOSITY=0 "$hook" modules | while read module; do
143
if [ -z "${target}" ]; then
151
libgpgme11_version="`dpkg-query --showformat='${Version}' --show libgpgme11`"
152
if dpkg --compare-versions "$libgpgme11_version" ge 1.4.1-0.1; then
157
if [ ! -e "${DESTDIR}$gpg" ]; then
161
unset libgpgme11_version
109
# GPGME needs /usr/bin/gpg
110
if [ ! -e "${DESTDIR}/usr/bin/gpg" \
111
-a -n "`ls \"${DESTDIR}\"/usr/lib/libgpgme.so* \
112
2>/dev/null`" ]; then
113
copy_exec /usr/bin/gpg
164
117
for file in /etc/mandos/plugin-runner.conf; do