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

Goto page 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
nadamsieee
Guru
Guru


Joined: 30 May 2003
Posts: 340
Location: Atlanta, GA, USA

PostPosted: Mon Sep 15, 2003 10:23 pm    Post subject: Most Wanted Portage Feature? Reply with quote

For those silly people who dare to question my choice of choices (?) and pick 'other' :wink:, what's your most wanted portage feature?
_________________
nadams (at) ieee (dot) org
Back to top
View user's profile Send private message
cvk
Guru
Guru


Joined: 06 Jan 2003
Posts: 314
Location: Our house, in the middle of our street

PostPosted: Mon Sep 15, 2003 10:31 pm    Post subject: Reply with quote

It's not really a feature, but I really would like to have a database backend. A simple "qpkg -i -g dev-util" takes bloody ages to complete at the moment.

cvk
_________________
Adopt an unanswered post now.
Back to top
View user's profile Send private message
scriptkiddie
l33t
l33t


Joined: 30 Mar 2003
Posts: 955

PostPosted: Mon Sep 15, 2003 10:38 pm    Post subject: Reply with quote

My List:
1. MySQL Database Backend (speedier than current system)
2. C/C++ Version of Portage (much quicker)
3. An overall progress bar
4. A way to check the estimated time of complete 'emerge -p filename"
5. To be able to do 'emerge unmerge -dep kde" and get rid of kde and QT
6. I would like to be able to do "emerge -u kde gnome fluxbox" and have it download and install all of them :D
Back to top
View user's profile Send private message
Xiol
Apprentice
Apprentice


Joined: 24 Jul 2003
Posts: 209
Location: UK

PostPosted: Mon Sep 15, 2003 10:43 pm    Post subject: Reply with quote

1. Reverse deps.
2. Reverse deps.
3. Reverse deps.

You do that, and then I can't complain.
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


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

PostPosted: Mon Sep 15, 2003 10:45 pm    Post subject: Reply with quote

modular portage code
documented portage code
portagefs :D
EDIT: I forgot something very important:
bugfree portage code :lol:


Last edited by Genone on Tue Sep 16, 2003 2:11 am; edited 1 time in total
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


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

PostPosted: Mon Sep 15, 2003 10:47 pm    Post subject: Reply with quote

oubipaws wrote:
6. I would like to be able to do "emerge -u kde gnome fluxbox" and have it download and install all of them :D

What's the problem with that ?
Back to top
View user's profile Send private message
scriptkiddie
l33t
l33t


Joined: 30 Mar 2003
Posts: 955

PostPosted: Mon Sep 15, 2003 10:48 pm    Post subject: Reply with quote

Genone wrote:
oubipaws wrote:
6. I would like to be able to do "emerge -u kde gnome fluxbox" and have it download and install all of them :D

What's the problem with that ?


haha, I feel stupid now.. didn't realize you could do that... I thought it would spit out errors
Back to top
View user's profile Send private message
nadamsieee
Guru
Guru


Joined: 30 May 2003
Posts: 340
Location: Atlanta, GA, USA

PostPosted: Mon Sep 15, 2003 11:37 pm    Post subject: Reply with quote

oubipaws wrote:
5. To be able to do 'emerge unmerge -dep kde" and get rid of kde and QT


That is what reverse dependencies would do for you. :)
_________________
nadams (at) ieee (dot) org
Back to top
View user's profile Send private message
scriptkiddie
l33t
l33t


Joined: 30 Mar 2003
Posts: 955

PostPosted: Mon Sep 15, 2003 11:41 pm    Post subject: Reply with quote

I know that.. I was just explaining so that people who don't know what dep packages are would understand what I am talking about :P
Back to top
View user's profile Send private message
gsfgf
Veteran
Veteran


Joined: 08 May 2002
Posts: 1266

PostPosted: Tue Sep 16, 2003 12:01 am    Post subject: Reply with quote

it not to take 20 mins to regnerate portag cache after rsyncing.
_________________
Aim:gsfgf0
Back to top
View user's profile Send private message
noff
Guru
Guru


Joined: 11 Nov 2002
Posts: 388
Location: College Park, Maryland

PostPosted: Tue Sep 16, 2003 1:53 am    Post subject: Reply with quote

I was actually just coming to post this question.

I think reverse dependencies is really the most necessary, as anyone how has tried to clean gnome or kde off their system.

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.

Simultaneous download of packages seems to be trivial, there might be hangout otherwise it would have been implemented.

Something often overlloked it the way portage handles errors. If just dies when it should continue to emerge everything that does not depend on that package. To use the above non-verbose method with xterm displaying the error and how it affected portage.

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...error
dev-libs/libmal-0.31...depends on pilot-link-0.11.7-r1
kde-base/kdepim-3.1.3...depends on pilot-link-0.11.7-r1
kde-base/kde-3.1.3...compiling


Something else that is minor and would enhance the compile times is a flag in each ebuild to see whether the file is mirrored or not. I know if I am trying to grab a small file that is not on the mirrors portage still checks first. This is a hassle as it takes it 15 seconds to go through the checks when I could have told it to go right to the source. I may not understand how the mirrors work. But this may also help lower the loads of those servers.

Anyway, can we stop arguing about python vs C/C++ if you want to rewrite it go ahead, but I think the time could be better spent.
_________________
What Larry was saying is that if you make it too easy for programmers, then poor programmers will be able to do things best left to good programmers, and will inevitably do them poorly. Everyone will suffer in the long term as a result." - Tom Chance
Back to top
View user's profile Send private message
gabe
n00b
n00b


Joined: 10 Sep 2003
Posts: 27
Location: 42° 53' N 85° 31' W

PostPosted: Tue Sep 16, 2003 1:59 am    Post subject: Reply with quote

Reverse deps followed by security for me. The other choices would be nice, but IMHO don't measure up in terms of true usefullness.
_________________
-Gabe
----------
gabe.ef-honda.com
Back to top
View user's profile Send private message
erik_swanson
Retired Dev
Retired Dev


Joined: 02 Feb 2003
Posts: 123
Location: Corvallis, OR USA

PostPosted: Tue Sep 16, 2003 1:59 am    Post subject: Reply with quote

1. Don't pre-generate the cache; build it as the info is needed. Even on my system, the speed increase for dep calcualtion is not worth the time to generate it.
2. Reverse deps.
3. --never-downgrade. An unsafe version of -U that will not honor non-slotted deps like "<cat/libfoo-3.3"
4. Reiser4-based backend. (Put the portage tree in a reiser4 loopback image and use some type of deltas to sync that image)
5. A dep of system that will rm -rf / anyone who bitches about portage being written in python.
Back to top
View user's profile Send private message
scriptkiddie
l33t
l33t


Joined: 30 Mar 2003
Posts: 955

PostPosted: Tue Sep 16, 2003 2:08 am    Post subject: Reply with quote

gsfgf wrote:
it not to take 20 mins to regnerate portag cache after rsyncing.


Amen to that.. Even on the server at work (dual Xeon 3ghz) it takes 10 minutes
Back to top
View user's profile Send private message
cvk
Guru
Guru


Joined: 06 Jan 2003
Posts: 314
Location: Our house, in the middle of our street

PostPosted: Tue Sep 16, 2003 7:00 am    Post subject: Reply with quote

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


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.

cvk
_________________
Adopt an unanswered post now.
Back to top
View user's profile Send private message
lamaistres
Apprentice
Apprentice


Joined: 17 Dec 2002
Posts: 268
Location: Seattle

PostPosted: Tue Sep 16, 2003 7:00 am    Post subject: Reply with quote

I want both, emerge -u security & reverse dependencies. Also, I was thinking about how it would be nice to have a way to emerge gedit (for example) without the extra baggage that comes with it.
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


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

PostPosted: Tue Sep 16, 2003 7:27 am    Post subject: Reply with quote

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.
Back to top
View user's profile Send private message
Koon
Retired Dev
Retired Dev


Joined: 10 Dec 2002
Posts: 518

PostPosted: Tue Sep 16, 2003 9:09 am    Post subject: Reply with quote

1. emerge --security
2. Rev deps
3. Signed tree
4. Speed
5. Accountability (might/should be on a front-end)

-K
Back to top
View user's profile Send private message
Lovechild
Advocate
Advocate


Joined: 17 May 2002
Posts: 2858
Location: Århus, Denmark

PostPosted: Tue Sep 16, 2003 9:38 am    Post subject: Reply with quote

oh so much is wrong with Portage I don't know where to begin...

1. Trust, there's no trust in portage besides md5sum checks... a man in the middle attack would be easy to stage fx.
2. bye bye FS based portagetree - hello sqlite (or something like it) backend
3. a proper gtk2 frontend
4. per package USE flags instead of global flags (handled in the before mentioned GTK2 frontend)
5. games-roguelike -> games-rpg (silly silly silly)
6. layered overlays
7. threading of emerge (to allow for downloading while we emerge)
8. UUID based internal naming aliased to human readable names (fixes all move, renaming, etc. problems)
9. Gentoo menu item handling system (like Debian, following the freedesktop.org standard maybe?)
10. Sticky flags
11. gtk USE flag for gtk1 deps, gtk2 USE flag for gtk2 deps - it should be that simple, but it's not - this is just SILLY !

those are in no important order what I can think off of the top of my head - but portage could be improved much more than that I think.
Back to top
View user's profile Send private message
KiTaSuMbA
Guru
Guru


Joined: 28 Jun 2002
Posts: 430
Location: Naples Italy

PostPosted: Tue Sep 16, 2003 10:41 am    Post subject: Reply with quote

oubipaws wrote:
My List:
1. MySQL Database Backend (speedier than current system)
2. C/C++ Version of Portage (much quicker)
3. An overall progress bar
4. A way to check the estimated time of complete 'emerge -p filename"
5. To be able to do 'emerge unmerge -dep kde" and get rid of kde and QT
6. I would like to be able to do "emerge -u kde gnome fluxbox" and have it download and install all of them :D

It doesn't need to be such a beast like MySQL. There are some embedded dbases that are up to the job just fine (search this forum for more discussion on that issue.) In any case, a db solution would offer:
- a huge leap in performance especially in rsyncing (which is hogged not by cpu but rather by net traffic and disk I/O due to infinite minuscule files instead of a single db grab. Actually, if you think of it, a compiled version of portage would not give much of a speed advantage (you still have to relay to external shell commands anyway) since the real cost is due to the perusing of the portage tree and not the python interpreter trying to figure out what to do.
- an easy way to support sticky flags FINALLY.
- an easy way to support (in a speedy manner) reverse deps.
- a way to support custom locally-defined groups of software to emerge on a single command (HUGE help for admins of multiple boxes especially at the corporate/big-office level)
- a way to support "update priority" flags in a more generic way than just emerge -u --security.
As you can see most of the requested stuff can be covered by that migration to a db model.
Other stuff:
- progress bar and ETA: would be nice but can be really tricky since you relay on so many and different from case to case external apps. A previous attempt hit hard on the wall of Makefile variability to even break some ebuilds.
- trust: we could always use gpg signatures for the packages distributed by the gentoo mirrors but unfortunatelly in many cases, packages are downloaded from external resources (cvs repositories, software home pages etc.) In that sense, there could be a trust-check system that prints a warning in the absence of signature and ask the user to explicitly accept the risk of downloading stuff from outside gentoo-operated servers.
_________________
Need to flame people LIVE on IRC? Join #gentoo-otw on freenode!
Back to top
View user's profile Send private message
Ari Rahikkala
Guru
Guru


Joined: 02 Oct 2002
Posts: 370
Location: Finland

PostPosted: Tue Sep 16, 2003 10:47 am    Post subject: Reply with quote

Xiol wrote:
1. Reverse deps.
2. Reverse deps.
3. Reverse deps.

You do that, and then I can't complain.


Also 4. Reverse deps., 5. Reverse deps., and 6. Reverse deps., please.
_________________
<laurentius> gentoo linux?
<ari> Yesh.
<laurentius> they look horny
Back to top
View user's profile Send private message
Chris Finch
Tux's lil' helper
Tux's lil' helper


Joined: 10 Mar 2003
Posts: 106
Location: Darmstadt, Germany

PostPosted: Tue Sep 16, 2003 11:29 am    Post subject: Reply with quote

7. Reverse deps, 8. R...

OK, seriously: I think that after operation of portage, the system should either be in a state where all dependencies are satisfied or it should spit out which dependencies have yet to be fulfilled.

What I want most of all is a complete, in-detail specification of what portage is supposed to do. It is not documented well at all when it comes to details.

ebuild syntax: at least the part that deals with dependencies, should not allow arbitrary bash commands and variables, in order to facilitate alternative implementations of dependency resolving (that yet would use the ebuild command as a backend).

pinning: I want to be able to install an unstable package and resolve the dependencies in a way such that further unstable packages are only installed if necessary. This is in contrast to the often advertised "ACCEPT_KEYWORDS="~x86" emerge something", which updates ALL dependencies to their latest unstable version, often resulting in completely unnescessary upgrades of, say, xfree. While "emerge insertcompletefilenamehere.ebuild" does that, it stops for every unstable dependency and forces you to merge it in the same manner, which is cumbersome, but still my preferred way to "ACCEPT_...". In addition, the world file should take notice if you wish to follow the unstable branch of a package and notify you when updates are available.

a roll back feature would be nice: Before a major upgrade (like gnome-2.4) you could define the current state of the system as correct, any following unmerges would store the unmerged packages in some place and if compiling the new versions gives you just too many errors you could roll back to the safe state.

USE variables are in many peoples' opinions THE major feature of portage. If only for this reason, all portage commands should be completely USE-aware.

what I need least? more speed. Reasonable people update twice a week, speed is irrelevant, system integrity is what's vital!

I know, this should rather go to bugzilla than to the forums, I have submitted some of the suggestions and so have others, but I wanted to add these ideas to this thread which I was delighted to discover does not contain any of this "rewrite portage in C++ for the sake of speed" nonsense.
Back to top
View user's profile Send private message
Gandalf_Grey_
Apprentice
Apprentice


Joined: 19 Apr 2003
Posts: 151

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

Reverse Dependancies

An overall progress bar, maybe something with ncurses where the top bit of the screen just shows whether a package has been completed or is still compiling.

I am not sure about this but is there away to upgrade to another masked ebuild during an emerge -UDp world iff that ebujild was already masked

Ok perhaps I should explain my dillema, I want to do an emerge -uD world. When I do emerge -uDp world it spends quite a while calculating the stuff then comes up with an error

!!! all ebuilds that could satisfy "=x11-libs/wxGTK-2.4.1*" have been masked.
!!! (dependency required by "dev-python/wxPython-2.4.1.2" [ebuild])

!!! Problem with ebuild net-p2p/bittorrent-theshadow-5.7
!!! Possibly a DEPEND/*DEPEND problem.

!!! Depgraph creation failed.

because packages which satisfy the wxGTK dependancy for wxPhuthon have been masked. If I did accept_keywords="~x86" it woiuld overwrite all my current packages with tthier masked equivilent.
_________________
Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect.
-- Linus Torvalds
Back to top
View user's profile Send private message
TenPin
Guru
Guru


Joined: 26 Aug 2002
Posts: 500
Location: Kansas City

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

Yeah, reverse deps.

I want to be able to look at a tree like this:

Code:

Package
       -dep
           -Installed Package
           -Installed Package
       -dep
           -Installed Package
           -Installed Package
       -dep
           -Installed Package

rdep
rdep
rdep


That way I can look at a package that is installed (or not) and see at a glance what its dependencies are what what other installed packages depend on those dependencies. Also it lists (rdep) which packages depend on the chosen package.

Also an option to emerge -f -t where t is for total filesize of package and its deps. That way I can see how long its gonna take to emerge -f kde.

Also the idea of downloading while you compile is a must and shouldn't be that hard either. Wget can easily be forked into the background and portage keep track via the wget.logs.
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: Tue Sep 16, 2003 4:42 pm    Post subject: Reply with quote

We could use a rough idea of emerge time by using something like the LFS bash units (ie, the time it takes to compile bash is recorded, then all other ebuilds have an SBU= variable which lists roughly what percentage of the time taken to compile bash the ebuild takes to complete)

gcc would take ~5 SBUs, kde probably ~20 SBUs...
_________________
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
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo Chat All times are GMT
Goto page 1, 2, 3, 4  Next
Page 1 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