Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 116616

Summary: archive-conf only gives a traceback
Product: Portage Development Reporter: Simon Stelling (RETIRED) <blubb>
Component: UnclassifiedAssignee: Portage team <dev-portage>
Status: RESOLVED FIXED    
Severity: normal Keywords: InVCS
Priority: High    
Version: 2.0   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 147007    

Description Simon Stelling (RETIRED) gentoo-dev 2005-12-24 08:02:07 UTC
okay, this is somewhat strange: I found this tool and wanted to know what it is for, so I did:

 # archive-conf
Usage: archive-conf /CONFIG/FILE [/CONFIG/FILE...]

right, this isn't very helpful, so let's append -h:

 # archive-conf -h
dispatch-conf: Error copying /root/-h to /etc/config-archive/root/-h: [Errno 2] No such file or directory: '/root/-h'; fatal
Traceback (most recent call last):
  File "/usr/sbin/archive-conf", line 99, in ?
    archive_conf()
  File "/usr/sbin/archive-conf", line 95, in archive_conf
    dispatch_conf.file_archive_post_process(archive)
  File "/usr/lib/portage/pym/dispatch_conf.py", line 162, in file_archive_post_process
    os.rename(archive + '.dist.new', archive + '.dist')
OSError: [Errno 2] No such file or directory

Boom! Apparently, this tool doesn't catch many exceptions. So let's just try to find out what it does if an existing file is specified:

 # archive-conf /etc/make.conf
Traceback (most recent call last):
  File "/usr/sbin/archive-conf", line 99, in ?
    archive_conf()
  File "/usr/sbin/archive-conf", line 95, in archive_conf
    dispatch_conf.file_archive_post_process(archive)
  File "/usr/lib/portage/pym/dispatch_conf.py", line 162, in file_archive_post_process
    os.rename(archive + '.dist.new', archive + '.dist')
OSError: [Errno 2] No such file or directory

Boom!
Of course it doesn't have a man page, it is also not mentioned in man emerge or man portage, so... What exactly is the use of this piece of code?

Merry christmas...

 # emerge info
Portage 2.0.53 (default-linux/amd64/2005.1, gcc-3.4.4, glibc-2.3.5-r2, 2.6.12-gentoo-r6 x86_64)
=================================================================
System uname: 2.6.12-gentoo-r6 x86_64 AMD Opteron(tm) Processor 242
Gentoo Base System version 1.6.13
dev-lang/python:     2.3.5-r2, 2.4.2
sys-apps/sandbox:    1.2.12
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.6-r1
sys-devel/binutils:  2.15.92.0.2-r10
sys-devel/libtool:   1.5.20
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=opteron -ggdb3 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib64/mozilla/defaults/pref /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=opteron -ggdb3 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig buildpkg cvs debug distlocks keeptemp keepwork multilib-strict nostrip sandbox sfperms test"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LC_ALL="en_GB.UTF-8"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org"
USE="amd64 X acpi alsa audiofile avi berkdb bitmap-fonts bonobo bzip2 chipcard crypt cups curl debug dvd eds emboss encode esd expat fam flac font-server foomaticdb fortran gcj gd gdbm gif glut gmp gnome gpm gstreamer gtk gtk2 gtkhtml guile hbci idn imagemagick imlib ipv6 java jp2 jpeg kde lcms ldap libwww lzw lzw-tiff mhash mng motif mozilla mp3 mpeg mysql ncurses network nls nptl nptlonly objc objc-gc ofx ogg oggvorbis opengl pam pcre pdflib perl png postgres python qt quicktime quotes readline sdl spell ssl svg tcltk tcpd tiff truetype truetype-fonts type1-fonts udev usb userlocales utf8 vorbis wxgtk1 xml xml2 xpm xrandr xv zlib userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LANG, LDFLAGS, LINGUAS, MAKEOPTS, PORTDIR_OVERLAY
Comment 1 Zac Medico gentoo-dev 2006-11-01 02:04:34 UTC
I doubt that anyone even uses archive-conf.  Does anybody care if we punt it?
Comment 2 Zac Medico gentoo-dev 2006-11-01 02:13:50 UTC
This is fx(In reply to comment #0)
> What exactly is the use of this piece of code?

It's automates the process of archiving a config file.  It's intended to be used just before the file is edited.  The traceback is fixed in svn r4903.
Comment 3 Zac Medico gentoo-dev 2006-11-02 15:44:07 UTC
This has been released in 2.1.2_rc1-r3.