home · contact · privacy
In public server postinstall, set htwtxt binary bind capability.
[config] / jessie_postinstall.sh
index 4527374eeb524d55e4b16bdc1294130cb92286cf..939d6a4cef54a30ec78b76776180e27596faad2f 100755 (executable)
@@ -85,7 +85,7 @@ echo 'deb http://security.debian.org/ jessie/updates main contrib non-free' \
     >> /etc/apt/sources.list
 echo 'deb http://ftp.debian.org/debian/ jessie-updates main contrib non-free' \
     >> /etc/apt/sources.list
-if [ "$1" = "thinkpad" ]; then
+if [ "$1" = "thinkpad" ] || [ "$2" = "public" ]; then
     echo 'deb http://ftp.debian.org/debian/ jessie-backports main contrib' \
 ' non-free' >> /etc/apt/sources.list
     echo 'deb http://ftp.debian.org/debian/ testing main contrib non-free' \
@@ -214,17 +214,16 @@ if [ "$1" = "server" ]; then
 
         # Send instructions mail.
         config/bin/simplemail.sh config/mails/server_postinstall_finished
+
     elif [ "$2" = "public" ]; then
-        su plom -c '~/config/setup_go.sh '\
-'https://storage.googleapis.com/golang/go1.5.3.linux-amd64.tar.gz'
-        su plom -c 'git clone '\
-            'https://github.com/plomlompom/htwtxt $GOPATH/src/htwtxt'
-        su plom -c 'go get htwtxt'
-        su plom -c 'mkdir ~/htwtxt'
-        su plom -c 'cp -R $GOPATH/src/htwtxt/templates ~/htwtxt'
-        cp config/systemfiles/htwtxt.service \
-            /etc/systemd/system/htwtxt.service
-        systemctl enable /etc/systemd/system/htwtxt.service
+        # Set up twtxt environment.
+        apt-get -y -t jessie-backports install golang
+        su - plom -c 'git clone '\
+'https://github.com/plomlompom/htwtxt $GOPATH/src/htwtxt'
+        su - plom -c 'go get htwtxt'
+        path=`su - plom -c 'echo $GOPATH/bin/htwtxt'`
+        setcap 'cap_net_bind_service=+ep' $path
+        su - plom -c 'mkdir ~/htwtxt'
     fi
 
 elif [ "$1" = "thinkpad" ]; then