[pkg-go] Go package and executables in PATH

Vincent Bernat bernat at debian.org
Tue Jun 6 18:28:25 UTC 2017


 ❦  6 juin 2017 13:50 -0400, Tong Sun <pkgoyq.xpt at neverbox.com> :

>> > Would it be a better option to have golang-1.x-go packages to link Go
>> > executables into PATH, instead of golang-go?
>>
>> In the past, users were able to choose their Go version with the
>> "update-alternatives" mechanism. However, this doesn't work well for
>> compilers as packages would be built with a different version depending
>> on the environment. gcc is in the same situation.
>>
>
>
> Oh, duh. So using `update-alternatives` doesn't work well to switch Go
> versions. So that seems to be another reason to put executables back into
> PATH in golang-1.x-go package, because I presume that more than 99% of
> people would only install one version of go, and expect it would work,
> without any more extra manual intervention, like all other tools that they
> are installing.

Two packages cannot provide /usr/bin/go. The update-alternatives
mechanism is a solution to that (no package provide /usr/bin/go, but
they register to update-alternatives that will setup the link). However,
it doesn't work well for compilers as it would result in
environment-dependent build.

The situation is exactly the same with gcc. You install gcc, you get
/usr/bin/gcc which is a symlink to gcc-6. You install gcc-6, you get
/usr/bin/gcc-6.

>> golang-go depends on golang-1.x-go and golang-src which in turn depends
>> on golang-1.x-src. golang-1.x-go also depends on golang-1.x-src. So, you
>> end with the same set of packages.
>>
>
> If that was the intention, then maybe golang-1.7 is not doing it right?
> I.e., I totally agree that installing golang-go should not pull in more
> dependents than golang-1.x-go, however, golang-1.7 depends on
> golang-1.7-doc (https://packages.debian.org/unstable/golang-1.7) -- I bet
> most people would look up documents from the internet, despite that they
> have golang doc installed locally.

Install golang-1.7-go, not golang-1.7. golang-1.7 is specifically here
to also install the documentation.
-- 
Test programs at their boundary values.
            - The Elements of Programming Style (Kernighan & Plauger)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-go-maintainers/attachments/20170606/af4e0dd6/attachment.sig>


More information about the Pkg-go-maintainers mailing list