From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id 4CvNEhlhMGMArQAAbAwnHQ (envelope-from ) for ; Sun, 25 Sep 2022 16:09:29 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id +HraERlhMGOHogAAG6o9tA (envelope-from ) for ; Sun, 25 Sep 2022 16:09:29 +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 DB85544006 for ; Sun, 25 Sep 2022 16:09:28 +0200 (CEST) Received: from localhost ([::1]:45972 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ocSJz-0007TD-RN for larch@yhetil.org; Sun, 25 Sep 2022 10:09:27 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:40376) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ocSHt-0005Eg-Bq for guix-devel@gnu.org; Sun, 25 Sep 2022 10:07:18 -0400 Received: from dd30410.kasserver.com ([85.13.145.193]:36230) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ocSHn-000420-An for guix-devel@gnu.org; Sun, 25 Sep 2022 10:07:13 -0400 Received: from localhost (84-115-234-55.cable.dynamic.surfer.at [84.115.234.55]) by dd30410.kasserver.com (Postfix) with ESMTPSA id 9A780112016F for ; Sun, 25 Sep 2022 16:06:59 +0200 (CEST) Date: Sun, 25 Sep 2022 16:06:06 +0200 From: Danny Milosavljevic To: Guix-devel Subject: git guix checkout automation for contributors Message-ID: <20220925160606.46d2e939@scratchpost.org> X-Mailer: Claws Mail 4.1.0 (GTK 3.24.30; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/g7gUybeG_PgIe9Shim/g0gx"; protocol="application/pgp-signature"; micalg=pgp-sha512 Received-SPF: none client-ip=85.13.145.193; envelope-from=dannym@scratchpost.org; helo=dd30410.kasserver.com X-Spam_score_int: -25 X-Spam_score: -2.6 X-Spam_bar: -- X-Spam_report: (-2.6 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_NONE=0.001 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=1664114968; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:list-id:list-help:list-unsubscribe: list-subscribe:list-post; bh=VOnE4lWwsRKLFBMyWEyai84QUSaVfLNdDshk+r3d5Fg=; b=SiLsU72Z09yCyobtI9yofx7cm2J0A0oedQ+L5KPzZb8wiaHIDnY+Q/bj7E+tF9pM5NDU+g eqLqeAk/nu1weY4hb7lKhEct/9s9LY9ofDpp7SrglrycJga5QUn6jsZkyf1BWjiKUjRCby Kpp0SiLzQhCOLZmi8gKHC+VYyN5QaffDCEwhVId/tz2sE4z/3hCTsyMghHcHlF3Qoqa2Kx rAmyO3/3oC/dce7/TWsmPXoE3IFxt1FPOp6NQGMsPKKr3peYKN1zidOLoMjP4GcwrNR7SB pc6lkstpAfLP9yUeY4QNIPP7UPzs2NpBGK7RLyLkyC5w8hrO4OKhstTdR/7amw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1664114968; a=rsa-sha256; cv=none; b=ARdUOMzG6wuHbeHUPEWrypbLIpyNxP8jXZPbuqaShz6I6QPhVi5JuV5H0/+RUBCqT9TIBQ wufTIYjiqYfAPObj4u5kfCe2JZCf7X6pLW+syYQrTO5cqNf5YN26tNzMvlqqEyvoRw6jUL YDH+lx2tFo5CQA763n+XFjKTFzF6tubrP0unkjiiAA7tUq/t75pOmD5K5RVQg12BFt8Hmr bjWqs0/rH0OdKL8kr9Zc8jkwikEs7FAUGLlOs991Lzb1XK5Mo5uHXFjgizxiBJAHGE2oHQ aWentz1+LdfYuqM5332n1zalBBMTklKcgH4p3GefktMguLkzwS3+NKcK17yNSA== 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: -3.35 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: DB85544006 X-Spam-Score: -3.35 X-Migadu-Scanner: scn0.migadu.com X-TUID: lS/8AP0cbCbX --Sig_/g7gUybeG_PgIe9Shim/g0gx Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Hi, So there were some comments on https://news.ycombinator.com/item?id=3D32960= 308 about getting started with contributing to Guix. It turns out that the barrier of entry for editing existing packages is kinda high (I tried it myself--putting myself into the mindset of a beginner). For example: (1) Install the guix system (2) Log in as regular user (3) guix edit nano (4) It opens a file from /gnu/store that you cannot edit. Uhh. That's... not ideal. Maybe instead error out with a hint on what you n= eed to do in order to provide a local checkout? Or do we want viewing to work? Ok, so let's say we are a little more knowledgeable: (1) Install the guix system (2) Log in as regular user (3a) if [ ! -d src ] then mkdir src cd src else cd src fi \ && if [ ! -d guix ] then git clone --depth=3D1 https://git.savannah.gnu.org/git/guix.git guix else (cd guix && git pull --rebase) fi \ && cd guix \ && guix shell -C -D guix -- ./bootstrap \ && guix shell -C -D guix -- ./configure --localstatedir=3D/var --disable-= daemon \ && guix shell -C -D guix -- make -j5 \ <--- takes forever to build && ./pre-inst-env guix edit nano \ && git add gnu/packages/*.scm Ok, that worked. But there are a lot of ways that can be done wrong. Weird way it can be done wrong: (1) install the guix system (2) log in as regular user (3b) git clone --depth=3D1 https://git.savannah.gnu.org/git/guix.git guix \ && cd guix \ && guix shell -C -D guix -- ./bootstrap \ && guix shell -C -D guix -- ./configure --localstatedir=3D/var --disable-= daemon \ && ./pre-inst-env guix edit nano It will open the file in /gnu/store . WTF? I'm pretty sure that that's a bu= g. ./pre-inst-env does exist--but it does some weird things if you don't compile beforehand. Also, can we put a variant of (3a) into a command "guix prepare-edit" or something? It has always bothered me how manual and magical-commandy it is otherwise (what you actually need to do also changed over the years--not good). --Sig_/g7gUybeG_PgIe9Shim/g0gx Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQEzBAEBCgAdFiEEds7GsXJ0tGXALbPZ5xo1VCwwuqUFAmMwYE4ACgkQ5xo1VCww uqXgegf/b1WVwgkaMdXdv7MPBOlk7+7bPVu+ARBmpstAd3LvLyYa1FnIsVHO/Usc I40qPt/kf2U8gJJSmTUTYkoozyJCKUZhigeDvI8OEStJp8NzAqOHRMyxR8p0IgND NgeBhLEsf9ldcZ4tdYLcs/EyLJq3ENmijQFReYy0qESDM1qa4Z+u5F7Ef/ChWm3j uKpIxHEU3uaBLVF5F8qcO+3oL9f8EG/7QmwRlHB28CWLlTiaQp46a6jKmNn7Zq82 Ba1k25h5e29AbCLCwKX6LfWdSkkCmaSap5ey+iZmxDieaJAgkmUp9NwLkK3SytOk OClVnMAEDqBCqErb8tILyRXBvvQyhw== =gb8T -----END PGP SIGNATURE----- --Sig_/g7gUybeG_PgIe9Shim/g0gx--