[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: further changes for Debian Edu Jessie



On Sun, Jul 10, 2016 at 09:21:59AM +0000, Holger Levsen wrote:
> Hi Wolfgang,
> 
> On Thu, Jul 07, 2016 at 11:58:14PM +0200, Wolfgang Schweer wrote:
> > Not quite sure, but these changes to d-e-c postinst and preinst seem to 
> > handle all cases. Please test:
> > 
> > diff --git a/debian/debian-edu-config.postinst b/debian/debian-edu-config.postinst
> > diff --git a/debian/debian-edu-config.preinst b/debian/debian-edu-config.preinst
> 
> thanks, applied to the git master branch.
 
To improve it:
- Check if firefox-esr is really installed before removing iceweasel configuration.
- Use postinst rather than preinst for most actions.
- Update firefox-homepage instantly.
- Handle LTSP chroot case.  

Please check and/or test.

diff --git a/debian/debian-edu-config.postinst b/debian/debian-edu-config.postinst
index b4bc494..f34760d 100644
--- a/debian/debian-edu-config.postinst
+++ b/debian/debian-edu-config.postinst
@@ -236,15 +236,37 @@ configure)
 	rm_conffile debian-edu-config /etc/powerdns/pdns.d/pdns-debian-edu.conf
     fi
 
-    if dpkg --compare-versions "$2" le "1.818+deb8u1" && [ -e /etc/firefox-esr ] ; then
+    if dpkg --compare-versions "$2" le "1.818+deb8u1" && [ -L /usr/bin/firefox-esr ] ; then
+	rm_conffile debian-edu-config /etc/X11/Xsession.d/06debian-edu-iceweasel-ltsp
+	rm_conffile debian-edu-config /etc/apt/apt.conf.d/99-edu-prefer-iceweasel
+	rm_conffile debian-edu-config /etc/init.d/iceweasel-ldapconf
+	rm_conffile debian-edu-config /etc/cfengine/debian-edu/cf.iceweasel
+	if [ -L /etc/iceweasel/pref/debian-edu-networked.js ] ; then
+	    rm /etc/iceweasel/pref/debian-edu-networked.js
+	fi
+	rm_conffile debian-edu-config /usr/share/debian-edu-config/iceweacel-networked-prefs.js
+	if [ -e /etc/iceweasel/pref/debian-edu-homepage-ldap.js ] ; then
+	    rm /etc/iceweasel/pref/debian-edu-homepage-ldap.js
+	fi
+	if [ -e /etc/iceweasel/profile/cert_override.txt ] ; then
+	    rm /etc/iceweasel/profile/cert_override.txt
+	fi
 	# for networked profiles only.
-	if egrep Standalone /etc/debian-edu/config; then
+	if grep -q Standalone /etc/debian-edu/config; then
 	    :
-        else
+	else
 	    if ! [ -e /etc/firefox-esr/debian-edu-networked.js ] ; then
-	        ln -s /usr/share/debian-edu-config/firefox-networked-prefs.js /etc/firefox-esr/debian-edu-networked.js
+		ln -s /usr/share/debian-edu-config/firefox-networked-prefs.js /etc/firefox-esr/debian-edu-networked.js
+		if ! [ -e /etc/ltsp_chroot ] ; then
+		    /usr/share/debian-edu-config/tools/update-firefox-homepage ldap:homepage
+		    if grep -q Thin-Client-Server /etc/debian-edu/config && [ -d /opt/ltsp ] ; then
+			for ltsp_chroot in `find /opt/ltsp/ -mindepth 1 -maxdepth 1 -type d`; do
+			    chroot $ltsp_chroot /usr/share/debian-edu-config/tools/update-firefox-homepage ldap:homepage
+			done
+		    fi
+		fi
 	    fi
-        fi
+	fi
     fi
 
     # sssd refuses to read the file if it has any other mode
diff --git a/debian/debian-edu-config.preinst b/debian/debian-edu-config.preinst
index 2e34148..7fa22b4 100644
--- a/debian/debian-edu-config.preinst
+++ b/debian/debian-edu-config.preinst
@@ -48,32 +48,9 @@ upgrade)
 	update-rc.d -f open-backdoor remove
 	rm_conffile debian-edu-config /etc/init.d/open-backdoor
     fi
-
-    if dpkg --compare-versions "$2" le "1.818+deb8u1" && [ -e /etc/firefox-esr ] ; then
-	if [ -e /etc/X11/Xsession.d/06debian-edu-iceweasel-ltsp ] ; then
-	    rm /etc/X11/Xsession.d/06debian-edu-iceweasel-ltsp
-        fi
-	if [ -e /etc/apt/apt.conf.d/99-edu-prefer-iceweasel ] ; then
-	    rm /etc/apt/apt.conf.d/99-edu-prefer-iceweasel
-        fi
-	if [ -e /etc/init.d/iceweasel-ldapconf ] ; then
-	    rm /etc/init.d/iceweasel-ldapconf
-        fi
-	if [ -e /etc/cfengine/debian-edu/cf.iceweasel ] ; then
-	    rm /etc/cfengine/debian-edu/cf.iceweasel
-        fi
-	if [ -e /usr/share/debian-edu-config/iceweacel-networked-prefs.js ] ; then
-	    rm /usr/share/debian-edu-config/iceweacel-networked-prefs.js
-        fi
-	if [ -L /etc/iceweasel/pref/debian-edu-networked.js ] ; then
-	    rm /etc/iceweasel/pref/debian-edu-networked.js
-        fi
-	if [ -e /etc/iceweasel/pref/debian-edu-homepage-ldap.js ] ; then
-	    rm /etc/iceweasel/pref/debian-edu-homepage-ldap.js
-        fi
-	if [ -L /etc/firefox-esr/debian-edu-networked.js ] ; then
-	    rm /etc/firefox-esr/debian-edu-networked.js
-        fi
+    # Just in case linking has already been done manually to previous file.
+    if dpkg --compare-versions "$2" le "1.818+deb8u1" && [ -L /etc/firefox-esr/debian-edu-networked.js ] ; then
+	rm /etc/firefox-esr/debian-edu-networked.js
     fi
     ;;
 esac


Wolfgang

Attachment: signature.asc
Description: Digital signature


Reply to: