From patchwork Wed Dec 4 18:06:31 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Simon Tournier X-Patchwork-Id: 16381 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 1130317838; Wed, 4 Dec 2019 18:07:22 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, T_DKIM_INVALID,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id BC2A717834 for ; Wed, 4 Dec 2019 18:07:21 +0000 (GMT) Received: from localhost ([::1]:45378 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1icZ3Z-0002rO-8P for patchwork@mira.cbaines.net; Wed, 04 Dec 2019 13:07:21 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41637) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1icZ3H-0002qh-U8 for guix-patches@gnu.org; Wed, 04 Dec 2019 13:07:05 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1icZ3G-0005JD-Os for guix-patches@gnu.org; Wed, 04 Dec 2019 13:07:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:36689) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1icZ3G-0005Hd-9T for guix-patches@gnu.org; Wed, 04 Dec 2019 13:07:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1icZ3G-0007Mv-3y for guix-patches@gnu.org; Wed, 04 Dec 2019 13:07:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#38460] [PATCH v2] lint: Add '--load-path' option. Resent-From: zimoun Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 04 Dec 2019 18:07:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38460 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 38460@debbugs.gnu.org Cc: zimoun Received: via spool by 38460-submit@debbugs.gnu.org id=B38460.157548280528303 (code B ref 38460); Wed, 04 Dec 2019 18:07:02 +0000 Received: (at 38460) by debbugs.gnu.org; 4 Dec 2019 18:06:45 +0000 Received: from localhost ([127.0.0.1]:42662 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1icZ2z-0007MQ-3I for submit@debbugs.gnu.org; Wed, 04 Dec 2019 13:06:45 -0500 Received: from mail-wr1-f51.google.com ([209.85.221.51]:42479) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1icZ2v-0007MA-Nk for 38460@debbugs.gnu.org; Wed, 04 Dec 2019 13:06:43 -0500 Received: by mail-wr1-f51.google.com with SMTP id a15so278180wrf.9 for <38460@debbugs.gnu.org>; Wed, 04 Dec 2019 10:06:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=xhN4TU8WRv4NpX5wOs7kFcNbHP3wU55lc5uhEY7S4c4=; b=Ubsh+g09g7MpL+Wf7lmUbneaWr3yUz63ZOaEjIWBWVosVVa+3JPpyGT6DejHQHP7wq 1axarF/6wWR28WNEUj65zABrskAhctv9EHwvjfWPRgu4Dl1oMV+HDH+snbciwkxYrXZp dsdZ6QLuDj4fruyFO3lSqf7ZU/m4HEKDAnsl9lykB1N25BO0IyaSSD3lp2l+/QN6ETzF Vg6M+38NFkbbOGPhBaFznQfForx6Oh9iEAXWUBEJm0RiB5SRAlwzbJBTwBncELJ0dQX6 +EcZfrNHx1TTyBUmi4zY42cxNvbbNkFqOyON1wTCyPfNIdoQQcblZTkLFIEEkWOlKaY5 mtfw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=xhN4TU8WRv4NpX5wOs7kFcNbHP3wU55lc5uhEY7S4c4=; b=HS+REdfYWn0yO9mYh0hl5uJXvf1ye6EFFD/beVvBVSX3+/8etEQg8JWhb1IrdfZPVI 5kt0arOTycepqtJbe98JTtRl/ObdFnI5JoDWEuCYRNazWQAEKRAHyV0M8CmE9auFWFL2 wpy1SDWmfDWlWQ7OXJf9Lcb7DzlxjT7B/+BTD0lPcyiTspWdDTY0fMWppw23biLRCyYG HhvQ5mfeHU8Nd7EtTl4JPW9oSrATVXoUeTtk3hTm1Kox7KwKJ4t3FKau5q25jMcIj0+v COZZhAUmKCtoqJ6/ui1LVyqBoOgWexoHxc/vxXBPoydGD+23WSFETNMLTm0x/IiZU2uB 6nzQ== X-Gm-Message-State: APjAAAXSzqRz6DO9lTnbvgL09qI9WG/8Tn09xeznpM68jIESY1iS+kkz 6bWQ2kgU5ZFueRnkNB5QkSfdrmsy X-Google-Smtp-Source: APXvYqwAd0bqOw483ludwQt0glMABl5da5x5LHVLVW9/Y99L02S4sc9/cuVhGiuyca/NkVVOUrR/CA== X-Received: by 2002:a5d:4044:: with SMTP id w4mr5470918wrp.322.1575482795671; Wed, 04 Dec 2019 10:06:35 -0800 (PST) Received: from pfiuh02.univ-paris-diderot.fr ([193.48.40.241]) by smtp.gmail.com with ESMTPSA id n188sm8792595wme.14.2019.12.04.10.06.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 04 Dec 2019 10:06:34 -0800 (PST) From: zimoun Date: Wed, 4 Dec 2019 19:06:31 +0100 Message-Id: <20191204180631.25088-1-zimon.toutoune@gmail.com> X-Mailer: git-send-email 2.23.0 In-Reply-To: <87blsoc8yv.fsf@gnu.org> References: <87blsoc8yv.fsf@gnu.org> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * guix/scripts/lint.scm (%options): Add '--load-path' option. * doc/guix.texi: Document it. * tests/guix-lint.sh: Test it. --- doc/guix.texi | 8 ++++++++ guix/scripts/lint.scm | 8 ++++++++ tests/guix-lint.sh | 11 +++++++++++ 3 files changed, 27 insertions(+) diff --git a/doc/guix.texi b/doc/guix.texi index 2da1ecd64c..e20d3fa722 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -9676,6 +9676,14 @@ and exit. Only enable the checkers specified in a comma-separated list using the names returned by @code{--list-checkers}. +@item --load-path=@var{directory} +@itemx -L @var{directory} +Add @var{directory} to the front of the package module search path +(@pxref{Package Modules}). + +This allows users to define their own packages and make them visible to +the command-line tools. + @end table @node Invoking guix size diff --git a/guix/scripts/lint.scm b/guix/scripts/lint.scm index 1668d02992..8d08c484f5 100644 --- a/guix/scripts/lint.scm +++ b/guix/scripts/lint.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2017 Tobias Geerinckx-Rice ;;; Copyright © 2017, 2018 Efraim Flashner ;;; Copyright © 2018, 2019 Arun Isaac +;;; Copyright © 2019 Simon Tournier ;;; ;;; This file is part of GNU Guix. ;;; @@ -30,6 +31,7 @@ #:use-module (guix lint) #:use-module (guix ui) #:use-module (guix scripts) + #:use-module (guix scripts build) #:use-module (gnu packages) #:use-module (ice-9 match) #:use-module (ice-9 format) @@ -94,6 +96,9 @@ run the checkers on all packages.\n")) -c, --checkers=CHECKER1,CHECKER2... only run the specified checkers")) (display (G_ " + -L, --load-path=DIR prepend DIR to the package module search path")) + (newline) + (display (G_ " -h, --help display this help and exit")) (display (G_ " -l, --list-checkers display the list of available lint checkers")) @@ -128,6 +133,9 @@ run the checkers on all packages.\n")) %local-checkers (alist-delete 'checkers result)))) + (find (lambda (option) + (member "load-path" (option-names option))) + %standard-build-options) (option '(#\h "help") #f #f (lambda args (show-help) diff --git a/tests/guix-lint.sh b/tests/guix-lint.sh index 7ddc7c265b..f0df1fda3a 100644 --- a/tests/guix-lint.sh +++ b/tests/guix-lint.sh @@ -76,3 +76,14 @@ then true; else false; fi # Make sure specifying multiple packages works. guix lint -c inputs-should-be-native dummy dummy@42 dummy + + +# Use --load-path instead. +unset GUIX_PACKAGE_PATH + +out=`guix lint -L $module_dir -c synopsis,description dummy 2>&1` +if [ `grep_warning "$out"` -ne 3 ] +then false; else true; fi + +# Make sure specifying multiple packages works. +guix lint -L $module_dir -c inputs-should-be-native dummy dummy@42 dummy