Hi,
Il 28/12/19 11:32, Benoit ha scritto:
> Hi Giovanni,
> I am wondering: what are the advantages of having a Debian package over
> the current method ? (This is a genuine, not a rhetorical question.) I
> am using Debian testing, and everytime I want a new version of Metamath
> (and I generally want the newest), I download the zip from
>
http://us2.metamath.org/#downloads, then I read the README.TXT because I
> always forget that the command is
> gcc m*.c -o metamath -O3 -funroll-loops -finline-functions
> -fomit-frame-pointer -Wall -pedantic -DINLINE=inline
> then I type it, and I'm good to go.
That's a lot of work already, compared to just "apt install metamath"
without having to check out any file. And you haven't even considered
the problem of understanding what to download: the GitHub repository?
The source distributed on the metamath website? What is the relationship
between the two? For you and me this is obvious, not so much for someone
discovering metamath for the first time.
Then, granted, metamath is probably a software for which the convenience
ratio between packaged and not packaged is relatively small. But any
user might be interested in many programs, and in order to keep all of
them up-to-date they have to do a specific manual process for each of
them (and sometimes this process might change because of changes in the
build system, dependencies or whatever). Compared to just "apt update;
apt upgrade" for all packages at once. I'd say that even for something
as straightforward as metamath there is no race. Think also for people
administrating lots of computers, for example in a university: if you
have metamath in Debian, you just add the name to the list of packages
that must be installed on each computer in your system management tool
(Puppet, Ansible, whatever). Otherwise you have to sort everything out
by yourself.
If a package is really special for you, because you are a developer or
such a power user that even being one commit behind master is an
impairment for you, then by all means ignore the packaged version and
compile your own. But for all other users, I believe there is nothing
like the distribution's official repositories.
It's not just a matter of convenience, but also of trust. Debian users
usually trust Debian packages: they know that most probably they will
just work, that they install files conforming to a well-known policy,
they know that if they uninstall the package then everything is just
gone. If you have to compile things yourself, you always need to check
manually of those things, if you care about keeping your filesystem clean.
> Also, how is the package updated ? I mean : you uploaded version 0.180
> this morning to the Debian queue, so the version we will have in the
> stable Debian two years from now, will it be 0.180, whereas the version
> then will be, say, 0.192 ?
The version we will have in Debian bullseye when it will be released
will not (probably) be 0.180, but the last one that I uploaded before
bullseye enters its freeze stage. On the other hand, it is true that
that version will not be further updated during the bullseye life cycle:
Debian stable is meant to be stable (however, I will keep updating the
package in unstable and testing). This is what Debian users expect and
(hopefully) want. This is what happens for all other pieces of software
and it is perfectly normal.
If important bugs (like security bugs, or bugs that severely impact the
usability of the package) emerge after it has been released in Debian
stable, it is still possible to fix them with targeted patches. There
are dedicated repositories for that. But in that case we just fix the
important bug, not upload a completely new version. And the opportunity
to do this is carefully weighed against the risk of introducing new bugs
in working setups.
If a stable user really needs an updated version of a packaged software,
there is also another available channel, which is debian-backports. This
is not an official Debian distribution, but it is still endorsed by the
project, it upholds to the same Debian quality standards and is well
known and trusted by the users.
I think that all these options cover the needs of an important share of
users of most Debian packages. Again, metamath might be a bit of a
corner case because it is a simple software, with a rather targeted
users community. But given that the effort for me is so little, I
believe it is totally worth it.
BTW, most of what I say is probably true for any Linux distribution. I
am not saying that Debian is special. It just happens that I use and
contribute to it.
Hope this explains, Giovanni.