From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id 6Ev5E1sMm2LvtgAAbAwnHQ (envelope-from ) for ; Sat, 04 Jun 2022 09:40:11 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id 0DLpE1sMm2ItPgEAauVa8A (envelope-from ) for ; Sat, 04 Jun 2022 09:40:11 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 12E082924C for ; Sat, 4 Jun 2022 09:40:09 +0200 (CEST) Received: from localhost ([::1]:59660 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nxOOF-0005Dp-PS for larch@yhetil.org; Sat, 04 Jun 2022 03:40:07 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:59604) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nxONV-0005Df-9M for guix-devel@gnu.org; Sat, 04 Jun 2022 03:39:21 -0400 Received: from ns13.heimat.it ([46.4.214.66]:52710) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nxONT-0004Ck-DF for guix-devel@gnu.org; Sat, 04 Jun 2022 03:39:20 -0400 Received: from localhost (ip6-localhost [127.0.0.1]) by ns13.heimat.it (Postfix) with ESMTP id 6337630087D; Sat, 4 Jun 2022 07:39:15 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at ns13.heimat.it Received: from ns13.heimat.it ([127.0.0.1]) by localhost (ns13.heimat.it [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1uZ68Z28kG5w; Sat, 4 Jun 2022 07:39:14 +0000 (UTC) Received: from bourrache.mug.xelera.it (unknown [93.56.171.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by ns13.heimat.it (Postfix) with ESMTPSA id DF6EE30085C; Sat, 4 Jun 2022 07:39:13 +0000 (UTC) Received: from roquette.mug.biscuolo.net (roquette [10.38.2.14]) by bourrache.mug.xelera.it (Postfix) with SMTP id 3D5F31B4B7DD; Sat, 4 Jun 2022 09:39:13 +0200 (CEST) Received: (nullmailer pid 16095 invoked by uid 1000); Sat, 04 Jun 2022 07:39:12 -0000 From: Giovanni Biscuolo To: zimoun Cc: Guix Devel Subject: Re: wishlist: =?utf-8?B?4oCccmVwYWNr4oCd?= generations history of profile In-Reply-To: <87k0a3aqh2.fsf@gmail.com> Organization: Xelera.eu References: <86wnegb9it.fsf@gmail.com> <87tu9g2r3k.fsf@gnu.org> <86r14kdw4m.fsf@gmail.com> <875yln2flm.fsf@gnu.org> <87k0a3aqh2.fsf@gmail.com> Date: Sat, 04 Jun 2022 09:39:12 +0200 Message-ID: <87fskknahr.fsf@xelera.eu> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" Received-SPF: pass client-ip=46.4.214.66; envelope-from=g@xelera.eu; helo=ns13.heimat.it X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.29 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+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1654328410; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post; bh=zDz9Q3PKBOOoERIW9OwRXGE2rVuj9zWZ+VbgYZQLQgo=; b=tu/PPUiCrqNvy2oNj5Ncrj/sXvKmYgxzZekyJj0SW5NjM+3lDvyld4mg7Y5DIX1bmFcYp0 JeuZyAulIM/LPcXaBn/+SsiVgOYVSh4fyrE7BMLwrDF5fuVzf3bsVti3/CLqEc+fYQnWxG E/PFDWlFvWykvlp+JOoWNF/dvav7JwYUbXAzsMNSAFhDw5w9bGYk9nDiySOPFojKFAzRji 2yU/kry4zHUpOXpCOT9Mhkuubb2CndRZ3E344iWWK1B8BX6T9rL7g9z+BY4rQzisDM5c6D QY/Sxofmj9DkHYrvftVy9xCa58/1rR2wDro45FEcdfWbRPflkaRh1mMlExSZfA== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1654328410; a=rsa-sha256; cv=none; b=u9cLDO+NSv6BZ+8iSFl0nCMqHBoy8mfrRWomuZqBBDgp2VjIvukpNELZUAYM9dDwZREv50 wZiA9X8JQrxwAas59zvQHBSAM5kW3pZGwyyTv4PT4+i0gfMKWl7K1HsHeSzwpXynBY27In EAmg2kt5qcNGwBv8PNb1SNKZxgMVm24JXgrhocI456b77FAYg4zZOPH0vY19uwJpNhAkbj F/Uf02Yhlw3a0MSXKskAuNvL5FspDtkGllIBYUPEiIrm+VC3bJpVoXziO2kZvqzVkbyLyi bnE+RfqUUc+pezfI1X7aEZ7aAOwDQEhVSrpqHcka0PvsfCsZ9wUeIgbq2EGwFQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -5.92 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: 12E082924C X-Spam-Score: -5.92 X-Migadu-Scanner: scn0.migadu.com X-TUID: iR+PpNMIncGZ --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi Simon, I know you know very well all I'm saying here, I'm just commenting for casual readers of this thread zimoun writes: [...] > The generation #1 can be lost. For sure it depends on the cluster > policy but, as a sysadmin, I do not tell all the users that a GC will be > run =E2=80=93 and even if I am doing, I am sure that some user will miss = to save > the channels.scm and manifest.scm for each generation. I don't know how easy or not is the implementation of this feature and for sure it would be a plus, but IMHO all users must understand that for their projects (profiles) to be reproducible and versioned the /only/ way is to keep channels.scm and manifests.scm in a VCS (i.e. git) > That=E2=80=99s why, something like =E2=80=9Crepack=E2=80=9D is missing. = As a user, I should be > able to do > > guix package --switch-generation=3D1 > > whatever the sysadmin collects about the old generations and whatever I > saved using some external tools. ...except you wish to reproduce the project on another machine, or /gnu/store is lost or corrupted for some reason Also consider that sometimes pepole in teams choose to work on the same project in different (not shared) profiles (i.e. for reproducibility testing), this way generation history is not the same and the only way to "sync" would be to exchange channels.scm and manifest.scm Also, from a collaborative workflow point of view, keeping the two "reproduce me" files (channels and manifest) is more efficient since people can describe what (and why) they chenged things between "saved" project generations; not committed channels.scm and manifests.scm should be considered "local testing" IMVHO there is no easy workaround to keeping channels.scm and manifests.scm in a VCS, better sooner than later users should do it [...] Happy hacking! Gio' =2D-=20 Giovanni Biscuolo Xelera IT Infrastructures --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQJABAEBCgAqFiEERcxjuFJYydVfNLI5030Op87MORIFAmKbDCAMHGdAeGVsZXJh LmV1AAoJENN9DqfOzDkSCxIQAKDw7pyIToMzkjLgKR3zcB5y5aZM7m7XrW+Tf0eE fht2IhFVLzHh8ulnLzp2PSYvV+UQcsRlDliDntljgp98tVojgEZH/NHxDA9QZFfm uCgz6+4O0r/xK0DKNdC8gLI3LYAyxQnQdGCmHkxzW9RfgF+pj5XDs0yBCv7risD/ WWaUGGS72bqzY6qfPq2CQB9KWg0bYtp5yISgL4mpqBfW2OzioRYnCryu0fF3l9AU zwINc9MfxVem32z35pC80u9I5/pPSvaPGprL6zy0HejS4M6baNwla6zovGFvn/my Uo9aB9hgGboWqx3HHm8wRZFRMz1IgdqMT6njtGlfcLgL67baYTDlGDKDMs3HjvBu VHX5PGAFJIt0z7d0es1RYUFw8D1scPLLXv52LwDqIscecJRQj+FHHsCL8dUlEFcB L40s/pUQ/c77q7nvibKZEeZ+wisqMHDF7i1ZhP5qSFqmUB+2vqij5G+z0VFW2IE4 0c6xHn3sReeIvByzm4jGPhPgCzK/6G8qGNS7yS8krRxzSDRmOE2g8uCCxhnw9vFk 9GdSKK5xiJ12IjZu0SVvu1l1tb+1soJ/Soau26vTJ6I/4aaDnQw4mpjsoZgOMe3G HFhMAv2jGeJixBqcl7kA5tjWDCXDbkMzNN0Y5xU/c0IxFD/BIvI2DUaqv4M/78XV e5sj =rmCH -----END PGP SIGNATURE----- --=-=-=--