Thank You (all/both) for Your answers.
I'm a kind of person, who believes that the person, who
works on the tasks, must have the freedom to make the
final decisions about the task. If some hardworking
people chose the NetBSD out of plain personal taste,
personal preference, then that's good enough of an
excuse for me and I'm happy that people offer the
results of their hard work for free for everyone to use.
(2015. explanation of "Why BSD?" by Andy Tanenbaum )
https://youtu.be/hvkn0VcjVPY?t=30m23sHowever, I also have a deep belief that if there are
2 teams, for example
MINIX3 ports collection maintainers (hereafter: Team_MINIX)
and Debian package collection maintainers (hereafter: Team_Debian),
then if the Team_MINIX has N people and the Team_Debian has 100*N
people, then the only way the Team_MINIX can be competitive with
the Team_Debian is that the Team_MINIX is either doing something
in some much smarter fashion or the Team_MINIX has automated
a considerable amount of the work that the Team_Debian is doing manually.
A military comparison is the Napoleon army versus a few
modern soldiers with machineguns. My bet is that the small bunch
with machineguns will win the battle, provided that they have
enough ammunition, but rigight now (2017_08_15) the only machinegun analogue
for the Team_MINIX that I'm seeing is the
"Adapter design pattern"
where some middle-layer connects the Debian package collection
to the MINIX NetBSD userland. As the video about one of the
Debian mini-conferences from 2016_11 points out
https://www.youtube.com/watch?v=a7yyWpIpeUgthe Debian project is not just a technical project, but
a social project. After all, to get a large number of
people to work on a single project might be something
that MIGHT (I don't know for sure, but I suspect that
this is the case) require some
SOCIAL ENGINEERING,
not only technical engineering. Allowing people to work
at the upper limit of their capabilities is part of
a strategy to keep the endeavor fun and technically
successful and that's also my explanation, why I find
it crucial that people can have the final say within
their "sandbox", "corner of the project". That also
explains some of the reasons, not all, but some, why
people like me should just accept that the MINIX3
uses the NetBSD userland in stead of the Debian userland.
However, in the very same vain, the very same
SOCIAL EXPLANATION
explains, why there will always be a a nasty mess at least
at some parts of the package collection and why
the Debian package collection is so huge and
"successful-by-size". According to the various MINIX3
architecture introduction videos, the MINIX3 is
an EXCELLENT tool for sandboxing the mess,
keeping the crapware and even malware separated
from clean and carefully crafted software components like
the kernel and some carefully crafted packages/ports.
So, all in all, I think that I'll need to get acquainted
with the various parts of the POSIX standard and
work my way towards the "Adapter design pattern" based
solution from there. Should I ever get it done at all,
and that won't happen for 5 years minimum, given the amount of
other development work that I have to do, the "adapter"
does not need to be cluttering any official ports trees,
so there's no risk that I want to ram some bloat that
others don't like into the general software collection.
Besides, as I said/wrote, I'm not sure that I even
complete the project, but I'll certainly study it,
because I have been working on my own
"userland distribution"(read: collection of Bash and Ruby scripts)
for may be 2 years, may be more, and I'm currently
at the point, where I'm thinking about how to
package some third party software that I tend to
compile manually. Actually, I've even tried/experimented
with packaging systems like the
https://nixos.org/nix/and its ripoff
https://www.gnu.org/software/guix/but both of them failed in my assessment. The Nix
people seem to use their package manager only on their
own Nix Linux distribution and haven't tested it
outside of their distro at all, at least that was the
case long time ago, when I tested their package manager.
The GNU Guix failed to compile or crashed or had other issues that
I do not remember any more. Long story short: the Nix
is/was a mess that tries to re-invent the wheel by developing
its own, shoddy, programming language in stead of creating
a "domain specific internal programming language"
(read: library of some general and widely used programming language),
and the Guix people have just tried to do a cleaner Nix, but
failed to notice that if they used some general purpose
scripting language (Perl/Ruby/Lisp/Python/Haskell/...), then
they could have a stable implementation of that language
without imposing end users to study the peculiarities of a
far more incomplete and less tested special purpose programming language.
At least, that's my hazy memory about the Guix. I might be mistaken,
except that the Guix did not pass my tests/assessment.
May be it's a stupid idea, but as of 2017_08_15 I suspect
that may be the solution to thrive for is a kind of solution,
where I have
my_package
|
+---version_for_1_packaging_system
|
+---version_for_another_packaging_system
|
+---bonnet // contains the common files and scripts
and then some set of tools for testing and dependency calculations.
The MINIX3/NetBSD ports collection is just one
source of inspiration out of many. That is to say,
I have to think about ports collections/package_collections
anyway and I might as well do it in the context of the MINIX3,
which I like from the advertised security features point of view.
(I haven't yet tested/learned the MINIX3 enough to know for sure.)
Thank You for Your answers and
thank You for reading(bearing) my long and
not-so-well-thought-out comment :-)