Re: [gentoo-user] layman: cannot properly execute...

2017-05-09 Thread John Blinka
>> Any ideas on how to debug this?
>
> First of all, update all affected parties to the latest versions
> (eix, portage, layman).

Did that.  I'm always up to date.

>
> Second, use divide and conqueror strategy. If this is the eix
> problem, isolate it to eix only without invoking layman (or emaint
> sync -a or what on the earth you were doing?!).

I use eix-sync, so I believe this is a problem with eix rather than
any ancillary software.

>
> Try with eix-update. If problem persists, look for what eix cache
> method you are using: see man eix for the list, there are many of
> them. Since you have exec error, it likely is ebuild, try to change
> it to parse or metadata.
>

eix-update gives the same error messages as eix-sync.  I've tried
reading the eix
man page, and have to admit that I don't understand what the various
cache methods mean.  I did try both  "eix-update -m science parse" and
"eix-update -m science metadata" without solving the problem (and without
me understanding precisely how these commands change the situation).
FWIW,  eix --dump gives

# STRING
# Portage cache-backend that should be used for the overlays.
# (metadata[:*]/sqlite/flat[:*]/portage-2.1/parse[*][|]ebuild[*]/eix[*][:*])
OVERLAY_CACHE_METHOD="parse|ebuild*"

In my installations, I note that there's a
/usr/portage/metadata/md5-cache directory, but no
/var/lib/layman/science/metadata
cache directories.  Is something missing?

Is there some place other than the eix man page that describes these
various kinds of caches?

Thanks for your suggestions,

John



[gentoo-user] layman: cannot properly execute...

2017-05-06 Thread John Blinka
Hi, all,

For some time I've been getting messages like:

cannot properly execute
/var/lib/layman/science/virtual/lapack/lapack-3.6-r100.ebuild

for *every* package in the science overlay.  This happened on 2 of 3
very similar gentoo
systems I maintain, but not the third.  As far as I could tell, the
permissions and
ownership of all /etc/portage and /usr/portage and /var/lib/layman
files and directories
are identical.  All the machines have the same /etc/passwd and /etc/group files,
the same /var/lib/portage/world files, and so on.  I've gone to some
effort to make these
machines as identical as possible.  I have done layman -d science then layman -a
science to see if wiping out the overlay then reinstalling it would
help, but that makes no
difference.

Googling the error produces just a few hits that recommend permissions
and ownerships
that helped solve this problem for others, but don't help me.

It appears that this error message comes from /usr/bin/eix.  I've
looked through the
source code a bit, but it's been long enough since I've messed with C
that this didn't
yield any answers.

strace indicates that eix does an lstat on every element of
/var/lib/layman/science/virtual/lapack/lapack-3.6-r100.ebuild before
deciding to print the
error message.  It also indicates that eix does a setuid and setgid to
portage:portage
early in its execution.  As far as I can tell, portage:portage ought
to be able to both read
and execute this ebuild (and all the other ones eix complains about).

And now, out of the blue apparently, the third system has started
spitting out this error
message as well.

Any ideas on how to debug this?

John Blinka