Summary: | app-portage/eix: cannot generate per-overlay cache | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | cyberbat <cyberbat83> |
Component: | New packages | Assignee: | Martin Väth <martin> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | darkside, markknecht, nikoli, patrick, ps |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | remote.tar.bz2 |
Description
cyberbat
2012-03-17 10:42:59 UTC
Same problem Same problem here. c2stable linux # eix-remote -q update --2012-03-17 10:54:31-- http://dev.gentooexperimental.org/eix_cache/eix-caches.tbz2 Resolving dev.gentooexperimental.org... 91.191.147.225 Connecting to dev.gentooexperimental.org|91.191.147.225|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 46 [application/octet-stream] Last-modified header missing -- time-stamps turned off. --2012-03-17 10:54:32-- http://dev.gentooexperimental.org/eix_cache/eix-caches.tbz2 Reusing existing connection to dev.gentooexperimental.org:80. HTTP request sent, awaiting response... 200 OK Length: 46 [application/octet-stream] Saving to: `eix-caches.tbz2' 100%[===========================================================================>] 46 --.-K/s in 0s 2012-03-17 10:54:32 (12.1 MB/s) - `eix-caches.tbz2' saved [46/46] * Unpacking data... chmod: cannot access `*': No such file or directory Can't open the database file /tmp/eix-remote.qeqDxxp9/1/* for reading (mode = 'rb') Did you forget to create it with 'eix-update'? problems arose with cachefile * * Calling eix-update... * could not read all eix cachefiles of /var/cache/eix/remote.tar.bz2 Probably your eix cachefile was *not* updated successfully. Unless the above messages suggest another cause or you specified a wrong filename, the most likely cause of this is that the server uses another eix version than you or produced broken data. Please check whether EIX_REMOTEARCHIVE is a valid *.tar.bz2 archive containing eix cachefiles (you can download it using fetch). If this is not the case (but was freshly downloaded), please report a bug. Note that the archive is *not* broken if only the cachefile format versions differ: In that case only report a bug if the eix cachefile format versions in the downloaded file are *older* than that of the most current ~x86 eix version in the portage tree (but first retry after several days before reporting such a bug to give the server maintainers a chance to upgrade after a version bump of eix). Conversely, if the downloaded versions are even newer than that supported by your eix, you will have to upgrade to the most current ~x86 version of eix to use eix-remote: This inconvenience cannot be avoided and is not a bug! c2stable linux # c2stable linux # emerge --info Portage 2.2.0_alpha90 (default/linux/amd64/10.0/desktop/kde, gcc-4.5.3, glibc-2.13-r4, 3.2.1-gentoo-r2 x86_64) ================================================================= System uname: Linux-3.2.1-gentoo-r2-x86_64-Intel-R-_Core-TM-_i7_CPU_X_980_@_3.33GHz-with-gentoo-2.0.3 Timestamp of tree: Sat, 17 Mar 2012 13:45:01 +0000 app-shells/bash: 4.2_p20 dev-java/java-config: 2.1.11-r3 dev-lang/python: 2.7.2-r3, 3.2.2 dev-util/cmake: 2.8.6-r4 dev-util/pkgconfig: 0.26 sys-apps/baselayout: 2.0.3 sys-apps/openrc: 0.9.8.4 sys-apps/sandbox: 2.5 sys-devel/autoconf: 2.13, 2.68 sys-devel/automake: 1.4_p6-r1, 1.9.6-r3, 1.10.3, 1.11.1 sys-devel/binutils: 2.21.1-r1 sys-devel/gcc: 4.5.3-r2 sys-devel/gcc-config: 1.5-r2 sys-devel/libtool: 2.4-r1 sys-devel/make: 3.82-r1 sys-kernel/linux-headers: 3.1 (virtual/os-headers) sys-libs/glibc: 2.13-r4 Repositories: gentoo vmware foo-overlay Installed sets: ACCEPT_KEYWORDS="amd64" ACCEPT_LICENSE="* -@EULA dlj-1.1 PUEL AdobeFlash-10.3 skype-eula google-chrome" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -march=native -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-O2 -march=native -pipe" DISTDIR="/usr/portage/distfiles" EMERGE_DEFAULT_OPTS="--with-bdeps=y --jobs=5" FEATURES="assume-digests binpkg-logs buildpkg distlocks ebuild-locks fixlafiles news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch" FFLAGS="" GENTOO_MIRRORS="http://gentoo.mirrors.hoobly.com/ http://ftp.ucsb.edu/pub/mirrors/linux/gentoo/ http://gentoo.llarian.net/" LANG="en_US.UTF8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" LINGUAS="en" MAKEOPTS="-j13 -l8" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/var/lib/layman/vmware /var/lib/layman/foo-overlay" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" USE="X a52 aac acl acpi alsa amd64 berkdb branding bzip2 cairo cdda cdr cli consolekit cracklib crypt cxx dbus declarative dri dts dvd dvdr emboss encode exif fam firefox flac fortran gdbm gdu gif gpm gstreamer gtk iconv ios ipad java jpeg jpeg2k kde kipi lcms ldap libnotify mad mmx mng modules mp3 mp4 mpeg mudflap multilib ncurses nls nptl nptlonly ogg opengl openmp pam pango pcre pdf phonon plasma png policykit ppds pppd qt3support qt4 readline sdl semantic-desktop session spell sse sse2 ssl ssse3 startup-notification svg sysfs tcpd tiff truetype udev unicode usb vdpau vorbis x264 xcb xcomposite xinerama xml xorg xscreensaver xulrunner xv xvid xvmc zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" DRACUT_MODULES="mdraid" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS c2stable linux # Although the problem looks similar, it is rather different: This time the problem is apparently on the machine which should generate the tarball: This tarball is empty I do not know what goes wrong on this machine (apparantly after the upgrade of eix), and currently I have no time to look into the issue. # eix-update --exclude-overlay "/usr/portage" --add-overlay "sunrise" -o "sunrise.eix" Reading Portage settings .. Excluded PORTDIR: /usr/portage/ Building database (sunrise.eix) .. [0] "" sunrise (cache: parse|ebuild*#metadata-md5#metadata-flat#assign) Reading category 154|154 (100%) EMPTY! Applying masks .. Calculating hash tables .. Writing database file sunrise.eix .. void update(const char*, CacheTable&, PortageSettings&, const std::vector<RepoName, std::allocator<RepoName> >&, const std::vector<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, Statusline&): Can't open the database file 'sunrise.eix' for writing (mode = 'wb') # eix --version eix 0.25.3 (gcc-4.4.5, x86_64-pc-linux-gnu That's the cause of the failure of the remote cache - it cannot generate the cache files in the local directory (eh whut?) even when permissions would allow it (In reply to comment #4) > That's the cause of the failure of the remote cache - it cannot generate the > cache files in the local directory (eh whut?) even when permissions would > allow it eix-update attempts to drop its permissions to $EIX_USER:$EIX_GROUP (defaults to portage:portage) if it has sufficient rights to do so. So please set EIX_USER and EIX_GROUP (in the environment or in /etc/eixrc) correspondingly to the user/group you need if you run eix-update as root (if you need a different user/group than portage). See bug 408509. Blergh. What an unexpected trap, changing behaviour like that is marginally rude. Changing the directory permissions fixes the problem, new cache should be baked in ~15 minutes. (In reply to comment #6) > Blergh. What an unexpected trap, changing behaviour like that is marginally > rude. Yes, I am sorry, but I think the security gain for most users (most users just had to run eix-update as root, although it is a golden rule to use the least possible permissions) outlaws the trouble. |