]> piware.de Git - bin.git/blob - postinst-setup
move backup to duplicity
[bin.git] / postinst-setup
1 #!/bin/sh -e
2
3 # need bzr and postfix for the setup below
4 DEBIAN_FRONTEND=noninteractive apt-get -y install --no-install-recommends postfix openssh-server bzr python-paramiko apt-cacher-ng
5
6 # root's ssh stuff
7 if [ ! -d /root/.ssh ] && [ -d /home/martin/.ssh ]; then
8     mkdir -p /root/.ssh
9     chmod 700 /root/.ssh
10     cp /home/martin/.ssh/id_rsa* /home/martin/.ssh/known_hosts /home/martin/.ssh/config /root/.ssh/
11 fi
12
13 # restore /etc bzr branch, rescue the files we do not want to restore
14 # completely
15 cd /etc
16 if [ ! -d /etc/.bzr ]; then
17     [ -e /backup-etc ] || bzr branch bzr+ssh://martin@piware.de/home/martin/backup/`hostname`-etc /backup-etc
18     cp -av /backup-etc/* /etc/
19     cp -av /backup-etc/.bzr/ /etc/
20     rm -rf /backup-etc
21     chmod 600 /etc/ssh/ssh_*_key
22     chmod 700 /etc/ssl/private
23     chmod 640 /etc/ssl/private/ssl-cert-*
24     chown root:ssl-cert /etc/ssl/private/ssl-cert*
25     echo "none /tmp tmpfs defaults 0 0" >> /etc/fstab
26 fi
27
28 # set up apt-cacher-ng
29 /etc/init.d/apt-cacher-ng stop
30 mkdir -p /scratch/apt-cacher-ng
31 sed -i '/^CacheDir:/ s!^.*!CacheDir: /scratch/apt-cacher-ng!' /etc/apt-cacher-ng/zz_debconf.conf
32 chown -R apt-cacher-ng:apt-cacher-ng /scratch/apt-cacher-ng
33 /etc/init.d/apt-cacher-ng start
34
35 # update postfix for new configuration
36 newaliases
37 /etc/init.d/postfix restart
38
39 # remove packages that we do not need
40 killall apt-get || true # cronjob goo
41 apt-get purge -y --auto-remove hplip hplip-data printer-driver-hpcups brltty bluez-cups gnome-accessibility-themes gnome-orca onboard thunderbird deja-dup|| true
42
43 # install packages from network sources
44 killall apt-get || true
45 apt-get update
46
47 DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y --force-yes vim patchutils offlineimap diffstat gtimelog devhelp python3-doc manpages-dev weechat weechat-plugins weechat-scripts listadmin quilt mutt editmoin lintian ubuntu-dev-tools dput easytag texlive-lang-german texlive-latex-extra powertop qemu-kvm qemu-utils bzr-buildpackage git build-essential fakeroot devscripts libglib2.0-doc libgtk-3-doc git-buildpackage d-feet wmctrl libnotify-bin svn-buildpackage pastebinit lptools openvpn pdfjam sbuild schroot exiv2 phablet-tools gstreamer1.0-plugins-ugly flashplugin-installer valgrind calibre autopkgtest
48 apt-get install lxc
49
50 # ccache
51
52 apt-get -y --no-install-recommends build-dep udisks2 upower systemd umockdev
53
54 # have schroot use tmpfs
55 rmdir /var/lib/schroot/unpack /var/lib/schroot/union/overlay/
56 ln -s /tmp /var/lib/schroot/unpack
57 ln -s /tmp /var/lib/schroot/union/overlay
58
59 # set up users
60 echo "Setting up users"
61 adduser martin sbuild
62 if ! getent passwd joe > /dev/null; then
63     adduser --gecos "Joe" joe
64     adduser joe audio
65     adduser joe video
66 fi
67
68 # crontabs
69 crontab -u martin - <<EOF
70 # m h  dom mon dow   command
71 05 * * * * \$HOME/bin/backup >/dev/null
72 EOF