From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id YCv/AQDfb2E2FQEAgWs5BA (envelope-from ) for ; Wed, 20 Oct 2021 11:18:56 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id OK46Of/eb2ELEgAAbx9fmQ (envelope-from ) for ; Wed, 20 Oct 2021 09:18:55 +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 5E8DFDAC for ; Wed, 20 Oct 2021 11:18:55 +0200 (CEST) Received: from localhost ([::1]:60578 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1md7kM-0007fD-GG for larch@yhetil.org; Wed, 20 Oct 2021 05:18:54 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:60522) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1md7jm-00077j-7y for guix-devel@gnu.org; Wed, 20 Oct 2021 05:18:19 -0400 Received: from mail-io1-xd2b.google.com ([2607:f8b0:4864:20::d2b]:34766) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1md7jk-0004lh-5I for guix-devel@gnu.org; Wed, 20 Oct 2021 05:18:17 -0400 Received: by mail-io1-xd2b.google.com with SMTP id i189so23736897ioa.1 for ; Wed, 20 Oct 2021 02:18:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=beadling-co-uk.20210112.gappssmtp.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=JXAEnJcXxHypKWQ8WB8P9d9l40PziYuSf9gwzmkLYBY=; b=rFSoOx8hgYLeS72ax7v18gGGV+0bkuPZMJmI24Om4mAvlhMwDzbP4CKxj+GaQyYZsC gIjm/YgXoQlGgxXvgmOPrx2RG5MZemKdUmg3JYSr95c66PJKFFzr8GxbJGvZdU7wT6xt HC/WU/9jyug3bZ2urAaBi1Jm9de3mdVJ5UdOE6+f1dD2NIxfK2kCknq4sLzdBypYtSaw FnHlrzCy6wxScVVDvC8vhtYkT4scR15Iwrg0pxDamnWU+7Afu5G7WzAD6iiiNUxx5qTk knvCFHg2QNi6uA9M2HumxQ7paq8nXpoQ4S+FGfXAswofn+MQNz+w39dUUjV9x9P4dQe6 VujA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=JXAEnJcXxHypKWQ8WB8P9d9l40PziYuSf9gwzmkLYBY=; b=aajxGy7xgbRv6AoroyaOz15eh+ghRfcHz5icjqFFCMVo2CwC3z83WeAAq/D6OHNCuK Rdu2gxAJz2qHyrzZYzwz/pUAeWOUjZ5yY8VyvGFtJbvRo94lwjPrcEPYS2sCSC46Iicd mkV/HLS2gX6ZIpJMWLpqCgv1CeTlVGv+fBhtp9Ry+XgTErL+05+mI8sSDAFy9AC/is2m VO7g+vdD1xQ7aGR/u94flcxAFaGjufAwIjn3/PMMfphho79NHp1NXgjy38ZjaNBqaH0K h7LZlAGQX304YAo3sR5oZUiwpyIWuA6PCcYvjpdipkwnW83C/K3YNrcfy5vKNm899yz5 trJw== X-Gm-Message-State: AOAM532Ns01mAxTdklMZIUn9wsKCaAsBIAbcZhJbg23p1kqE1sJdcG37 HD4AaDLFeKtVJI1io2yj2lz4Mk6dv78EF9uxWMF7h1xXnRcS+asbsds= X-Google-Smtp-Source: ABdhPJz0wcrMCJKO8Kh58IqS/GKqVh9r10YvqF2a8HBhGPUERGNM3wKuhPV+7IgZk1G8uXNWguwGZI3seYr0jZEenFg= X-Received: by 2002:a6b:c502:: with SMTP id v2mr22548837iof.214.1634721492853; Wed, 20 Oct 2021 02:18:12 -0700 (PDT) MIME-Version: 1.0 From: Phil Beadling Date: Wed, 20 Oct 2021 10:18:02 +0100 Message-ID: Subject: --with-source version not honored? To: guix-devel@gnu.org Content-Type: multipart/alternative; boundary="000000000000e37a4f05cec541f1" Received-SPF: none client-ip=2607:f8b0:4864:20::d2b; envelope-from=phil@beadling.co.uk; helo=mail-io1-xd2b.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, 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.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-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1634721535; 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:dkim-signature; bh=JXAEnJcXxHypKWQ8WB8P9d9l40PziYuSf9gwzmkLYBY=; b=d3Q9yVtg7aN/actweVSYifxkpSZJzUIGQVXalnMqyCTJRLo8vuKjpXtv2YW2u3MTORyAQb 7L9PjaYBvZ8sNytWB1sj9eSCHL3AZz1lNCQwNZU1wHdW3vSaoDa22OqlzADMo6s+YgCe9S 0DZQw7N3k2WkrvzX8oj/ZG3JXv6y3gOFB2xuB6gcWPkJnTU0inI+yUTpInqXpx9wbMaydh TXVSvxxWGu+QKjY+Dx7pZiJJkn/aoimsuXT0dQgRb+yz4EkAIOR0uSpGfxSfzwoKqgcx1W +wztPN0mMPg0RI9ynKUn4MJNH7zKtrpm1CZi5n02SmJ0rMCs+ehm5lB4Mprvsw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1634721535; a=rsa-sha256; cv=none; b=WFZB6Cy4G3oXHx/2yHH/Jcwb1ySVOkfvB45wwnFjWN7nD3bgHiMNNsUwhKEYksA9MtWhCn IjlnaX9p15ZPENWmBWTqegMAsmhiarXDd2HfpO8VJfwWro0Pp9Uio6EWluR+40TFCGNVPD isq0F8al62lH3b1KJfSuiDLYXfXMe/6lqpxiATEZjHiKPSwNapxhmzwmQFuA0qYnU1d8nJ 4Om2EHAmokdQRk6IjGbDwYx7bdd9vQW7SqMJNV+6QnwKAKs7F5G4RWytA/5gLmB1AQElsW 9OU8fLfmXj5OwYOkXh0JJ+LqdR/ASstLvJFya7GEj7zyPonIbIZxDbX1gKqMHw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=beadling-co-uk.20210112.gappssmtp.com header.s=20210112 header.b=rFSoOx8h; 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-Migadu-Spam-Score: 0.77 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=beadling-co-uk.20210112.gappssmtp.com header.s=20210112 header.b=rFSoOx8h; dmarc=none; 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-Migadu-Queue-Id: 5E8DFDAC X-Spam-Score: 0.77 X-Migadu-Scanner: scn1.migadu.com X-TUID: JYWyiKnZBBN6 --000000000000e37a4f05cec541f1 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi all, I'm using the following incantation: guix build --with-source=3Dfoobar@9.5.0=3D/opt/thirdparty/foobar/foobar950_beta/linux6= 4 <--with-source=3Dgurobipy@9.5.0=3D/opt/thirdparty/gurobi/gurobi950_beta/lin= ux64> foobar However the package build is failing with: (copy-file "lib/libfoobar.so.9.0.1" "/gnu/store/gkawzac=E2=80=A6") In procedure copy-file: No such file or directory That is the new version number 9.5.0 is not written to every place when transforming the original package (version 9.0.1). I think only the package-version is updated, but the other package components are not then regenerated, meaning that if they use the package-version as an input we get a disjoint package. In the example above I use version like so: *(add-after 'install 'install-foobar-library (lambda* (#:key outputs #:allow-other-keys) (let* ((dir (string-append (assoc-ref outputs "out") "/lib/python3.8/site-packages/foobar/")) (lib-to-install (string-append "libfoobar.so." ,version))* But ",version" is not updated, nor is it updated if I change this to call (package-version foobar). If I drop into Guile I can see this a bit more clearly by writing a manifest - the code below gives exactly the same error however when the package-version is displayed it correctly responds with 9.5.0. Not sure if this should be considered a bug, or if there is a lazy way of evaluating version so avoid the problem - I think it's unexpected from a practicioners point of view as packages end up inconsistent. I presume I can manually replace the arguments section of the package in the manifest to workaround this - is there a standard way of doing this? Any ideas or clarifications welcome! Cheers, Phil. *(use-modules (guix transformations) (guix packages))(define transform ;; The package transformation procedure. (options->transformation '((with-source . "gurobipy@9.5.0=3D/opt/thirdparty/foobar/foobar950_beta/linux64"))))(define my-package (transform (specification->package "foobar")))(display (package-version my-package)) ;; this will display version 9.5.0(newline)(packages->manifest (list my-package)) ;; building this will fail because copy-file still looks for 9.0.1* --000000000000e37a4f05cec541f1 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi all,

I'm using the fo= llowing incantation:

guix build --with-= source=3Dfoobar@9.5.0=3D/opt/thirdparty/foobar/foobar950_beta/linux64 f= oobar


However the package build is failing with:

(copy-file "lib/libfoobar.so.9.0.1" "/gnu/store/gkawzac=E2= =80=A6")

In procedure copy-file: No such= file or directory


That is the new version number 9.5.0 is not written to every place= when transforming the original package (version 9.0.1).=C2=A0 I think only= the package-version is updated, but the other package components are not t= hen regenerated, meaning that if they use the package-version as an input w= e get a disjoint package.

In the example abov= e I use version like so:


(add-afte= r 'install 'install-foobar-library
=C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (lambda* (#:key outputs #:allow-other-keys)=
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 (let*= ((dir (string-append (assoc-ref outputs "out")
=C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 "= ;/lib/python3.8/site-packages/foobar/"))
=C2=A0 =C2=A0 =C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (lib-to-install (string-append "libf= oobar.so." ,version))

But ",v= ersion" is not updated, nor is it updated if I change this to call (pa= ckage-version foobar).


If I drop in= to Guile I can see this a bit more clearly by writing a manifest - the code= below gives exactly the same error however when the package-version is dis= played it correctly responds with 9.5.0.

Not sure = if this should be considered a bug, or if there is a lazy way of evaluating= version so avoid the problem - I think it's unexpected from a practici= oners point of view as packages end up inconsistent.

I presume I can manually replace the arguments section of the package in= the manifest to workaround this - is there a standard way of doing this?

Any ideas or clarifications welcome!
=
Cheers,
Phil.

(use= -modules (guix transformations)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0(guix packages))


(define transform
=C2=A0 ;; The pa= ckage transformation procedure.
=C2=A0 (options->transformation
= =C2=A0 =C2=A0'((with-source . "gurobipy@9.5.0=3D/opt/thirdparty/fo= obar/foobar950_beta/linux64"))))

(define my-package (transform = (specification->package "foobar")))

(display (package-v= ersion my-package)) ;; this will display version 9.5.0

(newline)
= (packages->manifest
=C2=A0(list my-package)) ;; building this will fa= il because copy-file still looks for 9.0.1



=

--000000000000e37a4f05cec541f1--