X-Loop: help-debbugs@HIDDEN Subject: [bug#74371] [PATCH 3/4] guix: Add module aware 'guix import go' Resent-From: =?UTF-8?Q?J=C3=B8rgen?= Kvalsvik <j@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: guix-patches@HIDDEN Resent-Date: Fri, 15 Nov 2024 21:12:02 +0000 Resent-Message-ID: <handler.74371.B.1731705104912 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: report 74371 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 74371 <at> debbugs.gnu.org Cc: =?UTF-8?Q?J=C3=B8rgen?= Kvalsvik <j@HIDDEN> X-Debbugs-Original-To: guix-patches@HIDDEN Received: via spool by submit <at> debbugs.gnu.org id=B.1731705104912 (code B ref -1); Fri, 15 Nov 2024 21:12:02 +0000 Received: (at submit) by debbugs.gnu.org; 15 Nov 2024 21:11:44 +0000 Received: from localhost ([127.0.0.1]:51074 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1tC3bS-0000EP-O3 for submit <at> debbugs.gnu.org; Fri, 15 Nov 2024 16:11:43 -0500 Received: from lists.gnu.org ([209.51.188.17]:48698) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <j@HIDDEN>) id 1tC3bQ-0000Du-7I for submit <at> debbugs.gnu.org; Fri, 15 Nov 2024 16:11:40 -0500 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 <j@HIDDEN>) id 1tC3bN-0002Bq-Sr for guix-patches@HIDDEN; Fri, 15 Nov 2024 16:11:37 -0500 Received: from mx.kolabnow.com ([212.103.80.155]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <j@HIDDEN>) id 1tC3bD-00066X-V5 for guix-patches@HIDDEN; Fri, 15 Nov 2024 16:11:32 -0500 Received: from localhost (unknown [127.0.0.1]) by mx.kolabnow.com (Postfix) with ESMTP id 4F5653069A98 for <guix-patches@HIDDEN>; Fri, 15 Nov 2024 22:11:19 +0100 (CET) Authentication-Results: ext-mx-out013.mykolab.com (amavis); dkim=pass (2048-bit key) reason="pass (just generated, assumed good)" header.d=kolabnow.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kolabnow.com; h= content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:date:subject:subject:from:from:received :received:received; s=dkim20240523; t=1731705075; x=1733519476; bh=YaH4k+uq5KG+RAgyIBwT+Nc4HUwgRX/GbVCcqH+6cO4=; b=nwUM5Gb+Q3O2 OFgQNulbdmbi5Kt7KXG3Tftna1cLWmx7AN0+AujHRKl+qmMH9wZG3Lv3rK2JPqAy jn2FMLYK1EdZUEDlDQve2rDGD4Y9co4lgRlu+T/61oCnoIZeob7mPG45yFLiE/8g Y1tWiJPJ2AQwHKUjZ6LMAozTwy2cOA12OSj1bPvlFfh2yla4DvZQLPk8/WkdRgMt MD4aAKe2bgsr7QV+yHiVvh85Z5YNSoAHp2z+A84T54rYGVAbpJOEqEjKgGxKFSxE EVrHv7BWTM8DhbK5/V57hz1jMNB7LWp4V9ZALpIiZ1tPK3VgBVV4BYeVPsSfJvvf 0GNnZbxIHA== X-Virus-Scanned: amavis at mykolab.com X-Spam-Flag: NO X-Spam-Score: -0.99 X-Spam-Level: X-Spam-Status: No, score=-0.99 tagged_above=-10 required=5 tests=[ALL_TRUSTED=-1, T_FILL_THIS_FORM_SHORT=0.01] autolearn=ham autolearn_force=no Received: from mx.kolabnow.com ([127.0.0.1]) by localhost (ext-mx-out013.mykolab.com [127.0.0.1]) (amavis, port 10024) with ESMTP id MNYmo643scnZ for <guix-patches@HIDDEN>; Fri, 15 Nov 2024 22:11:15 +0100 (CET) Received: from int-mx009.mykolab.com (unknown [10.9.13.9]) by mx.kolabnow.com (Postfix) with ESMTPS id BD0103069A9C for <guix-patches@HIDDEN>; Fri, 15 Nov 2024 22:11:15 +0100 (CET) Received: from ext-subm010.mykolab.com (unknown [10.9.6.10]) by int-mx009.mykolab.com (Postfix) with ESMTPS id 762582097185 for <guix-patches@HIDDEN>; Fri, 15 Nov 2024 22:11:15 +0100 (CET) From: =?UTF-8?Q?J=C3=B8rgen?= Kvalsvik <j@HIDDEN> Date: Fri, 15 Nov 2024 22:11:05 +0100 Message-Id: <20241115211106.2759121-4-j@HIDDEN> In-Reply-To: <20241115211106.2759121-1-j@HIDDEN> References: <20241115211106.2759121-1-j@HIDDEN> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=212.103.80.155; envelope-from=j@HIDDEN; helo=mx.kolabnow.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, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_FILL_THIS_FORM_SHORT=0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -2.4 (--) Emit module aware package go packages. It does not compute the hash of the full module yet, and only supports git, but goes a long way towards making it easy to package new go programs using the module-aware build system. * guix/import/go.scm (go-module->guix-package): Add go.mod awareness * guix/scripts/import/go.scm (show-help): Document -m, --mod (%options): Accept them. Change-Id: I4efd7260d69276279940e21698ecc7eb57232a67 --- guix/import/go.scm | 88 ++++++++++++++++++++++++-------------- guix/scripts/import/go.scm | 6 +++ 2 files changed, 61 insertions(+), 33 deletions(-) diff --git a/guix/import/go.scm b/guix/import/go.scm index dd9298808d..967aa54d58 100644 --- a/guix/import/go.scm +++ b/guix/import/go.scm @@ -615,6 +615,7 @@ (define (validate-version version available-versions module-path) (define* (go-module->guix-package module-path #:key (goproxy "https://proxy.golang.org") version + go-mod? pin-versions? #:allow-other-keys) "Return the package S-expression corresponding to MODULE-PATH at VERSION, a Go package. @@ -641,43 +642,62 @@ (define* (go-module->guix-package module-path #:key (meta-data (fetch-module-meta-data root-module-path)) (vcs-type (module-meta-vcs meta-data)) (vcs-repo-url (module-meta-data-repo-url meta-data goproxy)) + (home-page (format #f "https://~a" root-module-path)) (synopsis (go-package-synopsis module-path)) - (description (go-package-description module-path)) - (licenses (go-package-licenses module-path))) - (values - `(package - (name ,guix-name) - (version ,(strip-v-prefix version*)) - (source - ,(vcs->origin vcs-type vcs-repo-url version*)) - (build-system go-build-system) - (arguments - (list ,@(if (version>? min-go-version (package-version (go-package))) - `(#:go ,(string->number min-go-version)) - '()) - #:import-path ,module-path - ,@(if (string=? module-path-sans-suffix root-module-path) - '() - `(#:unpack-path ,root-module-path)))) - ,@(maybe-propagated-inputs - (map (match-lambda - ((name version) - (go-module->guix-package-name name (strip-v-prefix version))) - (name - (go-module->guix-package-name name))) - dependencies)) - (home-page ,(format #f "https://~a" root-module-path)) - (synopsis ,synopsis) - (description ,(and=> description beautify-description)) - (license ,(match (list->licenses licenses) + (description (and=> (go-package-description module-path) beautify-description)) + (licenses (go-package-licenses module-path)) + (license (match (list->licenses licenses) (() #f) ;unknown license - ((license) ;a single license - license) + ((license) license) ;a single license ((license ...) ;a list of licenses `(list ,@license))))) - (if pin-versions? - dependencies+versions - dependencies)))) + (if go-mod? + (values + `(package + (name ,guix-name) + (version ,(strip-v-prefix version*)) + (source + (origin + (method go-mod-fetch) + (uri (go-mod-reference + (source ,(vcs->origin vcs-type vcs-repo-url version*)))) + (sha256 + (base32 + ;; FIXME: fetch & compute checksum + "0000000000000000000000000000000000000000000000000000")))) + (build-system go-mod-build-system) + (home-page ,home-page) + (synopsis ,synopsis) + (description ,description) + (license ,license))) + (values + `(package + (name ,guix-name) + (version ,(strip-v-prefix version*)) + (source ,(vcs->origin vcs-type vcs-repo-url version*)) + (build-system go-build-system) + (arguments + (list ,@(if (version>? min-go-version (package-version (go-package))) + `(#:go ,(string->number min-go-version)) + '()) + #:import-path ,module-path + ,@(if (string=? module-path-sans-suffix root-module-path) + '() + `(#:unpack-path ,root-module-path)))) + ,@(maybe-propagated-inputs + (map (match-lambda + ((name version) + (go-module->guix-package-name name (strip-v-prefix version))) + (name + (go-module->guix-package-name name))) + dependencies)) + (home-page ,home-page) + (synopsis ,synopsis) + (description ,description) + (license ,license) + (if pin-versions? + dependencies+versions + dependencies)))))) (define go-module->guix-package* (lambda args @@ -699,6 +719,7 @@ (define go-module->guix-package* (define* (go-module-recursive-import package-name #:key (goproxy "https://proxy.golang.org") version + go-mod? pin-versions?) (recursive-import @@ -709,6 +730,7 @@ (define* (go-module-recursive-import package-name (receive (package-sexp dependencies) (go-module->guix-package* name #:goproxy goproxy #:version version + #:go-mod? go-mod? #:pin-versions? pin-versions?) (values package-sexp dependencies)))) #:guix-name go-module->guix-package-name diff --git a/guix/scripts/import/go.scm b/guix/scripts/import/go.scm index b90c6ac72f..a12c3a9b2f 100644 --- a/guix/scripts/import/go.scm +++ b/guix/scripts/import/go.scm @@ -50,6 +50,8 @@ (define (show-help) (display (G_ " -h, --help display this help and exit")) (display (G_ " + -m, --mod generate go-module based packages")) + (display (G_ " -r, --recursive generate package expressions for all Go modules that are not yet in Guix")) (display (G_ " @@ -65,6 +67,9 @@ (define %options (lambda args (show-help) (exit 0))) + (option '(#\m "mod") #f #f + (lambda (opt name arg result) + (alist-cons 'go-mod? #t result))) (option '(#\r "recursive") #f #f (lambda (opt name arg result) (alist-cons 'recursive #t result))) @@ -106,6 +111,7 @@ (define (parse-options) (let ((arguments (list name #:goproxy (assoc-ref opts 'goproxy) #:version version + #:go-mod? (assoc-ref opts 'go-mod?) #:pin-versions? (assoc-ref opts 'pin-versions?)))) (if (assoc-ref opts 'recursive) -- 2.39.5
Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) Content-Type: text/plain; charset=utf-8 X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: =?UTF-8?Q?J=C3=B8rgen?= Kvalsvik <j@HIDDEN> Subject: bug#74371: Acknowledgement ([PATCH 3/4] guix: Add module aware 'guix import go') Message-ID: <handler.74371.B.1731705104912.ack <at> debbugs.gnu.org> References: <20241115211106.2759121-4-j@HIDDEN> X-Gnu-PR-Message: ack 74371 X-Gnu-PR-Package: guix-patches X-Gnu-PR-Keywords: patch Reply-To: 74371 <at> debbugs.gnu.org Date: Fri, 15 Nov 2024 21:12:02 +0000 Thank you for filing a new bug report with debbugs.gnu.org. This is an automatically generated reply to let you know your message has been received. Your message is being forwarded to the package maintainers and other interested parties for their attention; they will reply in due course. Your message has been sent to the package maintainer(s): guix-patches@HIDDEN If you wish to submit further information on this problem, please send it to 74371 <at> debbugs.gnu.org. Please do not send mail to help-debbugs@HIDDEN unless you wish to report a problem with the Bug-tracking system. --=20 74371: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D74371 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems
Received: (at control) by debbugs.gnu.org; 1 Dec 2024 23:47:31 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Dec 01 18:47:31 2024 Received: from localhost ([127.0.0.1]:53474 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1tHtf1-0008NV-Ed for submit <at> debbugs.gnu.org; Sun, 01 Dec 2024 18:47:31 -0500 Received: from mx.boiledscript.com ([88.99.243.112]:35006) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <hako@HIDDEN>) id 1tHtey-0008NL-7h for control <at> debbugs.gnu.org; Sun, 01 Dec 2024 18:47:29 -0500 Date: Mon, 02 Dec 2024 07:47:24 +0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ultrarare.space; s=mail; t=1733096846; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type; bh=p7iOxYbnPUsxQMq3kP5FPLnk7dDMGTF4JyJ9qg4htUM=; b=dAertMwK+PoZC3YIx0iAGKtoZtdChPp4FzM6HXCCX3gDajfW/yAYoYMY0OkBSwhTE3esvw BbKrtAqlIy9cXX2YJKe3AWPw8CNLu9fLmKwBvVYcK2YfZKrxoDb4AGHhfdDlXkM6/FA7bV isxBCmbJzmKnWrOXfQFB3j3ugSyDZ76Yf11cfDrHeWP+OqkJadWbwjcj1hBt40Jw6LQAcL iFSuyJ1qHBg9q5F17cCUXdzP1bBwfLkS3c/TQgffBY5FWDu+eS6lQWGGppGJfnN0P8WloJ LQHbfCRZEYndRMRGNoNYXngDTun2iylRZ5j+duJDO7hJsoF3HxvPvgGV+06GBQ== Message-ID: <87zflfdkz7.wl-hako@HIDDEN> From: Hilton Chain <hako@HIDDEN> To: control <at> debbugs.gnu.org Subject: Control message for 74370. MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) merge 74370 74371 74372 74373 quit
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.