From patchwork Sun Feb 6 13:00:28 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Xinglu Chen X-Patchwork-Id: 37020 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 D4A8E27BBEA; Sun, 6 Feb 2022 13:03:21 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,FROM_SUSPICIOUS_NTLD,MAILING_LIST_MULTI,PDS_OTHER_BAD_TLD, SPF_HELO_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id AE80527BBE9 for ; Sun, 6 Feb 2022 13:03:21 +0000 (GMT) Received: from localhost ([::1]:50048 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nGhCK-00008k-Tk for patchwork@mira.cbaines.net; Sun, 06 Feb 2022 08:03:20 -0500 Received: from eggs.gnu.org ([209.51.188.92]:45596) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nGhA7-0007xM-Jy for guix-patches@gnu.org; Sun, 06 Feb 2022 08:01:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:42844) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nGhA6-000873-25 for guix-patches@gnu.org; Sun, 06 Feb 2022 08:01:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1nGhA6-0006rc-1w for guix-patches@gnu.org; Sun, 06 Feb 2022 08:01:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#53818] [PATCH 1/3] git-download: Export . Resent-From: Xinglu Chen Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 06 Feb 2022 13:01:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53818 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 53818@debbugs.gnu.org Received: via spool by 53818-submit@debbugs.gnu.org id=B53818.164415243926318 (code B ref 53818); Sun, 06 Feb 2022 13:01:02 +0000 Received: (at 53818) by debbugs.gnu.org; 6 Feb 2022 13:00:39 +0000 Received: from localhost ([127.0.0.1]:36735 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGh9i-0006qQ-SJ for submit@debbugs.gnu.org; Sun, 06 Feb 2022 08:00:39 -0500 Received: from h178-251-242-94.cust.a3fiber.se ([178.251.242.94]:59546 helo=mail.yoctocell.xyz) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGh9g-0006q2-74 for 53818@debbugs.gnu.org; Sun, 06 Feb 2022 08:00:37 -0500 From: Xinglu Chen DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yoctocell.xyz; s=mail; t=1644152428; bh=9IC8WLimIFDk6Am5snW9QzYw+ml2B5RYbrxkVe7aNsQ=; h=From:To:Subject:In-Reply-To:References:Date; b=Kb0fAPOiq7VhyEZU19lmmHNu9jniG21MnasGnZqtSb8bOmtrT4SHplrxB8XQGB6Pv 6lfWLzGjYFUs1D7mnsUqNndhDe7aD7O2Q1+bvE4LNEI1pDdtiHdgsffYaoYJv8T634 dsurcLxsYniel5KLSblPOqJE0V6HnUnN7Q8RC9hU= In-Reply-To: References: Message-Id: <25f4c5212f9461bd14f668b3fbd9ccb80f8bc5a4.1644147246.git.public@yoctocell.xyz> Date: Sun, 06 Feb 2022 14:00:28 +0100 MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list 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/git-download.scm: Export record. --- guix/git-download.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/guix/git-download.scm b/guix/git-download.scm index 5e624b9ae9..43424f2f19 100644 --- a/guix/git-download.scm +++ b/guix/git-download.scm @@ -44,7 +44,8 @@ (define-module (guix git-download) #:use-module (srfi srfi-1) #:use-module (srfi srfi-34) #:use-module (srfi srfi-35) - #:export (git-reference + #:export ( + git-reference git-reference? git-reference-url git-reference-commit From patchwork Sun Feb 6 13:00:37 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Xinglu Chen X-Patchwork-Id: 37019 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 3BA3827BBE9; Sun, 6 Feb 2022 13:03:12 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,FROM_SUSPICIOUS_NTLD,MAILING_LIST_MULTI,PDS_OTHER_BAD_TLD, SPF_HELO_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 2E79D27BBEA for ; Sun, 6 Feb 2022 13:03:11 +0000 (GMT) Received: from localhost ([::1]:49460 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nGhCA-0007ze-Af for patchwork@mira.cbaines.net; Sun, 06 Feb 2022 08:03:10 -0500 Received: from eggs.gnu.org ([209.51.188.92]:45600) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nGhA7-0007xO-LB for guix-patches@gnu.org; Sun, 06 Feb 2022 08:01:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:42845) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nGhA6-000874-EG for guix-patches@gnu.org; Sun, 06 Feb 2022 08:01:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1nGhA6-0006rj-Ec for guix-patches@gnu.org; Sun, 06 Feb 2022 08:01:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#53818] [PATCH 2/3] import: Add 'repology' updater. Resent-From: Xinglu Chen Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 06 Feb 2022 13:01:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53818 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 53818@debbugs.gnu.org Received: via spool by 53818-submit@debbugs.gnu.org id=B53818.164415245026348 (code B ref 53818); Sun, 06 Feb 2022 13:01:02 +0000 Received: (at 53818) by debbugs.gnu.org; 6 Feb 2022 13:00:50 +0000 Received: from localhost ([127.0.0.1]:36738 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGh9r-0006qp-3P for submit@debbugs.gnu.org; Sun, 06 Feb 2022 08:00:50 -0500 Received: from h178-251-242-94.cust.a3fiber.se ([178.251.242.94]:59566 helo=mail.yoctocell.xyz) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGh9p-0006qY-Je for 53818@debbugs.gnu.org; Sun, 06 Feb 2022 08:00:46 -0500 From: Xinglu Chen DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yoctocell.xyz; s=mail; t=1644152438; bh=S5OekjJ2N4vruz0JVpeRRmwYuEgUgM5YHEZ0vPFbk88=; h=From:To:Subject:In-Reply-To:References:Date; b=d6vc96Bg90kUnxzVrd88UV0Uof3XSk7jOPXDv9ZRH48GYnq0oYLIZqZGSznx50LIz EQonpbq3z63nUK++Rw5a6soxGkrs76uiiTA+Ysd4Isn9v3qoOrc6xXmBqYCrjHGoHm Kmae7aKVg6CO5Pmck/ngK6vIMxw7845rbdsC6HIA= In-Reply-To: References: Message-Id: <88f866aff65c0ec9611b6cc0ee9d680ba711df38.1644147246.git.public@yoctocell.xyz> Date: Sun, 06 Feb 2022 14:00:37 +0100 MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list 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/import/repology.scm * tests/import-repology.scm: New files. * Makefile.am (MODULES): Register them. * doc/guix.texi (Invoking guix refresh): Document it. --- Makefile.am | 3 + doc/guix.texi | 7 ++ guix/import/repology.scm | 226 ++++++++++++++++++++++++++++++++++++++ tests/import-repology.scm | 145 ++++++++++++++++++++++++ 4 files changed, 381 insertions(+) create mode 100644 guix/import/repology.scm create mode 100644 tests/import-repology.scm diff --git a/Makefile.am b/Makefile.am index 7463606d20..6792917b59 100644 --- a/Makefile.am +++ b/Makefile.am @@ -16,6 +16,7 @@ # Copyright © 2019 Efraim Flashner # Copyright © 2021 Chris Marusich # Copyright © 2021 Andrew Tropin +# Copyright © 2022 Xinglu Chen # # This file is part of GNU Guix. # @@ -271,6 +272,7 @@ MODULES = \ guix/import/opam.scm \ guix/import/print.scm \ guix/import/pypi.scm \ + guix/import/repology.scm \ guix/import/stackage.scm \ guix/import/texlive.scm \ guix/import/utils.scm \ @@ -488,6 +490,7 @@ SCM_TESTS = \ tests/home-import.scm \ tests/import-git.scm \ tests/import-github.scm \ + tests/import-repology.scm \ tests/import-utils.scm \ tests/inferior.scm \ tests/lint.scm \ diff --git a/doc/guix.texi b/doc/guix.texi index 0cf865a672..15d215dd48 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -12932,6 +12932,13 @@ (release-tag-version-delimiter . ":")))) @end lisp +@item repology +an updater that scans @uref{https://repology.org, Repology}, a website +that tracks packages on various package repositories, for updates. + +The name of a package in Guix is not always that same as the name on +Repology; users can set the @code{repology-name} package property to +make the updater use the correct name. @end table diff --git a/guix/import/repology.scm b/guix/import/repology.scm new file mode 100644 index 0000000000..1d88022c1d --- /dev/null +++ b/guix/import/repology.scm @@ -0,0 +1,226 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2022 Xinglu Chen +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (guix import repology) + #:use-module (guix diagnostics) + #:use-module (guix diagnostics) + #:use-module (guix git-download) + #:use-module (guix i18n) + #:use-module (guix import json) + #:use-module (guix import utils) + #:use-module (guix memoization) + #:use-module (guix packages) + #:use-module (guix upstream) + #:use-module (guix utils) + #:use-module (ice-9 match) + #:use-module (json) + #:use-module (srfi srfi-1) + #:use-module (srfi srfi-2) + #:use-module (srfi srfi-26) + #:use-module (srfi srfi-43) + #:export (repology-latest-release + %repology-updater)) + +;;; Commentary: +;;; +;;; This module provides an updater which scans Repology, a site that monitors +;;; several package repolsitories, for updates. This means that if any other +;;; package repository has a version of a package that is newer than the +;;; version in Guix, the package should be able to be updated. The updater +;;; should in theory work for all packages in Guix, but the names of some +;;; packages on Repology don't match the name in Guix. The 'repology-name' +;;; package property can be used to fix this. +;;; +;;; Guix already has many different updaters for language-specific packages, +;;; and these typically provide more accurate data, e.g., input changes, +;;; signature URLs. The Repology updater should really be treated as a last +;;; resort for those packages that don't have any other updater to rely on. +;;; +;;; See for the API. +;;; +;;; Code: + +(define %repology-url + "https://repology.org/api/v1/project") + +(define* (package-name->repology-name name #:key (attempt 1)) + "Convert NAME, the name of a Guix package, to the name of the package on +Repology. It doesn't always guess the correct name on the first attempt, so +on the second attempt it will try to guess another name." + (match attempt + (1 (cond + ((string-prefix? "ghc-" name) + (string-append "haskell:" + (string-drop name (string-length "ghc-")))) + ((string-prefix? "ocaml-" name) + (string-append "ocaml:" + (string-drop name (string-length "ocaml-")))) + ((string-prefix? "perl-" name) + (string-append "perl:" + (string-drop name (string-length "perl-")))) + ((string-prefix? "emacs-" name) + (string-append "emacs:" + (string-drop name (string-length "emacs-")))) + ((string-prefix? "go-" name) + (string-append "go:" + (string-drop name (string-length "go-")))) + ((string-prefix? "rust-" name) + (string-append "rust:" + (string-drop name (string-length "rust-")))) + ((string-prefix? "lua-" name) + (string-append "lua:" + (string-drop name (string-length "lua-")))) + ((string-prefix? "node-" name) + (string-append "node:" + (string-drop name (string-length "node-")))) + ((string-prefix? "python-" name) + (string-append "python:" + (string-drop name (string-length "python-")))) + ((string-prefix? "java-" name) + (string-append "java:" + (string-drop name (string-length "java-")))) + ((string-prefix? "r-" name) + (string-append "r:" + (string-drop name (string-length "r-")))) + ((string-prefix? "ruby-" name) + (string-append "ruby:" + (string-drop name (string-length "ruby-")))) + ((string-prefix? "xf86-" name) + (string-append "xdrv:" + (string-drop name (string-length "xf86-")))) + ((string-prefix? "font-" name) + (string-append "fonts:" + (string-drop name (string-length "font-")))) + (else name))) + (2 (cond + ((string-prefix? "xf86-video" name) + (string-append "xdrv:" + (string-drop name (string-length "xf86-video-")))) + ((string-prefix? "xf86-input" name) + (string-append "xdrv:" + (string-drop name (string-length "xf86-input-")))) + (else name))))) + + +;;; JSON mappings. + +(define-json-mapping make-repology-package + repology-package? + json->repology-package + (repository repology-package-repository "repo") + (src-name repology-package-src-name "srcname") + (binary-name repology-package-binary-name "binname") + (visible-name repology-package-visible-name "visiblename") + (version repology-package-version) + (original-version repology-package-original-version "origversion") + (status repology-package-status) + (summary repology-package-summary) + (categories repology-package-categories) + (licenses repology-package-licenses) + (maintainers repology-package-maintainers)) + + +;;; Updater. + +(define repology-fetch-info + (memoize + (lambda (package) + "Fetch information about PACKAGE using the Repology API." + (define (name->info name ) + (let ((url (string-append %repology-url "/" name))) + (and=> (json-fetch url) + (lambda (url) + (vector-map (lambda (a b) + (json->repology-package b)) + url))))) + + (let* ((name (or (assoc-ref (package-properties package) + 'repology-name) + (package-name->repology-name (package-name package)))) + (info (name->info name))) + (if (and info (not (vector-empty? info))) + info + (let ((info (name->info (package-name->repology-name + (package-name package) + #:attempt 2)))) + (if (and info (not (vector-empty? info))) + info + (begin + (warning (G_ "package not found on Repology: ~a\n") + (package-name package)) + #f)))))))) + +(define (update-url url old-version new-version) + "Replace OLD-VERSION in URL with NEW-VERSION." + (match (factorize-uri url old-version) + ((? string? uri) #f) + ((factorized ...) + (apply string-append + (map (lambda (component) + (match component + ('version new-version) + ((? string?) component))) + factorized))))) + +(define (package-source-urls package version) + "Return a list of URLs for PACKAGE at VERSION. If no URL was successfully constructed, return #f." + (let ((old-version (package-version package))) + ;; XXX: (guix upstream) only supports tarballs and Git repos for now. + (match (origin-uri (package-source package)) + (($ url commit recursive?) + (and-let* ((updated-commit (if (string=? old-version commit) + version + (update-url commit old-version version)))) + (list (git-reference + (url url) + (commit updated-commit) + (recursive? recursive?))))) + ((? string? url) + (list (update-url url old-version version))) + ((? list? urls) + (map (cut update-url <> old-version version) urls)) + (_ #f)))) + +(define (stable-version? repology-package) + (and (or (equal? "newest" (repology-package-status repology-package)) + (equal? "unique" (repology-package-status repology-package))) + (repology-package-version repology-package))) + +;; XXX: 'package' will clash with the 'package' field of 'upstream-source'. +(define (repology-latest-release pkg) + "Return the latest release of the PKG on Repology named NAME." + (and-let* ((packages (repology-fetch-info pkg)) + (versions (filter-map stable-version? + (vector->list packages))) + (latest-version (if (null? versions) + #f + (car versions)))) + ;; TODO: set 'signature-urls'. + (upstream-source + (package (package-name pkg)) + (version latest-version) + (urls (package-source-urls pkg latest-version))))) + +(define %repology-updater +(upstream-updater + (name 'repology) + (description "Updater for packages on Repology") + (pred (const #t)) + (latest repology-latest-release))) + +;;; repology.scm ends here diff --git a/tests/import-repology.scm b/tests/import-repology.scm new file mode 100644 index 0000000000..f95071ce07 --- /dev/null +++ b/tests/import-repology.scm @@ -0,0 +1,145 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2022 Xinglu Chen +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (test-import-repology) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module (guix import repology) + #:use-module (guix packages) + #:use-module (guix tests) + #:use-module (guix upstream) + #:use-module (json) + #:use-module (srfi srfi-64)) + +(test-begin "repology") + +(define package-using-git-repository + (dummy-package + "foo" + (version "1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://git.example.org/foo") + (commit "1.0"))) + (sha256 #f))))) + +(define package-using-tarball + (dummy-package + "foo" + (version "1.0") + (source + (origin + (method git-fetch) + (uri (string-append "https://example.org/foo-" version ".tar.gz")) + (sha256 #f))))) + +(define package-using-tarball-multiple-urls + (dummy-package + "foo" + (version "1.0") + (source + (origin + (method git-fetch) + (uri (list (string-append "https://example.org/foo-" + version ".tar.gz") + (string-append "https://mirror.example.org/foo-" + version ".tar.gz"))) + (sha256 #f))))) + +(define %test-json +"[ + { + \"repo\": \"aur\", + \"srcname\": \"foo\", + \"binname\": \"foo\", + \"visiblename\": \"foo\", + \"version\": \"1.0.r25.gb86405a\", + \"maintainers\": [ + \"bob@aur\" + ], + \"licenses\": [ + \"LGPL3+\" + ], + \"summary\": \"foo bar\" + \"status\": \"rolling\", + \"origversion\": \"1.0.r25.gb86405a-1\" + }, + { + \"repo\": \"gnuguix\", + \"srcname\": \"foo\", + \"binname\": \"foo\", + \"visiblename\": \"foo\", + \"version\": \"1.0\", + \"summary\": \"foo bar\", + \"status\": \"outdated\", + \"origversion\": null + }, + { + \"repo\": \"nix_unstable\", + \"name\": \"foo\", + \"visiblename\": \"foo\", + \"version\": \"2.0\", + \"maintainers\": [ + \"bob@example.org\" + ], + \"licenses\": [ + \"LGPL-3.0-or-later\" + ], + \"summary\": \"foo bar\", + \"status\": \"newest\", + \"origversion\": null + } +]") + +(define (latest-release package) + (mock ((guix import json) json-fetch + (lambda (url) + (json-string->scm %test-json))) + (repology-latest-release package))) + +(test-equal "package using Git repo: version" + "2.0" + (upstream-source-version + (latest-release package-using-git-repository))) + +(test-equal "package using Git repo: git-reference" + (list (git-reference + (url "https://git.example.org/foo") + (commit "2.0"))) + (upstream-source-urls + (latest-release package-using-git-repository))) + +(test-equal "package using tarball: version" + "2.0" + (upstream-source-version + (latest-release package-using-tarball))) + +(test-equal "package using tarball: URL" + (list "https://example.org/foo-2.0.tar.gz") + (upstream-source-urls + (latest-release package-using-tarball))) + +(test-equal "package using tarball: multiple URLs" + (list "https://example.org/foo-2.0.tar.gz" + "https://mirror.example.org/foo-2.0.tar.gz") + (upstream-source-urls + (latest-release package-using-tarball-multiple-urls))) + +(test-end "repology") From patchwork Sun Feb 6 13:00:48 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Xinglu Chen X-Patchwork-Id: 37018 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 2A5F327BBE9; Sun, 6 Feb 2022 13:03:11 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,FROM_SUSPICIOUS_NTLD,MAILING_LIST_MULTI,PDS_OTHER_BAD_TLD, SPF_HELO_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 044CC27BBE9 for ; Sun, 6 Feb 2022 13:03:11 +0000 (GMT) Received: from localhost ([::1]:49468 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nGhCA-000803-50 for patchwork@mira.cbaines.net; Sun, 06 Feb 2022 08:03:10 -0500 Received: from eggs.gnu.org ([209.51.188.92]:45598) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nGhA7-0007xN-LH for guix-patches@gnu.org; Sun, 06 Feb 2022 08:01:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:42846) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nGhA6-000875-Qn for guix-patches@gnu.org; Sun, 06 Feb 2022 08:01:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1nGhA6-0006rq-Qo for guix-patches@gnu.org; Sun, 06 Feb 2022 08:01:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#53818] [PATCH 3/3] gnu: xorg-server-xwayland: Set 'repology-name' property. Resent-From: Xinglu Chen Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 06 Feb 2022 13:01:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 53818 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 53818@debbugs.gnu.org Received: via spool by 53818-submit@debbugs.gnu.org id=B53818.164415245626364 (code B ref 53818); Sun, 06 Feb 2022 13:01:02 +0000 Received: (at 53818) by debbugs.gnu.org; 6 Feb 2022 13:00:56 +0000 Received: from localhost ([127.0.0.1]:36741 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGh9z-0006rA-Pi for submit@debbugs.gnu.org; Sun, 06 Feb 2022 08:00:55 -0500 Received: from h178-251-242-94.cust.a3fiber.se ([178.251.242.94]:59572 helo=mail.yoctocell.xyz) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGh9y-0006qs-Cv for 53818@debbugs.gnu.org; Sun, 06 Feb 2022 08:00:54 -0500 From: Xinglu Chen DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yoctocell.xyz; s=mail; t=1644152448; bh=EoU2iH+NVaoYwUi51efylRJKNutdEcvEzLEwv5X2Mkg=; h=From:To:Subject:In-Reply-To:References:Date; b=NP6CgQ17Y18feWSoxDkkJxHD6McNDXU56tEpYdcGr9TtkbIwZAEBJkUeg0AdtmnHX SHV11YewCo1zzRwcPzbjkaYkUBs2BGhj1ODlU3tnzNmUADERCeRkUITj8om+Mz7+HE NpBp0DltIj0/U/Q8ehGYL6upoVV3l8YTpFiOSt9c= In-Reply-To: References: Message-Id: Date: Sun, 06 Feb 2022 14:00:48 +0100 MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list 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 * gnu/packages/xorg.scm (xorg-server-xwayland):[properties]: Set 'repology-name'. --- gnu/packages/xorg.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 14e35d19ae..ee45630596 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -5520,6 +5520,8 @@ (define-public xorg-server-xwayland (lambda _ (substitute* (find-files "." "\\.c$") (("/bin/sh") (which "sh")))))))) + (properties + '((repology-name . "xwayland"))) (synopsis "Xorg server with Wayland backend") (description "Xwayland is an X server for running X clients under Wayland.")