View previous topic :: View next topic |
Show or hide build output by default? |
emerge should hide build output by default (unless --quiet-build=n) |
|
28% |
[ 135 ] |
emerge should show build output by default (unless --quiet-build=y) |
|
51% |
[ 240 ] |
The -v option should control whether build output is shown or not by default |
|
17% |
[ 81 ] |
Other (please comment) |
|
2% |
[ 10 ] |
|
Total Votes : 466 |
|
Author |
Message |
ppurka Advocate
Joined: 26 Dec 2004 Posts: 3256
|
Posted: Wed Nov 16, 2011 2:40 pm Post subject: Re: emerge should show build output by default |
|
|
anti-s wrote: | May be a bit off-topic, but if the output-toggle is implemented - I would have liked to see some kind of timer indicating when the package is done compiling using results stored by 'qlop' or something similar. | This is something a script (quietemerge) I wrote does and also handles --jobs. See my sig. The script tries to be as non-intrusive as possible with the actual emerge process.
However, if you want more advanced functionality (about controlling verbosity, handling more than just updates, etc) then the update script by steveL is the answer. _________________ emerge --quiet redefined | E17 vids: I, II | Now using kde5 | e is unstable :-/ |
|
Back to top |
|
|
steveL Watchman
Joined: 13 Sep 2006 Posts: 5153 Location: The Peanut Gallery
|
Posted: Wed Nov 16, 2011 5:16 pm Post subject: |
|
|
aditsu wrote: | Um.. first of all, it took me a few minutes to understand that you're talking about a program called "update" rather than updating portage. A sales pitch should be clearer. |
Er that was a joke- hence the wink; do you really think I'm bothered whether someone as polite as you uses it? I mean, I don't get paid anything for it in any case. And what's so hard about clicking on a link? Not sure what you needed to work out there.. but nm.
Quote: | Second, no multiple jobs? That sucks. |
Er no, that works fine; especially if you run the git version. I'm waiting a few days for issues before I roll latest commit into a release, but it currently handles everything fine afaik; --quiet-ebuild was a minor fix ofc, and I took the opportunity to make the menu editor better, which was bugging me for a while. Oh tell a lie, I haven't had a package fail on me for months, so I guess I'll have to break out the old app-fu/breakMe ebuild.. let me see, I feel so motivated right about now.
Thing is, you were going on about wanting more, controllable output to the screen; you simply can't get anything like that with multiple jobs. So, irrespective of your being wrong, I fail to see why it would bother you.
It's ok, don't bother to enlighten me; I don't think I'd enjoy it based on your attitude.
Quote: | And third, it's not in the tree and not even an overlay? I don't think I'll bother. |
Please don't; I'd hate to think my work was helping you.
For the record, most of our users use the git version. I don't run any git ebuilds, but I know they find it very easy to get upgrades when I've pushed them in response to some bug or another. So afaict, they just download the ebuild once and then they're set. As Naib pointed out, there might be an overlay when there's enough releases going to warrant it. Personally I don't really care: we wrote it for ourselves (I started it as an exercise to learn BASH.) |
|
Back to top |
|
|
steveL Watchman
Joined: 13 Sep 2006 Posts: 5153 Location: The Peanut Gallery
|
Posted: Wed Nov 16, 2011 5:25 pm Post subject: Re: emerge should show build output by default |
|
|
ppurka wrote: | anti-s wrote: | May be a bit off-topic, but if the output-toggle is implemented - I would have liked to see some kind of timer indicating when the package is done compiling using results stored by 'qlop' or something similar. | This is something a script (quietemerge) I wrote does and also handles --jobs. See my sig. The script tries to be as non-intrusive as possible with the actual emerge process.
However, if you want more advanced functionality (about controlling verbosity, handling more than just updates, etc) then the update script by steveL is the answer. |
Gee thanks, ppurka. update doesn't handle --jobs as well as yours, from what I've read though. You must monitor the process pretty closely? The timing thing on yours is nice as well. I gave up on that ages ago as everyone told me it's too unreliable, and later I figured it'd only get worse with parallel merges going on (and affecting the load.)
Kudos for getting that done for N merges going on at a time, and real-time monitoring of the load (that is what you have isn't it? update only refreshes the load as and when emerge spits out a line which as you know isn't that often with --jobs, so it's not really there on that side.)
Don't cha just love (and sometimes hate;) bash? |
|
Back to top |
|
|
zmedico Developer
Joined: 02 Jan 2004 Posts: 352 Location: California USA
|
Posted: Wed Nov 16, 2011 5:41 pm Post subject: |
|
|
steveL wrote: | Changes which radically affect the default ui people are used to, whether it's end-user ui or ebuild api, are only going to spark a reaction if people haven't had a heads-up. |
Are you suggesting a that we send out a GLEP 42 before this goes stable? I'd be happy to do that if I thought that it would help ease the transition.
I think it's worth noting that there's no guarantee that a given person who sees one of these notifications will make a mental connection between the notification and the new behavior that they will observe from emerge at a later time. The time gap leaves lots of room for a lack of comprehension. _________________ Zac |
|
Back to top |
|
|
ppurka Advocate
Joined: 26 Dec 2004 Posts: 3256
|
Posted: Wed Nov 16, 2011 6:03 pm Post subject: Re: emerge should show build output by default |
|
|
steveL wrote: | Gee thanks, ppurka. update doesn't handle --jobs as well as yours, from what I've read though. You must monitor the process pretty closely? The timing thing on yours is nice as well. I gave up on that ages ago as everyone told me it's too unreliable, and later I figured it'd only get worse with parallel merges going on (and affecting the load.)
Kudos for getting that done for N merges going on at a time, and real-time monitoring of the load (that is what you have isn't it? update only refreshes the load as and when emerge spits out a line which as you know isn't that often with --jobs, so it's not really there on that side.) | Thanks!
It took me more than a year to realize that I shouldn't be monitoring the emerge output too closely! All my script does is wake up at specified intervals and parse all the new output that emerge spewed out in /var/log/emerge.log.
Earlier versions of the script was way more inefficient and it was really hard to keep up with emerge output (which was also why I passed -q to emerge), especially when a lot of "virtual/..." packages were emerged in quick succession. Second thing I did was replace the use of genlop (which is really really inefficient) with my own bash function.
Quote: | Don't cha just love (and sometimes hate;) bash? | Yes. bash and sed is a love-hate relationship. It takes a bit of time to get it to work properly.
EDIT: By the way, my script doesn't monitor the load. It only provides a countdown timer. That has been the sole objective of it from day one. That's why it is nowhere near as sophisticated as update. _________________ emerge --quiet redefined | E17 vids: I, II | Now using kde5 | e is unstable :-/ |
|
Back to top |
|
|
krinn Watchman
Joined: 02 May 2003 Posts: 7470
|
Posted: Wed Nov 16, 2011 7:25 pm Post subject: |
|
|
What i don't really get is : what's the point of hidding the emerge output per default ? I tried to figure out, but seriously cannot get it
- showing the output show what gentoo is really doing with the package, new users specially might enjoy to see what's going on
- hidding the output doesn't improve speed (or seems it doesn't)
- hidding the output might improve readiness of what was build with success.
- showing the output let you get the error where it happen and no need to check build.log/config.log as portage error report is generally enough to get the picture and correct it
- hidding the output to prevent some debian user joke... Seriously ? Wonder what debian will do if i build an apt-emerge that rebuild all your system with i686 cflags? I don't think debian will give a fuck about that.
- hidding the output just doesn't help to see your emerge is alive, the load average just show your cpu is working, not a proof emerge is doing well, many ebuild using cmake or g++ also put a % of total process done, good to see where your build is at, i just think kde users will just die without it.
- If you default hidding the output, then you MUST default to enable elog message logging. Don't teach users to stop taking care about portage output per default else they won't take care of anything that is not log.
Users of gentoo might just use the option to disable or enable it, that's not the point, what should be the point is that this now default behavior will hide the output to new gentoo user. And i'm not sure hidding compile output will not disturb them more because they won't know what's going on, and might even think they are cheated about the "source" distro they install.
So instead of cons/pro as we have a flag to enable/disable it, look for cons/pro for new user that will not handle all portage flags like us. And for me, it's a bad thing to hide how portage is working per default for a new gentoo user.
I vote "show output per default" and i think it's the best choice for a new gentoo user as experience user don't care as devs have provide a flag to enable/disable it. |
|
Back to top |
|
|
aditsu n00b
Joined: 16 Jul 2004 Posts: 6
|
Posted: Wed Nov 16, 2011 7:57 pm Post subject: |
|
|
steveL, I didn't mean to offend you, I was just commenting that it doesn't seem to meet my requirements/expectations. |
|
Back to top |
|
|
zmedico Developer
Joined: 02 Jan 2004 Posts: 352 Location: California USA
|
Posted: Wed Nov 16, 2011 8:02 pm Post subject: |
|
|
krinn wrote: | - hidding the output to prevent some debian user joke... Seriously ? Wonder what debian will do if i build an apt-emerge that rebuild all your system with i686 cflags? I don't think debian will give a fuck about that.
|
The point is not the joke, it's the ridiculous default that apt-gentoo is poking fun at. _________________ Zac |
|
Back to top |
|
|
th9 n00b
Joined: 07 Mar 2008 Posts: 8
|
Posted: Wed Nov 16, 2011 8:14 pm Post subject: |
|
|
krinn wrote: | - If you default hidding the output, then you MUST default to enable elog message logging. Don't teach users to stop taking care about portage output per default else they won't take care of anything that is not log.
|
This is really a valid point. But instead of defaulting to enable logging, portage could just print all elog messages after emerge regardless of the success of the emerge itself. |
|
Back to top |
|
|
krinn Watchman
Joined: 02 May 2003 Posts: 7470
|
Posted: Wed Nov 16, 2011 8:19 pm Post subject: |
|
|
I don't know what upset you that much about that joke seriously ? I find it fun, it's a useless tools for fun that tackle source distro.
In fact you think the "ridiculous output" is the real joke? Well i think the real target is here :
Code: | time.sleep(random.random() * 0.09) |
So now what? we will have a portage download binaries from the tinderbox and emerge that per default to speed up the process ? |
|
Back to top |
|
|
zmedico Developer
Joined: 02 Jan 2004 Posts: 352 Location: California USA
|
Posted: Wed Nov 16, 2011 8:26 pm Post subject: |
|
|
th9 wrote: | krinn wrote: | - If you default hidding the output, then you MUST default to enable elog message logging. Don't teach users to stop taking care about portage output per default else they won't take care of anything that is not log.
|
This is really a valid point. But instead of defaulting to enable logging, portage could just print all elog messages after emerge regardless of the success of the emerge itself. |
This has already been the case for years. The elog messages are displayed by the echo module which is enabled by the default PORTAGE_ELOG_SYSTEM="save_summary echo" setting. _________________ Zac |
|
Back to top |
|
|
BitJam Advocate
Joined: 12 Aug 2003 Posts: 2508 Location: Silver City, NM
|
Posted: Wed Nov 16, 2011 8:42 pm Post subject: |
|
|
IMO, the output of emerge would be MUCH more useful if it was briefer. I emerge world every week or two and the output of emerge is so long I have a hard time scrolling through it looking for things (such as which packages failed to emerge).
Since the default value mostly affects how new users experience Gentoo, I think the briefer output should be the default. ISTM the current default is --super-ultra-extra-verbose which is ridiculous. Printing out voluminous information when 99.99% of it is utterly useless is not a good idea. |
|
Back to top |
|
|
zmedico Developer
Joined: 02 Jan 2004 Posts: 352 Location: California USA
|
Posted: Wed Nov 16, 2011 8:44 pm Post subject: |
|
|
krinn wrote: | I don't know what upset you that much about that joke seriously ? |
I never said I was upset. I just said that showing the build output by default is ridiculous, and jokes like apt-gentoo show that people think so. Maybe you don't think it's ridiculous, and you're entitled to have your own opinion of course. _________________ Zac |
|
Back to top |
|
|
dalek Veteran
Joined: 19 Sep 2003 Posts: 1353 Location: Mississippi USA
|
Posted: Wed Nov 16, 2011 8:49 pm Post subject: |
|
|
zmedico wrote: | th9 wrote: | krinn wrote: | - If you default hidding the output, then you MUST default to enable elog message logging. Don't teach users to stop taking care about portage output per default else they won't take care of anything that is not log.
|
This is really a valid point. But instead of defaulting to enable logging, portage could just print all elog messages after emerge regardless of the success of the emerge itself. |
This has already been the case for years. The elog messages are displayed by the echo module which is enabled by the default PORTAGE_ELOG_SYSTEM="save_summary echo" setting. |
So since quiet is the default, a new user will have to enable ELOG even if they don't want ELOG for some reason? Does this mean that ELOG will be enabled by default now?
_________________ My rig: Gigabyte GA-970A-UD3P mobo, AMD FX-8350 Eight-Core CPU, ZALMAN CNPS10X Performa CPU cooler,
G.SKILL 32GB DDR3 PC3 12800 Memory Nvidia GTX-650 video card LG W2253 Monitor
60TBs of hard drive space using LVM
Cooler Master HAF-932 Case |
|
Back to top |
|
|
zmedico Developer
Joined: 02 Jan 2004 Posts: 352 Location: California USA
|
Posted: Wed Nov 16, 2011 9:01 pm Post subject: |
|
|
dalek wrote: | zmedico wrote: | th9 wrote: | krinn wrote: | - If you default hidding the output, then you MUST default to enable elog message logging. Don't teach users to stop taking care about portage output per default else they won't take care of anything that is not log.
|
This is really a valid point. But instead of defaulting to enable logging, portage could just print all elog messages after emerge regardless of the success of the emerge itself. |
This has already been the case for years. The elog messages are displayed by the echo module which is enabled by the default PORTAGE_ELOG_SYSTEM="save_summary echo" setting. |
So since quiet is the default, a new user will have to enable ELOG even if they don't want ELOG for some reason? Does this mean that ELOG will be enabled by default now?
|
As I've tried to explain above where you've quoted me, ELOG has already been enabled by default for years. _________________ Zac |
|
Back to top |
|
|
dalek Veteran
Joined: 19 Sep 2003 Posts: 1353 Location: Mississippi USA
|
Posted: Wed Nov 16, 2011 9:19 pm Post subject: |
|
|
zmedico wrote: | As I've tried to explain above where you've quoted me, ELOG has already been enabled by default for years. |
Ahhhh, I set mine a long time ago so I wasn't sure. That's why I was asking. So, if a person doesn't want ELOG, then they also have to disable the quiet defaults otherwise the build will fail quietly with not much info. Gotcha.
I really think the idea I mentioned on -dev would be a good idea. Have a read only mailing list where changes to portage and maybe some other important things can be announced. Maybe user-annouonce or something like that. I think it would be great that when you add something to portage, which you do a lot of, that it is announced so users can see new features, changes to default settings and maybe even changes to USE flags that are important. Some things are mentioned on -dev but not always.
The list would be for things that do not rise to the level of a news item tho.
_________________ My rig: Gigabyte GA-970A-UD3P mobo, AMD FX-8350 Eight-Core CPU, ZALMAN CNPS10X Performa CPU cooler,
G.SKILL 32GB DDR3 PC3 12800 Memory Nvidia GTX-650 video card LG W2253 Monitor
60TBs of hard drive space using LVM
Cooler Master HAF-932 Case |
|
Back to top |
|
|
michelle778 n00b
Joined: 19 Mar 2005 Posts: 73
|
Posted: Wed Nov 16, 2011 9:26 pm Post subject: |
|
|
I don't care much - I voted hide by default since I guess most people don't watch "mergeTV" anyway (I usually go to sleep or do something else). Anyway, as long as the error mesages are still displayed everything would be fine with me. _________________ Nothing is easier than being busy - and nothing more difficult than being effective. |
|
Back to top |
|
|
zmedico Developer
Joined: 02 Jan 2004 Posts: 352 Location: California USA
|
Posted: Wed Nov 16, 2011 10:04 pm Post subject: |
|
|
dalek wrote: | zmedico wrote: | As I've tried to explain above where you've quoted me, ELOG has already been enabled by default for years. |
Ahhhh, I set mine a long time ago so I wasn't sure. That's why I was asking. So, if a person doesn't want ELOG, then they also have to disable the quiet defaults otherwise the build will fail quietly with not much info. Gotcha. |
Well, there are multiple elog modules to choose from. For example, if the person doesn't like the echo module, they can set PORTAGE_ELOG_SYSTEM="save_summary" so that the elog messages will only be saved in /var/log/portage/elog/summary.log. Then, they can safely use the quiet defaults, but they'll have to consult /var/log/portage/elog/summary.log if they are interested in reading the elog messages. _________________ Zac |
|
Back to top |
|
|
krinn Watchman
Joined: 02 May 2003 Posts: 7470
|
Posted: Wed Nov 16, 2011 10:37 pm Post subject: |
|
|
zmedico wrote: | I never said I was upset. I just said that showing the build output by default is ridiculous |
Yeah sorry you didn't, i kinda lack words in that language, but you seems disturb/shock/annoy.... to a point that feature was enable per default no ?
As i said, and as many users that will answer this thread i suppose, as you (you= all devs, and this include you of course but not only, i know you're a major one for portage) provide a switch to enable/disable it, our life won't be change.
I think the question would then only be against new user, and not long time portage user (even some long time user seems to not understand it at all).
So, i know already what's your favor to hide/not hide it for your preference, but from that new user point of view, you think it's the best choice to disable output per default ?
Just trying to asnwer that one else we will go around 'til death no? |
|
Back to top |
|
|
zmedico Developer
Joined: 02 Jan 2004 Posts: 352 Location: California USA
|
Posted: Wed Nov 16, 2011 10:48 pm Post subject: |
|
|
krinn wrote: | So, i know already what's your favor to hide/not hide it for your preference, but from that new user point of view, you think it's the best choice to disable output per default ? |
Yes, I think that the majority of users (including new users) would prefer the --quiet-build=y behavior by default. I would not have supported a change in the defaults unless I thought that was the case. _________________ Zac |
|
Back to top |
|
|
Etal Veteran
Joined: 15 Jul 2005 Posts: 1931
|
Posted: Thu Nov 17, 2011 4:02 am Post subject: |
|
|
I don't have much of an opinion either way on this issue (this, to me, seems to be an epitome of bikeshedding), but I want to thank Zac for all the great work he has been doing on Portage recently. In the past year, Portage has come a really long way. Thank you, Zac! _________________ “And even in authoritarian countries, information networks are helping people discover new facts and making governments more accountable.”– Hillary Clinton, Jan. 21, 2010 |
|
Back to top |
|
|
stalker n00b
Joined: 18 Jun 2003 Posts: 41
|
Posted: Thu Nov 17, 2011 4:15 am Post subject: |
|
|
Asphyxiated wrote: | For what its worth I was taken by surprise by the change in default behavior but it was no big deal to set EMERGE_DEFAULT_OPTS="--quiet-build=n"
I didn't particularly like the fact that the default behavior just up and changed on me but I also was not particularly upset by having to set this flag in make.conf
Although the change doesn't seem like gentoo to me just because the default has been to spew out all those lines of code for so long.
|
Wow, those were almost the exact words that came to my mind as I encountered this change.
I think krinn makes some good points (in 2 different posts), and I think that new users/installs is what matters (Which is what default is really about, not the seasoned user that knows the options of a command). So a question that I think is very important to ask is out of the users that want it quiet by default, how many of them have EMERGE_DEFAULT_OPTS set? As someone with that set (although I'm still trying out this quiet output ATM) after being surprised by the change one of the things I wanted to do is change it on my new install, but keep it on my "mature" install.
On a new install, one might not have that option set yet because there can be more important configs to modify first. I have yet to see a compelling argument for it to be on at default (haven't made it to the dev lists yet, but they're open tabs) but I'm starting to lean toward if it was on by default, I'd like the "IRC -v" behavious coupled with "-v" being used (explicitly mentioned) during the install guide. Otherwise I'd like it to be verbose and then just set it to quiet when I'm ready with EMERGE_DEFAULT_OPTS.
I still think that it makes sense to have that output at hand (I haven't seen anyone mention the percentage reporting on CMAKE yet). And I want to point out that generally I only go to the build logs when I connect with "screen" and it's easier to look at the log than it is to scroll back into it's history. When I think of new users/installs I think that i may be creating extra things for people to do if things don't go as expected (and by that I mean what they may expect, so a lack "communication" to the user is something that you want to avoid. And load average is not as clear [I wouldn't have known when I started using Gentoo] as seeing lines scroll by). And with that view I think I turns the "Rule of Silence" with regards to Unix in favour of keeping the verbose output, unless of course you take the view that it shouldn't say anything at all because you told it to install and it did.
Holy brackets Batman. _________________ Look behind you...
Think outside the box, give the cat a chance. |
|
Back to top |
|
|
stalker n00b
Joined: 18 Jun 2003 Posts: 41
|
Posted: Thu Nov 17, 2011 5:11 am Post subject: |
|
|
OK, so it spits out the Build log at the end. That negates a reason for not changing it, not making one for changing it. _________________ Look behind you...
Think outside the box, give the cat a chance. |
|
Back to top |
|
|
Malaki n00b
Joined: 14 Nov 2011 Posts: 19 Location: Montreal, Québec, Canada.
|
Posted: Thu Nov 17, 2011 11:35 am Post subject: show by default! |
|
|
I voted for for the output to be shown as default. I think it is a somewhat a part of Gentoo to actually see all process, advanced users can use otherwise, while new comers, at my opinion, should see the checking, sources preparations and actual compiling process. I'm compiling from sources for years, not just on Gentoo but also with Red Hat(and successors) SRPMs. Even for advanced users, like myself, i really enjoy seeing what is the language used and what's happening. Sure it is not readable sometimes when you have Phenom X4 proc and use MAKEOPTS="-j5", it's making me smile when i see my system compiled as fast as a machine gun. I'm used to watch compilation process taking forever, trying to see lines is somewhat a joy.
Though, i would recommend making a better pre-compilation check system, that would put already checked stuff into an easy to access database, but not make those disappear neither, sometimes when i go from a machine to another, i like to see what's there and what's not, as for some machines i use all possible languages, so if i see GNU compiler tell me, for example, there's no fortran support or other stuff, it remind me maybe i forgot to put it in the USE flags. That said, recompiling an entire system of about 1200 packages and seeing redundant checks taking 30% of the emerge time, it bothers me a LOT. I would be for a unified check for those to save time.
Simon-Pierre Dubé.
Engineer in Chief at MalakiLab. |
|
Back to top |
|
|
kernelOfTruth Watchman
Joined: 20 Dec 2005 Posts: 6111 Location: Vienna, Austria; Germany; hello world :)
|
Posted: Thu Nov 17, 2011 12:50 pm Post subject: |
|
|
avx wrote: | voted: hide by default
I've got it turned off for a long time, mainly because it dramatically slows down the built when on VT (yeah, crappy driver). Unless something fails, I won't need it and in that case, there's still the .log.
No to binding it to -v, confusing for me. |
++
I voted to show it
for these VT use-cases it's quite useful
but on the other hand it's for beginners easier to diagnose issues
so it should be kept on - mentioned in the handbook to turn it off for more experienced users ... _________________ https://github.com/kernelOfTruth/ZFS-for-SystemRescueCD/tree/ZFS-for-SysRescCD-4.9.0
https://github.com/kernelOfTruth/pulseaudio-equalizer-ladspa
Hardcore Gentoo Linux user since 2004 |
|
Back to top |
|
|
|
|
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
|
|