From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: guix is the guildhall that we always wanted! Date: Fri, 17 Mar 2017 12:30:57 +0100 Message-ID: <87a88kf8cu.fsf@gnu.org> References: <87zigl3wph.fsf@pobox.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:50503) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1coq63-0001hf-EB for guix-devel@gnu.org; Fri, 17 Mar 2017 07:31:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1coq60-0002O9-7c for guix-devel@gnu.org; Fri, 17 Mar 2017 07:31:03 -0400 In-Reply-To: <87zigl3wph.fsf@pobox.com> (Andy Wingo's message of "Thu, 16 Mar 2017 19:25:46 +0100") 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: Andy Wingo Cc: guix-devel@gnu.org, guile-user@gnu.org Hello! Andy Wingo skribis: > Crucially, this "guix pack" is really an SDK for Guile and Fibers. > Fibers is a library. You can now make an SDK for anything!!!!!!!!!!! I > mean, I know, that's a lot of exclamation marks, but check it: you can > develop locally, say using > > /opt/guile-fibers-1.0.0/bin/guile -L /path/to/my/code > > and it just works. If you package up your code, you can make a Guix > package out of it and make a "guix pack" out of that closure and > distribute it to your users: REGARDLESS OF WHAT OPERATING SYSTEM THEY > RUN, AND WITH FULL SOURCE REPRODUCIBILITY. It's huge. IT=E2=80=99S AWESOME!!!! ;-) > But while getting your package into guix is easier than you think, it's > not automatic. I think there's room for a middle ground that's a bit > more decentralized than Guix, but more centralized than people using > GUIX_PACKAGE_PATH to add random directories of Guix package files. > > So! My proposal for this new "guildhall" would be: > > 1. a web service > > 2. on which users registers projects > > 3. a project is a name + a git repository with a /package.scm file > > 4. the package.scm contains Guix package definitions for that project > > 5. the web service administers a git repository collecting those > packages > - without any hydra.gnu.org overhead > - without any manual checks > - in a form that you can just check out once and add to GUIX_PACKA= GE_PATH > > 6. adding a new tag to a project's git repo of the form vX makes a > release X and updates the guildhall package > - it could be the web service has to poll git repos > - or maybe you have to invoke some command to update guildhall > > 7. probably we need to steal many ideas from npm.org So are you suggesting that the new guildhall would provide Guix-generated packs for those who don=E2=80=99t use Guix, and otherwise re= gular Guix packages? > Open questions would be, what about other targets like macOS or Windows > or whatever? There I don't know. I suspect that if Guix becomes > popular enough, someone will make a thing whereby you can cross-compile > to macOS from GNU/Linux at least. I know you can do that already with > MinGW. As for native "guildhall" operation on these targets, I don't > know. But I think that is a cost that people will pay for in time. We could surely create cross-compiled packs for MinGW, though I suspect a number of packages do not support cross-compilation. Thanks for starting this thread! Ludo=E2=80=99.