update to 31b795ca71189b326b80666076398f31aea4f2be
[automated-distro-installer] / fai / config / hooks / updatebase.UBUNTU
index dadaa48693fef04a7db9d4b6f712e644980fcd1c..2d1161c5ea833e12eb6284023962fb7f73fbd4a8 100755 (executable)
@@ -4,12 +4,27 @@
 
 cat <<EOM > $target/etc/apt/sources.list
 # external mirror
-deb MIRRORURL $ubuntudist main restricted universe multiverse
-deb MIRRORURL $ubuntudist-updates main restricted universe multiverse
-deb MIRRORURL $ubuntudist-security main restricted universe multiverse
+deb $ubuntumirror/ubuntu $ubuntudist main restricted universe multiverse
+deb $ubuntumirror/ubuntu $ubuntudist-updates main restricted universe multiverse
+deb $ubuntumirror/ubuntu $ubuntudist-security main restricted universe multiverse
 EOM
 
-# determine a fast mirror for Ubuntu
-list=$(curl -s http://mirrors.ubuntu.com/mirrors.txt)
-mirror=$(netselect $list | awk '{print $2}')
-sed -i -e "s#MIRRORURL#$mirror#" $target/etc/apt/sources.list
+
+# https://lists.uni-koeln.de/pipermail/linux-fai/2016-July/011398.html
+# In Ubuntu 16.04 (but not 14.04), the locales configuration mechanism has
+# changed.  There is a /var/lib/dpkg/info/locales.config file, which
+# overrides /var/lib/dpkg/info/locales.postinst and consults
+# /var/lib/locales/supported.d/local instead of the debconf system.  (See
+# the code in /usr/share/debconf/frontend that prefers locales.config.) This
+# hook applies the debconf setting.  It must run after FAI's debconf task
+# but before dpkg gets a chance to clobber debconf with an empty setting.
+
+if [ ! -f "$target/var/lib/locales/supported.d/local" ]; then
+    $ROOTCMD debconf --owner=locales sh -c '
+        . /usr/share/debconf/confmodule
+        db_version 2.0
+        db_get locales/locales_to_be_generated &&
+        mkdir -p /var/lib/locales/supported.d &&
+        echo "$RET" > /var/lib/locales/supported.d/local' &&
+    $ROOTCMD dpkg-reconfigure locales
+fi