Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 553262 - app-portage/eix: EIX_LOCAL_SETS="*/sets" does not work
Summary: app-portage/eix: EIX_LOCAL_SETS="*/sets" does not work
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Martin Väth
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-06-25 22:55 UTC by tokiclover
Modified: 2015-11-08 10:24 UTC (History)
4 users (show)

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


Attachments
strace eix media-sound/ladish (eix.log.bz2,11.69 KB, application/x-bzip)
2015-06-25 23:03 UTC, tokiclover
Details

Note You need to log in before you can comment on or make changes to this bug.
Description tokiclover 2015-06-25 22:55:45 UTC
Switched to repos.conf and I am having trouble with indexing repository and searching for packages.

Note I've just moved my repos to `/var/db/repos' by hand from `/var/lib/layman' which was not convenient at all. And now, gentoo tree is also moved to that location so, squashing all the repos in a single squashfs is possible.

No idea at what is happeing as eix seems to read the conf files pretty well.

Reproducible: Always
Comment 1 tokiclover 2015-06-25 23:03:50 UTC
Created attachment 405760 [details]
strace eix media-sound/ladish

Package available in bar-overlay.
Eix is actually a monster in syscall and disk seek! The whole strace is really huge, so I've pruned the long long fseek() calls.

Well, lets consider portage-utils which is lighting fast...
Comment 2 Franz Trischberger 2015-06-27 11:55:45 UTC
Basic information missing:
* emerge --info eix
* repos.conf
* eixrc

The seeks most likely come from sqlite, so don't worry.
Comment 3 tokiclover 2015-06-27 23:15:04 UTC
$ emerge --info
Portage 2.2.20 (python 2.7.10-final-0, hardened/linux/amd64, gcc-4.9.2, glibc-2.20-r2, 3.18.9-git x86_64)
=================================================================
System uname: Linux-3.18.9-git-x86_64-Intel-R-_Core-TM-_i7-4700HQ_CPU_@_2.40GHz-with-gentoo-2.2
KiB Mem:    16382964 total,   6691040 free
KiB Swap:     524284 total,    524284 free
Timestamp of repository gentoo: Tue, 23 Jun 2015 06:45:01 +0000
sh bash 4.3_p39
ld GNU ld (Gentoo 2.25 p1.0) 2.25
app-shells/bash:          4.3_p39::gentoo
dev-java/java-config:     2.2.0::gentoo
dev-lang/perl:            5.20.2-r1::gentoo
dev-lang/python:          2.7.10::gentoo, 3.3.5-r1::gentoo, 3.4.3::gentoo
dev-util/cmake:           3.0.2::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.16.4::gentoo
sys-apps/sandbox:         2.6-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69-r1::gentoo
sys-devel/automake:       1.11.6-r1::gentoo, 1.13.4::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25::gentoo
sys-devel/gcc:            4.9.2::gentoo
sys-devel/gcc-config:     1.8::gentoo
sys-devel/libtool:        2.4.6-r1::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 3.18::gentoo (virtual/os-headers)
sys-libs/glibc:           2.20-r2::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: git
    sync-uri: git://github.com/gentoo/gentoo-portage-rsync-mirror.git
    priority: -1000

bar
    location: /var/db/repos/bar
    sync-type: git
    sync-uri: git://github.com/tokiclover/bar-overlay.git
    masters: gentoo

mpd
    location: /var/db/repos/mpd
    sync-type: git
    sync-uri: git://git.musicpd.org/master/mpd-gentoo-overlay.git
    masters: gentoo

multimedia
    location: /var/db/repos/multimedia
    sync-type: git
    sync-uri: git://github.org/gentoo/multimedia.git
    masters: gentoo

proxy-maintainers
    location: /var/db/repos/proxy-maint
    sync-type: git
    sync-uri: git://github.com/gentoo/proxy-maintainers.git
    masters: gentoo

x11
    location: /var/db/repos/x11
    sync-type: git
    sync-uri: git://git.overlays.gentoo.org/proj/x11.git
    masters: gentoo

Installed sets: @X, @archive, @daw, @fonts, @gtk, @multimedia, @openbox, @portage, @sys, @themes, @vim
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=native -pipe -floop-interchange -ftree-loop-distribution -floop-strip-mine -floop-block -ftree-vectorize -flto=8 -fuse-linker-plugin"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/gnupg/qualified.txt /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -march=native -pipe -floop-interchange -ftree-loop-distribution -floop-strip-mine -floop-block -ftree-vectorize -flto=8 -fuse-linker-plugin"
DISTDIR="/var/src"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs buildpkg cgroup config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="ftp://ftp.free.fr/mirrors/ftp.gentoo.org/ ftp://mirror.ovh.net/gentoo-distfiles/ http://gentoo.mneisen.org/ ftp://mirror.mdfnet.se/gentoo ftp://de-mirror.org/gentoo/"
INSTALL_MASK="/etc/systemd /lib*/systemd /usr/lib*/systemd"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -flto=8 -fuse-linker-plugin"
MAKEOPTS="-j8"
PKGDIR="/var/pkg"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
USE="X a52 aac acl acpi alsa amd64 atlas audiofile avi berkdb blas bzip2 cairo caps cdda cddb cdio cdr cjk clang cleartype cli cracklib crypt css cups curl cxx dbus device-mapper directfb djvu dri dv dvd dvdr egl exif expat fbcon ffmpeg fftw flac fltk fontconfig fontforge ftp gd gdbm gif git gles2 glut gpm graphite graphviz gtk gtk2 gzip hardened hddtemp iconv icu idn ieee1394 imagemagick imlib infinality ipv6 jack java javascript jbig jpeg jpeg2k justify kerberos ladspa lame lapack lash lcms libass libnotify libsamplerate lm_sensors lto lua luajit lz4 lzma lzo lzop mad matroska mbox mmx mmxext mng modplug modules mp3 mp4 mpeg multilib musepack ncurses nls nptl nsplugin ntp ogg opengl openldap openmp openssl oss pam pax_kernel pcre pdf perl pie png postscript python readline savedconfig session smp sndfile snmp sockets sqlite sse sse2 ssl ssp startup-notification svg symlink tcpd theora threads tiff truetype udev unicode urandom usb vaapi vdpau vim vim-syntax vorbis wavpack wayland wifi x264 xattr xft xinerama xinetd xml xorg xpm xtpax xv xvid xvmc xz zip zlib zsh-completion" ABI_X86="64" ALSA_CARDS="cmipci hda-intel usb-audio" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd 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 sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="avx avx2 mmx mmxext sse sse2 sse3 ssse3 sse4_1 sse4_2" 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 ublox ubx" GRUB_PLATFORMS="emu efi-32 efi-64 qemu pc" INPUT_DEVICES="evdev mouse keyboard synaptics vmmouse" KERNEL="linux" LCD_DEVICES="lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="scripting-javascript nlpsolver wiki-publisher" LINGUAS="en fr" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" QEMU_SOFTMMU_TARGETS="aarch64 arm i386 ppc ppc64 sparc sparc64 s390x" QEMU_USER_TARGETS="aarch64 arm i386 ppc ppc64 sparc sparc64 s390x" RUBY_TARGETS="ruby21" SANE_BACKENDS="canon canon630 canon_dr" USERLAND="GNU" VIDEO_CARDS="intel i915 i965 nouveau vesa vmware" XTABLES_ADDONS="ipv4options ipset iface ipmark dhcpmac"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON

$ cat /etc/portage/repos.conf
[DEFAULT]
main-repo = gentoo

[... THE SAME AS ABOVE]

$ cat /etc/eixrc/00-eixrc
OVERLAY_CACHE_METHOD="assign"

--
That's all, almost a blank eixrc and and addional default section to gentoo.conf or repos.conf when it's a single file.
Comment 4 tokiclover 2015-06-27 23:25:59 UTC
Last thing, notice the erronous handling of REPOS/sets directory... only gentoo/sets is right here. The other repos have a missing `/s' in the path causing an erronous handling!
Comment 5 Martin Väth 2015-06-29 06:11:58 UTC
It is not at clear what the problem is; strace helps nothing to "guess" your problem (BTW: The seeks are one of the reasons why eix is fast: Instead of reading the whole package data, eix only reads category/name [since you look for that data] and then skips (by seek) for the next package in the database).

If you have a problem with indexing an overlay, the interesting information is the output of eix-update and, if you can do, a check whether the cache method given there for your overlay matches the data you have for that overlay (and if that data is readable by user/group "portage").

If the data printed by eix-update does not match your repos.conf, please post the full repos.conf (and also check whether repos.conf is readable by user/group "portage").

> The other repos have a missing `/s' in the path causing an erronous handling!

Thanks; it seems that there is a bug in the magic '*' of EIX_LOCAL_SETS.
Comment 6 tokiclover 2015-06-29 10:45:09 UTC
Well then, let's post some additional info then in response to Martin (comment #5):

--
$ ls -alh /var/db/repos
lsl ../                                                                                                                 «─┘
total 305K
drwxr-xr-x  69 portage portage 4,0K Jun 29 12:34 bar
-rw-r--r--   1 root    root      12 Jun 23 10:01 cache_74118b2bc67492d23787ebf4db127fe0.timestamp
-rw-r--r--   1 root    root     617 Jun 23 10:01 cache_74118b2bc67492d23787ebf4db127fe0.xml
-rw-r--r--   1 root    root      29 Jun 23 10:01 cache_930c3ed4a5f89f74fd810585751a06e3.timestamp
-rw-r--r--   1 root    root    278K Jun 23 10:01 cache_930c3ed4a5f89f74fd810585751a06e3.xml
drwxr-xr-x 280 portage portage 4,0K Jun 28 01:21 gentoo
-rw-r--r--   1 root    root     516 Jun 23 10:02 installed.xml
drwxr-xr-x  14 portage portage 4,0K Jun 28 01:21 mpd
drwxr-xr-x  12 portage portage 4,0K Jun 28 01:21 multimedia
drwxr-xr-x  16 root    root    4,0K Jun 28 01:21 proxy-maint
drwxr-xr-x  17 portage portage 4,0K Jun 28 01:21 x11
--
$ eix-update
Reading Portage settings ..
Building database (/var/cache/eix/portage.eix) ..
[0] 'gentoo' /var/db/repos/gentoo/ (cache: metadata-md5-or-flat)
     Reading category 163|163 (100%) Finished             
[1] 'bar' /var/db/repos/bar (cache: assign)
     Reading category 163|163 (100%) Finished        
[2] 'mpd' /var/db/repos/mpd (cache: assign)
     Reading category 163|163 (100%) Finished         
[3] 'multimedia' /var/db/repos/multimedia (cache: assign)
     Reading category 163|163 (100%) Finished       
[4] 'proxy-maintainers' /var/db/repos/proxy-maint (cache: assign)
     Reading category 163|163 (100%) EMPTY!
[5] 'x11' /var/db/repos/x11 (cache: assign)
     Reading category 163|163 (100%) Finished       
Applying masks ..
Calculating hash tables ..
Writing database file /var/cache/eix/portage.eix ..
Database contains 18125 packages in 163 categories.
--
$ ls -alh /etc/portage/repos.conf
-rw-r--r-- 1 root root 122 Jun 23 09:57 bar.conf
-rw-r--r-- 1 root root 171 Jun 23 09:19 gentoo.conf
-rw-r--r-- 1 root root   0 Jun 26 00:20 layman.conf
-rw-r--r-- 1 root root 130 Jun 23 09:58 mpd.conf
-rw-r--r-- 1 root root 131 Jun 23 09:59 multimedia.conf
-rw-r--r-- 1 root root 147 Jun 23 09:59 proxy-maintainers.conf
-rw-r--r-- 1 root root 121 Jun 23 09:59 x11.conf
--

Files/directories are world readable and repository directories are owned by portage:portage.

That empty error is troubling because I had it previously on bar-overlay and then experimented a few thing,--trying to fix the issue.... single file/directory for repos.conf,--and it moved to another repos!

Lastly:
--
$ cat /etc/porage/repos.conf-
[DEFAULT]
main-repo = gentoo

[gentoo]
location = /var/db/repos/gentoo
sync-type = git
sync-uri = git://github.com/gentoo/gentoo-portage-rsync-mirror.git
auto-sync = true

[bar]
location = /var/db/repos/bar
sync-type = git
sync-uri = git://github.com/tokiclover/bar-overlay.git
auto-sync = yes

[mpd]
location = /var/db/repos/mpd
sync-type = git
sync-uri = git://git.musicpd.org/master/mpd-gentoo-overlay.git
auto-sync = yes

[multimedia]
location = /var/db/repos/multimedia
sync-type = git
sync-uri = git://github.org/gentoo/multimedia.git
auto-sync = yes

[x11]
location = /var/db/repos/x11
sync-type = git
sync-uri = git://git.overlays.gentoo.org/proj/x11.git
auto-sync = yes

[proxy-maintainers]
location = /var/db/repos/proxy-maint
sync-type = git
sync-uri = git://github.com/gentoo/proxy-maintainers.git
auto-sync = yes
--

This is the content of the combined REPOS.conf when it is a single file instead.
Comment 7 tokiclover 2015-06-29 10:50:39 UTC
Darn... sorry the trouble guys...

I've just commented out `OVERLAY_CACHE_METHOD="assign"' from eixrc and got a postive indexing!
--
$ eix-update
Reading Portage settings ..
Building database (/var/cache/eix/portage.eix) ..
[0] 'gentoo' /var/db/repos/gentoo/ (cache: metadata-md5-or-flat)
     Reading category 163|163 (100%) Finished             
[1] 'bar' /var/db/repos/bar (cache: parse|ebuild*#metadata-md5#metadata-assign#assign)
     Reading category 163|163 (100%) Finished         
[2] 'mpd' /var/db/repos/mpd (cache: parse|ebuild*#metadata-md5#metadata-assign#assign)
     Reading category 163|163 (100%) Finished         
[3] 'multimedia' /var/db/repos/multimedia (cache: parse|ebuild*#metadata-md5#metadata-assign#assign)
     Reading category 163|163 (100%) Finished       
[4] 'proxy-maintainers' /var/db/repos/proxy-maint (cache: parse|ebuild*#metadata-md5#metadata-assign#assign)
     Reading category 163|163 (100%) Finished        
[5] 'x11' /var/db/repos/x11 (cache: parse|ebuild*#metadata-md5#metadata-assign#assign)
     Reading category 163|163 (100%) Finished          
Applying masks ..
Calculating hash tables ..
Writing database file /var/cache/eix/portage.eix ..
Database contains 18209 packages in 163 categories.
--

Issue solved then. Lets find out why I've used this... surly listened to advice to use this setting in the wiki or... the forums.
Comment 8 Martin Väth 2015-06-29 19:26:38 UTC
I took the freedom to change the topic to the error from comment #4

That issue is already fixed in the eix master branch on github (>=eix-0.30.12).

This bug will be closed once >=eix-0.30.12 is released and in the gentoo repository.
Comment 9 tokiclover 2015-06-29 19:34:23 UTC
Thanks for your help Martin!