From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1.migadu.com ([2001:41d0:303:e224::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms13.migadu.com with LMTPS id sHcyI4y/aGaYBQAA62LTzQ:P1 (envelope-from ) for ; Tue, 11 Jun 2024 21:20:12 +0000 Received: from aspmx1.migadu.com ([2001:41d0:303:e224::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1.migadu.com with LMTPS id sHcyI4y/aGaYBQAA62LTzQ (envelope-from ) for ; Tue, 11 Jun 2024 23:20:12 +0200 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=none ("invalid DKIM record") header.d=freakingpenguin.com header.s=x header.b=Gj5mgx5n; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org" ARC-Seal: i=1; s=key1; d=yhetil.org; t=1718140811; a=rsa-sha256; cv=none; b=ifvgP3WL04srXKr8RVCp67HSgtoFZnwEs4Qj94pzUPL4yW0Ys7kRMJSUy96MxmLd9p0lMs is+dCbeXp+LciIrNOrSOIBXF51EQOIQdUC2zr1PpgGdEtaUZhNHrABosYa8o2hI8Ilj/km tmhIFKTp5nE7OZAbMhLN1zuIJzAKpek+Y7LUPlg8/3/WBLG09hJaR0iBuCwPMEpRfIs9KV WjA1Lm9ssZhu1cNL2cQeVbPowTCwPOwUzCrZV8TJw+DQGlngzz2r62sN1S9WAz1Yk2Oj7L 8rORjn/xAtQYSG7w6IOvqeRGbyIdK0tq5GhcvVMO3axZ/d9/ZBTSc+QzKcj+1g== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none ("invalid DKIM record") header.d=freakingpenguin.com header.s=x header.b=Gj5mgx5n; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1718140811; 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:resent-cc:resent-from:resent-sender: resent-message-id:list-id:list-help:list-unsubscribe:list-subscribe: list-post:dkim-signature; bh=TWY0Ob9/7RFyhtp7yxTAl9oDz8DjQto6zko51AEB7To=; b=gy+KzUMPHs1M4WQSWltseNKCXY42TROlvIGS9hmnuvADm3Z5C+WXKCOakrwrxLfJ4U5Jhf cHWxoMXCQ2nqd/KbdDFxVeNoLqU1Gd1PZsbmqKNGRN+WC5Obn6KB9GedldwGv/Tl1jHPPU 8ufdFnfzCGERq/dJc+uPuPo0tWX72xXp3nPzQSJs1mlfLBik3oGyQ1VoASddFJyjkdh9bf NC6vmneOLCngzbq/q5dnibjjWGg/HrrvXA21YnuvciVI6Cy079XlcsCEprdKuN3sytz396 /gQfmJZHP8H5Rqht3e3meHhToSg81760nWyqaZH4bn7UN3NFbqOaJz5rR7Q2zg== 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 964F567977 for ; Tue, 11 Jun 2024 23:20:11 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sH8uU-00039C-BI; Tue, 11 Jun 2024 17:20:06 -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 1sH8uS-00038d-3W for bug-guix@gnu.org; Tue, 11 Jun 2024 17:20:04 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1sH8uR-0000TF-Ea for bug-guix@gnu.org; Tue, 11 Jun 2024 17:20:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1sH8uP-0007OC-SE for bug-guix@gnu.org; Tue, 11 Jun 2024 17:20:01 -0400 X-Loop: help-debbugs@gnu.org Subject: bug#71495: Add command line flag to add to load path without evaluation Resent-From: Richard Sent Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Tue, 11 Jun 2024 21:20:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 71495 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: 71495@debbugs.gnu.org X-Debbugs-Original-To: bug-guix@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.171814078528365 (code B ref -1); Tue, 11 Jun 2024 21:20:01 +0000 Received: (at submit) by debbugs.gnu.org; 11 Jun 2024 21:19:45 +0000 Received: from localhost ([127.0.0.1]:36908 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sH8u9-0007NR-3a for submit@debbugs.gnu.org; Tue, 11 Jun 2024 17:19:45 -0400 Received: from lists.gnu.org ([209.51.188.17]:52072) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sH8u6-0007NJ-Ve for submit@debbugs.gnu.org; Tue, 11 Jun 2024 17:19:43 -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 1sH8u8-000369-8n for bug-guix@gnu.org; Tue, 11 Jun 2024 17:19:44 -0400 Received: from mail-108-mta76.mxroute.com ([136.175.108.76]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1sH8u6-0000OM-HE for bug-guix@gnu.org; Tue, 11 Jun 2024 17:19:43 -0400 Received: from filter006.mxroute.com ([136.175.111.3] filter006.mxroute.com) (Authenticated sender: mN4UYu2MZsgR) by mail-108-mta76.mxroute.com (ZoneMTA) with ESMTPSA id 190092bacfa00017a3.001 for (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Tue, 11 Jun 2024 21:19:35 +0000 X-Zone-Loop: 102a395145b7272e59fdd9c610eb908538ae6d8f65ca X-Originating-IP: [136.175.111.3] DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=freakingpenguin.com; s=x; h=Content-Type:MIME-Version:Message-ID:Date: Subject:To:From:Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=TWY0Ob9/7RFyhtp7yxTAl9oDz8DjQto6zko51AEB7To=; b=Gj5mgx5nWW3rBsQYQCmsXpbixx p8/kubsQRb7zt82azOiU0577XZlFb9qH5HSGJkC271Ky+M+PqVor9GVD3LaCsPcEC4A3T1GLeEB47 H4Wsj/+2IzUSQStt6YfIkNQXPd7BJYZkZkBma5rtlShbkjB6mGhN+TMiw9xI/YSid7QIccN2zAKzR kcbE8nuXQRDX4EEypO8XJjETAF7q/ohEJK0SN1Tlfb1NU/1dLdJXWpVfgdkcu1xAG2AxFafaGRnol vfyo56KJ75ghGhR3easKePe6+mg6fJrpjCv5A0amtXOEUB/9HBr4N3GfmudSfTlEwiI3AjrgRtA0w rRinSjLg==; From: Richard Sent Date: Tue, 11 Jun 2024 17:19:22 -0400 Message-ID: <87a5jrxjmt.fsf@freakingpenguin.com> MIME-Version: 1.0 Content-Type: text/plain X-Authenticated-Id: richard@freakingpenguin.com Received-SPF: pass client-ip=136.175.108.76; envelope-from=richard@freakingpenguin.com; helo=mail-108-mta76.mxroute.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: bug-guix-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN X-Migadu-Queue-Id: 964F567977 X-Migadu-Scanner: mx12.migadu.com X-Migadu-Spam-Score: -6.54 X-Spam-Score: -6.54 X-TUID: t0UhFZ+tK6dI Hi Guix! In Guile, -L is a equivalent shorthand for adding to the %load-path variable. No actual files are evaluated. In Guix, -L actually evaluates files (at least in some capacity) to look for package definitions, allowing for uses like $ guix -L . . This has a performance impact as channels grow, so it would be nice if there was an alternative command line flag that matched Guile's behavior. To showcase the issue, here's three examples of "building" an already-built home environment. I would use $ guix repl instead, but -L in guix repl seems to match Guile's behavior, not Guix's. --8<---------------cut here---------------start------------->8--- # Baseline, no load path additions gibraltar :) rsent$ bash -c 'time guix home build rsent/home/minimal.scm' /gnu/store/5m062lg4f32j9hlirfkcp5141px6sgkv-home real 0m9.776s user 0m22.981s sys 0m0.233s # GUILE_LOAD_PATH, within margin of error of baseline gibraltar :) rsent$ GUILE_LOAD_PATH=. bash -c 'time guix home build rsent/home/minimal.scm' /gnu/store/5m062lg4f32j9hlirfkcp5141px6sgkv-home real 0m10.016s user 0m23.064s sys 0m0.186s # -L ., consistently ~25% longer to complete gibraltar :) rsent$ bash -c 'time guix home build -L . rsent/home/minimal.scm' /gnu/store/5m062lg4f32j9hlirfkcp5141px6sgkv-home real 0m12.791s user 0m29.569s sys 0m0.247s --8<---------------cut here---------------end--------------->8--- At present one can set GUILE_LOAD_PATH manually to work around this issue. In my opinion this isn't very discoverable. Furthermore, it can't _cleanly_ handle cases when GUILE_LOAD_PATH is already set or needs multiple entries. It also makes certain commands with bash builtins (like time...) awkward since you have to enter a subshell. -- Take it easy, Richard Sent Making my computer weirder one commit at a time.