Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 648192 - app-portage/eix: important messages coming at the end of emerge --sync can be easily ignored after eix-update output
Summary: app-portage/eix: important messages coming at the end of emerge --sync can be...
Status: CONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal with 1 vote (vote)
Assignee: Michał Górny
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-02-19 19:58 UTC by Pacho Ramos
Modified: 2023-01-13 13:46 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Pacho Ramos gentoo-dev 2018-02-19 19:58:42 UTC
Hello,

This comes from bug 647644. The other day I noticed that I wasn't seeing any warning suggesting me to update portage before trying to update the whole world. Later, we noticed that the issue was caused by me using "eix-sync" to sync, because it will show all the eix-update *after* the output of emerge --sync output. 

This makes some important messages (like this warning and the warning about new news available) to be easily ignored because eix-update output can sometimes be really big.

We have thought on some options to workaround this:
- One option would be that eix would be able to get this messages from the emerge --sync output and show them always at the end of whole eix-sync output.
- Other option could be to rely on installing a file in /etc/portage/postsync.d/ running "eix-update", because emerge --sync will run it before showing that warnings. This also adds the advantage of offering a more "transparent" alternative to the whole eix-sync command, I mean, not adding an additional layer over "emerge"

Thanks a lot
Comment 1 Martin Väth 2018-02-19 20:11:53 UTC
/etc/portage/postsync.d is supported by eix:

eix installs /usr/bin/eix-postsync which the user can either symlink to /etc/portage/postsync.d or call it manually from his own script.

Capturing output of other programs is never a good idea. If the user does not want to see the lengthy eix-diff output at the end, he can easily configure eix to omit that call (with the hook @@exit 0 as documented in the eix manpage) (and then he can call eix-diff later manually when desired.)
Comment 2 Pacho Ramos gentoo-dev 2018-02-19 20:19:44 UTC
It seems eix-postsync is provided in testing version, non stable (maybe we could stabilize newer eix soon ;)). Also... I was thinking on installing the file directly there... otherwise many people won't even think about that option being possible 

Also... what is the advantage over showing eix-diff output by default even hiding the other messages? Maybe it would be better to reverse the default and not show it always
Comment 3 Martin Väth 2018-02-20 06:57:33 UTC
> I was thinking on installing the file directly there

Do not try to be smarter than the user.
Installing directly into user configuration for portage is horrible.
It forces ugly workaround for users who do not want this (e.g. who want the file under a different name due to their order in postsyncd or call it in a script).

> what is the advantage over showing eix-diff output by default 

This is what eix-sync is for in the first place: In the beginning, the only recommendation was to put eix-update into postsync.d, but user requested an analogous behaviour to esearch.
Users with this request (i.e. calling eix-sync in the first place) probably either have terminal which buffers sufficiently many output lines or redirect the output.

> Maybe it would be better to reverse the default and not show it always

You can call eix-postsync instead of eix-update if you want that behaviour.
There is a reason why this is in /usr/bin.