[debian-edu-commits] [Git][debian-edu/debian-edu-config][master] 4 commits: Adjust share/debian-edu-config/tools/edu-ltsp-install

Wolfgang Schweer gitlab at salsa.debian.org
Sat Nov 7 20:03:44 GMT 2020



Wolfgang Schweer pushed to branch master at Debian Edu / debian-edu-config


Commits:
d5882f4f by Wolfgang Schweer at 2020-11-07T18:11:30+01:00
Adjust share/debian-edu-config/tools/edu-ltsp-install

Use http instead of https (debootstrap) to avoid a possible pitfall in case a
proxy isn't configured to use https.

Fix typo to avoid breaking home directory mounting (combined server).

Signed-off-by: Wolfgang Schweer <wschweer at arcor.de>

- - - - -
b81dbdbd by Wolfgang Schweer at 2020-11-07T18:14:50+01:00
Adjust share/debian-edu-config/tools/improve-desktop-l10n

Also care for debian-edu-doc-legacy packages.

Signed-off-by: Wolfgang Schweer <wschweer at arcor.de>

- - - - -
a8e960f8 by Wolfgang Schweer at 2020-11-07T20:52:24+01:00
Rework internal network time synchronization

This avoids to edit the ntp conffile /etc/ntp.conf on clients

Add share/debian-edu-config/debian-edu-timesyncd.conf as override file for
networked clients (with the exception of roaming workstations).

Adjust Makefile, cf3/cf.ntp and cf3/edu.cf accordingly.

Signed-off-by: Wolfgang Schweer <wschweer at arcor.de>

- - - - -
eeec5816 by Wolfgang Schweer at 2020-11-07T20:58:59+01:00
Add changelog entries for last commits

Signed-off-by: Wolfgang Schweer <wschweer at arcor.de>

- - - - -


7 changed files:

- Makefile
- cf3/cf.ntp
- cf3/edu.cf
- debian/changelog
- + share/debian-edu-config/debian-edu-timesyncd.conf
- share/debian-edu-config/tools/edu-ltsp-install
- share/debian-edu-config/tools/improve-desktop-l10n


Changes:

=====================================
Makefile
=====================================
@@ -331,6 +331,7 @@ install: install-testsuite
 		share/debian-edu-config/v3CA.cnf \
 		share/debian-edu-config/debian-edu.addmachine.template \
 		share/debian-edu-config/debian-edu.ldapscripts.passwd \
+		share/debian-edu-config/debian-edu-timesyncd.conf \
 		share/debian-edu-config/passwords_stub.dat \
 		share/debian-edu-config/gosa.conf.template \
 		share/debian-edu-config/lightdm-gtk-greeter.conf \


=====================================
cf3/cf.ntp
=====================================
@@ -1,14 +1,26 @@
 bundle agent ntp
 {
-# Disable Systemd service for networked systems, use custom ntp configuration.
-# Respect that LTSP is prefering systemd-timesyncd.
+# Use custom ntp configuration for networked clients (package systemd-timesyncd
+# is installed by default). On the internal ntp server (default: 'tjener'), the
+# ntp package is installed.
+# Keep systemd-timesyncd default settings for roaming workstations.
+# Note: In case the ntp package is installed, the conflicting systemd-timesyncd
+# package gets removed (but not purged).
 
-commands:
+vars:
+
+  "timesyncd_conf_file" string => "/usr/lib/systemd/timesyncd.conf.d/.";
+
+files:
+
+  debian.timesyncd.!standalone.!roaming.installation::
 
-  debian.!standalone.installation::
+    "$(timesyncd_conf_file)"
+      create => "true";
 
-    "/bin/systemctl disable systemd-timesyncd"
-      contain => in_shell;
+    "/usr/lib/systemd/timesyncd.conf.d/debian-edu-timesyncd.conf"
+      copy_from => local_cp("/usr/share/debian-edu-config/debian-edu-timesyncd.conf"),
+      perms => mog("644","root","root");
 }
 
 bundle agent editline_ntp
@@ -16,33 +28,17 @@ bundle agent editline_ntp
 
 vars:
 
-  "networked"  string => "statsdir /var/log/ntpstats/";
-  "mainserver" string => "server 127.127.1.0";
-  "clientconf" string => "server ntp iburst";
+  "ntp_conf"   slist  => { "server 127.127.1.0 #local clock as fallback",
+                           "fudge 127.127.1.0 stratum 10 #not disciplined",};
 
 files:
 
-  debian.!standalone.installation::
-
-    "/etc/ntp.conf"
-      create => "true",
-      edit_line => append_if_no_line("$(networked)");
-
   # Add local clock on the main-server to ensure clients can sync with
-  # the main-server even when all the machines are disconnected from
-  # the Internet.  When they are on the Internet, all will sync with
-  # pool.ntp.org machines.
+  # the main-server even when Internet connection is missing.
 
   debian.server.installation::
 
     "/etc/ntp.conf"
-      create => "true",
-      edit_line => append_if_no_line("$(mainserver)");
-
-  debian.!server.!standalone.installation::
-
-    "/etc/ntp.conf"
-      create => "true",
-      edit_line => append_if_no_line("$(clientconf)");
+      edit_line => append_if_no_line( @(ntp_conf) );
 }
 


=====================================
cf3/edu.cf
=====================================
@@ -10,34 +10,36 @@ bundle common edu
 
   vars:
 
-    "ldapserver"     string => execresult("/usr/bin/debian-edu-ldapserver -f", "noshell");
-    "ldapbase"       string => execresult("/usr/bin/debian-edu-ldapserver -b -f", "noshell");
-    "syslogserver"   string => execresult("/usr/share/debian-edu-config/tools/locate-syslog-collector", "noshell");
+    "ldapserver"	string => execresult("/usr/bin/debian-edu-ldapserver -f", "noshell");
+    "ldapbase"		string => execresult("/usr/bin/debian-edu-ldapserver -b -f", "noshell");
+    "syslogserver"	string => execresult("/usr/share/debian-edu-config/tools/locate-syslog-collector", "noshell");
 
   classes:
 
-    "server"	     expression => returnszero("/bin/grep 'Main-Server' /etc/debian-edu/config","noshell");
-    "ltspserver"     expression => fileexists("/usr/share/ltsp/ltsp");
-    "workstation"    and => { returnszero("/bin/grep 'Workstation' /etc/debian-edu/config","noshell"), fileexists("/usr/bin/ntpq") };
-    "roaming"	     expression => returnszero("/bin/grep  'Roaming-Workstation' /etc/debian-edu/config","noshell");
-    "standalone"     expression => not( fileexists("/usr/bin/ntpq") );
-    "minimal"	     expression => returnszero("/bin/grep 'Minimal' /etc/debian-edu/config","noshell");
-    "installation"   expression => fileexists("/sbin/start-stop-daemon.REAL");
-    "testinstall"    expression => returnszero("/bin/grep 'TESTINSTALL=\"true\"' /etc/debian-edu/config","noshell");
+    "server"		expression => returnszero("/bin/grep 'Main-Server' /etc/debian-edu/config","noshell");
+    "ltspserver"	expression => fileexists("/usr/share/ltsp/ltsp");
+    "workstation"	expression => returnszero("/bin/grep 'Workstation' /etc/debian-edu/config","noshell");
+    "roaming"		expression => returnszero("/bin/grep 'Roaming-Workstation' /etc/debian-edu/config","noshell");
+    "standalone"	expression => returnszero("/bin/grep 'Standalone' /etc/debian-edu/config","noshell");
+    "minimal"		expression => returnszero("/bin/grep 'Minimal' /etc/debian-edu/config","noshell");
+    "installation"	expression => fileexists("/sbin/start-stop-daemon.REAL");
+    "testinstall"	expression => returnszero("/bin/grep 'TESTINSTALL=\"true\"' /etc/debian-edu/config","noshell");
     # Set if the internet is reachable for downloading files.
-    "internet"       expression => returnszero("/usr/bin/wget -qO /dev/null http://deb.debian.org/debian/README","noshell");
+    "internet"		expression => returnszero("/usr/bin/wget -qO /dev/null http://deb.debian.org/debian/README","noshell");
     # Set if atomic partioning has been used (everything on one partion, w/ or w/o lvm).
-    "atomic"         expression => returnszero("/usr/bin/namei -mol /skole | /bin/grep T", "useshell");
+    "atomic"		expression => returnszero("/usr/bin/namei -mol /skole | /bin/grep T", "useshell");
     # Set if the Squid cache exists; used to conditionally link Debian Edu configuration.
-    "squidcache"     expression => isdir("/var/spool/squid");
+    "squidcache"	expression => isdir("/var/spool/squid");
     # Set if running inside Debian Installer; used to avoid useless LDAP setup upon main server upgrade.
-    "di"             expression => fileexists("/etc/apt/apt.conf.d/00IgnoreTimeConflict");
+    "di"			expression => fileexists("/etc/apt/apt.conf.d/00IgnoreTimeConflict");
     # Set for networked workstation if the 'education-desktop-other' package is installed.
-    "desktopintern"  and => { isdir("/usr/share/doc/education-desktop-other"), fileexists("/usr/bin/ntpq") };
+    "desktopintern"	and => { isdir("/usr/share/doc/education-desktop-other"), isdir("/usr/share/doc/education-networked") };
     # Set if xfce4 is installed; used to conditionally configure settings.
-    "xfce"           expression => isdir("/etc/xdg/xfce4");
+    "xfce"		expression => isdir("/etc/xdg/xfce4");
     # Set if lxqt is installed; used to conditionally configure settings.
-    "lxqt"           expression => isdir("/usr/share/pcmanfm-qt/lxqt");
-   # Set if lightdm-gtk-greeter is installed; used to conditionally configure the panel.
-    "lightdm"        expression => isdir("/usr/share/lightdm/lightdm-gtk-greeter.conf.d/");
+    "lxqt"			expression => isdir("/usr/share/pcmanfm-qt/lxqt");
+    # Set if lightdm-gtk-greeter is installed; used to conditionally configure the panel.
+    "lightdm"		expression => isdir("/usr/share/lightdm/lightdm-gtk-greeter.conf.d/");
+    # Set if systemd-timesyncd is installed; used to conditionally configure networked clients.
+    "timesyncd"		expression => fileexists("/lib/systemd/systemd-timesyncd");
 }


=====================================
debian/changelog
=====================================
@@ -1,3 +1,19 @@
+debian-edu-config (2.11.35) UNRELEASED; urgency=medium
+
+  * share/debian-edu-config/tools/edu-ltsp-install:
+    - Use http instead of https (debootstrap) to avoid a possible pitfall if a
+      proxy isn't configured to use https.
+    - Fix typo to avoid breaking home directory mounting (combined server).
+  * share/debian-edu-config/tools/improve-desktop-l10n:
+    - Also care for debian-edu-doc legacy packages.
+  * Rework internal network time synchronization. This avoids to edit the ntp
+    conffile on clients:
+    - Add share/debian-edu-config/debian-edu-timesyncd.conf as override file for
+      networked clients (with the exception of roaming workstations).
+    - Adjust Makefile, cf3/cf.ntp and cf3/edu.cf accordingly.
+
+ -- Wolfgang Schweer <wschweer at arcor.de>  Sat, 07 Nov 2020 18:04:58 +0100
+
 debian-edu-config (2.11.34) unstable; urgency=medium
 
   [ Wolfgang Schweer ]


=====================================
share/debian-edu-config/debian-edu-timesyncd.conf
=====================================
@@ -0,0 +1,7 @@
+# Debian Edu specific setting for networked clients.
+#
+# See timesyncd.conf(5) for details.
+
+[Time]
+NTP=ntp
+


=====================================
share/debian-edu-config/tools/edu-ltsp-install
=====================================
@@ -327,7 +327,7 @@ if ! [ "" == "$thin_type" ] && [ ! -d /srv/ltsp/thin/"$thin_type"-"$arch"/etc/lt
 	mkdir -p /srv/ltsp/thin/"$thin_type"-"$arch"
 	# Install common thin client packages.
 debootstrap --arch="$arch" --variant=minbase --include=linux-image-"$kernel_arch" \
-	"$dist" /srv/ltsp/thin/"$thin_type"-"$arch" https://deb.debian.org/debian
+	"$dist" /srv/ltsp/thin/"$thin_type"-"$arch" http://deb.debian.org/debian
 	chroot /srv/ltsp/thin/"$thin_type"-"$arch"/ apt clean
 	mount /dev/pts -t devpts /srv/ltsp/thin/"$thin_type"-"$arch"/dev/pts
 	mount proc -t proc /srv/ltsp/thin/"$thin_type"-"$arch"/proc
@@ -497,7 +497,7 @@ fi
 sed -i '/ltsp/d' /etc/exports
 
 # Adjust NFS exports for separate LTSP servers.
-if [ ! -f /srv/nfs4/home0 ] ; then
+if [ ! -d /srv/nfs4/home0 ] ; then
 	rm -f /etc/exports.d/edu.exports
 fi
 


=====================================
share/debian-edu-config/tools/improve-desktop-l10n
=====================================
@@ -10,7 +10,7 @@ langsfull="$(locale -a|grep utf8|cut -d'.' -f1)"
 for lang in $(echo $langsfull) ; do
     baselang="${lang%_*}"
     langcountry="$(echo ${lang%.*}|cut -d'_' -f2 | tr '[:upper:]' '[:lower:]')"
-    for i in debian-edu-doc gimp-help thunderbird-l10n; do
+    for i in debian-edu-doc debian-edu-doc-legacy gimp-help thunderbird-l10n; do
         if ! [ -z "$(apt-cache search $i-$baselang-$langcountry)" ]; then
             apt-get -yq install $i-$baselang-$langcountry
         else
@@ -22,11 +22,16 @@ for lang in $(echo $langsfull) ; do
     done
     # special cases nn_NO and nb_NO (debian-edu-doc and gimp-help).
     if [ "nn" = "$baselang" ] && [ "no" = "$langcountry" ] && \
-        ! [ -z "$(apt-cache search debian-edu-doc-nb)" ] ; then
-            apt-get -yq install debian-edu-doc-nb
+        ! [ -z "$(apt-cache search debian-edu-doc-nb-no)" ] ; then
+            apt-get -yq install debian-edu-doc-nb-no
+    fi
+    if [ "nn" = "$baselang" ] && [ "no" = "$langcountry" ] && \
+        ! [ -z "$(apt-cache search debian-edu-doc-legacy-nb-no)" ] ; then
+            apt-get -yq install debian-edu-doc-legacy-nb-no
     fi
     if [ "nb" = "$baselang" ] && [ "no" = "$langcountry" ] && \
         ! [ -z "$(apt-cache search gimp-help-nn)" ] ; then
             apt-get -yq install gimp-help-nn
     fi
-done
\ No newline at end of file
+done
+



View it on GitLab: https://salsa.debian.org/debian-edu/debian-edu-config/-/compare/359f3dd6ac81ef070c2177faa17283477bdd03d4...eeec5816f7e0475cbfc603b1e1e966c30befd629

-- 
View it on GitLab: https://salsa.debian.org/debian-edu/debian-edu-config/-/compare/359f3dd6ac81ef070c2177faa17283477bdd03d4...eeec5816f7e0475cbfc603b1e1e966c30befd629
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-edu-commits/attachments/20201107/fc92a067/attachment-0001.html>


More information about the debian-edu-commits mailing list