There is one feature of dispatch-conf that would be very useful. There should be an option --check-only-if-there-are-updates-to-config-files-and-exit. Then dispatch-conf could return 0 if there are updates and something else if not. This would make it possible to add something to the init scripts so that one could be informed during boot time whether she should run dispatch-conf or not, as many people generally run some updating script when they leave work/go to sleep of the form: emerge --sync&&emerge -uDN world&&shutdown -h now The next morning logging as root and running dispatch-conf could be eliminated if there was this option. One could add something like this to startup scripts: dispatch-conf --check-only-if-there-are-updates-to-config-files-and-exit && echo 'You need to update config files.'; At the moment one needs to search for updates manually. Reproducible: Always Steps to Reproduce: 1.Run "man dispatch-conf" Actual Results: I could not find the option --check-only-if-there-are-updates-to-config-files-and-exit. Expected Results: There should be similar option. Portage 2.0.51.22-r2 (default-linux/x86/2005.0, gcc-3.3.5-20050130, glibc-2.3. 5-r0, 2.6.12-gentoo-r6 i686) ================================================================= System uname: 2.6.12-gentoo-r6 i686 Intel(R) Celeron(R) CPU 2.60GHz Gentoo Base System version 1.6.13 dev-lang/python: 2.3.5 sys-apps/sandbox: 1.2.11 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.5 sys-devel/binutils: 2.15.92.0.2-r10 sys-devel/libtool: 1.5.18-r1 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -pipe -march=pentium4 -mfpmath=sse -mmmx -msse -msse2" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/sha re/config /usr/kde/3.3/shutdown /usr/kde/3.4/env /usr/kde/3.4/share/config /us r/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/d efaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/tex mf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/pla tex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/splash /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -pipe -march=pentium4 -mfpmath=sse -mmmx -msse -msse2" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://ftp.du.se/pub/os/gentoo http://ds.thn.htu.se/linux/gent oo ftp://pandemonium.tiscali.de/pub/gentoo/ ftp://mirror.pudas.net/gentoo" MAKEOPTS="-j2 -s" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="x86 X acpi alsa apm arts avi berkdb bitmap-fonts cdparanoia cdr crypt cup s curl directfb divx4linux dvd dvdread eds emacs emboss encode esd fam fbcon f oomaticdb fortran gd gdbm gif gnome gpm gstreamer gtk gtk2 imagemagick imlib i pv6 java jikes jpeg kde libg++ libwww lm_sensors mad mikmod mmx motif mozilla mp3 mpeg ncurses nls offensive ogg oggvorbis opengl oss pam pdflib perl png py thon qt quicktime readline sdl spell sse ssl svg svga tcpd tetex tiff truetype truetype-fonts type1-fonts unicode v4l vcd vorbis xml2 xmms xv xvid zlib user land_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTDIR_OVERLAY
Wouldn't boot time be too late in some cases? From the einfo in baselayout: * Please be sure to update all pending '._cfg*' files in /etc, * else things might break at your next reboot! You can use 'etc-update' * to accomplish this:
Yes, the boot time (or right after) might be too late, so in this case this option could be even more useful. Then one could use the script like this: emerge --sync&&emerge -uDN world; dispatch-conf --check-only-if-there-are-updates-to-config-files-and-exit || shutdown -h now; This would leave the machine on instead of shutting it down if there are pending configuration files to be updated. Problem is that many config files are not critical for boot and it would leave the machine on unnecessarily sometimes. Of course there could be even additional option of the form: --check-only-if-there-are-updates-to-config-files-critical-to-boot-and-exit, but this would be probably very difficult to implement. On the other hand the option --check-only-if-there-are-updates-to-config-files-and-exit seems very simple to implement. I would personally risk shutting down my laptop every time just to save the energy and the hardware. Even with newest baselayout I did this scenario (booting without dispatch-conf run first), then I updated config files and rebooted and it works OK. Sometimes there are some problems when booting with old configs, like with udev, where some permissions are incorrect (e.g. /dev/null), but also one can dispatch-conf and reboot and it should be OK.
Created attachment 64414 [details] The updating script I run very often. This is the updating script that I run almost everyday when going home. It shuts down the computer after emerge if the file /root/es exists. This is because usually it should be shut down, but it happens with very long emerges that I come back to work and emerge is still in progress and then I need to remove /root/es to avoid accidental shutdown while working. The script is not perfect, e.g. because emerge is not giving errors on file descriptor 2 and all the rest on 1. P.S. es stands for "emerge shutdown".
Putting a hold on feature requests for portage as they are drowning out the bugs. Most of these features should be available in the next major version of portage. But for the time being, they are just drowning out the major bugs and delaying the next version's progress. Any bugs that contain patches and any bugs for etc-update or dispatch-conf can be reopened. Sorry, I'm just not good enough with bugzilla. ;)
Reopening for consideration.