On 09/06/2019 16:55, Adam Weinberger wrote:
On Sun, Jun 9, 2019 at 9:33 AM Grzegorz Junka <li...@gjunka.com> wrote:

On 09/06/2019 15:44, Miroslav Lachman wrote:
Grzegorz Junka wrote on 2019/06/09 16:12:
On 08/06/2019 19:11, Adam Weinberger wrote:
Hello everyone,

I want to get some stakeholder input on our pkg-message files. I think
we need to have a clear policy about what does and doesn't belong in
them, and I'd like to get your input.

pkg-message is shown to every user on every install. UPDATING is only
shown when users run `pkg updating` *and* /usr/ports/UPDATING exists.
I suspect that only a small proportion of users do that.

pkg-message needs to contain only highly relevant information. Many,
many ports have messages with irrelevant information that users are
likely to get message fatigue and ignore them entirely. I don't want
to pick on Joe Barbish, because his work is absolutely fantastic, but
dns/dns2blackhole/pkg-message is an example of a giant message that
tells users to do the same thing they always do for any port:
########################################################################


                        dns2blackhole

     Malware Prevention through Domain Blocking (Black Hole)

     Issue "man dns2blackhole"  For configuration and usage information

########################################################################


We now have the ability to specify messages that appear on initial
install, or on upgrades from/to specific version. So here is what I
propose as policy:

pkg-message must contain only information that is vital to setup and
operation, and that is unique to the port in question. Setup
information should only be shown on initial install, and upgrade
instructions should be shown only when upgrading to the relevant
version. All committers have blanket approval to constrain existing
messages to install/upgrade ranges using the UCL format
specifications. Message pruning falls under the blanket approval as
well, but committers are encouraged to get maintainer input
beforehand.
<<<

What are your thoughts?

# Adam

I don't like the approach of separating install from update messages.
It only works in the ideal scenario, which is almost never. Two reasons:

1. Very rarely I have time to configure all package requirements when
installing a bunch of packages. I usually configure a few most
important ones and leave the rest for later. Then I need to remember
to re-read whatever requirements they might have had.

2. Very rarely just adding packages to the system works. From adding
flavours, to removing KDE4, to renaming packages, etc. There is
always something going on and almost every time I try to upgrade all
packages in the system because of various problems I end up
reinstalling all of them anyway (pkg upgrade -f).

In either case update messages don't matter. In my opinion there
should be just one short message shown when either upgrading or
installing. If there are any specific instructions applicable when
only installing or upgrading then it's safer to show in both cases
with info in what condition they are applicable.

When installing packages with many dependencies a typical user isn't
even aware which packages have been added / installed and which have
been updated. Why make the life more complicated than it needs to be?
I disagree. The more the general messages the more noise to users. If
something is useful only on the first install why should user read it
on each pkg upgrade for many years in a lifetime of a machine? Then
some useful info on upgrade will be missed between many useless messages.
I remember change in PHP extensions which caused printing of useless
notice on every pkg upgrade of every PHP extension. Average webserver
has 10 - 20 of them (or more). This was so annoying that I patched our
ports/Mk to not print those messages.
If new UCL pkg-message format allows us to print only useful
information in specific event I am glad it is finally here!
The current state of pkg-message is very bad. Info in it is something
I totally ignore on each upgrade because it contains useless
informations which are printed to me on all machines on each pkg
upgrade once or twice a month... Why if the info is useful only for
the first install.

Because pkg doesn't know if it's a first install or reinstall. My
opinion is that they should be short and scarce so that even if all of
them are printed it's not a burden to read them. With the PHP example it
doesn't seem like a problem with update vs first install but inadequate
message being put there in the first place. The first problem is with
too many useless messages, the secondary problem is when they are printed.
We are in complete agreement on the first point (they should be
specific and relevant). On the second point, I definitely hear you
that pkgs IRL aren't always simply "new install and then upgrade
forever." However, I feel like we have a great opportunity here: When
only the bare minimum and highly relevant information is present, you
should rarely see pkg messages. So when a port suddenly has one, you
know that the upgrade you just did needs attention.

Would it be more helpful if there were a big header before each
upgrade message saying "UPGRADE INFORMATION:"? That might make it
clearer that this is a thing to look at.

# Adam


That's a good approach. Best if pkg was able to print UPGRADE and INSTALL information in separate sections.

In fact, INSTALL messages aren't only about information relevant when installing. What we see as INSTALL is really the "minimal configuration required for the installed pkg to function correctly which couldn't be applied by pkg and has to be done manually". In that sense it's irrelevant if the package is being updated or installed. However, I understand that skipping it when only upgrading may make the overall experience less cluttered.

How about an option in pkg, say -ma (print all important configuration notes), -mu (print only update notes, could be default) ?


Some context:

I am a user of a few FreeBSD desktops (compiling all my packages with poudriere and custom options, which probably isn't relevant). I never remember which options I have enabled on which desktop, so whenever I do an install/upgrade I skim through all messages to ensure appropriate options are set in the system. Also, because there is so many irrelevant messages, it's easy to overlook important messages, so going through them again from time to time helps to avoid further frustration.

Definitely pkgs IRL aren't "new install and then upgrade forever.". Based on experience my upgrade path looks like this:

 a. Delete unused packages
 b. Install any new packages I would like to have
 c. pkg autoremove and cut_leaves for better hygiene
 d. Reinstall all with "pkg upgrade -f"

Too often I was bitten by partially updated packages and non-existent conflicts between installed files or packages to just trust in a normal install/upgrade. But since I am always reinstalling all packages I don't really care about "update" notes because I see all the install notes anyway. I just feel like if the split between UPDATE/INSTALL notes was a poor workaround for having too many irrelevant notes and for pkg not being reliable enough.

GrzegorzJ
_______________________________________________
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"

Reply via email to