Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
How's pkgcore these days?
View unanswered posts
View posts from last 24 hours

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Gentoo Chat
View previous topic :: View next topic  
Author Message
Ant P.
Watchman
Watchman


Joined: 18 Apr 2009
Posts: 6920

PostPosted: Sun Mar 01, 2015 11:12 pm    Post subject: How's pkgcore these days? Reply with quote

I don't want to deal with Paludis's bullshit any more.

Basic usability issues getting wontfixed 30 seconds after submitting them with lazy "upstream is broken by design" excuses, never mind the fact that those words are always coming from someone whose name is on the front page of the upstream specification. Having every operation take 3 times as long as Portage, multiplied by 2 because there's no --ask switch and they refuse to add one. No sync security whatsoever and adding any requires hacking undocumented internals. They call this "a fast and flexible package manager" on their distro's homepage. What a blatant lie.

This is way past the limits of my tolerance for masochism. And that takes some doing, considering I was maintaining web apps for IE6/7 in the 2010's.

I give up, show me how nice the alternative is, with some examples maybe. I'd like to know what I'm getting into before I throw it on all my boxes.

(And I don't want to go back to Portage, if it was good enough there'd be no reason for pkgcore to exist either. And its search features kinda suck.)
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6747

PostPosted: Mon Mar 02, 2015 6:24 am    Post subject: Re: How's pkgcore these days? Reply with quote

Ant P. wrote:
And its search features kinda suck.

One tool, one job: For searching, there's eix.
Back to top
View user's profile Send private message
arnvidr
l33t
l33t


Joined: 19 Aug 2004
Posts: 629
Location: Oslo, Norway

PostPosted: Mon Mar 02, 2015 8:32 am    Post subject: Re: How's pkgcore these days? Reply with quote

mv wrote:
For searching, there's eix.
Damn straight, that thing is excellent.
_________________
Noone wrote:
anything
Back to top
View user's profile Send private message
yngwin
Retired Dev
Retired Dev


Joined: 19 Dec 2002
Posts: 4572
Location: Suzhou, China

PostPosted: Mon Mar 02, 2015 9:09 am    Post subject: Re: How's pkgcore these days? Reply with quote

pkgcore is severely outdated. It can't handle EAPI=5. But recently a company was trying to hire a developer to bring it up to date. See http://archives.gentoo.org/gentoo-dev/message/48eb64957cc05f477411fd3129afd580

So if we're lucky, it will be improved.

In the meantime I suggest you use portage (with eix for search, as mentioned). Portage has improved quite a bit. For example, it has proper repo support now.
_________________
"Those who deny freedom to others deserve it not for themselves." - Abraham Lincoln
Free Culture | Defective by Design | EFF
Back to top
View user's profile Send private message
dol-sen
Retired Dev
Retired Dev


Joined: 30 Jun 2002
Posts: 2805
Location: Richmond, BC, Canada

PostPosted: Fri Mar 06, 2015 3:32 am    Post subject: Reply with quote

Actually, nearly all of EAPI 5 is working in pkgcore now. Subslot rebuilds is about the only thing not yet implemented. You will likely find some ebuilds it has trouble with, so please report them, but it is mostly working. For that you need to run the 9999 version. He hasn't released an updated version yet, but it is getting closer.


As for portage searches. It now has a new indexed search system (>=portage-2.2.17) that can automatically fall back to the old non-indexed search for the case of overlays and such being updated independently. Searches are not as fast as eix, but, they are down to about the 1 to 2 second mark.
_________________
Brian
Porthole, the Portage GUI frontend irc@freenode: #gentoo-guis, #porthole, Blog
layman, gentoolkit, CoreBuilder, esearch...
Back to top
View user's profile Send private message
Ant P.
Watchman
Watchman


Joined: 18 Apr 2009
Posts: 6920

PostPosted: Fri Mar 06, 2015 7:16 pm    Post subject: Reply with quote

2 seconds? Well I'm sold. Paludis's search (with an index file) takes on the order of several minutes. As does pretty much every other operation.


Related question:
Paludis can search for package names/versions in not-installed layman repos as if they're local. Can any of these others do that? It's really useful at times.


Unrelated question:
How would I translate stuff like MAKEOPTS="-j$(distcc -j)" to either pkgcore or portage? IIRC make.conf isn't actually parsed by bash, so that won't work.
Back to top
View user's profile Send private message
Naib
Watchman
Watchman


Joined: 21 May 2004
Posts: 6051
Location: Removed by Neddy

PostPosted: Fri Mar 06, 2015 8:01 pm    Post subject: Reply with quote

I thought make.conf is sourced
_________________
Quote:
Removed by Chiitoo
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6747

PostPosted: Sat Mar 07, 2015 7:58 am    Post subject: Reply with quote

Ant P. wrote:
search for package names/versions in not-installed layman repos as if they're local. Can any of these others do that?

There are two (I am aware of) remote eix databases hosted which contain all layman overlays and actually some more: One by gentoo and one on the zugaina server.
Eix contains scripts (eix-remote) to download these and to generate merged databases (optionally excluding installed overlays to install duplicates); these scripts can be called in a hook with eix-sync - read the eix manpage (This not done by default.)
Since eix contains two runtime switches (-R and -Z) to change the database source quickly, you can use these switches to search in the gentoo remote and/or zugaine database, respectively, if you downloaded that data.
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6747

PostPosted: Sat Mar 07, 2015 8:02 am    Post subject: Reply with quote

Naib wrote:
I thought make.conf is sourced

No, it is interpreted by python in a rather complicated way. Moreover, the interpretation of the values after sourcing is also different: For some variable names like USE, the information is accumulative, for others, like expanded IUSE variables, it is not. This is very useful and convenient, but far from being just a "source" in bash.
Back to top
View user's profile Send private message
steveL
Watchman
Watchman


Joined: 13 Sep 2006
Posts: 5153
Location: The Peanut Gallery

PostPosted: Sat Mar 07, 2015 11:40 am    Post subject: Reply with quote

Naib wrote:
I thought make.conf is sourced

mv wrote:
No, it is interpreted by python in a rather complicated way. Moreover, the interpretation of the values after sourcing is also different: For some variable names like USE, the information is accumulative, for others, like expanded IUSE variables, it is not. This is very useful and convenient, but far from being just a "source" in bash.

Yes it's the python shlex module last I checked; but there's no such thing as "just" a source in bash, which actually has much more capability than shlex. (incremental stacking has been implemented in bash since the early days.)
Back to top
View user's profile Send private message
Naib
Watchman
Watchman


Joined: 21 May 2004
Posts: 6051
Location: Removed by Neddy

PostPosted: Sat Mar 07, 2015 3:27 pm    Post subject: Reply with quote

mv wrote:
Naib wrote:
I thought make.conf is sourced

No, it is interpreted by python in a rather complicated way. Moreover, the interpretation of the values after sourcing is also different: For some variable names like USE, the information is accumulative, for others, like expanded IUSE variables, it is not. This is very useful and convenient, but far from being just a "source" in bash.


Right, so it is sh syntax but parsed into the python part of portage. I suppose that makes sense if the python part requires that information. I guess the alternative was yet another file syntax...
_________________
Quote:
Removed by Chiitoo
Back to top
View user's profile Send private message
Dr.Willy
Guru
Guru


Joined: 15 Jul 2007
Posts: 547
Location: NRW, Germany

PostPosted: Sat Mar 07, 2015 6:30 pm    Post subject: Reply with quote

mv wrote:
Naib wrote:
I thought make.conf is sourced

No, it is interpreted by python in a rather complicated way. Moreover, the interpretation of the values after sourcing is also different: For some variable names like USE, the information is accumulative, for others, like expanded IUSE variables, it is not. This is very useful and convenient, but far from being just a "source" in bash.

Honestly that
Code:
USE="useflag"
should just be deprecated in favor of setting
Code:
*/* useflag
in package.use. (which already works btw)
Back to top
View user's profile Send private message
arnvidr
l33t
l33t


Joined: 19 Aug 2004
Posts: 629
Location: Oslo, Norway

PostPosted: Mon Mar 09, 2015 7:11 am    Post subject: Reply with quote

Dr.Willy wrote:
Honestly that
Code:
USE="useflag"
should just be deprecated in favor of setting
Code:
*/* useflag
in package.use. (which already works btw)
Why? That seems vastly less convenient.
_________________
Noone wrote:
anything
Back to top
View user's profile Send private message
Dr.Willy
Guru
Guru


Joined: 15 Jul 2007
Posts: 547
Location: NRW, Germany

PostPosted: Mon Mar 09, 2015 4:53 pm    Post subject: Reply with quote

arnvidr wrote:
Why? That seems vastly less convenient.

Sorry, what? Convenient? What is convenient about USE= ??
Back to top
View user's profile Send private message
Naib
Watchman
Watchman


Joined: 21 May 2004
Posts: 6051
Location: Removed by Neddy

PostPosted: Mon Mar 09, 2015 5:12 pm    Post subject: Reply with quote

Dr.Willy wrote:
arnvidr wrote:
Why? That seems vastly less convenient.

Sorry, what? Convenient? What is convenient about USE= ??


What you are pointing out is a */* useflag in package.use has the same affect as USE=useflag in make.conf THUS, why not have useflag control done in package.use and globals can be set with */* and specifics can be set via foo/bar = ...

arnvidr is just query how is that more convenient... I see the point that all USe control would then be in one file
_________________
Quote:
Removed by Chiitoo
Back to top
View user's profile Send private message
Dr.Willy
Guru
Guru


Joined: 15 Jul 2007
Posts: 547
Location: NRW, Germany

PostPosted: Mon Mar 09, 2015 6:28 pm    Post subject: Reply with quote

Naib wrote:
What you are pointing out is a */* useflag in package.use has the same affect as USE=useflag in make.conf THUS, why not have useflag control done in package.use and globals can be set with */* and specifics can be set via foo/bar = ...

arnvidr is just query how is that more convenient... I see the point that all USe control would then be in one file

+ avoids two entirely different syntaxes for USE configuration (with cat/pkg foo syntax being required anyway)
+ single location (you can put your useflags into package.use/GLOBAL or something of course)
+ more flexible (you can do things like 'dev-java/* source' for example)

…only thing missing are these … special use flags (i forgot the name) … like X86_CPU_FLAGS or PYTHON_TARGETS.
Back to top
View user's profile Send private message
Ant P.
Watchman
Watchman


Joined: 18 Apr 2009
Posts: 6920

PostPosted: Mon Mar 09, 2015 8:00 pm    Post subject: Reply with quote

Nope, those are supported now too. The only thing that's not is using backslashes for line continuation.
Back to top
View user's profile Send private message
Dr.Willy
Guru
Guru


Joined: 15 Jul 2007
Posts: 547
Location: NRW, Germany

PostPosted: Mon Mar 09, 2015 8:52 pm    Post subject: Reply with quote

Ant P. wrote:
Nope, those are supported now too.

oh nice. Is it the same '*/* X86_CPU_FLAGS: xyz' syntax?
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6747

PostPosted: Tue Mar 10, 2015 8:35 am    Post subject: Reply with quote

Just because it is finally (well, actually since some years...) possible to do all in one file/folder, does not mean that it is a good idea to do this.
Dr.Willy wrote:
+ avoids two entirely different syntaxes for USE configuration (with cat/pkg foo syntax being required anyway)

- forces the same syntax for two completely different things: Setting your preferred defaults and some intentional deviations from the defaults
- your defaults cannot easily be spread across different machines: Many people use e.g. the different make.conf locations to do this with network-mounted directories.
Quote:
+ single location (you can put your useflags into package.use/GLOBAL or something of course)

That's a big "-", not a "+": When you put it into package.use/GLOBAL, you are forced to treat this file special, be aware that no other file (containing e.g. */*-sources) is alphabetically before it etc.
Quote:
+ more flexible (you can do things like 'dev-java/* source' for example)

- far less flexible: You cannot quickly override it from the environment for testing purposes, and you would have to change your global portage configuratoin, only if you want to build a binary package for another machine which has different USE-flags.
That you can use dev-java/* in addition is fine, and completely unrelated to deprecating the extremely usefull USE.
Not to speak about the great tools like ufed which deal with your default USE: I would not want to mess such tools with random files in my /etc/portage/package.use folder which is well-structured into several files (some of them copied to different machines, others not, e.g.).
Back to top
View user's profile Send private message
steveL
Watchman
Watchman


Joined: 13 Sep 2006
Posts: 5153
Location: The Peanut Gallery

PostPosted: Tue Mar 10, 2015 9:00 am    Post subject: Reply with quote

What mv said.

Just because you can shove everything into one file or modus, doesn't mean you should.

OFC you can do what you want on your machine; this is still Gentoo, last I checked.
Back to top
View user's profile Send private message
Dr.Willy
Guru
Guru


Joined: 15 Jul 2007
Posts: 547
Location: NRW, Germany

PostPosted: Tue Mar 10, 2015 12:13 pm    Post subject: Reply with quote

mv wrote:
- forces the same syntax for two completely different things: Setting your preferred defaults and some intentional deviations from the defaults

yeah, setting use flags and setting use flags. two completely different things that have nothing to do with each other.

mv wrote:
- your defaults cannot easily be spread across different machines: Many people use e.g. the different make.conf locations to do this with network-mounted directories.

the flexibility comes from reading files from different locations and has nothing to do with the syntax used in them

mv wrote:
That's a big "-", not a "+": When you put it into package.use/GLOBAL, you are forced to treat this file special, be aware that no other file (containing e.g. */*-sources) is alphabetically before it etc.

*/* entries can be wherever you want them to be.

mv wrote:
- far less flexible: You cannot quickly override it from the environment for testing purposes, and you would have to change your global portage configuratoin, only if you want to build a binary package for another machine which has different USE-flags.

Are we still talking about config files?
Back to top
View user's profile Send private message
Naib
Watchman
Watchman


Joined: 21 May 2004
Posts: 6051
Location: Removed by Neddy

PostPosted: Tue Mar 10, 2015 12:34 pm    Post subject: Reply with quote

Look its two ways todo a similar thing... both have user experience preference over the other BUT that doesn't negate both are valid methods.

Take /etc/portage/package.use (and the others) can ACTUALLY be directories. Paludis and co for ages tried to push via the PMS that that is wrong and should only be files (probably because they couldn;t support it). Now having all those as directories is useful because I can apply specific package use in groups:

All the py27 ONLY applications captured in one file rather than interleaved in a package.use file.
Code:
cat /etc/portage/package.use/py27
media-gfx/inkscape python_targets_python2_7 python_single_target_python2_7
net-analyzer/ntop python_targets_python2_7 python_single_target_python2_7
media-gfx/gimp python_targets_python2_7 python_single_target_python2_7
app-i18n/ibus python_targets_python2_7 python_single_target_python2_7
dev-vcs/git python_targets_python2_7 python_single_target_python2_7
dev-util/glade python_targets_python2_7 python_single_target_python2_7
media-libs/alsa-lib python_targets_python2_7 python_single_target_python2_7
net-print/cups python_targets_python2_7 python_single_target_python2_7
net-print/hplip python_targets_python2_7 python_single_target_python2_7
gnome-extra/cinnamon python_targets_python2_7 python_single_target_python2_7
dev-libs/gobject-introspection python_targets_python2_7 python_single_target_python2_7
dev-util/itstool python_targets_python2_7 python_single_target_python2_7
sys-libs/talloc python_targets_python2_7 python_single_target_python2_7
sys-libs/tdb python_targets_python2_7 python_single_target_python2_7
dev-java/antlr python_targets_python2_7 python_single_target_python2_7
net-analyzer/net-snmp python_targets_python2_7 python_single_target_python2_7
sys-libs/tevent python_targets_python2_7 python_single_target_python2_7
app-text/asciidoc python_targets_python2_7 python_single_target_python2_7
app-admin/system-config-printer-gnome python_targets_python2_7 python_single_target_python2_7
app-admin/system-config-printer-common python_targets_python2_7 python_single_target_python2_7
dev-util/gtk-doc python_targets_python2_7 python_single_target_python2_7
dev-libs/libdbusmenu python_targets_python2_7 python_single_target_python2_7
app-emulation/playonlinux python_targets_python2_7 python_single_target_python2_7



Oh I am sure people would and probably will denounce this as bad but it works and it works for me AND others might find it useful,
_________________
Quote:
Removed by Chiitoo
Back to top
View user's profile Send private message
Dr.Willy
Guru
Guru


Joined: 15 Jul 2007
Posts: 547
Location: NRW, Germany

PostPosted: Tue Mar 10, 2015 1:29 pm    Post subject: Reply with quote

Naib wrote:
Look its two ways todo a similar thing...

Common man, that's not how online discussions work. You have to quote lots of single lines from a post and prove them wrong 1-by-1. I thought you'd been in OTW long enough.
Back to top
View user's profile Send private message
Naib
Watchman
Watchman


Joined: 21 May 2004
Posts: 6051
Location: Removed by Neddy

PostPosted: Tue Mar 10, 2015 1:32 pm    Post subject: Reply with quote

Dr.Willy wrote:
Naib wrote:
Look its two ways todo a similar thing...

Common man, that's not how online discussions work. You have to quote lots of single lines from a post and prove them wrong 1-by-1. I thought you'd been in OTW long enough.
blinkers are for horses. System people look at the complete picture
_________________
Quote:
Removed by Chiitoo
Back to top
View user's profile Send private message
mv
Watchman
Watchman


Joined: 20 Apr 2005
Posts: 6747

PostPosted: Tue Mar 10, 2015 4:59 pm    Post subject: Reply with quote

Quote:
[quote="Dr.Willy"]
mv wrote:
- forces the same syntax for two completely different things: Setting your preferred defaults and some intentional deviations from the defaults

yeah, setting use flags and setting use flags

You are not able to read. Or you do not understand the meaning of "default".
Quote:
the flexibility comes from reading files from different locations and has nothing to do with the syntax used in them

It has to do with the different purpose of the files: One for setting defaults, and others for overriding.
Quote:
*/* entries can be wherever you want them to be.

I couldn't believe that portage is so unsane, but actually it is. That's an argument of not using any wildcard in /etc/portage/packge* at all: The result is rather random and cannot be controled by the order: If you have
Quote:
*/*fox -system-icu
www-client/* system-icu

who should win for www-cllient/firefox? By portage's algorithm the result appears to be independent of the order of these two lines which makes no sense at all: The only sensible thing would be that later entries override earlier ones.
Quote:
mv wrote:
- far less flexible: You cannot quickly override it from the environment for testing purposes, and you would have to change your global portage configuratoin, only if you want to build a binary package for another machine which has different USE-flags.

Are we still talking about config files?

We are talking about your unfortunate suggestion to deprecate a very useful portage configuration variable, only because there exists a clumsy method to obtain a similar outcome in another way.

As SteveL has written: You are free to do it as you want, and if you think that having all in one file and not using ufed is good for you - great, do it!
But do not force others to change their way how they would like to configure their system!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo Chat All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum