From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id kGg+AKrwgl/XOQAA0tVLHw (envelope-from ) for ; Sun, 11 Oct 2020 11:46:50 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id iKKnN6nwgl82aAAA1q6Kng (envelope-from ) for ; Sun, 11 Oct 2020 11:46:49 +0000 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 6D4E89403EE for ; Sun, 11 Oct 2020 11:46:47 +0000 (UTC) Received: from localhost ([::1]:36670 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kRZoM-00087A-Qb for larch@yhetil.org; Sun, 11 Oct 2020 07:46:46 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:39218) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kRZo8-00086x-Hr for guix-devel@gnu.org; Sun, 11 Oct 2020 07:46:32 -0400 Received: from mail-wm1-x341.google.com ([2a00:1450:4864:20::341]:55599) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kRZo6-0002wm-CD for guix-devel@gnu.org; Sun, 11 Oct 2020 07:46:32 -0400 Received: by mail-wm1-x341.google.com with SMTP id a72so3933839wme.5 for ; Sun, 11 Oct 2020 04:46:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:in-reply-to:references:date:message-id:mime-version :content-transfer-encoding; bh=bfD4i17fattOOoR7DFxh0jWIKtRv/rgsl17yFvgNS8M=; b=As5tbRedP/7kHHSo+6r5BEE4VbxAQZeoiyHwqPJRNHzDdADW3hj75wAQTK65lJOtOy XYJRPgL687VXu5qUP3YrHTJj2bJ3JLwd/IFHTUcrSh8TsoqW9Odqvf2SP670eeIBw+s1 T+ON86+zRQa9cCGcT4qubTz/5qJU8AOOBxLnkD58j0DJhUkEsCUPddJimYqjkOTPH36z 1ZYyzmRc4AXIjmA2UWCuyEVL2iHwXRSnxOE5JhsxbKDmot/PG4nhXDtXH4VyMK6eV+UI axMuz33D+a958LlP4b7ags0wW/jIzFMI+eoLdkmgNLLcVYIg/73X5B6rmgfs6dX+MDcE EEQQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:in-reply-to:references:date :message-id:mime-version:content-transfer-encoding; bh=bfD4i17fattOOoR7DFxh0jWIKtRv/rgsl17yFvgNS8M=; b=CpHKHDjT9fTa5L6IHZQsiFiENf6dTWMWuv9c1CEYsSMY+pk+BrgSeNLE2J0svwnOTW cmS+aPezvMmXQx+2G0J1cGL56tzuR4VGjp89fgVUDa+0m7RCIStfemib/i0+aYsX5Iad cnOi6S6IawVTnhrY2Br6TdM8L4zKSgXzQXQ/eISri+cTCTz+P8+F8JMUKt0SPaNkdZ3c 1n7OAYwqB/miu8aNkdEZYWfA5dPUd3gAAx18j3Y9pZ3wDiTIm290iKTVlLzi/oBZILfb 8t15QdRLkFO/hFRWCwNx8aJjT6q4dDsGMeuAooBSpurhmK0CsslLzzFHfAs2732lGUGF /ZvQ== X-Gm-Message-State: AOAM531vE4MmqKDK/Zq8szMyVDo6NQgHdPxHTHNYpLHZSkh0iI5SwRML uHvzcbry0+fO69xFKdV79OA6PTauACM= X-Google-Smtp-Source: ABdhPJw8S3xJiDP0v3jLYkT8IbxA4SDdtaRh25KJUWF3Q2hiIePV5s7OjEYBQq8zacz143P8T4OGGw== X-Received: by 2002:a7b:c01a:: with SMTP id c26mr6491602wmb.35.1602416788291; Sun, 11 Oct 2020 04:46:28 -0700 (PDT) Received: from lili ([2a01:e0a:59b:9120:65d2:2476:f637:db1e]) by smtp.gmail.com with ESMTPSA id g14sm20132532wrx.22.2020.10.11.04.46.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 11 Oct 2020 04:46:27 -0700 (PDT) From: zimoun To: Lulu , "guix-devel@gnu.org" Subject: Re: First impressions from delving into Guix In-Reply-To: <1674337602.21406.1602378860827@office.mailbox.org> References: <1674337602.21406.1602378860827@office.mailbox.org> Date: Sun, 11 Oct 2020 13:46:26 +0200 Message-ID: <86d01pugrx.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Received-SPF: pass client-ip=2a00:1450:4864:20::341; envelope-from=zimon.toutoune@gmail.com; helo=mail-wm1-x341.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.23 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-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20161025 header.b=As5tbRed; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Spam-Score: -0.21 X-TUID: KgPF1V46oTX1 Dear, Thank you for the feedback. On Sun, 11 Oct 2020 at 04:14, Lulu wrote: > I've been navigating Guix for the past couple days. Here's how it > went: Nice! > At first, I added a skeleton for `guix git log' by copying from > `guix git authenticate'. It might be useful to have a generic template fo= r Guix > scripts, with conventions and all, by the way, because there isn't much in > "(guix)Coding Style". What do you mean? What do you feel that is missing? > I figured it would make things easier to use Guix System in a VM, so I bo= oted > the QCOW2 image using the given libvirt config in "(guix)Running Guix in = a VM" > (although there were some typos and grammar errors, maybe I should send a= patch > for them). Neat! Please raise the hand on #guix or guix-devel if you need help. You could be interested by: > It worked without a hitch, but I got stumped when it came to > configuration. I scanned through the info page to no avail. It's not exac= tly > clear from the documentation that there are no configuration in the Unix = sense, > but rather single-use configuration scripts (which is admittedly really c= ool). > I spent some time trying to find where the `operating-system' variable is > defined, but people helpfully clarified in #guix that I need to make a sc= ript > declaratively defining the setup I have in mind, then let Guix adapt itse= lf to > that automatically. Equipped with that knowledge, I decided I'm better off > generating my own VM image once I have a better idea of what sort of Guix= setup > I want. It might be a good idea to clarify this in the info page. Do you have a wording suggestion? > Next, I went back to installing Guix normally on Arch Linux (I tried > it on AFAIK, it is always cumbersome to install Guix using other distro package managers. From my experience, it is easier to use the Binary Script that Guix provides. > Fedora previously and ran into SELinux issues). The AUR script is a > bit wonky If you have time, I would be interested by these issues; if you remember. > due to dependencies so I just used the official binary installer. When > I tried Cool! Then I am not following what you did if you used the Binary Script that Guix provides for foreign distro. > to bootstrap Guile, I ran into the problem that Guile 3.0 is unavailable. > Indeed, Arch developers have been neglecting to add Guile 3.0 to the offi= cial > repos. (Scheme is a bit neglected in this respect. The MIT/GNU Scheme pac= kage > has been broken for a while as well.) So I got a build script off AUR (al= though > I had to patch it because it tried to replace Guile 2.2, which breaks pro= grams > like `make' that are linked to libguile2.2) and built Guile. What do you mean? =E2=80=9Cguix show guile=E2=80=9D lists all the availabl= e versions. Which Guile have you patched? The Guile that Arch provides, right? > Now that I had a working Guix + Guile 3 setup, I ran into the seemingly c= ommon > `setlocale' issue which was quickly solved by installing both `glibc-loca= les` > /and/ `glibc-utf8-locales` (and updating them with each glibc update), th= en > setting `$GUILE_LOCPATH' accordingly for both root and my user. I did a > `guix pull' and everything was dandy. The package =E2=80=99glibc-utf8-locales=E2=80=99 is a subset of =E2=80=99gl= ibc-locales=E2=80=99. Basically, =E2=80=99glibc-utf8-locales=E2=80=99 provides these locales, onl= y: --8<---------------cut here---------------start------------->8--- ;; These are the locales commonly used for ;; tests---e.g., in Guile's i18n tests. '("de_DE" "el_GR" "en_US" "fr_FR" "tr_TR")) --8<---------------cut here---------------end--------------->8--- So I am not convinced that the =E2=80=9Cand=E2=80=9D is really required. ;-= ) But =E2=80=9Cmore is less=E2=80=9D. :-) > With no more yaks to shave, I ran finished bootstrapping, ran the post in= stall > environment and my subcommand works! Now I can go back to add the functio= nal > parts of the script. I'll keep you updated! Cool! I suggest to read [1, 2, 3, 4, 5, 6, 7] and try to package something. Easy and good candidates for first packages are CRAN or BioConductor packages: guix import cran guix import cran -a bioconductor You can pick unpackaged one from the list [8]. Do not hesitate to ask me if you do not find an obvious one =E2=80=93=E2=80=93 it should a good oc= casion to show you =E2=80=9Cguix repl=E2=80=9D. :-) 1: https://guix.gnu.org/manual/devel/en/guix.html#The-Perfect-Setup 2: https://guix.gnu.org/manual/devel/en/guix.html#Defining-Packages 3: https://guix.gnu.org/cookbook/en/html_node/Packaging-Tutorial.html#Packa= ging-Tutorial 4: https://guix.gnu.org/manual/devel/en/guix.html#Packaging-Guidelines 5: https://guix.gnu.org/manual/devel/en/guix.html#Invoking-guix-import 6: https://guix.gnu.org/manual/devel/en/guix.html#Invoking-guix-refresh 7: https://guix.gnu.org/manual/devel/en/guix.html#Building-from-Git 8: https://bioconductor.org/packages/release/bioc/ Again, thank you for your feedback. Thanks, simon