From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:403:4789::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id 6H6hAW4iOWUDCQAAauVa8A:P1 (envelope-from ) for ; Wed, 25 Oct 2023 16:13:02 +0200 Received: from aspmx1.migadu.com ([2001:41d0:403:4789::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id 6H6hAW4iOWUDCQAAauVa8A (envelope-from ) for ; Wed, 25 Oct 2023 16:13:02 +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 B331864709 for ; Wed, 25 Oct 2023 16:13:01 +0200 (CEST) Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=dismail.de header.s=20190914 header.b="d8PM/nOQ"; dmarc=pass (policy=reject) header.from=dismail.de; 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" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1698243181; 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: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=D4dfNNqxbpb/oLxubJmw9CmifND/9b+XVwNDPqW8wXM=; b=ghjA3SjMG8X/OcbiPSpnfocx3X+mSE3cYdQVGClhiBcLXTqewuJ6cHXM/fV8SQ63AWc2gg j1GRrwmmeWfWmrzj112Ewfqq+oDrBebSJ+1g76CvDwsdU8pWKPnz9S4Djm3yHqJ3GuKPfL jFs/dAXxRMcCsVVaSBU3xD5PdgkgD6MnBYLTzFlL+sIo6+HyjUYrujV6bttoezaIuViok+ brJbNgjdL7b8o6V6Lohqyxhfm4kzA1+CDdEEgaleFkHhZk/rxfvedk8QZ6AduAs4qfygfc 1U8fKsoggEvhv1N+2//hhQlkXZIzQrbIwJfDrHT+Foj7Xrsh+jQXMCSWuBl8TQ== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1698243181; a=rsa-sha256; cv=none; b=Wg7zD+QCuAEeRfZI+ZZ9NtA5J6dCQCp4DracpLZBilsZR3Ae5PUFZ2jgyanaXhWem+FeMD WSkTDRfz03MMXbighFStmzehfGCq0qPHVwZwZT3mheg2Ofsn65e3M8iTbjqB4RLNvceV3h NGIwOU2eg6sSbw74QQeVBmszil3nScH7tcvYLtxgxUKaJaBzvXamj0bvYxSH3RAinkj1ZO BsM8tFTG5bK+L3qlWQXbMeXxh7u1fdnyU9z6wTABMhiQFzGteuT7W+YeM4Wn7dewyybPO5 do/HkFnw1oyq5N1W71UUsUG9ctQlBl3J1SNNudTYviIEdBi7D/wUCzDeqfYjCg== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=dismail.de header.s=20190914 header.b="d8PM/nOQ"; dmarc=pass (policy=reject) header.from=dismail.de; 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" Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qveca-0006HR-Oc; Wed, 25 Oct 2023 10:12:32 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qvecY-0006EX-4H for guix-devel@gnu.org; Wed, 25 Oct 2023 10:12:30 -0400 Received: from mx1.dismail.de ([78.46.223.134]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qvecV-0007wY-Qk for guix-devel@gnu.org; Wed, 25 Oct 2023 10:12:29 -0400 Received: from mx1.dismail.de (localhost [127.0.0.1]) by mx1.dismail.de (OpenSMTPD) with ESMTP id 7930729c; Wed, 25 Oct 2023 16:12:24 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=dismail.de; h= mime-version:date:content-type:content-transfer-encoding:from :message-id:subject:to:cc:in-reply-to:references; s=20190914; bh=D4dfNNqxbpb/oLxubJmw9CmifND/9b+XVwNDPqW8wXM=; b=d8PM/nOQvpDs WkY4qunnHjESHH7naSinUwdb8+iFp/QT6OHwvZvz5STx9X3oYojW0/y8QV3rcBMB OTq+El9y8t8TW3mRX/NYnLxYs7zQxxPnnxSDf9uqH0+dlgKhPBYKtHlnx5XrgT6f GwgOFMQ0OfNWXo9qEqG49g5r2MMVoBSQM4hwQTLz58/8uOg+1EIXZh3OQgONXcrm iEeFg+SeE5f87uvfAfBm5tJyYBvuF+K4SC/iZ/JYoO3HHZ93sk3cMZe72isvcI4Y vY4N64yT/ifHymy4JUWpcYPzz5VFjk1wXGMzPYHjAWR7gxXCwjqFysk/R9iqbVsm qqXcFQ6uxQ== Received: from smtp2.dismail.de ( [10.240.26.12]) by mx1.dismail.de (OpenSMTPD) with ESMTP id ec5d9882; Wed, 25 Oct 2023 16:12:24 +0200 (CEST) Received: from smtp2.dismail.de (localhost [127.0.0.1]) by smtp2.dismail.de (OpenSMTPD) with ESMTP id 2397e719; Wed, 25 Oct 2023 16:12:24 +0200 (CEST) Received: by dismail.de (OpenSMTPD) with ESMTPSA id d45c5c20 (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO); Wed, 25 Oct 2023 16:12:24 +0200 (CEST) MIME-Version: 1.0 Date: Wed, 25 Oct 2023 14:12:23 +0000 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Mailer: RainLoop/1.17.0 From: "jgart" Message-ID: <5ba7bbae3c841d2475f53a06ebc73298@dismail.de> Subject: Re: guix shell init To: "Simon Tournier" , "Suhail" Cc: guix-devel@gnu.org In-Reply-To: <86h6mfc6ha.fsf@gmail.com> References: <86h6mfc6ha.fsf@gmail.com> Received-SPF: pass client-ip=78.46.223.134; envelope-from=jgart@dismail.de; helo=mx1.dismail.de X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 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, RCVD_IN_DNSWL_LOW=-0.7, 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.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-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Scanner: mx1.migadu.com X-Migadu-Spam-Score: -7.63 X-Migadu-Queue-Id: B331864709 X-Spam-Score: -7.63 X-TUID: uzp7WCuwgFkH > Could you explain what =E2=80=9CNix flake=E2=80=9D means using Guix ter= minology? Hi Simon Here's TLDR list of nix flake features and their guix equivalents (maybe)= : Guix has features that overlap with flake features. What might be new nix= features that the flakes API introduced might just be features that are = built in to Guix by design as first class. Not all flake features are imp= lemented or maybe make sense for Guix's API. This is potentially an open = research question. > Another feature of flakes is that they provide a consistent structure, = which makes it easier to understand and use different Nix projects. Typic= ally, they have a standard API where they provide Nix packages, NixOS mod= ules, or other standard outputs. Guix uses guix.scm and manifest.scm for this. > Each flake has a lock file, flake.lock, which pins exact versions of it= s dependencies. This ensures that builds are reproducible, even across di= fferent machines. Guix has a way to do this as well, currently. > Flake evaluations can be cached. This means that if you're working with= a particular set of flakes frequently, Nix won=E2=80=99t need to re-eval= uate them every time, speeding up operations. > A feature of the nix Flake edition is that Nix evaluations are cached. > Running nix-shell can be a bit slow and take 1-3 seconds. Ludo fixed the caching in guix shell and wrote a post about it. A reference for the caching thing that flakes introduced: https://nixos.wiki/wiki/Flakes#Super_fast_nix-shell There's also some comparison of Guix and Nix flakes here: https://blog.benoitj.ca/2023-10-23-guix-home-configuration-part1-packages= / https://blog.benoitj.ca/2023-10-20-how-guix-compare-to-nix-and-vice-versa= / Wrapping up this email the Guix way =E2=80=93 carefully packaged and with= a sprinkle of flakes for good measure. Have a crunchy day ahead! jgart