Removing git dependencies on perl5 and python27

Adam Weinberger adamw at adamw.org
Fri Jun 15 03:57:53 UTC 2018


On Thu, Jun 14, 2018 at 8:16 PM Mahmoud Al-Qudsi <mqudsi at neosmart.net> wrote:
>
> Hello list,
>
> I'm probably not alone in considering git to be a core development tool,
> perhaps just a notch or two below the C compiler. `git` and `sudo` are the two
> packages I first install (after `pkg` itself) on any machine, and in many
> cases that suffices to get a basic development environment going.
>
> However, the git package currently brings in a host of unwanted dependencies,
> and I *believe* they can be done without.
>
> This is the complete dependency graph for the git package [0] (generated with
> the newly-minted pkg-graph [1]). It pulls in perl5 and python27, both sizeable
> packages and both not required to use git.
>
> While git can be compiled without some of the additional dependencies such as
> expat or pcre, this results in a "crippled" git lacking in some core features,
> and requires special build-time definitions like NO_EXPAT or NO_PCRE passed to
> the git Makefile. The other dependencies like curl, pcre, and gettext are also
> relatively small and typically part of even the most minimal system, but perl5
> and python27 are full-blown runtimes for interpreted languages that have
> fallen out of favor and have been successfully stripped from FreeBSD core (and
> even many Linux distributions).
>
> I'm sure these packages are not just there to have a good time and they serve
> some purpose and enable a subset of the git functionality, but my question
> here today is whether that functionality is worth its weight in dependencies,
> and whether the ports team is open to seeing the git package stripped of these
> dependencies.
>
> (Obviously the option of adding a "git-lite" package à la "vim-lite" also
> exists, but I think it's fair to say that would be an ugly and unnecessary
> compromise.)
>
> [0]: https://goo.gl/hozu1b
> [1]: https://github.com/neosmart/pkg-graph

Agreed. I'd personally much rather see small default packages and
-kitchensink slaves, than massive default packages and -lite slaves.
It's always struck me as odd that our git package comes with CVS and
Perforce support.

# Adam


-- 
Adam Weinberger
adamw at adamw.org
https://www.adamw.org


More information about the freebsd-ports mailing list