blob: 1d82cd2c69abc62ea42050ade60aea306f029ae4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
#!/bin/sh
set -e
BUILDDIR="${BUILDDIR:-/tmp/buildd}"
# exit if we are in the same UTS namespace as init ( != 2nd build )
[ "$(readlink /proc/1/ns/uts)" = "$(readlink /proc/self/ns/uts)" ] && exit 0
#
# doing variations for the 2nd builds:
#
echo "I: Changing host+domainname to test build reproducibility" >&2
sed -e '/^127.0.0.1/s/$/ i-capture-the-hostname i-capture-the-hostname.i-capture-the-domain/' -i /etc/hosts
hostname i-capture-the-hostname
domainname i-capture-the-domain
echo "I: Adding a custom variable just for the fun of it..." >&2
export CAPTURE_ENVIRONMENT="I capture the environment"
echo "I: Changing /bin/sh to bash" >&2
echo "dash dash/sh boolean false" | debconf-set-selections
DEBIAN_FRONTEND=noninteractive dpkg-reconfigure dash
if [ -n "$BUILDUSERNAME" ] ; then
echo "I: Setting $BUILDUSERNAME's login shell to /bin/bash" >&2
usermod -s /bin/bash $BUILDUSERNAME
if [ -n "$BUILDUSERGECOS" ] ; then
echo "I: Setting $BUILDUSERNAME's GECOS to $BUILDUSERGECOS" >&2
usermod -c "$BUILDUSERGECOS" $BUILDUSERNAME
fi
fi
# disable disorderfs
exit 0
# use disorderfs on i386 only for now
if [ "$(dpkg --print-architecture)" != "i386" ] ; then
exit 0
fi
# use disorderfs
if [ -x /usr/bin/disorderfs ] ; then
echo -n "Moving $BUILDDIR to /tmp/disorderfs and mounting this as $BUILDDIR via the fuse disorderfs…"
mknod -m 666 /dev/fuse c 10 229
mv "$BUILDDIR" /tmp/disorderfs
mkdir "$BUILDDIR"
disorderfs --multi-user=yes /tmp/disorderfs "$BUILDDIR"
echo " done."
else
echo "Warning: disorderfs not available."
fi
|