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