Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Most Wanted Portage Feature?
View unanswered posts
View posts from last 24 hours

Goto page Previous  1, 2, 3, 4  Next  
Reply to topic    Gentoo Forums Forum Index Gentoo Chat
View previous topic :: View next topic  

Most Wanted Portage Feature?
emerge -u --security
13%
 13%  [ 54 ]
simultaneous package downloads
9%
 9%  [ 38 ]
overall progress bar
20%
 20%  [ 83 ]
reverse dependencies
51%
 51%  [ 211 ]
other
5%
 5%  [ 21 ]
Total Votes : 407

Author Message
dek
l33t
l33t


Joined: 16 May 2002
Posts: 657
Location: Germany

PostPosted: Tue Sep 16, 2003 5:16 pm    Post subject: Reply with quote

Different output for multislotted ebuilds in pretend mode.

Example: I have gimp-1.2.5 and gimp-1.3.19 installed. This is what i get on a "emerge -pu gimp":
Code:
[ebuild     U ] media-gfx/gimp-1.2.4 [1.3.19]

So portage says it wants to upgrade gimp. In fact it is going to downgrade the SLOT="1.2" version of gimp to the latest stable version that is in portage (1.2.4).
I'm not sure what is best way to do it. A seperate line for each slot maybe?
Back to top
View user's profile Send private message
lanius
Retired Dev
Retired Dev


Joined: 08 Dec 2002
Posts: 160

PostPosted: Tue Sep 16, 2003 8:50 pm    Post subject: Reply with quote

Lovechild wrote:

9. Gentoo menu item handling system (like Debian, following the


we will have that very sooon :)

- https://bugs.gentoo.org/show_bug.cgi?id=18638,
- http://www.gentoo.org/cgi-bin/viewcvs.cgi/gentoo-menu/?cvsroot=gentoo-src
- emerge -s pyxdg
Back to top
View user's profile Send private message
scriptkiddie
l33t
l33t


Joined: 30 Mar 2003
Posts: 955

PostPosted: Tue Sep 16, 2003 10:14 pm    Post subject: Reply with quote

MySQL note... I was just meaning database, I just stated mysql because most people know what that is...

Postgres would be much faster than sql, and if you really wanted to push your limits you could have it use oracle :)

Quote:
Lovechild wrote:

9. Gentoo menu item handling system (like Debian, following the


we will have that very sooon


Thats awesome.. so we will now have a non-graphical gui :P
Back to top
View user's profile Send private message
TGL
Bodhisattva
Bodhisattva


Joined: 02 Jun 2002
Posts: 1978
Location: Rennes, France

PostPosted: Tue Sep 16, 2003 11:02 pm    Post subject: Reply with quote

In no particular order:

* reverse dependencies: not for unmerging kde (I don't really care about this case, qpkg+bash is okay), but for safety of the upgrades (portage should check that it won't break anything when it upgrades). And dependencies should also takes USE flags into account: sometimes you don't only need >=foo/bar-1.0, but ">=foo/bar-1.0 built with xxx and yyy support" (see bug #25085 for an example of the need).

* correct modules packages management: currently, if you use module like alsa-drivers and switch between several kernels, emerging the modules for one will uninstall the modules the others. That's crazy. See bug #24990 for a possible workaround.

* rewritten and documented code: Genone, you're so right on this... Portage code could be splitted in at least 10 times more classes that there is currently. Is a rewritting started, or planed?

* better use of slots: update in slots is really needed, for instance for revdep-rebuild to be 100% functional, to keep multiple versions all up-to-date, etc. (see bug #4698 and bug #22161). Also, a more strict "what, when, and how to slot" policy for devs is needed. No offence here, but slots are often badly used (see bug #26460 for an example). And also portage tools to help in that direction (see for instance two things I've suggested in this mail and bug #27965). Explicit slot in version would also be interresting ("emerge gimp:1.2" to emerge the latest slot 1.2 gimp).

* "emerge -u" levels: an idea which is close to the security update. In short, each ebuilds would declare what are the closest previous version from which he differs on a given level of improvement (let say "security" level would be 4, "major feature" 3, "minor feature" 2 and "cosmetic improvements" 1). Then, an "emerge -u -3" would only apply updates on packages for which there have been major feature updates or security updates.

* download/compile parallelism: well, you all know what I mean.

* multiple categories for packages: I don't like the current repository organisation. Package should be shared across several categories, and categories should be hierarchized. Technicaly, there are many approach to this, from text files with a few more info and some cache computation to the file sytem approac, and without forgetting the db approach. One of the numeous discussions on this topic is here.

* cryptographic signature of Manifests: you all know what I mean: defense against compromised rsync mirrors. See for instance bug #6356.

* ACCEPT_LICENSES option: this would be an optionnal feature for people who want, for instance, a 100% GPL compatible system (may be useful if yuo want to distribute a custom livecd built from gentoo, etc.). They would list the licenses they accept in this variable, and emerge would then refuse to install packages that are under different ones. (You could force it on command line exactly like you do for USE flags). Not hard to implement (I'm seriously thinking to do it), but I'm not sure the semantics of the LICENSE field in ebuilds is well defined (is the pipe a "or", a "and", etc.)

* library compatibility checker: when you compile a program, it usually load libfoo.1.0.so which is a symlink to libfoo.1.0.7.so for instance. But this is not always true, and sometimes programs link against libfoo.1.0.7.so and are then broken if libfoo is updated to 1.0.8. My idea is to run "ldd" on all binaries when they are merged, and to maintain a lib dependencies db based on that (libfoo.1.0.so is needed by xxx-3.6 and yyy-4.2, libfoo-1.0.7.so by zzz.0.0.8, etc.). When a library file is removed (during a clean after an update), portage would search this db to see if there are package to recompile so that they link against the new version. This would be a kind of incremental revdep-rebuild.

And I think it will be enough for near futur :)

EDIT: forgot an also important one:

portage targets for network administration: the goal would be, for people who have a network including old slow computers, or many identical ones, etc, to be able to emerge something from a server to some targets machines. This machine would may not have a compiler, and would not have portage repository or db. All the portage work (cross compil if archs differs, dependencies management, etc) would be done on the server, which would know its targets using several portage configurations and databases. This as been discussed last month in this thread.

EDIT-2: yet another forgoten one:

sticky variables: This feature would make portage reuse the same variables (cflags, use flags, accept_keywords, etc.) on updates than those used at install time. Imagine you want an ~x86 Gimp compiled with more agressive optimisations than your default ones, you wouldn't need to specify them on each update. Very useful in many cases. See bug #3252.


Last edited by TGL on Wed Sep 17, 2003 12:00 am; edited 3 times in total
Back to top
View user's profile Send private message
scriptkiddie
l33t
l33t


Joined: 30 Mar 2003
Posts: 955

PostPosted: Tue Sep 16, 2003 11:06 pm    Post subject: Reply with quote

TGL wrote:
In no particular order:

* reverse dependencies: not for unmerging kde (I don't really care about this case, qpkg+bash is okay), but for safety of the upgrades (portage should check that it won't break anything when it upgrades). And dependencies should also takes USE flags into account: sometimes you don't only need >=foo/bar-1.0, but ">=foo/bar-1.0 built with xxx and yyy support" (see bug #25085 for an example of the need).

* correct modules packages management: currently, if you use module like alsa-drivers and switch between several kernels, emerging the modules for one will uninstall the modules the others. That's crazy. See bug #24990 for a possible workaround.

* rewritten and documented code: Genone, you're so right on this... Portage code could be splitted in at least 10 times more classes that there is currently. Is a rewritting started, or planed?

* better use of slots: update in slots is really needed, for instance for revdep-rebuild to be 100% functional, to keep multiple versions all up-to-date, etc. (see bug #4698 and bug #22161). Also, a more strict "what, when, and how to slot" policy for devs is needed. No offence here, but slots are often badly used (see bug #26460 for an example). And also portage tools to help in that direction (see for instance two things I've suggested in this mail and bug #27965). Explicit slot in version would also be interresting ("emerge gimp:1.2" to emerge the latest slot 1.2 gimp).

* "emerge -u" levels: an idea which is close to the security update. In short, each ebuilds would declare what are the closest previous version from which he differs on a given level of improvement (let say "security" level would be 4, "major feature" 3, "minor feature" 2 and "cosmetic improvements" 1). Then, an "emerge -u -3" would only apply updates on packages for which there have been major feature updates or security updates.

* download/compile parallelism: well, you all know what I mean.

* multiple categories for packages: I don't like the current repository organisation. Package should be shared across several categories, and categories should be hierarchized. Technicaly, there are many approach to this, from text files with a few more info and some cache computation to the file sytem approac, and without forgetting the db approach. One of the numeous discussions on this topic is here.

* cryptographic signature of Manifests: you all know what I mean: defense against compromised rsync mirrors. See for instance bug #6356.

* ACCEPT_LICENSES option: this would be an optionnal feature for people who want, for instance, a 100% GPL compatible system (may be useful if yuo want to distribute a custom livecd built from gentoo, etc.). They would list the licenses they accept in this variable, and emerge would then refuse to install packages that are under different ones. (You could force it on command line exactly like you do for USE flags). Not hard to implement (I'm seriously thinking to do it), but I'm not sure the semantics of the LICENSE field in ebuilds is well defined (is the pipe a "or", a "and", etc.)

* library compatibility checker: when you compile a program, it usually load libfoo.1.0.so which is a symlink to libfoo.1.0.7.so for instance. But this is not always true, and sometimes programs link against libfoo.1.0.7.so and are then broken if libfoo is updated to 1.0.8. My idea is to run "ldd" on all binaries when they are merged, and to maintain a lib dependencies db based on that (libfoo.1.0.so is needed by xxx-3.6 and yyy-4.2, libfoo-1.0.7.so by zzz.0.0.8, etc.). When a library file is removed (during a clean after an update), portage would search this db to see if there are package to recompile so that they link against the new version. This would be a kind of incremental revdep-rebuild.

And I think it will be enough for near futur :)


Very well said TGL... couldn't agree more
Back to top
View user's profile Send private message
TGL
Bodhisattva
Bodhisattva


Joined: 02 Jun 2002
Posts: 1978
Location: Rennes, France

PostPosted: Tue Sep 16, 2003 11:15 pm    Post subject: Reply with quote

dek wrote:
Different output for multislotted ebuilds in pretend mode.

I've submitted a patch for that on bug #18608. Works fine with any 2.0.49-x portage version so far. To apply it:
Code:
cd /usr/lib/portage
patch -p0 < pretend_in_slots.patch
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9608
Location: beyond the rim

PostPosted: Wed Sep 17, 2003 12:08 am    Post subject: Reply with quote

TGL wrote:
* correct modules packages management: currently, if you use module like alsa-drivers and switch between several kernels, emerging the modules for one will uninstall the modules the others. That's crazy. See bug #24990 for a possible workaround.

Yep, we need a solution for the kernel modules problem.
Quote:
* rewritten and documented code: Genone, you're so right on this... Portage code could be splitted in at least 10 times more classes that there is currently. Is a rewritting started, or planed?

Rewrite: no, but I plan to start working on a code refactoring in a new 2.1 branch soon if carpaski has no objections. It will take some time until it is usable though.
Quote:
* "emerge -u" levels: an idea which is close to the security update. In short, each ebuilds would declare what are the closest previous version from which he differs on a given level of improvement (let say "security" level would be 4, "major feature" 3, "minor feature" 2 and "cosmetic improvements" 1). Then, an "emerge -u -3" would only apply updates on packages for which there have been major feature updates or security updates.

The security upgrade problem will be solved differently, see GLEP 14 for details.
Quote:
* cryptographic signature of Manifests: you all know what I mean: defense against compromised rsync mirrors. See for instance bug #6356.

This is mostly a policy issue.
Quote:
* ACCEPT_LICENSES option: this would be an optionnal feature for people who want, for instance, a 100% GPL compatible system (may be useful if yuo want to distribute a custom livecd built from gentoo, etc.). They would list the licenses they accept in this variable, and emerge would then refuse to install packages that are under different ones. (You could force it on command line exactly like you do for USE flags). Not hard to implement (I'm seriously thinking to do it), but I'm not sure the semantics of the LICENSE field in ebuilds is well defined (is the pipe a "or", a "and", etc.)

Maybe I start working on this next week :)
Back to top
View user's profile Send private message
TGL
Bodhisattva
Bodhisattva


Joined: 02 Jun 2002
Posts: 1978
Location: Rennes, France

PostPosted: Wed Sep 17, 2003 12:53 am    Post subject: Reply with quote

Genone wrote:
Yep, we need a solution for the kernel modules problem.

Any opinion on the one I've proposed?

Genone wrote:
Rewrite: no, but I plan to start working on a code refactoring in a new 2.1 branch soon if carpaski has no objections. It will take some time until it is usable though.

Have fun ;) A huge work, it's true, but can be interesting one. And it will helps so much in implementing new features...
Back to top
View user's profile Send private message
zez
Apprentice
Apprentice


Joined: 13 Jun 2002
Posts: 256
Location: Oregon, United States

PostPosted: Wed Sep 17, 2003 1:45 am    Post subject: Reply with quote

heino wrote:
Lovechild wrote:

9. Gentoo menu item handling system (like Debian, following the


we will have that very sooon :)

- https://bugs.gentoo.org/show_bug.cgi?id=18638,
- http://www.gentoo.org/cgi-bin/viewcvs.cgi/gentoo-menu/?cvsroot=gentoo-src
- emerge -s pyxdg


:D :D :D

Good things!!!

As far as portage improvements, I voted for a security-update function. My second choice would be reverse dependencies. The database backend would for a speed boost would also be nice.
Back to top
View user's profile Send private message
IvanHoe
l33t
l33t


Joined: 05 Oct 2002
Posts: 658

PostPosted: Wed Sep 17, 2003 7:42 am    Post subject: Reply with quote

I would like to have a graphical tool that shows all packages in a hierarchical tree view of dependancies so I can see the big picture and make informed decisions about what stays and what goes.
Back to top
View user's profile Send private message
scriptkiddie
l33t
l33t


Joined: 30 Mar 2003
Posts: 955

PostPosted: Wed Sep 17, 2003 11:14 am    Post subject: Reply with quote

are you talking about a GUI where you can just run through and look at the entire tree and then see depencies and such?

If so, go here:
http://sourceforge.net/search/
search for 'portage'

Check out some of the GUI's and see which ones have the stuff to your liking :D 8)
Back to top
View user's profile Send private message
Koon
Retired Dev
Retired Dev


Joined: 10 Dec 2002
Posts: 518

PostPosted: Wed Sep 17, 2003 12:39 pm    Post subject: Reply with quote

TGL wrote:
* "emerge -u" levels: an idea which is close to the security update. In short, each ebuilds would declare what are the closest previous version from which he differs on a given level of improvement (let say "security" level would be 4, "major feature" 3, "minor feature" 2 and "cosmetic improvements" 1). Then, an "emerge -u -3" would only apply updates on packages for which there have been major feature updates or security updates.

I like that. Most of the time I filter through the "emerge -up world" list what I think is an improvement/bugfix and what I think is a cosmetic change in the ebuild. That would be nice to be able to emerge-world only significant changes automatically. And yes, security is just a level in this system.

-K
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9608
Location: beyond the rim

PostPosted: Tue Sep 23, 2003 10:48 am    Post subject: Reply with quote

TGL wrote:
Genone wrote:
Yep, we need a solution for the kernel modules problem.

Any opinion on the one I've proposed?

Will do it until the SLOT issue is resolved, included in gpp-4.

Quote:
Genone wrote:
Rewrite: no, but I plan to start working on a code refactoring in a new 2.1 branch soon if carpaski has no objections. It will take some time until it is usable though.

Have fun ;) A huge work, it's true, but can be interesting one. And it will helps so much in implementing new features...

Maybe I spoke too soon, I've nearly forgotten GLEP 14 which just got accepted and will need some work in the next weeks. And classes start in 3 weeks, so my time for that will be limited. Not backing off, but it will take longer than I thought first.
Back to top
View user's profile Send private message
EvilTwinSkippy
n00b
n00b


Joined: 20 Feb 2003
Posts: 63
Location: Philadelphia, PA

PostPosted: Sat Oct 04, 2003 10:57 pm    Post subject: DB Backends Reply with quote

I've been reading a bunch of posts about using MySQL as a backend. That would be WAY overkill. A better approach would be Sqlite. It's a file-base SQL engine that is designed for embedded apps. I use it for various system maintenence tasks. (And it's already in the portage tree, and it already has python bindings.)
_________________
I've found that people will take what you say more seriously if you tell them Ben Franklin said it first.
Back to top
View user's profile Send private message
slais-sysweb
Apprentice
Apprentice


Joined: 14 Jun 2002
Posts: 221
Location: London

PostPosted: Sat Oct 04, 2003 11:09 pm    Post subject: Reply with quote

noff wrote:
I think all ideas about how to get a progress meter are ok, but I have a easy stopgap solution until all ebuilds get their btu calculated (which could be automated, see many other posts for btu's). A non-verbose mode I think would make many people happy. Something like...
Code:

kde-base/kdegraphics-3.1.3...done
kde-base/kdeadmin-3.1.3...done
kde-base/kdeutils-3.1.3...done
kde-base/kdeartwork-3.1.3...done
dev-tcltk/itcl-3.2-r2...done
app-pda/pilot-link-0.11.7-r1...emerging for 0:3:23
dev-libs/libmal-0.31
kde-base/kdepim-3.1.3
kde-base/kde-3.1.3

Just having that shown and opening an xterm with messages.


If you enable logging then
Code:
cat /var/log/emerge.log

will give you that. eg
Code:

1065296569: Started emerge on: Oct 04, 2003 19:42:49
1065296569:  *** emerge --update --deep world
1065296577:  >>> emerge (1 of 11) sys-apps/coreutils-5.0-r3 to /
1065296577:  === (1 of 11) Cleaning (/usr/portage/sys-apps/coreutils/coreutils-5.0-r3.ebuild)
1065296582:  === (1 of 11) Compiling/Merging (/usr/portage/sys-apps/coreutils/coreutils-5.0-r3.ebuild)
1065297481:  === (1 of 11) Post-Build Cleaning (/usr/portage/sys-apps/coreutils/coreutils-5.0-r3.ebuild)
1065297487:  >>> AUTOCLEAN: sys-apps/coreutils
1065297487:  --- AUTOCLEAN: Nothing unmerged.
1065297487:  ::: completed emerge (1 of 11) sys-apps/coreutils-5.0-r3 to /
1065297487:  >>> emerge (2 of 11) sys-apps/debianutils-1.16.7-r3 to /
1065297487:  === (2 of 11) Cleaning (/usr/portage/sys-apps/debianutils/debianutils-1.16.7-r3.ebuild)
1065297492:  === (2 of 11) Compiling/Merging (/usr/portage/sys-apps/debianutils/debianutils-1.16.7-r3.ebuild)
1065297540:  === (2 of 11) Post-Build Cleaning (/usr/portage/sys-apps/debianutils/debianutils-1.16.7-r3.ebuild)
1065297544:  >>> AUTOCLEAN: sys-apps/debianutils
1065297549: === Unmerging... (sys-apps/debianutils-1.16.7-r2)
1065297560:  >>> unmerge success: sys-apps/debianutils-1.16.7-r2
1065297560:  ::: completed emerge (2 of 11) sys-apps/debianutils-1.16.7-r3 to /

_________________
--
djc
sysweb SLAIS UCL
Back to top
View user's profile Send private message
thrasher6670
Apprentice
Apprentice


Joined: 04 Aug 2003
Posts: 269
Location: London, Ontario

PostPosted: Sat Oct 04, 2003 11:16 pm    Post subject: Reply with quote

Genone wrote:
cvk wrote:
oubipaws wrote:
1. MySQL Database Backend (speedier than current system)
2. C/C++ Version of Portage (much quicker)


1. MySql?!

Take a look at this:
Code:

*  dev-db/mysql
      Size of downloaded files: 12,414 kB
*  sys-apps/portage
      Size of downloaded files: 230 kB


I mentioned that in another thread: the current filesystem based portage tree has about 80% overhead (it occupies >200 MB but only uses ~50 MB really). This can be cut down dramatically by a db backend, my tests with portagesql showed that mysql+portagesql+db based tree would be about 100 MB, that's half the size of the current tree.

Quote:
2. If a program needs 30 minutes for compiling and 10 seconds for portage stuff, I doubt that reducing the 10 seconds to 5 seconds would be worth the effort of rewriting the whole system.


I agree that rewriting the whole system is a bad idea, but portage is slow when it comes to searching and other tasks that need to access the package tree, but IMO this won't be solved by a C/C++ version. A DB backend would help here too (but it won't be implemented until 2.1).

Also if a DB backend would happen it would be completely optional.


well if you want to do a lot of searching, i refer you to be my site it uses an sql backend version of the portage tree, im in the process of adding functionality right now. any suggestions would be great.
_________________
Gentoo-Portage.com - Where the portage meets the web
Gentoo Wiki
Back to top
View user's profile Send private message
TheCoop
Veteran
Veteran


Joined: 15 Jun 2002
Posts: 1814
Location: Where you least expect it

PostPosted: Sun Oct 05, 2003 7:46 am    Post subject: Re: DB Backends Reply with quote

EvilTwinSkippy wrote:
I've been reading a bunch of posts about using MySQL as a backend. That would be WAY overkill. A better approach would be Sqlite. It's a file-base SQL engine that is designed for embedded apps. I use it for various system maintenence tasks. (And it's already in the portage tree, and it already has python bindings.)

Thats a good idea actually. It still uses a file-based database (so you wouldnt have to radically change the /usr/portage layout) and its relatively small, while still remaining a database for quick searches...
_________________
95% of all computer errors occur between chair and keyboard (TM)

"One World, One web, One program" - Microsoft Promo ad.
"Ein Volk, Ein Reich, Ein Führer" - Adolf Hitler

Change the world - move a rock
Back to top
View user's profile Send private message
Jyrinx
Tux's lil' helper
Tux's lil' helper


Joined: 03 May 2002
Posts: 92
Location: Carleton College - Northfield, MN

PostPosted: Tue Oct 07, 2003 6:05 am    Post subject: Per-package USE ... PLEASE ... Reply with quote

This is what I'd LOVE to see:

There would be an /etc/make.conf.d directory, having for each Portage category a subdirectory, having for each package a file. For instance, I'm itching for an /etc/make.conf.d/media-video/totem file. In this file, I'd put one line: "USE=-gstreamer". Then I'd get the xine Totem, but the gstreamer RhythmBox. Similarly, packages might get [un]masked or [un]marked unstable this way. Now "emerge -u world" will do what I want with no fussing, and I don't have to emerge --oneshot or any such.

Seems to me it'd be semantically simpler than sticky variables (which would invite unintended consequences) while accomplishing the same thing (albeit slightly less conveniently - which I'd say is good, so that command-line USE flags can still be for temporary tinkering, just as they can be now).
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9608
Location: beyond the rim

PostPosted: Tue Oct 07, 2003 1:48 pm    Post subject: Re: Per-package USE ... PLEASE ... Reply with quote

Jyrinx wrote:
There would be an /etc/make.conf.d directory, having for each Portage category a subdirectory, having for each package a file. For instance, I'm itching for an /etc/make.conf.d/media-video/totem file. In this file, I'd put one line: "USE=-gstreamer". Then I'd get the xine Totem, but the gstreamer RhythmBox. Similarly, packages might get [un]masked or [un]marked unstable this way. Now "emerge -u world" will do what I want with no fussing, and I don't have to emerge --oneshot or any such.


That is one of the things that won't be implemented as it creates maintenance hell. There is a reason bugzilla says you should submit the output of emerge --info. With such a customization it's nearly impossible to track the reason for bugs down. See the last comments on bug 13616 for more details (there was a similar suggestion).
Back to top
View user's profile Send private message
Jyrinx
Tux's lil' helper
Tux's lil' helper


Joined: 03 May 2002
Posts: 92
Location: Carleton College - Northfield, MN

PostPosted: Wed Oct 08, 2003 12:40 am    Post subject: Re: Per-package USE ... PLEASE ... Reply with quote

Genone wrote:
Jyrinx wrote:
There would be an /etc/make.conf.d directory, having for each Portage category a subdirectory, having for each package a file. For instance, I'm itching for an /etc/make.conf.d/media-video/totem file. In this file, I'd put one line: "USE=-gstreamer". Then I'd get the xine Totem, but the gstreamer RhythmBox. Similarly, packages might get [un]masked or [un]marked unstable this way. Now "emerge -u world" will do what I want with no fussing, and I don't have to emerge --oneshot or any such.


That is one of the things that won't be implemented as it creates maintenance hell. There is a reason bugzilla says you should submit the output of emerge --info. With such a customization it's nearly impossible to track the reason for bugs down. See the last comments on bug 13616 for more details (there was a similar suggestion).


Wait, are you saying that per-package USE and KEYWORDS are inherently too complicated? I mean, if the problem is that it's hard to tell which setting messed stuff up, I don't see how having all the per-package settings in one file helps vs. a hierarchy like my (perhaps overkill) suggestion. There are still lots of settings, whether organized monolithically or not.

As for emerge --info, maybe it could be extended so that "emerge --info totem", for instance, would report all variables as they would be used in the totem build. That way bug reports could just include the output of "emerge --info <buggypackage>" rather than plain "emerge --info". (Maybe specific info about what's being overridden would help, too?)

Oh, yeah ... one point about the need for something like this: Currently, the gtk2 flag breaks wxGTK horrendously. (It builds, but everything's royally screwed up in the interface.) Ideally, the wxGTK ebuild should filter out gtk2 until that gets fixed, but for the time being, I'd really like to build a legacy wxGTK without having to --oneshot and/or keep manually remerging but still keeping gtk2 for everything else (such as gvim, which works beautifully with gtk2 on).

(BTW, as for letting installations get more and more complicated: People are finding lots of nasty, hacky ways to get per-package USE /KEYWORDS/masking with or without help from Portage. I can't imagine these are simpler than any builtin per-package USE support, and any per-package tweaking is going to be complicated enough to discourage people who don't want it.)
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9608
Location: beyond the rim

PostPosted: Wed Oct 08, 2003 12:58 am    Post subject: Reply with quote

Per package USE flags and KEYWORDS are coming (in fact I'm one the devs who's working on the patch for it), but not a per-package make.conf as you suggested. If you look at the bug I mentioned you'll see what I'm talking about.
If you really want this feature now use my patchset (see sig), it contains the package.use and package.keywords patch as well as several others, but it's an experimental version, so prepare for bugs.
Back to top
View user's profile Send private message
thrasher6670
Apprentice
Apprentice


Joined: 04 Aug 2003
Posts: 269
Location: London, Ontario

PostPosted: Wed Oct 08, 2003 1:03 am    Post subject: Reply with quote

Genone wrote:
Per package USE flags and KEYWORDS are coming (in fact I'm one the devs who's working on the patch for it), but not a per-package make.conf as you suggested. If you look at the bug I mentioned you'll see what I'm talking about.
If you really want this feature now use my patchset (see sig), it contains the package.use and package.keywords patch as well as several others, but it's an experimental version, so prepare for bugs.


just wondering, will this affect the main portage tree in anyway?.... so i can schedule some time in to work out the bugs it will cause my site.
_________________
Gentoo-Portage.com - Where the portage meets the web
Gentoo Wiki
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9608
Location: beyond the rim

PostPosted: Wed Oct 08, 2003 1:09 am    Post subject: Reply with quote

It only affects portage itself, not the tree.
Back to top
View user's profile Send private message
stonent
Veteran
Veteran


Joined: 07 Aug 2003
Posts: 1139
Location: Texas

PostPosted: Wed Oct 08, 2003 2:15 am    Post subject: Reply with quote

Going back to the guestimated build times or units, maybe provide a feature in the make.conf file to send back build information so that build times could be estimated for your arch. Bash units are interesting but bash changes over time, we would need something a little more static. I'd even be interested to see overal portage statistics such as most popular packages, or even an option to upload an error report based on a failed build. Then package maintainers could see how well their ebuild is doing in the wild.
_________________
Inspiron 4100 & Sun UltraAXe
Portage on Solaris|Dell Laptop Hacks
The way you feel about organized religion is the same way I feel about organized socialism.
Back to top
View user's profile Send private message
Jyrinx
Tux's lil' helper
Tux's lil' helper


Joined: 03 May 2002
Posts: 92
Location: Carleton College - Northfield, MN

PostPosted: Wed Oct 08, 2003 2:40 am    Post subject: Reply with quote

Genone wrote:
Per package USE flags and KEYWORDS are coming (in fact I'm one the devs who's working on the patch for it), but not a per-package make.conf as you suggested. If you look at the bug I mentioned you'll see what I'm talking about.


k, I was just confused about a point of rationale I guess. I read the bug report comments; hrm ... I think I got a bit lost in the sea of opinions on the matter :-)

Anyway, good work - looks like I shouldn't have doubted you :-) (And yes, you've got a fine solution going there. I now think my idea was overkill. My usual penchant for over-design ...)
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 Previous  1, 2, 3, 4  Next
Page 2 of 4

 
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