From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Vong Subject: Re: Needs enhancement: "is my guix current?" Date: Tue, 12 Dec 2017 23:55:07 +0800 Message-ID: <87o9n4q6uc.fsf@gmail.com> References: <87tvwwqkne.fsf@gmail.com> <877etsqf7q.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:51994) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eOmu6-0005Ba-7T for guix-devel@gnu.org; Tue, 12 Dec 2017 10:55:38 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eOmu3-0007Jn-42 for guix-devel@gnu.org; Tue, 12 Dec 2017 10:55:34 -0500 In-Reply-To: <877etsqf7q.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Tue, 12 Dec 2017 13:54:17 +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: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: guix-devel --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hello, I think I've confused things a bit. Well, 'guix refresh' updates package definitions to match the latest upstream version, but we are the upstream, so it is not useful here. I think even if 'guix pull' is being run, the guix installed should always be newer than the guix known to guix, right? It is due to how release is done and how 'guix pull' works. When releasing, a commit X is declared as a release. The release tarball then contains commit X. The next commit Y changes the snapshot of the guix known to guix from some old value to X. But the release tarball still contains the old value since it uses commit X! So if you installed from a release tarball and have not run 'guix pull' yet, the guix installed should be newer than the guix known to guix. Similarly, when running 'guix pull', say master is at commit X, and the snapshot of the guix known to guix inside that commit X is at commit Y. Then the guix installed is updated to commit X and the guix known to guix is updated to commit Y. Now we observe that commit X is always newer than commit Y. It is because when you update snapshot, you change the snapshot to the current commit and then commit. After that, the commit of the snapshot is already 1 commit behind that of the new current commit! So after you run 'guix pull', the guix installed should be newer than the guix known to guix. As a result, the guix installed should always be newer than the guix known to guix. Is my reasoning valid? ludo@gnu.org (Ludovic Court=C3=A8s) writes: > Hi, > > Alex Vong skribis: > >> I think if you never run 'guix refresh', then the guix installed should >> always be newer than the guix known to guix. > > I think you mean =E2=80=98guix pull=E2=80=99, in which case I agree. > > (=E2=80=98guix refresh=E2=80=99 is more of a developer tool: it simplifie= s updating > package definitions.) > > Ludo=E2=80=99. --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEdZDkzSn0Cycogr9IxYq4eRf1Ea4FAlov+9sACgkQxYq4eRf1 Ea4/zg//TBhUSK0I/E3fyfg2CpnxAOPEKwQDN9jNxhL8jCLjI4/PLXwMVlyfU5U7 AMcX8QZn00WmQwMzo4pJIAIOxT0m/Qxxie8y1BDFD7zyKVNpNIua1c0gPUoI6BMe S6zoLG70oynXEJE0PD/0U6pcYwIRLlNtAh7ibKNXBwxSERZWn2+K6lDBSRNubcF9 nEhYEdo1xYQFIDsie+/Jlz8pP1PoYIkAD5hQV8lrXYWgQmzaD8RkYQIf2Pf+xtLK u7unpBOfJV+L+CHbEmKZ6XKYwj22Mg3eb6cpHhNLY8EfXugXVJmLhVf+lYL2j9ut 6WWXqgxbVx/o6HRQzut5qeYDD/jA7Q3PSD/vbszmBr3a37lZy4F2XArqWS6CWJCC tAmJvZlzbwmDHO7v+GkkI7ajWWIJz1RoTUcgo1YBD4d/4FzFpUxDdCTDQKoMTubg FzdHiKD9dhFFLfQUf2rlOzJApR1G3US+AicwxGCw4lI4q7oZsuDd/0N3awGoV8k2 59TUr7LYl3SVYH+QCaFZNbHtFLlcj7pTqhmyiz+NW8ZATqg8CLfqyVMYljtVg5u+ i6ot3lJGOkLVTxvD7khOYg/JhMuPMDsdbm0kNhypPZn9ZfAFcfIaMAeurrO2V5Ks r/ZsZ8+YI3Lc8LJD0T5e3XiTH18yIqBLpke2Bf+NwN60wNXlJOE= =0343 -----END PGP SIGNATURE----- --=-=-=--