Re: Why does OpenBSD still include Perl in its base installation?

2020-05-23 Thread Dawid Czeluśniak
> An important note:
>
> If you do any of that and subsequently encounter a problem, you must
>
> 1. Assume you created that problem for yourself
> 2. Not file a bug report
> 3. Not complain to others on OpenBSD mailing lists.

Fair enough.

Thank you all for a detailed explanation.



Why does OpenBSD still include Perl in its base installation?

2020-05-21 Thread Dawid Czeluśniak
Hi OpenBSD community,

First of all, thank you for 6.7 release.

I am a huge fan of minimal and custom installations
as I mostly use OpenBSD to host simple HTTP servers.
I basically use vi to edit httpd.conf file,
obtain a certificate from Let's Encrypt using built-in acme-client,
then start the server and things just work.

I was wondering if I need the package manager in the minimal
installation of the system as I only use built-in deamons (httpd, sshd)
and UNIX utilities (vi, sed)? By package manager I mean
pkg_* executables as well as its dependencies (most notably Perl).
(The size of /usr/libdata/perl5 is about 50MB on my machine).
I just want the minimal installation without any unnecessary
scripting language. One way to achieve that could be
to manually remove pkg_* executables and Perl from a machine,
but it can easily end up with the broken system especially when
done by unexperienced users. But then I thought about
the second possible way: why not to extract pkg_* executables
and Perl to the separate file set (pkgXX.tgz)?
In this way, people who are not going to use the package manager
could just simply not install it. Moreover, it could break
the base installation free from the heavy dependence on Perl.

I would like to get your opinion on that.

So the questions to the OpenBSD community are the following:

1. Is it possible, from the technical point of view, to extract
pkg_* utilities, perlutil(1), any other Perl-dependent code
and Perl itself from baseXX.tgz to the separate file set
so that users that just want the *minimal* installation of OpenBSD
don't have to remove it manually?

2. Are there any other programs in the baseXX.tgz file set
that depend on Perl other than:
- pkg_* utilities
- perlutil(1) (rather obvious)
- fw_update(1)
- adduser(8) (adduser and rmuser utilities)
- vi.recover script
- cvs contrib scripts

3. Are there people among this community who think that
the base installation of OpenBSD should not include Perl
and Perl-dependent programs and utilities?
Looking at FreeBSD for a moment it seems like Perl left the
base system in May 2002 (18 years ago)[0].
In a nutshell the rationale was more or less the following[1]:

> It appears that having Perl in the base distro has
> the following problems:

> 1. It increases the distro image size.
> 2. It forces everyone to use the same version of Perl.
> 3. If someone tries to install over that version or just even patch it,
> it can break stuff in BSD which needed the old version.
> 4. Installing multiple copies imposes weird symlink tricks
> or else breaks other stuff.

All comments and opinions are appreciated. Thanks!

[0] https://lists.freebsd.org/pipermail/freebsd-announce/2002-May/000823.html
[1] https://bsd.slashdot.org/comments.pl?sid=32564=3513689