On Fri, May 04, 2018 at 11:29:46PM +0000, Holger Levsen wrote: > Some questions: > > commit c08ad7e42c9c1e6b38c92486e9be650da5eef2f0 > Author: Wolfgang Schweer <wschw...@arcor.de> > Date: Mon Apr 30 21:28:06 2018 +0200 > > cf3/edu.cf: Add class desktopintern. > > This class matches a stationary workstation with package > education-desktop-other > installed. > > + # Set for networked workstation if the 'education-desktop-other' package > is installed. > + "desktopintern" and => { > fileexists("/usr/share/doc/education-desktop-other"), > fileexists("/usr/bin/ntpq") }; > > > why use the existence of /usr/bin/ntpq ?
Because it can tell networked and standalone workstations apart, see the definitions of classes 'workstation' and 'standalone' (same file); these two definitions have been used before with cfengine2 and got 'translated' to cfengine3 speak some time ago). Running 'cf-agent -D installation' on a test system with updated cfengine files seemed to work like expected. > commit d5a6ec5c48dae5845e200db69f48467b5a9ec584 > Author: Wolfgang Schweer <wschw...@arcor.de> > Date: Mon Apr 30 21:37:18 2018 +0200 > > cf3/cf.finalize: Add shell command for class desktopintern. > > This allows one to install some packages suited only for networked > machines in > addition to those installed via the education-desktop-other meta-package > for all > workstations. > > + > + # Install desktop related packages, suited only for networked machines. > + > + debian.desktopintern.installation:: > + > + "/usr/bin/apt install -y jxplorer gosa-desktop krb5-auth-dialog" > + contain => in_shell; > > > hm, the commit message explains a bit, but why are those packages choosen and > anyway, > this feels wrong, like an attempt to rewrite configuration management > systems. > (which arguently this is not, but rather a configuration of cfengine, which > indeed is a > configuration management system). Instead of those three desktop related packages, there should rather be a name of a (new!) meta-package, say 'education-desktop-other-networked' recommending those (moved as Recommends: from 'education-networked' to Suggests: to 'education-desktop-other' to keep them on installation media), because src:d-e would be the right place for maintaining them. (Similar to 'education-networked-common' and 'education-networked' for non-desktop packages.) As the existence of 'desktop=xxxx' on the kernel command line, which is there by default, will now pull in 'education-desktop-other' it would have been wrong to move those three packages from 'education-networked' to 'education-desktop-other', because it might confuse users if installed on systems with profile 'Standalone'. Once a modular installation scenario has proven to exist in the real world, src:debian-edu should be adjusted accordingly. I'll file a wishlist bug requesting a new meta-package once tests have been successful. For the time being I reckoned the chosen approach to be the least invasive one. > Now I read debian/changelog I understand the intend much better. I think this > should > be made cleaer in cf.finalize (as comment in that file) as well as better > packages should > be choosen. (Or explained better as well :) Yeah, I tried to explain, but then the modular installation approach is sort of a puzzle consisting of pieces spread around src:d-e, src:d-e-c and kernel command line params... Once working, I'll add another installation scenario to the manual's installation chapter. Maybe the intention is a bit clearer now... Wolfgang
signature.asc
Description: PGP signature