From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Chris Marusich Newsgroups: gmane.comp.gnu.guix.devel,gmane.lisp.guile.devel Subject: Re: "guix potluck", a moveable feast Date: Sat, 01 Apr 2017 19:20:25 -0700 Message-ID: <87shlrim8m.fsf@gmail.com> References: <87d1cxh5f0.fsf@igalia.com> <87o9wfenkk.fsf@gnu.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" X-Trace: blaine.gmane.org 1491099654 10739 195.159.176.226 (2 Apr 2017 02:20:54 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sun, 2 Apr 2017 02:20:54 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux) Cc: guix-devel@gnu.org, guile-devel@gnu.org To: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Original-X-From: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sun Apr 02 04:20:47 2017 Return-path: Envelope-to: gcggd-guix-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cuV8D-0001as-7R for gcggd-guix-devel@m.gmane.org; Sun, 02 Apr 2017 04:20:41 +0200 Original-Received: from localhost ([::1]:53411 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cuV8J-0007j0-0Z for gcggd-guix-devel@m.gmane.org; Sat, 01 Apr 2017 22:20:47 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43795) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cuV86-0007if-Gr for guix-devel@gnu.org; Sat, 01 Apr 2017 22:20:35 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cuV85-0003FO-OA for guix-devel@gnu.org; Sat, 01 Apr 2017 22:20:34 -0400 Original-Received: from mail-pg0-x22e.google.com ([2607:f8b0:400e:c05::22e]:35722) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1cuV81-0003Cm-Av; Sat, 01 Apr 2017 22:20:29 -0400 Original-Received: by mail-pg0-x22e.google.com with SMTP id 81so94596365pgh.2; Sat, 01 Apr 2017 19:20:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:in-reply-to:references:user-agent:date :message-id:mime-version; bh=ZqFwt33ybm6duIV2RAxyrK8icNetlz0RxhzzK2UYMlE=; b=VN3eWV+8vTPJ76bpESCyPvGk+b5zkxp7QbRjCAupTMVmcuSL5Kwmwu+XI3BhzpDLCe 9i7BL/xlxQ6mYb7HRi3S5dySEP3yUpJmIsLIklX++nzDNhq5ff7hiYZ+bjlpA36QpfyY CxgqgI8J9KPrd6uHVGRltYcyzGYP+qcTiUf0BMtnDHI0Dr48yM9SSVqmgYH0p7nR/77r 9CO9Vh6a0QIJetqpAjYlVJQHcTui+xI5Ckjo1eUTkY/ef6r0eVmMdnCegGUDVW9pZrfb pN6cOHo4YV+UMNmidMQ2hDJcMEHq0X6e72ASj5zbL9Mg2s6R5NdokhD1HXjJMHlsFkA5 RYaA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:in-reply-to:references :user-agent:date:message-id:mime-version; bh=ZqFwt33ybm6duIV2RAxyrK8icNetlz0RxhzzK2UYMlE=; b=HHIQNN+ZJXDpjLX5vloFEFEsCxLmrKrBN7iTGBJrngjO/nPUExkSDpzAwHbdev89JR YBSem4CbXDZFXnyizkXvZ8jopnFws3mLEJOqEL+4qobYY0nZq+tCiNdTtIBRP21Ol0KO wN8iV+W4gav4MGMFrgMltgZ4MDRvM/VkqB48Nkt10OldJ8isCwYZom8k8YEbPUvS2/6y 8RQJQFdwqz0iCg9WLz+G9aWPqkmJt52Nk3EOWm90kKYSTYrCesNasrQkWX7HxQGkRUwJ ItvWSJWCUlcVM9AVGubBfJwquYq9eoA98JEacEvCOJz1uFCDq+FeIkEjbjxADgMni7eB Deiw== X-Gm-Message-State: AFeK/H0RSGqJvCdCk37bgTm02ouV2PeIgqeC+qkXyRHHW0MC2uFP/TA1nAzSaEU5XahnGA== X-Received: by 10.99.3.7 with SMTP id 7mr10429236pgd.61.1491099628052; Sat, 01 Apr 2017 19:20:28 -0700 (PDT) Original-Received: from garuda ([172.58.43.229]) by smtp.gmail.com with ESMTPSA id 78sm11370270pfm.134.2017.04.01.19.20.26 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sat, 01 Apr 2017 19:20:27 -0700 (PDT) In-Reply-To: <87o9wfenkk.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Sun, 02 Apr 2017 01:05:15 +0200") X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2607:f8b0:400e:c05::22e X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list 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 Original-Sender: "Guix-devel" Xref: news.gmane.org gmane.comp.gnu.guix.devel:36738 gmane.lisp.guile.devel:19086 Archived-At: --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable ludo@gnu.org (Ludovic Court=C3=A8s) writes: > Beside, related to Chris=E2=80=99 comment, I=E2=80=99m a bit concerned ab= out versioning > in such a widely distributed repo. The package graph in Guix has zero > degrees of liberty: every package is connected to other packages; every > Guix user sees the exact same graph. > > Here, we=E2=80=99d have to be more flexible and allow potluck.scm files t= o just > say =E2=80=9Cimport guile=E2=80=9D or =E2=80=9Cimport guile@2.0=E2=80=9D;= =E2=80=9Cimport guile=E2=80=9D might provide > 2.0 on a machine running an older Guix, and it might give 2.2.9 on an > up-to-date machine. > > IOW, we=E2=80=99re no longer describing one specific graph, but instead > describing a family of graphs with some constraints. The benefits are > decentralization, but the main drawback is non-reproducibility: the > result would depend on the user machine=E2=80=99s initial state. > > To work around that, I think the server should resolve package > specifications when the potluck.scm file is submitted, and insert each > package in the Guix package graph of the moment. Does that make sense? > Maybe that=E2=80=99s what you were describing when you talk about rewriti= ng > potluck.scm files so? When you say "insert each package in the Guix package graph," do you mean, "add the package definition to the Guix source tree"? What if "the potluck" maintained a pointer to the version (i.e., the commit) of the Guix package definitions that it uses as its "base"? From=20time to time, the potluck could update its pointer to point to a more recent version of Guix's package definitions. In this way, every version of the potluck would precisely specify the dependencies of all the packages in that version of the potluck, including any transitive dependencies that ultimately come from the official Guix package definitions (as defined in the "base" version); there would be no surprising version drift. I wonder if that would work? What if someone wants to add a package definition to the Guix source tree which depends on a package that is defined in the potluck? =2D-=20 Chris --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEy/WXVcvn5+/vGD+x3UCaFdgiRp0FAljgX+kACgkQ3UCaFdgi Rp0Ugg//ZjmzPRKy6PJd/FjexJucu/EfW8n/rVOjo73D5MWKmY0ICP3KNQir8GqC Cb4VAQbKzZRvcuOzVLdDLz159nLNf0NNMx0MnGZWUmtWXJnA+j9f2K6FDwmSjTab nhJDqLHeOlBmDQk79439PaOPS/tU/avOGpxPX9+ncVGnK2ESPa1fcr02eqY1e3US PW35/fjcpRBS527QPrKjwU/7K7MqceIUid1Igl+j4+tL+1z5v3mcjqO8LpttT2c9 Xv82XLBa+hDl+e4C8e2pHw9JdMAlrimUptnDTsD+uJBOc+HyAO9VSutFF01KUnBr L30nG2j5WRc/EkEDfQYInGECM+PnewPkhGwmq10aPyWLT4XdGY21c00ri8jn9lUb t+6yyn5R65ATF/TlYOSsKvvMfGAfnuGN3N/SBGWkyTeCYDAuptt3BANLf0q5kPdM n1OaNSRgGpIOMO51wbcu1+MNygMlgdVLecIGwEAriaEmf8EZB7Z1OqRrI3gQ6e0A jcO9ZmytqdweMVIUpM5chePSPLJDkmFD5/IkL2Ya2wWTPszipumM+7IvYd+o7be9 RuDkZ0vSZr5us8eXqdJr0HATAr/en+OLWv5xCns8OuEdS8eiKuh5L5QXHo7n6AEx zJIk7K9iWX2ppulUmbbUkj9tvuWasPNCATjWhnvQ+ROmpCRUjaU= =eOks -----END PGP SIGNATURE----- --=-=-=--