From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark H Weaver Subject: Re: Our package names should not include "github-com" Date: Fri, 13 Oct 2017 21:05:31 -0400 Message-ID: <87r2u6h738.fsf@netris.org> References: <20171013014334.17601.30718@vcs0.savannah.gnu.org> <20171013014344.D813E20338@vcs0.savannah.gnu.org> <87lgkfhszj.fsf_-_@netris.org> <20171013202425.GA22896@jasmine.lan> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:46113) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1e3Atr-0005l5-G3 for guix-devel@gnu.org; Fri, 13 Oct 2017 21:06:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1e3Atm-0003ji-Fx for guix-devel@gnu.org; Fri, 13 Oct 2017 21:05:59 -0400 Received: from world.peace.net ([50.252.239.5]:47431) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1e3Atm-0003jT-Bn for guix-devel@gnu.org; Fri, 13 Oct 2017 21:05:54 -0400 In-Reply-To: <20171013202425.GA22896@jasmine.lan> (Leo Famulari's message of "Fri, 13 Oct 2017 16:24:25 -0400") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Leo Famulari Cc: guix-devel@gnu.org Hi Leo, Leo Famulari writes: > On Fri, Oct 13, 2017 at 01:12:32PM -0400, Mark H Weaver wrote: >> leo@famulari.name (Leo Famulari) writes: >> > gnu: Add go-github-com-templexxx-reedsolomon. >> >> On this, and a great many other packages, you've included "github-com-" >> in the package names. I think this is a very bad idea. For one thing, >> we should not advertise, promote, or enhance the lock-in of GitHub, and >> this policy does all three. > > Please don't suggest that I made a policy to promote or enhance GitHub > "lock-in". Please keep reading for more information on why the packages > are named this way. > >> Sometimes a maintainer decides to change their hosting arrangements. >> When they do so, we should simply be able to update some URLs in one >> package definition. We should not have to do a global find/replace on >> the package name and alert our users to update their profiles and OS >> definitions. That contributes to lock-in. > > These packages are libraries written in the Go programming language. Go > libraries are referred to by their "import path" [0], which is a string > intended to uniquely identify a particular software implementation. > > As I wrote in the commentary on the go-build-system (part of the commit > series being discussed), import paths are based on the URL of the > software. A package hosted at https://github.com/leo/foo has an import > path of 'github.com/leo/foo'. In Go, this is the library's name. > > These import paths are the sole mechanism by which Go software is > uniquely referred to by humans and the Go compiler. It is even baked > in to how dependencies are organized on disk. Thanks for the explanation. I find this very disturbing, but I acknowledge that this lock-in is caused by Go itself, and that there's probably not much that we can do about it. Oh well. I withdraw my objection to these package names. Regards, Mark > [0] https://golang.org/doc/code.html#ImportPaths