Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 100130 - dispatch-conf should be able to check for config updates and exit.
Summary: dispatch-conf should be able to check for config updates and exit.
Status: CONFIRMED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Enhancement/Feature Requests (show other bugs)
Hardware: All All
: High enhancement (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-07-24 09:29 UTC by rhywek
Modified: 2023-07-25 01:42 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
The updating script I run very often. (UpdateSystem.sh,1.43 KB, text/plain)
2005-07-27 01:24 UTC, rhywek
Details

Note You need to log in before you can comment on or make changes to this bug.
Description rhywek 2005-07-24 09:29:29 UTC
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
Comment 1 LionsPhil 2005-07-26 01:37:44 UTC
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:
Comment 2 rhywek 2005-07-27 01:01:58 UTC
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.
Comment 3 rhywek 2005-07-27 01:24:49 UTC
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".
Comment 4 Jason Stubbs (RETIRED) gentoo-dev 2005-07-28 07:25:27 UTC
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. ;) 
Comment 5 Marius Mauch (RETIRED) gentoo-dev 2007-01-12 06:20:13 UTC
Reopening for consideration.