From unknown Fri Jun 13 11:11:03 2025 X-Loop: help-debbugs@gnu.org Subject: bug#70611: outputs are baked in gexps, cannot be removed in derived packages Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Sat, 27 Apr 2024 16:56:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 70611 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: 70611@debbugs.gnu.org X-Debbugs-Original-To: bug-guix Received: via spool by submit@debbugs.gnu.org id=B.17142369382426 (code B ref -1); Sat, 27 Apr 2024 16:56:01 +0000 Received: (at submit) by debbugs.gnu.org; 27 Apr 2024 16:55:38 +0000 Received: from localhost ([127.0.0.1]:49584 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s0lKs-0000d4-0j for submit@debbugs.gnu.org; Sat, 27 Apr 2024 12:55:38 -0400 Received: from lists.gnu.org ([2001:470:142::17]:48248) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s0lKk-0000cS-Lx for submit@debbugs.gnu.org; Sat, 27 Apr 2024 12:55:31 -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 1s0lKM-0008MY-1b for bug-guix@gnu.org; Sat, 27 Apr 2024 12:55:06 -0400 Received: from mail-qt1-x82b.google.com ([2607:f8b0:4864:20::82b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1s0lKK-0006KS-DF for bug-guix@gnu.org; Sat, 27 Apr 2024 12:55:05 -0400 Received: by mail-qt1-x82b.google.com with SMTP id d75a77b69052e-4375ddb9eaeso19754921cf.3 for ; Sat, 27 Apr 2024 09:55:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1714236903; x=1714841703; darn=gnu.org; h=mime-version:message-id:date:subject:to:from:from:to:cc:subject :date:message-id:reply-to; bh=9dHgZBS3yLNyYUxcVymFehJt5aZlZxBeEs0FzSnhWaA=; b=lP7CJxabJOmSv+gfsY0Ss1F7P8nQWZ9m+aWK7u/vCTub8Gkfaii06S7EIKMykKKg4r Mz6m3mSIC5nA6j5f6lwDqEE3VZ6gESkMpA0UuDcV5/I8sn4q+s6xkypJJu4f9ima8A2Y 44ZNMOehvaI8ntalBcf02cw4a1RJPmTDzCiHduHpzhC1cB2aQitMXb94RfQGe/6Rx/dA Q251lfANiR8xRm0tOmh05UR9BoQnB21ZqLhcMYAtutL7A+AlTReDWIxWrTRLQoJpX7Mn vsKfDLSPitn9RbZ5GIP2ij/vp6RL9RftpoGt2VU/QnNekaRG6XVLGEQEUknAfDXE+5JK Ev+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714236903; x=1714841703; h=mime-version:message-id:date:subject:to:from:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=9dHgZBS3yLNyYUxcVymFehJt5aZlZxBeEs0FzSnhWaA=; b=sDe5Aqryq79gLICh4L5B/lGKclLnk2QWTDcW+4qXhF5yBDjLujGqeb08sgcTRjsdLf kvZfDIK53AOfEKFBGXdx36auCWWFKCjF9jhS3Ezihw52Zp7ZGbGkrP36tGOzf56BxB6R nt/0Czg8KSNShN53SKWUQ8zNlt8tGJWZmfk5h+9F/dRn6gGjca4zK4y/b7jrT+b/E3NU AMgXgPzob6XaCps43S98noQpdzMsipepG6yKWOdXha+VBHR6v0s5se65hfZz82WZniMu Buc4jiKBkdLEueuQGjdLcD1C8Jfk3DB1/zQOXsl3mUuG8gfj+g4xQuiE7zywEqjhvyvW Nk6g== X-Gm-Message-State: AOJu0Yy7FLlX13rIS9KJE3cJEfbhAThitxaKDecGAp8GfnYSSb/C7WGs s8xJsABDsSRIb5d9DCHZrTsrYIN607NbeUp+RuPX7tVirOt5nO1RNTeQAA== X-Google-Smtp-Source: AGHT+IEtV3XmWhCekwXTCApuRm0S9r9j+gFFOZTwGUKbWg1k1W7N9LRyoes+OE+kyR2KsHvRyrkSDA== X-Received: by 2002:a05:622a:4b16:b0:436:865f:323e with SMTP id et22-20020a05622a4b1600b00436865f323emr7310396qtb.24.1714236902559; Sat, 27 Apr 2024 09:55:02 -0700 (PDT) Received: from hurd (dsl-154-210.b2b2c.ca. [66.158.154.210]) by smtp.gmail.com with ESMTPSA id kc5-20020a05622a44c500b00439aa792ec0sm5823427qtb.37.2024.04.27.09.55.01 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 27 Apr 2024 09:55:01 -0700 (PDT) From: Maxim Cournoyer Date: Sat, 27 Apr 2024 12:55:00 -0400 Message-ID: <87o79ueoez.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2607:f8b0:4864:20::82b; envelope-from=maxim.cournoyer@gmail.com; helo=mail-qt1-x82b.google.com 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-Spam-Score: 1.0 (+) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) Hi Guix, I've stumbled upon the following existing use case that no longer works when the base package is expressed using gexps: Base package: --8<---------------cut here---------------start------------->8--- (define-public llvm-15 (package (name "llvm") (version "15.0.7") [...] #~(modify-phases %standard-phases (add-after 'unpack 'change-directory (lambda _ (chdir "llvm"))) (add-after 'install 'install-opt-viewer (lambda* (#:key outputs #:allow-other-keys) (let* ((opt-viewer-share (string-append #$output:opt-viewer "/share"))) (mkdir-p opt-viewer-share) (rename-file (string-append #$output "/share/opt-viewer") opt-viewer-share))))))) [...] (define-public llvm-cling (let ((base llvm-18)) (package/inherit base (name "llvm-cling") (version "18-20240227-01") (source (origin (inherit (package-source base)) (method git-fetch) (uri (git-reference (url "https://github.com/root-project/llvm-project") (commit (string-append "cling-llvm" version)))) (file-name (git-file-name "llvm-cling" version)) (sha256 (base32 "0m5hhqk9y80srvkws2gs9rhpi6bjdy8mfk94z8fx6nmfxwrqsya8")))) (outputs '("out")) (arguments (substitute-keyword-arguments (package-arguments base) ((#:phases phases '%standard-phases) #~(modify-phases #$phases (delete 'install-opt-viewer)))))))) --8<---------------cut here---------------end--------------->8--- Attempting to build llvm-cling fails because the phases gexps inherited from llvm-15 references the 'opt-viewer' output, which llvm-cling tries to remove without success: --8<---------------cut here---------------start------------->8--- builder for `/gnu/store/f2pdg9m5q3bxrlahjvlrdgw41x6kp3zd-llvm-cling-18-20240227-01.drv' failed to produce output path `/gnu/store/m1z5257hj5vwc2rl47wkpf0wmr6x0bq2-llvm-cling-18-20240227-01-opt-viewer' --8<---------------cut here---------------end--------------->8--- -- Thanks, Maxim From unknown Fri Jun 13 11:11:03 2025 X-Loop: help-debbugs@gnu.org Subject: bug#70611: outputs are baked in gexps, cannot be removed in derived packages Resent-From: Simon Tournier Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Mon, 06 May 2024 12:35:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 70611 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: Maxim Cournoyer , 70611@debbugs.gnu.org Received: via spool by 70611-submit@debbugs.gnu.org id=B70611.171499889414017 (code B ref 70611); Mon, 06 May 2024 12:35:02 +0000 Received: (at 70611) by debbugs.gnu.org; 6 May 2024 12:34:54 +0000 Received: from localhost ([127.0.0.1]:37872 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s3xYF-0003dt-MU for submit@debbugs.gnu.org; Mon, 06 May 2024 08:34:53 -0400 Received: from mail-wr1-x430.google.com ([2a00:1450:4864:20::430]:38770) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s3xYE-0003dj-1k for 70611@debbugs.gnu.org; Mon, 06 May 2024 08:34:38 -0400 Received: by mail-wr1-x430.google.com with SMTP id ffacd0b85a97d-34f562474e8so107584f8f.3 for <70611@debbugs.gnu.org>; Mon, 06 May 2024 05:34:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1714998848; x=1715603648; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=0tJZUWteL85l/6M/9NNrfiOKJ3pLJroamDWryHaFE1k=; b=gMgMYKlsGCS7MRAR16AQ2EGU0slkZvqKLF5N3+zHWsQkudiLavd+0TXp3TpMv+AnqA 6EM6kQUSF3pIUahnA9V9g9XA7uq8jW0tVgp0zvVHwvrGXn9EHKauxvc7KTWUnuahRX8X k10yFmJuqnfmUeB8jxDcPG+uVxkLjIo6IkyK3ERzLQSZGcP/7nv3Y+uMTkZI6J9Sl6i4 OR8GhP/t+gfk9A0EnToQ/92qk4gJ4bxteU4fQG34vziEM2ECXqZhK+27RGraSUoqPI9d /ti8RuYf2g2efnnGYyoNG+MH0LSRK9Bv2ZtzKFGKtjGP9Q+RZ8J0W6oKEDnC2xt94rDh MqGw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714998848; x=1715603648; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:to:from:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=0tJZUWteL85l/6M/9NNrfiOKJ3pLJroamDWryHaFE1k=; b=ZltmktcEIrTl53FZtpBLTsGKX6J3CGAfDyRYvasP+H+8uO/U2topyTm9zPSLl3uakF WqOh+zCCVTFMHfPiayY1t39F6CiCM4/ECB4Jqx5s7eP0O4R1ukHQn+p2vOvGuPnmGASe CWtrE1mx4ZPlTp2CcPUXqs1FD5ujav1W0R3jHL16qaF3tCklAi7AeGgUT+Z4L3OFSECX yBk10Sqr7PAMq6tv++R8si8Rd1zCyXM3JeOwCXfx9K1Ee69rX15XK9yvHgXRLqs0+tvX 3L5YLpmm8jezlOnnvpe6VALZdb5dtdpqialw5xQQHIsdaaS+ap+I9qtGhZiw7jc3KCrx BPSw== X-Forwarded-Encrypted: i=1; AJvYcCUDbGxeEshzpZjiQGk4jy6H7CPa6bK1f1bNUBvlG79hV2CsOEuNEXbfwPHpd1p+iP69fra0q5210+p/ej8DOWo0wQfqidA= X-Gm-Message-State: AOJu0YwUQiq+HT4hWohqvicTzp8PNr0FIA/k0zQFeRcaS1V2DOo6JqhX EGYzmMTnW4mGc1XciJ/Xug7QGUfsAgKZGHdz9IpZZwIKLV3zC1IERZJnXA== X-Google-Smtp-Source: AGHT+IGRFEoZyYnGQUMYwpFywoMACp5vOfhPn+TimF9AjiZg2+4fdkUjMO+9BjFc5mRwussPhvWfaw== X-Received: by 2002:a5d:63d1:0:b0:34c:f989:dc25 with SMTP id c17-20020a5d63d1000000b0034cf989dc25mr6448876wrw.6.1714998847699; Mon, 06 May 2024 05:34:07 -0700 (PDT) Received: from lili (roam-nat-fw-prg-194-254-61-42.net.univ-paris-diderot.fr. [194.254.61.42]) by smtp.gmail.com with ESMTPSA id l17-20020adfe591000000b0034dac7e5f7bsm10549596wrm.50.2024.05.06.05.34.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 May 2024 05:34:07 -0700 (PDT) From: Simon Tournier In-Reply-To: <87o79ueoez.fsf@gmail.com> References: <87o79ueoez.fsf@gmail.com> Date: Fri, 03 May 2024 21:13:09 +0200 Message-ID: <87wmoaiu9m.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi, On sam., 27 avril 2024 at 12:55, Maxim Cournoyer wrote: > --8<---------------cut here---------------start------------->8--- > builder for `/gnu/store/f2pdg9m5q3bxrlahjvlrdgw41x6kp3zd-llvm-cling-18-20= 240227-01.drv' failed to produce output path `/gnu/store/m1z5257hj5vwc2rl47= wkpf0wmr6x0bq2-llvm-cling-18-20240227-01-opt-viewer' > --8<---------------cut here---------------end--------------->8--- Yeah something is unexpected. --8<---------------cut here---------------start------------->8--- $ ./pre-inst-env guix build llvm-cling -d --no-grafts \ | xargs guix drv-show | recsel -p outputs outputs:=20 + /gnu/store/m1z5257hj5vwc2rl47wkpf0wmr6x0bq2-llvm-cling-18-20240227-01-opt= -viewer [opt-viewer] + /gnu/store/bg3xs25xyllpzw322sqcc8ipw9q8lph6-llvm-cling-18-20240227-01 = [out] --8<---------------cut here---------------end--------------->8--- But from =E2=80=99guix repl=E2=80=99 --8<---------------cut here---------------start------------->8--- scheme@(guix-user)> ,pp (package-outputs llvm-cling-2) $6 =3D ("out") --8<---------------cut here---------------end--------------->8--- And the package arguments reads: --8<---------------cut here---------------start------------->8--- scheme@(guix-user)> ,pp (package-arguments llvm-cling-2) $5 =3D (#:configure-flags # #:build-type "Release" #:phases # "/share"))) (mkdir-p opt-viewer-share) (rename-file (string-append # "/s= hare/opt-viewer") opt-viewer-share))))) gnu/packages/llvm.scm:612:6 7f6a06421090>:out> (delete (quote install-opt-viewer))) gnu/packages/llvm.scm:2443:10 7f6a06421060>) --8<---------------cut here---------------end--------------->8--- Concretely, /gnu/store/rhb3lmkbp5d92c0x0sxkmfwbpbs4b4hp-llvm-cling-18-20240227-01-build= er reads, --8<---------------cut here---------------start------------->8--- (define %outputs (list (cons "out" ((@ (guile) getenv) "out")))) (define %output (assoc-ref %outputs "out")) (cmake-build [...] #:phases (modify-phases (modify-phases %standard-phases (add-after (quote unpack) (quote change-directory) (lambda _ (chdir "llvm"))) (add-after (quote install) (quote install-opt-viewer) (lambda* (#:key outputs #:allow-other-keys) (let* ((opt-viewer-share (string-append ((@ (guile) getenv) "opt-viewer") "/share"))) (mkdir-p opt-viewer-share) (rename-file (string-append ((@ (guile) getenv) "out") "/share/opt-viewer") opt-viewer-share))))) (delete (quote install-opt-viewer))) --8<---------------cut here---------------end--------------->8--- Therefore, the bug comes from an incorrect derivation (drv) file. It contains an output that it should not. Well, I have not investigated further=E2=80=A6 Probably an issue with code staging (what is evaluated when). Cheers, simon