Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Emerge progress bar
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  
Author Message
lanius
Retired Dev
Retired Dev


Joined: 08 Dec 2002
Posts: 160

PostPosted: Sat Mar 29, 2003 7:47 pm    Post subject: Reply with quote

why do you have to rebuild bash? can't you just replace the binary, as the script mentioned in http://forums.gentoo.org/viewtopic.php?t=42074 does?
Back to top
View user's profile Send private message
bushwakko
Guru
Guru


Joined: 25 Mar 2003
Posts: 495

PostPosted: Thu Apr 24, 2003 12:24 pm    Post subject: new version Reply with quote

any new version of emerge-progress coming any time soon?
Back to top
View user's profile Send private message
tdb
Apprentice
Apprentice


Joined: 19 Sep 2002
Posts: 293
Location: New Orleans, Louisiana, U.S.A. (what's left of it anyway...)

PostPosted: Thu Apr 24, 2003 8:20 pm    Post subject: emerge progress does not like xfree Reply with quote

I love the idea and hope it matures, but for the time being, I have to take it off. I tried emerging xfree (fresh install) on my server with emerge-progress and for some reason it didn't install the X binaries. I unmerged it, and X compiled fine. So, I guess this would be a bug report then.
Back to top
View user's profile Send private message
The Jaff
n00b
n00b


Joined: 14 Mar 2003
Posts: 26
Location: Sweden

PostPosted: Thu Apr 24, 2003 9:03 pm    Post subject: Reply with quote

I guess that the important thing is to get the progress thingy designed/implemented so that emerging ebuilds is guaranteed to work exactly as good/bad as without the progress-bar. If at the end the meter say 431% or whatever doesnt matter, as long as the ebuild is emerged as it should. When this is milestone is achieved, work on the accuracy.

:roll: My two cents.
_________________
There are 11 kinds of people - those who know binary, and those who can't count.
Back to top
View user's profile Send private message
helmers
Guru
Guru


Joined: 16 Sep 2002
Posts: 548
Location: Oslo, Norway

PostPosted: Fri May 02, 2003 6:04 pm    Post subject: Reply with quote

This is very interesting!

There are many times when emerging new systems, I wonder how long there is left of a big emerge, such as KDE or Mozilla, and a progress bar would make it easier to decide when to abort and when to let it finish.

Most of the time the output of the compile is pretty useless to me, if I could look at a progress bar instead it would really make my day. :wink:
_________________
C is for Cookies!
Back to top
View user's profile Send private message
panserg
Apprentice
Apprentice


Joined: 16 Apr 2003
Posts: 188

PostPosted: Fri May 02, 2003 7:29 pm    Post subject: Reply with quote

I don't know what people are talking here about. But as for today, in it's 2.0.47-r10, the portage has broken and doesn't log into /var/log/emerge (it leaves empty files). I think before any talking about progress bars and other whistles and candies, the major functionality must be fixed. And until then - please mask portage-2.0.47-r10 as unstable, so people will return back to 2.0.47-r9 which logging worked properly.
Back to top
View user's profile Send private message
helmers
Guru
Guru


Joined: 16 Sep 2002
Posts: 548
Location: Oslo, Norway

PostPosted: Fri May 02, 2003 7:32 pm    Post subject: Reply with quote

You should file a bug about this, as most of the dev's don't read the forums.

http://bugs.gentoo.org
_________________
C is for Cookies!


Last edited by helmers on Sun Jun 08, 2003 11:51 am; edited 1 time in total
Back to top
View user's profile Send private message
axxackall
l33t
l33t


Joined: 06 Nov 2002
Posts: 651
Location: Toronto, Ontario, 3rd Rock From Sun

PostPosted: Fri May 02, 2003 8:07 pm    Post subject: Reply with quote

It seems as fixed :) , but in unstable version 2.0.48-pre3 so we have to live for awhile with empty logs :(

P.S. I wonder if they include logging into unit tests or even do they have unit tests at all...
Back to top
View user's profile Send private message
mrik
n00b
n00b


Joined: 28 May 2003
Posts: 27
Location: Bruxelles

PostPosted: Sat Jun 07, 2003 11:34 pm    Post subject: Reply with quote

Oooops I've got a problem ..
Sometimes it's going up to 60000% And I'm not able tu Unmerge this stuff :? Please help :(

Got the problem while emerging xscreensaver !
Back to top
View user's profile Send private message
RedBeard0531
Guru
Guru


Joined: 21 Sep 2002
Posts: 415
Location: maryland

PostPosted: Sun Jun 08, 2003 1:33 pm    Post subject: Reply with quote

Could someone set it up so that it also sets the xterm title bar. That would be cool.
_________________
OH MY GOD! Kenny just killed Kenny!
That Basterd!
Back to top
View user's profile Send private message
Korean Ian
Tux's lil' helper
Tux's lil' helper


Joined: 12 May 2003
Posts: 95

PostPosted: Sun Jun 08, 2003 1:53 pm    Post subject: Reply with quote

This looks really awesome but I think i will stay away until I can get my mozilla builds.

Keep up the excelent work.

KI
Back to top
View user's profile Send private message
kopfarzt
Apprentice
Apprentice


Joined: 05 Apr 2003
Posts: 170
Location: Vienna, Austria

PostPosted: Sat Jul 19, 2003 8:35 pm    Post subject: Reply with quote

Here is a naive little script (not to be compared to the elaborated progress meter discussed here), that I use for estimating progress of an ebuild. It works by counting the number of "source" and "object" files and gives a very rough idea of what's going on. It does not change any files and should also work for non-make-based builds (like Java's ant). It will happily count to 110% or more and revise it's output every time you call it, but perhaps anybody finds it useful :-)

There is only one parameter which is a source directory. If you call it without parameters it will use the newest directory in /var/tmp/portage. Possible source and object extensions can and should be added to srcext/objext.

I use to call it with
Code:
while true; do estimate; sleep 30; done


kopfarzt

Code:

#!/bin/bash

srcext="c cpp C cc java"
objext="o class"

if [ "$1" == "" ]
then
  p=/var/tmp/portage
  dir=$p/`ls --color=never -tr1 $p|tail -1`
else
  dir=$1
fi

srccmd="find $dir"
for ext in $srcext
do
  srccmd="$srccmd -name *.$ext -o"
done
srccmd="$srccmd -false"

objcmd="find $dir"
for ext in $objext
do
  objcmd="$objcmd -name *.$ext -o"
done
objcmd="$objcmd -false"

src=`$srccmd | wc -l`
obj=`$objcmd | wc -l`

if [ "$((src))" == "0" ]
then
  percent=0
else
  percent=$((100 * $obj / $src))
fi

echo `date +%T` $dir: $obj of $src done, ~$percent%
Back to top
View user's profile Send private message
Fitzsimmons
Guru
Guru


Joined: 01 Jan 2003
Posts: 415
Location: Waterloo, Ontario, Canada

PostPosted: Sat Jul 19, 2003 9:46 pm    Post subject: Reply with quote

It certainly sounds great, but I would feel more comforable if it piped the output to a file or something like that. Recompiling without the bar can be exremely time consuming (what happens if it crashes in the last portion of OO??) I'm certainly not up for another 8hrs of compiling just to find out what the error was. Anyway, I don't think this should be incorporated into portage without the following first:


  1. Output log
  2. Very high chance of accuracy (i.e. almost always %100, this would probably mean very extensive testing)
  3. Garuntee that it won't break any packages


Don't get me wrong, I still think its pretty darn amazing and I commend you on your work; I just don't think its ready for portage (which wasn't your idea anyway, so that's something of a moot point). I think it should however become something of a reccomended tool, along the lines of ufed and mirrorselect.

Great Work!
Back to top
View user's profile Send private message
Aonoa
Guru
Guru


Joined: 23 May 2002
Posts: 538
Location: Oslo, Norway

PostPosted: Tue Jul 22, 2003 6:22 pm    Post subject: Reply with quote

A progress bar for emerge is a neat idea. :)
I hope it get's implemented eventually, in due time.

So far I have only had the little info aterm displays in it's titlebar. What ebuild it's working on. Eg. 2/9. This would only work in X as well. Better to have a console solution.

Keep up the good work. :)
_________________
Te audire no possum.
Musa sapientum fixa est in aure.


"I can't hear you."
"I have a banana in my ear."
Back to top
View user's profile Send private message
KiTaSuMbA
Guru
Guru


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

PostPosted: Tue Jul 22, 2003 7:16 pm    Post subject: Reply with quote

I haven't tried this (too much stuff breaking on their own to give them an extra help atm) but it's definatelly a cute idea.
Some uninformed opinions and ideas:
- Progress Bar in ETA format: is not a good idea as it could never acheive useful accuracy even with fiddling deep inside the building process. Thus, the theoretical advantages of an ETA versus a simple percentage remain just that: theoretical. Let's not add more complexity to what seems to suffer already of serious bugs.
- Accuracy: the fact that many packages are completely blown off in the percent scale is a telltale that what the script measures as constant individual events turn out to be variable (author already noticed the complexities introduced by different makefile formats)
- Breaking packages: this MUST have to do with the script actually interfering with the build process than simply monitoring it from a mere stdout position.
- idea: another user already suggested counting gcc events in the makefile and then counting them as they appear on output. So what we need is:
- modified econf that after the config, greps for gcc in the Makefiles and drops the count in a $var then quiting normally
- a new eprogress function that reads gcc events as they are spit out by emake and does all the math
- modified emake that forks to the new eprogress and then goes its way except that outputs to not stdout but were eprogress can read and present the stdout.
This way we do not put ourselves in the middle of the make proccess possibly harassing it, so even if eprogress completelly shits its pants the emake _will_ do its job.
Now I don't have neither the time nor a gentoo-to-break system to try my ideas, so bare with me.
_________________
Need to flame people LIVE on IRC? Join #gentoo-otw on freenode!
Back to top
View user's profile Send private message
kopfarzt
Apprentice
Apprentice


Joined: 05 Apr 2003
Posts: 170
Location: Vienna, Austria

PostPosted: Wed Jul 23, 2003 10:32 am    Post subject: Reply with quote

KiTaSuMbA wrote:
- idea: another user already suggested counting gcc events in the makefile and then counting them as they appear on output. So what we need is:
- modified econf that after the config, greps for gcc in the Makefiles and drops the count in a $var then quiting normally


I doubt this will work. For example I happen to have an unfinished xawtv compile in /var/tmp/portage and if I grep for gcc I find 1 (one) occurence of gcc, even only a few of CC which is aliased to gcc. It seems that most work is done by a further alias named compile_c.

Lots of packages do Makefile tricks, dynamically produce source, loops and so on. It's a tough job to analyze Makefiles without using make itself.

Even then, make -n in configured but uncompiled ebuilds often stops for various reasons (eg missing a file that would have been produced in a real run).

Finally, not all packages are built with gcc or even make. I already brought the java/ant example and if you compile perl, python, xfree, kde... you see that a lot of time is spent in the processing of manpages, fonts, pyc, pod, moc files and the like.

So I think the best "analytic" approach (for make based builds) is the original one from duff, modifying make itself.

kopfarzt
Back to top
View user's profile Send private message
Ben2040
Guru
Guru


Joined: 07 May 2003
Posts: 445
Location: UK

PostPosted: Wed Jul 23, 2003 11:12 am    Post subject: Reply with quote

Hi

Quote:
Could someone set it up so that it also sets the xterm title bar. That would be cool.


That would definately be cool. Good thinking RedBeard :D :D
As it is at the moment it is still very useful, but why does the percent counter not reach 100 and then go onto another line???? 8O

Ben
Back to top
View user's profile Send private message
gaz
Tux's lil' helper
Tux's lil' helper


Joined: 12 Oct 2002
Posts: 126

PostPosted: Thu Jul 24, 2003 4:29 am    Post subject: Reply with quote

Im gonna give it a go when I get home :)

would you be able to incorporate distcc into it? :)
Back to top
View user's profile Send private message
tecknojunky
Veteran
Veteran


Joined: 19 Oct 2002
Posts: 1937
Location: Montréal

PostPosted: Sun Aug 03, 2003 8:49 am    Post subject: Reply with quote

I like very much the idea, but if it completely obliterate the make output (not even in a log file), sorry, not for me.

Also, can someone supply a screenshot. Is this a console or graphic meter? It's not specified in any posts.
_________________
(7 of 9) Installing star-trek/species-8.4.7.2::talax.
Back to top
View user's profile Send private message
Yarrick
Bodhisattva
Bodhisattva


Joined: 05 Jun 2002
Posts: 304
Location: Malmö, Sweden

PostPosted: Thu Aug 07, 2003 8:09 am    Post subject: Reply with quote

i tried installing iproute with progressbar activated, and strange things happened. the progressbar stopped at 6% and the continued the install, complaining about missing files, but the ebuild seemed to install successfully. i tried once disabling the bar and re-emerging iproute and it could not complete the make due to errors, and it halted the installation. so the progressbar doesn't care if the compilation works or not, does it?
Back to top
View user's profile Send private message
charlieg
Advocate
Advocate


Joined: 30 Jul 2002
Posts: 2148
Location: Manchester UK

PostPosted: Thu Aug 07, 2003 8:23 am    Post subject: Reply with quote

kopfarzt wrote:
Here is a naive little script (not to be compared to the elaborated progress meter discussed here), that I use for estimating progress of an ebuild. It works by counting the number of "source" and "object" files and gives a very rough idea of what's going on. It does not change any files and should also work for non-make-based builds (like Java's ant). It will happily count to 110% or more and revise it's output every time you call it, but perhaps anybody finds it useful :-)

Now this is the way it should be done.

Surely you can get a fairly accurate estimation based on the % of source files processed and maybe even the size of each source file? You could probably do a bit of prep work by scanning the source dir, and counting each file and it's size (and hence the amount it affects the % once used).

Whilst I know that you can't guarrantee 2 source files of similar length will take a similar time to compile, I can't think of a more accurate way to estimate it. And this method would scale very well and should never go over 100%.
_________________
Want Free games?
Free Gamer - open source games list & commentary

Open source web-enabled rich UI platform: Vexi
Back to top
View user's profile Send private message
sKewlBoy
Guru
Guru


Joined: 03 Nov 2002
Posts: 406
Location: Portugal

PostPosted: Sun Aug 10, 2003 10:24 pm    Post subject: Reply with quote

I have tested this and loved it. Beside one time that gave me 6000%, usal is between 90 and 110. And no package has ever been broken. Only mozilla complains that can't be compile without original GNU Make.

Show progress in {a|x}term window title would be great, but I guess it won't be so easy, since it is set by emerge first...
How do you set xterm title ? Is it a env var ?
Back to top
View user's profile Send private message
Cassius
n00b
n00b


Joined: 03 Aug 2003
Posts: 6

PostPosted: Sun Aug 10, 2003 11:01 pm    Post subject: Reply with quote

Very nice script but the biggest problem i have with it (and many else i see) is that you don't see the output. Can't it be possible to show the progress only in the statusbar of your shell?
so instead of:
=== ( 1 of 9 ) Compiling/Merging (usr/portage/sys-apps/appname/app.ebuild)
something like this:
=== (1/9) app.ebuild [50%] [********** ]
Back to top
View user's profile Send private message
Pythonhead
Developer
Developer


Joined: 16 Dec 2002
Posts: 1801
Location: Redondo Beach, Republic of Calif.

PostPosted: Sun Aug 10, 2003 11:27 pm    Post subject: Reply with quote

Check out this thread for a very nice gui (rtkmerge) that has a progress bar:

http://forums.gentoo.org/viewtopic.php?p=443624#443624
Back to top
View user's profile Send private message
helmers
Guru
Guru


Joined: 16 Sep 2002
Posts: 548
Location: Oslo, Norway

PostPosted: Mon Aug 18, 2003 5:45 pm    Post subject: Reply with quote

I guess almost everyone have different desires as to what this "progress bar would display. But for all us non-coders out there, the text that flies by is a problem. If you use VESA-framebuffer, or some nice large terminals, scrolling a lot slows down compile speed.

What I would like is either something nice, so that I wouldn't need several screens to see what have gone wrong. If you could just have ONE line for each application, with the name and status, plus one dynamic line below that; letting you know what is going on. I would really appriciate if I were told how long each compile took too, so I know how long the next verison will take. This is probably even more useful for those with slower CPUs.

Code:
emerge gimp

x11-base/xfree - EMERGED
[ 1 hour and 6 minutes spent compiling 32 MB  ]

media-gfx/gimp - COMPILING
[ compiling file 4 out of 25, 8 minutes used so far ]

_________________
C is for Cookies!
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 3 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