http://www.phys.ethz.ch/~franklin/Projects/dphys-admin/Logfile - done and to do author Neil Franklin, last modification see last entry near bottom copyright ETH Zuerich Physics Departement use under either modified/non-advertising BSD or GPL license background is the dphys2 project, read its Logfile at: http://www.phys.ethz.ch/~franklin/Projects/dphys2/Logfile as part of that wrote this tool to do auto-install/update/remove of packages here only log of the events pertaining to making this tool 2002.06.20 Thu quickly showed heeb ideas with dphys-host-* packages and dphys-task-* 2003.01.09 Thu dphys2 milestone 1 is reached, make archive copy to ../dphys2-20021218 discussion with Elmar about what the package management should do grouping of machines, base processor dependant, above place dependant with ability to define machine specific extensions discussion with dsbg, today a central package list and host local lists all fed into apt-get, to be resolved inclusive dependant packages he thinks that tasksel-like packages are the way to go this fits my ideas about site/group/host package lists, using dependances 2003.01.16 Thu Conference how we will be continuing development top priority is as fast as possible until first installs are possible today all have the same packages, for the beginning leave away hierarchical only phys-site and all host-specific (fetch specific kernels) do an apt-get update/upgrade by cron every night and on every boot after base install register above scripts and do an reboot I have got to investigate getting in debconf and config before questions for testing this use system with just less (user) and ssh (server) packages Beat will for next Thursday set up an reference box look at more links I got from Beat, from Debian Weekly News from the infrastructure.org people looking for .deb and config packager 2003.01.23 Thu start making automatic package install on hagrid, first without config stuff made an site-ethz-phys package, ./packages/site-ethz-phys_20030123-1_all.deb copied package over to hagrid, deinstalled tcsh and less tried to install, complains about tcsh and less dependancy, ssh OK so the automatic fetching of dependant packages seems to not work Answer from Arthur Korn, dpkg does not auto-load, only tests, need apt-get 2003.02.21 Fri discussion about package installs and upgrades, Beat asks why site package is because of using apt-get update/upgrade and automatic hierarchy needs for each host a package, but that can be automated problem that kernel 2.4 needs to be in and running (reboot) before some other package can even be loaded/installed sent links to the infrastructures.org bootstrapping and turing texts to all while there read some more of their texts 2003.04.11 Fri discussion with dsbg about daily/boot updates/upgrades by cronjob/init install these by the site package, makes them admin updatable so do not make these as part of dphys2, just comments in endfirstrun he had problem with some packages aborting apt-get install doing annother apt-get install by hand solved this solved them by dirty fix of putting apt-get inside an while loop 2003.04.17 Thu dphys2 milestone 2 is reached, make archive copy to ../dphys2-20030417 heeb discussion what needs doing in host/site packages need cron job and init.d script for apt-get update/upgrade cycle 2003.05.15 Thu dsbg is working on an setup.pl, run from init.d, that takes an package list and then does multiple apt-get to load all stuff, no massive Depends: run only kernel/ext3/devfs from base-config, then reboot, init.d apt-get store it on web server, get with wget, use /var/lib/dphys for such files dsbg is making cron job and init script to update/upgrade as part of this 2003.05.22 Thu heeb discussion on site management, dsbg install.pl will first-install OK but large upgrades will still be in random order by apt-get, bigger problem so all config changing code need to be out of postinst, only install files run all config stuff from an /etc/*.d directory, with own number scheme list better by dphys-admin package, not by direct http get even better only install dphys-admin, then have that do all, incl kernel no use of the broken Depends: stuff, all controlled by our scripts 2003.05.23 Fri heeb further discussion, have init.d+cron do dphys-admin script do everything from that, controlled install, incl kernel and "pre" img file this eliminates site package, with host->kernel list also host packages and with that also kernel meta packages, so only dphys-admin package also cron do controlled update, install dphys-admin, install rest, upgrade initial install endfirstrun just load dphys-admin and then reboot into init.d 2003.06.06 Fri at lunch dsbg and heeb discussion about distributing secret files (host keys) best per host tar with gpg, all in database in site package or dphys-admin have these decrypted by self-killing password entered while resc/root install need to have host key gen script ask password and encrypt also use same mechanism for setting real lilo and root passwords, preencryt further thoughts on replacing site/host pack with dphys-admin with DB files 2003.06.13 Fri dsbg found massive bug, cp -a of 700 /usr/lib/dphys-site sets / to 700, fail need to get rid of 700, /usr/lib/dphys-site must be like / 755 inside /usr/lib/dphys-site set all security relevant files, as in / discussion dsbg, what to do about deamon restarts when updating configs today we restart postfix on any site package update, leave nis/ldap untouched started tidy up of dphys-admin, postinst/postrm, merged the 2 init.d scripts heeb discussion cron updates, after 06:00, as to about 04:30 Debian mirroring do them scattered, take 06:00..06:59, IRC joker use $((RAMDOM%60)) dsbg intro to his pkglist file, block of lines is one apt-get call 2003.06.19 Thu dphys-admin init.d script holt pkglist per wget dann dphys-setup.pl cron.d macht nur dphys-setup.pl, ohne zuerst wget zu machen ist ein bug, muss addiert werden, im init.d ein cron) addieren wenn ${REBOOT_FILE} Mail an root, dass er reboot planen soll in postinst randomize the cron job minute when it runs updates 2003.06.20 Fri analysed dphys-admin /usr/sbin/dphys-setup.pl seems to be only doing apt-get install on packages that are not loaded hagrid 0.3s per package, at 500 packages that saves 2.5min, not worth it discussion heeb, we also need an remove/purge ability, not just install and we also need to do an apt-get upgrade, and apt-get update at beginning if apdate/upgrade in perl, then also wget and reboot/mail here, all in one init/cron call with option, or do it all in init.d shell script /usr/sbin/dphys-setup.pl massive tidy up, no test for already installed added apt-get update/upgrade here, added wget $pkgfile here added reboot reactions here, so that direct call from cron and minimal init.d changed cron to direct call this, init.d no cron part, start part small 2003.06.26 Thu init.d missing restart and force-reload, added them, duplicated ;;, deleted it dphys-setup.pl, mult missing ";", twice = instead of eq, rm instead of unlink match for finding empty or comment line, strip leading and trailing spaces 2003.06.27 Fri dphys-setup.pl added support for removing or even purging packages with "+ - *" commands, also only "+ - *" output and user output with ? voluminous apt-get output goes to an logfile /var/log/dphys-admin.log analog to * for --purge remove also ! for --reinstall install speed up reboot, get rid of 3-10min looping through null apr-get's 2003.07.03 Thu dphys-setup.pl reboot possible after any package, not at end added command | to run random command with system() fixed various bugs, perl coding traps such as $1 disappearing updated pkgfile in the package, but this is a redundant data problem discussed with dsbg, no pkglist in package, only the one with wget 2003.07.14 Mon dphys-admin package dphys-setup.pl send logfile per mail to root@ but only when running from cron, not at random reboots from init.d for this have cron called dphys-setup.pl do an logrotate, with one older copy 2003.07.15 Tue dphys-setup.pl change from parameter reboot/mail (policy) to init/cron (caller) this allows all logic and comments to be in one place, in dphys-setup.pl improved commenting standards, added sections like in dbootstrap dry run in shell (as non-root) shows , instead of . and 3 strings missing "" these have been in for long time, no error message up to now, damn perl test run, apt-get asks questions, because replacing modified cron.d/... 2003.07.24 Thu fix dphys-admin update cron conflict, /etc/cron.d/dphys-admin as template postinst sed it with random number from /usr/lib/dphys-admin to /etc/cron.d dphys-admin added empty /var/lib/dphys-admin dir translated dphys-setup.pl comments to english (were german), for on website added mail to root, if bailing out because of missing package list 2003.07.25 Fri dphys-setup.pl copied to website, Makefile ci/tar, README, index.html.en general improvements to index.html.en cvs killed empty /var/lib/dphys-admin dir, produce it out of dphys-setup.pl dphys-setup.pl unlink $reboot_file only if actual reboot, if mail leave, repeat while at it, eliminated redundant $reboot_policy var, direct use $called_by allways delete /root/NEED-REBOOT when running /etc/init.d/dpyhs-admin start moved dphys-admin package from non-free i386 misc to main all admin also converted postinst/postrm/init.d/cron.d comments to english dphys-admin added missing wget dependancy, removed wget from dphys-site 2003.07.31 Thu dsbg notice cron dphys-setup.pl logs also "reboot" Subject:, changed "has run" dsbg notice dphys-setup.pl wget on screen, not in log, added >>$logpath same time added also to apt-get update and upgrade existing apt-get s have 2>>, added that to new ones and wget also sh error with echo ... reboot (mail) ... changed to reboot *mail* dsbg notice that multiple reboot *mail* messages, is after every package test only test and real reboot after each, test for mail at end, only test file 2003.08.01 Fri remote fixed small syntax error in dphys-setup.pl, missing an "if" looks like file got damaged while editing, also missing newlines 2003.08.04 Mon dphys2 milestone 3 is reached, make archive copy to ../dphys2-20030804 2003.08.15 Fri looking at host berlin, only 1.9G free from 10G disk, is 1.8G apt cache add an apt-get clean to dphys-admin, as unlikely to reinstall, have LAN 2003.10.03 Fri convert existing binary packages to using makesourcepackage dsbg leave old hosts arizona,bludger,dudley (will be deleted later) do as last with him site (he is actively working on it) every package that is converted and on server, remove from CVS do all other dphys-build/*/DEBIAN: admin, host-hagrid, ide-dma, reboot, site-franklin-experimental, swapfile, user-info 2003.10.23 Thu dsbg|heeb new features for endfirstrun and dphys-admin dphys-setup.pl endfirstrun change from loading host package to direct load site package generate config files with base URL for dphys-setup-* finding host configs with ssh-setup and x-setup wgetting http://.../hostconfig/`hostname`/files dphys-admin dphys-setup.pl change to same base URL usage and variable name instead of having endfirstrun load kernel/etx3/devfs, then site package rest dphys-setup.pl add to pkglist also fetch host dependant [pre|post].pkglist 2003.10.24 Fri dphys-setup.pl rename pkglist to main.pkglist, then merge to merged.pkglist for old dphys-admin users symlink pkglist->main.pkglist after merge , also bail out if empty, not just if no file dphys-setup.pl NEEDS-SCRIPT to analog NEED-REBOOT unlike touch NEED-REBOOT packages do echo command >> NEEDS-SCRIPT as Depends: may have fetched multiple packages, use >> and loop lines dphys-setup.pl option for nice "$INPUT" | apt-get install endfirstrun->/u/l/b/99sitepackage->dphys-site->dphys-admin does not start inst is because reboot into dphys-admin was by kernel install from endfirstrun so instead have endfirstrun allways do an reboot, to start this dsbg test only 2 reboots, missing 3rd from kernel install, was config error dphys-setup.pl works, but leaves unused /var/lib/dphys-admin/pkglist have dphys-admin postinst delete this old file on upgrade 2003.10.30 Thu dsbg bug reports in dphys-setup.pl, apt-get upgrade -> dist-upgrade else new packages fetched by dphys-site do not get installed also no NEED-[REBOOT|SCRIPT] test after (dist-)upgrade put in this test/action twice, and move test for mail to root after upgrade makepackage forgot -p, no action, no damage, but also no error message improve makesourcepackage with test for non-action and error message heeb improvements for dphys-setup.pl after every line test NEED-[REBOOT|SCRIPT], in case | needs it nedd an install even if package here, for possibly early upgrade change ! from useless --reinstall (only symmetry to --puge) to doing this 2003.11.21 Fri dpkg /v/l/d/available File is missing new packages, not being updated endfirstrun and dphys-setup.pl add apt-cache/dpkg code from debconf-preload dphys-setup.pl for - and * use dpkg --remove and --purge instead of apt-get apt-get [--purge] remove doesn't find depends, we know what we want to kill dphys-setup.pl for - and * test if package is there, so no error message 2003.12.04 Thu dsbg dphys-setup.pl continues installing after package with NEED-REBOOT resulting in partially installed package when actual reboot takes place is because /sbin/reboot only sends signal, then returns, added exit 0 2003.12.12 Fri rubi configuring bb to evaluate dphys-setup.pl Mails, change requests setable email address for sending error/warning/status mails to and of program status report allways, not just when from cron so change also message (and reboot) to include $called_by for full info found bug, "no pkgfile" Error test should allways mail, not just on cron messages dphys-admin then cron/init.d, added ERROR, WARNING, INFO after that 2004.01.08 Thu heeb Problem with dphys-setup.pl, is dependant on path containing /sbin should be independant of broken settings in init vs cron vs interactive all system() added full paths to all commands in there, dual for pipes dphys-setup.pl make code more perl style, reduce system() usage all system("/bin/echo ... >> $logpath\n") -> print LOGPATH "...\n"; all system("/bin/echo ... | /usr/bin/mail ...\n") -> print MAIL "...\n"; all system("/usr/bin/mail ... < $logpath\n") -> print MAIL while ; test need script before test need reboot, so can still be run before reboot test reboot each package log "ignore", rename to need reboot mail then end test mail log and send "mail", rename back to need reboot testing dphys-setup.pl error because print to not open file is opening of LOGFILE (/var/log/dphys-admin.log) that failled is generated new with >>, but that is not problem, was access rights repace with /tmp/dphys-admin.log for test run and it works again testing dphys-setup.pl error `` not evaluated in "", so take them out, use . testing dphys-setup.pl error is not fetching pre and post, instead directory! is because `hostname` is now adding an \n, use an chomp; testing dphys-setup.pl hanging in all "nice yes", ctrl-c goes further 2004.01.09 Fri dphys-setup.pl hanging, look at ps, executing "nice" as user script ~/bin/nice instead of using shell builtin (as claimed by "which") but that is tcsh "which", the bash "which" sees this different and nice script does ssh nice.ethz.ch, which is not pingable host any more nice schould be actually /usr/bin/nice, is not sh internal, so use full path dphys-admin init.d and dphys-setup.pl set environment PATH to safe value 2004.02.12 Thu dsbg dphys-setup.pl Bug, test for | edit missed, has ?, fixed 2004.02.19 Thu dphys2 release 4th milestone, copy to ../dphys2-20040219, make tar file of it started new RCS archive with revision 4.0 (unchanged milestone 4) 2004.02.20 Fri dphys-setup.pl change to session log for mailing, and add to collected log 2004.02.26 Thu dphys-setup.pl tested and debugged packaged version 20040226.104009-1, changelog: "auto-generated release from versionless (=current) upstream" 2004.03.11 Thu present state archived as RCS revision 4.1 2004.03.12 Fri convert dphys-admin from old makepackage to new makesourcepackage order/plan work, sync with cvs, copy to project dir, remove old CVS stuff mv conffiles, merge control, update /etc/init.d/dphys-admin 2004.03.18 Thu convert dphys-admin, postinst/postrm from dphys-admin/debian/makesourcepackage is few details (runlevel) embedded in lots of boilerplate code, split just file init.d -> init.d.2.25, then have standard script test/use name add it to debian/conffiles, then modify postinst, generate/modify postrm also copy defaults file if one is there, and add it to debian/conffiles needs expansion of makesourcepackage-made debian/rules to automatically do it test/copy defaults and add it to defailts, same init.d.*RUN.*SEQ 2004.03.19 Fri continue convert dphys-admin, expansion of makesourcepackage-made debian/rules so that it does the init.d modifications to postinst and postrm sh->make->sh quoting for an sed with modifies 3rd sh looks hairy perhaps better to try with dh_*, can hide user-must-delete mess with ifs started rewriting makesourcepackage debian/rules section with dh_* 2004.03.26 Fri continue convert dphys-admin, generate rules file, add @rc.d@ to init script init.d moved test for stray reboot files into perl, added also reboot_mail missing that was an typical bug of stuff split over 2 files old DEBIAN/postrm is standard, debian/rules generates it, delete it old DEBIAN/postinst moved possible remaining old pkgfile delete into perl changed back using old pkgfile name, filename/varnames/errormsg consistency also put old backup logfile deletion into perl, up to now littered moved man page into main dir, where dh_installman will find it updated it, as is still documented old reboot|mail syntax, not init|cron moved program into main dir, inconsistency Makefile for prog vs dh_* for man makesourcepackage debian/rules eliminate dh_installman, allways in Makefile makesourcepackage Makefile added vars for bin, sbin, man1 and man8 dirs rename dphys-setup.pl to dphys-admin (like package), dito its man page deleted old copyright and upstream changelog, changelog.Debian to debian/* cron script directly in /etc/cron.d, via debian/dphys-admin.cron.d else it will not appear in the autogenerated debian/conffiles postinst cron randomizer fragment converted to perl sleep int(rand(3600)); 2004.04.01 Thu dphys-admin test runs, makesourcepackage syntax bugs and typos dsbg tested makerescue, setup-dphys2 comments for upload process insufficient also wants to be able to generate multiple disksets, and download proper one move SYS_VERSION to CONF_DISKSVERSION, with NFS upload stuff, better comments 2004.04.15 Thu heeb dphys-admin should default to cron, not crash with unset variable added test, emit warning, and then set $called_by to cron but this gives random up to 1 hour wait, so better third "none" state works as cron, but without the delay, for manual or test changed all print() strings dphys-admin to $0, so that it changes with rename found one old phys-setup.pl string, was missing "d", so was not converted dphys-admin "upstream" Makefile proper "compile" w gzip -c then install .gz added Build-Depends-Indep: to control file, -Indep because arch independant found "/bin/sh: [: too many arguments" bug when msp -p, fixed syntax error 2004.04.16 Fri dphys-admin configurability, decided just set conf_baseurl and conf_mailaddress changed pkgpathdir (->pkglistdir) and logdir to use $name, set to dphys-admin include an /etc/default/dphys-admin script fragment, with require; does not want to set the variables, was because of "my" making them local dphys-admin extended man page, about package lists and config file 2004.04.22 Thu dphys-admin man page continued, and finished, packaged 20040422.143354-1 uploading dphys-admin with makesourcepackage -u faills, copies loads of stuff is because I already have an upload/ directory, links in that dereferenced would have also been killed if allowed to run to end switch to using /tmp/makesourcepackage.$$.upload, UPLOAD -> TO_UPLOAD dphys-admin package tested on aragog, seems to work but wants to know if it is allowed to upgrade cron.d file will take default "NO", but we want it, after !dphys-admin put | test && mv packaged version 20040422.143354-1, changelog: "conversion to source package, tidy up" 2004.04.23 Fri updated index.html.en with changes since milestone 4, added dphys-admin present state archived as RCS revision 4.2 2004.05.13 Thu heeb bug report 20dphys-admin comes before 20oidentd, and so can't get nonfree should have been installed as 24dphys-admin, for exactly that reason #@rc.d@ line in debian/dphys-admin.init is set, debian/rulez looks correct when run, LINE= not set, no PARAMS= setting, dh_installinit does default so /var/lib/dpkg/info/dphys-admin.postinst is broken, defaults, not start grep '^#@rc.d@ ' debian/dphys-admin.init produces correct line PARAMS="defaults"; echo +++ 1 ${PARAMS}; is also empty, ${} seems to fail make -n shows them all removed without anything inserted 2004.05.14 Fri 20dphys-admin bug, debian/rules needs $${VAR} to fix, done, new vers, uploaded altered makesourcepackage to generate debian/rules like this packaged version 20040514.103135-1, changelog: "bugfix debian/rules missing $$ escapes" 2004.05.27 Thu heeb 20dphys-admin still 20, package wants 24dphys-admin but leaves conffile dphys-admin separate project, as only managing, not installing dito also later for dphys(2)-swapfile (replacing swappartit, not installing) and dphys-idedma (setting up disk driver, not installing) and makesourcepackage (making packages, not installing) made FAQ, INSTALL, (this) Logfile, Makefile add tar stuff, new own README old dphys-setup.pl and RCS of it, new dphys-admin and dphys-admin.8 debian dir, index.html.en, linked from projects and startup page present state archived as RCS revision 4.3 make tar, generating standard .tar.gz file packaged version 20040527.181729-1, changelog: "new "upstream" version, from dphys2 subpart to own project" 2004.05.28 Fri updated file paths in FAQ and INSTALL, while making files for dphys-swapfile same also fixed index.html.en, while making one for dphys-swapfile 2004.06.03 Thu /etc/init.d/dphys-admin *) only mention start, as only one that does anything 2004.06.04 Thu fixed init script missing " " in *) section heeb bug report progress display - and * give undefined var error also + and ! and < all display as +, is from $1 being overwritten/deleted store operation in a separate variable $operation and use that rename existing $operation variable in - and * to $dpkg_opt change + and ! and < eliminating existing to use $operation, no $onlynew CVS remove dphys-admin, commit, update, this time it really is gone packaged version 20040604.155148-1, changelog: "bugfix init script missing " " and dphys-admin progress display" 2004.07.21 Wed index.html.en added man page 2004.07.29 Thu analog to dphys-pkgtools and dphys-swapfile allow both config files to be used /etc/default/dphys-admin simply overrides /etc/dphys-admin /usr/sbin/dphys-admin show site independant config better, needs user setting and /etc/default/dphys-admin presently add our site configs this should use an sote specific config outside of package, setup package improved docs, INSTALL show what steps need to be done, i.e. are important created debian/dphys-swapfile.docs, with README, FAQ, index.html.en 2004.07.30 Fri improved docs, INSTALL add details of setting up package list server dphys-admin script test for invalid website $conf_baseurl, abort if none while at it also add test for unknown userinput for operation mode repeated code for adding log to collected log moved to subroutine collect_log while at it subroutines of repeated code for need_script and need_reboot fixed init need_reboot/need_(reboot_)mail cut&paste bug generally improve handling of the need_* flag files, no leaving stale ones 2004.08.05 Thu release 5th milestone, copy to ../dphys-admin-20040805, make tar file of it delete old dphys-setup.pl from current, temporary link to milestone modify index.html and FAQ and INSTALL to show the milestone release start new RCS archive with revision 5.0 (unchanged milestone 5) redo ../dphys-admin.tar.gz tar archive of current state packaged version 20040805.123131-1, changelog: "added docs and error handling, new upstream milestone" 2004.08.06 Fri wenk new version produced error mail while updating dpkg (from apt-get) complains about /var/lib/dpkg being already locked it also did so on the 2 last times we updated it, nothing visible in code has also done this on the 2 last updates wenk noticed that it is being called with init, not cron that is it, update is running postinst, which from dh_installinit got that dh_installinit is trying to (re-)start what it thinks is a daemon doing an run in init mode on an possibly cron run update is dangerous anyway dh_installinit has an -r option for not running on update but that would require an special debian/rules, logic in makesourcepackage so better put an recursion detector in debian/dphys-admin.init 2004.08.13 Fri dphys-admin changed to restore reboot flag file after sendig reboot mail shall stay and issue mails on each run, until reboot is actually done so when sending mail restore need_mail to need_reboot and when running non-init modes convert it to need_mail before installs debian/dphys-admin.init recursive call detector to stop updates lock trouble abort call by init.d from postinst from apt-get upgrade from dphys-admin want dphys-admin with only standard values in /e/d/dphys-admin else this may cause user trouble if they use our package list unedited leave unconfigured (will then abort), for our settings preload config file separate small package with postinst making /e/d/dphys-admin as used by us looked at what is difference of dphys-local-* vs dphys-setup-* seems to be software package config vs hardware/driver config 2004.08.19 Thu dphys-local-admin with postinst making /e/d/dphys-admin config re-package dphys-admin with only standard values in /e/d/dphys-admin debian/dphys-admin.init recursive call still happens fab /etc/init.d/dphys-admin error [ too many arguments is because multiple lines, concatenated with " " by `` after cut has run stricter test /usr/sbin/dphys-admin eliminating /etc/init.d/dphys-admin lines fab /usr/sbin/dphys-admin fails to read /etc/default/dphys-admin is because upgrade with /usr/bin/yes overwrites dphys-local-admin version and perl screams when it sees an require file with only comment lines using dphys-admin < option to get N loses us the ! option for force for today go back to dphys-admin with built in defaults, fix tomorrow packaged version 20040819.160516-1, changelog: "split our config out into dphys-local-admin, stop update recursive call" 2004.08.20 Fri dphys-admin don't kill dphys-local-admin preload dphys-admin needs reload with !, to get new version before waiting upgrade so we can not use < to set "N", but not needed, should be ""/return, for N apt-get by hand with return/N works, but by dphys-admin failed dphys-admin has $input = ""; but then uses '$input' , bug remove the '' around $input so that it gets properly substituted as update of this bug only next cron, leave config in package after update then remove config for later cron run packaged version 20040820.110447-1, changelog: "bugfix yes | apt-get '$input', removing ''" dphys-local-admin added also setup of /e/d/dphys for dphys-local-* packages centralises generation of config files with same base url in them 2004.08.26 Thu /e/d/dphys-admin removed our config, as without bug dphys-local-admin usable packaged version 20040826.122732-1, changelog: "remove our config from example /etc/defaults file" 2004.08.27 Fri man pages expand explanation, more "why" and "what we do, good practise" style information from config files an INSTALL file added examples of use section, showing typical usage change copyright remarks to mention modified/non-advertising BSD packaged version 20040827.172237-1, changelog: "strongly expanded man page" 2004.09.01 Wed dphys-admin yes | apt-get still fails to make return, sendig y instead defaults to y when $input="", needs to see actual "", so use \"$input\" better test to avoid locking recursion, directly test if is locked with fuser packaged version 20040901.135613-1, changelog: "bugfix $input 2nd time, better stopping recursive call lock errors" make no mails if $conf_mailaddress is '', doc in man page and defaults file packaged version 20040901.151935-1, changelog: "bugfix perl != vs ne, in new facultative mail feature" 2004.09.09 Thu Heeb bug report: packages removed with - are not reinstalled with + purged can be reinstalled, is the "already installed" test missreporting sees dpkg --get-selections "deinstall" (or anything else) as "install" changed to only set $installed{$package} if $state eq "install" packaged version 20040909.131247-1, changelog: "bugfix so removed (not purged) can be reinstalled" 2004.12.17 Fr dphys-admin bug, re-running kills NEED_REBOOT file, even without boot after sending mail file is left, but re-run tidy up deletes "stray" file change to robuster handling, if mail do standard "at end" mail handling if reboot (possibly from above mail) delete if rebooted, else flag mail packaged version 20041217.143820-1, changelog: "bugfix rerun deletes any not yet handled reboot flag files" 2005.01.21 Fr changed console output to list packages being installed, not just + allows user of first install, going hours, to see how far system is also same for removing and commands, not just the comments packaged version 20050121.150835-1, changelog: "progress output, what packages are being installed/removed" 2005.04.28 Thu moved config from /etc/default to /usr/share/doc/example as not used by init.d no test/use /etc/default/$pname, config commenting up to sh scripts standard eliminated mentioning /etc/default from man page moved debian/dphys-admin.default -> dphys-admin.example, updated Makefile looking at example config and dphys-local-admin generated config changed dphys-local-admin postinst so that /etc/default/dphys-admin is now at /etc/dphys-admin existing /usr/sbin/dphys-admin already knows how to use this note that dphys-local-admin also sets /etc/default/dphys, also needs change only contains url-path for accessing config files on config server heeb discussion about /etc/default/dphys and what packages use it according to new policy all dphys-setup-* use local files, no net access only dphys-local-* fetches stuff from server, used by older packages has led to proliferation of dphys-local-* packages, work, duplicate code heeb uses dphys-common-tools lib now, common code, has url-path hardcoded bring up suggestion of single downloader, dphys-config, with url-path in it on server then file with list file-on-server:path-on-target:script-to-run will require per-package config files, no splitting/processing is cleaner, but means that keyboard needs setting twice (X and console) split out /etc/default/dphys to separate dphys-local-etc-default-dphys to be left there, so long still old-style packages use it add that to top of /pub/debian-local/share/main.pkglist to be safe senguen suggestion, split update/dist-upgrade and install/remove, heeb discuss but install will need update anyway, and needs to run before dist-upgrade so just more work to have them split, and conflicts and people who just want update/dist-upgrade can do so with simple cron entry checked through for code that will not work under sarge poss /var/cache/apt/available changes, use /var/tmp/dphys-admin-$$-available appart from this the entire code seems to be sarge-capable so just need to adapt to our new site policies and config file layout senguen discuss paths for config files we will use http://server/configs/sarge// which will then be /pub/debian-local/configs/sarge// 2005.04.29 Fri split out wget package list files from main script, to be done by dphys-config don't bother putting this into dphys-local-admin, as that will disappear so implement dphys-config first, then use it to make reduced stuff here forked dphys-config project off from dphys-admin while starting up that removed 3.0 remark from README 2005.06.02 Thu change WARNING to NOTE or INFO; where it is only possibly error indication and not an definitive but recoverable error, done for all stray file stuff 2005.06.03 Fri now that dphys-config is running, remove wget stuff from here directly give $conf_listfile (defauts to /etc/dphys-admin.list) better dphys-config like comment handling, also chop from end of lines better dphys-config like empty line handling, also with spaces in them replaced buggy regexp for blanks at beginning and end of line handling and updated operation|parameter and input|packages regexp-es updated man page to new methods, no HTTP and multifile stuff same INSTALL and index.html.en check if no cron/init cron needed because of variable timing for server load and also because of update even if package list unchanged init needed because also at boot even if package list unchanged add in debian/control an Suggests: for dphys-config tests, fixed a few regexp troubles, OK packaged version 20050603.163024-1, changelog: "checked for sarge, switched to local config + dphys-config, bugfixes" 2005.06.09 Thu converted share/main.pkgkist -> configs/woody/SITE/dphys-admin.list same share/hostconfig/*/[pre|post].pkgkist -> dphys-admin.list.host[pre|post] added markings, so begin/end common is visible, and implicit what host added dphys-config run on all hosts, to load dphys-admin.list dropped wget Depends:, as that is now done by dphys-config or user makesourcepackage -ui, dphys-admin run on all hosts dphys-config.list also dphys-admin (without .list), let it run auto this night no dphys-local-admin package any more, delete it delete old /var/lib/dphys-admin/* stuff (no purge/install :-)) 2005.08.04 Thu senguen is using | to call scripts that determine name, then do own apt-get better use all the internal logic, just compute names, use new `` syntax updated man page for `` usage while at it tidied up a few stray "my" commands with separate assignments 2005.08.05 Fri when a package has - or * drop from list of installed, so + and ! can reinstall same time also + and ! add to list, so later - or * can remove it classical problem of 2 sets of paralell data, cache not updated switched to using "defined" instead of "exists", so can do "undef" packaged version 20050805.132431-1, changelog: "added `` command substitution, bugfix update internal install list" 2005.09.28 Thu run apt-get install -V (print versions) and apt-get upgrade -u (print names) -V as result of this the new version will only run on sarge, no more woody problems with `` lines, keeps on redoing +, shows with visible `` on screen expansion at wrong time? or non-expanded being used in some places sarge still running old 20050603.163024 version, not newer 20050805.132431 2005.09.29 Fri packaged version 20050929.152608-1, changelog: "added -u and -V in apt-get calls" 2006.05.17 Wed apt-get dist-upgrade also output stdout to screen, for manual runs packaged version 20060517.160119-1, changelog: "apt-get dist-upgrade also output stdout to screen, for manual runs" 2006.05.18 Thu bugfix moved \n in above change to end of proper line packaged version 20060518.113134-1, changelog: "bugfix moved \n to end of proper line" 2006.08.11 Fri added all "packaged version ????????.??????-?, changelog:" lines 2006.11.17 rework for separate upstream and Debian maintainer, only .tar.gz release reworked and updated documentation, FAQ, INSTALL, README, index.html.en remove FAQ and INSTALL and index.html.en references to my old packages remove old debian/ so that senguen can make proper debianisation debian/changelog is all info duplicated in this Logfile, deleted it debian/control is just outdated docu text, deleted it debian/copyright is same as in README, deleted it debian/dphys-config.cron.d is simple example, move to main dir add to Makefile installation into examples directory debian/dphys-config.docs is nothing, deleted it debian/dphys-config.init is simple example, move to main dir and removed debian/rules stuff #@rc.d@ start 24 2 . add to Makefile installation into examples directory while at it also added index.html.en into docs directory debian/rules has nothing specific, deleted it updated man pages, reworked text set new systematic PATH=, removed all absolute paths in commands no ./dphys-admin called, so no danger from that not a shell script, so many dangers there simply do not apply instead test for perl specific possible problems print check for all with \n at end (exept print while <>), OK input check for all using chomp (exept direct output, and system()), OK system() without \n at end, system($blah) without \n also without "" no "" . `date` . "\n" mess, can not do "``\n", so use $date=``; "$date\n" while at it changed all open/print>>`date`/close to log_line() and all $mail_subject="".`hostname` to $host=``; $mail_subject="$host" open() with new 3 parameter form, separate mode spec, safer while doing it dropped "" from "$var" if filename only simple var and in all open() die added : $! at end, for more error message empty line test from if ($line =~ /^$/) to simpler if ($line eq "") while doing it changed $var ne '' to $var ne "" for consistency input = "$2" no "" needed, and also not present in $packages = $3 either checked that PATH reliable, all `` and system() and pipe open() no *bin/ 2006.11.23 Thu foreach $package (...) -> foreach my $package (...) also my $line; while ($line ...) -> while (my $line ...) moved sub * { to before where first used, only use stuff already defined no separate subroutines "appendix" section, better locate where used all open( , "|-", $command) put full shell escaping in command, use \"$var\" still possible to exploit it, if $0 contains "`sploit`", by symlink but nothing to gain from this, as no privilege escalation possible while at it bugfix all open() after 2nd parameter use , before text checked up what output is parsed by bigbrother, ensured it stayed the same fould one output that as already changed earlier, corrected it back test run showed nothing odd 2006.11.24 Fri fixed init.d spurious output, and better recursion INFO: message after all bugfixes and changes new release updated FAQ, INSTALL, index.html.en copy to ../dphys-kernel-packages-20061027, made tar file of that remade ../dphys-kernel-packages.tar.gz archive for current state ------ project status doing: todo: possible extensions: add an options parser, like in dphys-* shell scripts add an -f filter option like in dphys-config get rid of mailing log, instead use normal syslog and filtering deborphan-like delete based on our package lists, package garbage collector