unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#53818] [PATCH 0/3] Add Repology updater
@ 2022-02-06 11:50 Xinglu Chen
  2022-02-06 12:41 ` Maxime Devos
                   ` (5 more replies)
  0 siblings, 6 replies; 60+ messages in thread
From: Xinglu Chen @ 2022-02-06 11:50 UTC (permalink / raw)
  To: 53818

[-- Attachment #1: Type: text/plain, Size: 1762 bytes --]

Hi,

This patchset adds a new updater, which scans Repology[1] for updates.
It should technically support all packages in Guix!  :-)

The data on Repology isn’t as detailed as the one on language-specific
repos, e.g., PyPI, so the updater doesn’t support things like ‘input
changes’.  If the source URL doesn’t contain the version verbatim[2], it
won’t be able reconstruct the URL of the updated version, meaning that
‘guix refresh -u’ won’t work.

Because of the way ‘%updaters’ in (guix upstream) works, the Repology
updater is the first or second updater that is used (since it
technically works on ever package), but because of the limitations I
mentioned above, the result might not always be the best.  The Repology
updater is mostly useful for things that don’t already have an updater,
e.g., ‘maven-dependency-tree’.  Would it make sense to hard-code the
‘%updaters’ variable and put the Repology last in the list?

[1]: <https://repology.org>
[2]: e.g., the version is “1.0.0” but the URL is
     “https://example.org/1_0_0.tar.gz”

Xinglu Chen (3):
  git-download: Export <git-reference>.
  import: Add 'repology' updater.
  gnu: xorg-server-xwayland: Set 'repology-name' property.

 Makefile.am               |   3 +
 doc/guix.texi             |   7 ++
 gnu/packages/xorg.scm     |   2 +
 guix/git-download.scm     |   3 +-
 guix/import/repology.scm  | 226 ++++++++++++++++++++++++++++++++++++++
 tests/import-repology.scm | 145 ++++++++++++++++++++++++
 6 files changed, 385 insertions(+), 1 deletion(-)
 create mode 100644 guix/import/repology.scm
 create mode 100644 tests/import-repology.scm


base-commit: 7c9ad54b0616112c7eea6dd02379616aef206490
-- 
2.34.1




[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]

^ permalink raw reply	[flat|nested] 60+ messages in thread

end of thread, other threads:[~2022-03-03 21:29 UTC | newest]

Thread overview: 60+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-02-06 11:50 [bug#53818] [PATCH 0/3] Add Repology updater Xinglu Chen
2022-02-06 12:41 ` Maxime Devos
2022-02-06 15:17   ` Xinglu Chen
2022-02-06 13:00 ` [bug#53818] [PATCH 1/3] git-download: Export <git-reference> Xinglu Chen
2022-02-06 13:00 ` [bug#53818] [PATCH 2/3] import: Add 'repology' updater Xinglu Chen
2022-02-06 13:11   ` Maxime Devos
2022-02-06 15:18     ` Xinglu Chen
2022-02-06 13:13   ` Maxime Devos
2022-02-06 15:26     ` Xinglu Chen
2022-02-06 13:13   ` Maxime Devos
2022-02-06 13:17   ` Maxime Devos
2022-02-06 15:32     ` Xinglu Chen
2022-02-06 13:18   ` Maxime Devos
2022-02-06 15:34     ` Xinglu Chen
2022-02-06 15:36       ` Maxime Devos
2022-02-06 13:19   ` Maxime Devos
2022-02-06 13:23   ` Maxime Devos
2022-02-06 15:41     ` Xinglu Chen
2022-02-06 13:23   ` Maxime Devos
2022-02-06 15:42     ` Xinglu Chen
2022-02-06 13:00 ` [bug#53818] [PATCH 3/3] gnu: xorg-server-xwayland: Set 'repology-name' property Xinglu Chen
2022-02-06 14:15   ` Maxime Devos
2022-02-07  9:06 ` [bug#53818] [PATCH v2 0/7] Add Repology updater Xinglu Chen
2022-02-07  9:06   ` [bug#53818] [PATCH v2 1/7] upstream: Sort list of updaters Xinglu Chen
2022-02-07  9:06   ` [bug#53818] [PATCH v2 2/7] http-client: Make 'http-fetch/cached' take '#:headers' argument Xinglu Chen
2022-02-07  9:06   ` [bug#53818] [PATCH v2 3/7] http-client: 'http-fetch/cached' accepts a string or a <uri> Xinglu Chen
2022-02-07  9:07   ` [bug#53818] [PATCH v2 4/7] import: json: Make 'json-fetch' take '#:cached?' argument Xinglu Chen
2022-02-07  9:44     ` Maxime Devos
2022-02-07  9:07   ` [bug#53818] [PATCH v2 5/7] import: Add 'repology' updater Xinglu Chen
2022-02-07  9:45     ` Maxime Devos
2022-02-07  9:50     ` Maxime Devos
2022-02-08 12:29       ` Xinglu Chen
2022-02-08 12:49         ` Maxime Devos
2022-02-09 12:54           ` Xinglu Chen
2022-02-07  9:07   ` [bug#53818] [PATCH v2 6/7] gnu: xorg-server-xwayland: Set 'repology-name' property Xinglu Chen
2022-02-07  9:07   ` [bug#53818] [PATCH v2 7/7] gnu: xorg-server-xwayland: Prepare for cross-compilation Xinglu Chen
2022-02-09 13:22   ` [bug#53818] [PATCH v3 0/7] Add Repology updater Xinglu Chen
2022-02-09 13:24     ` [bug#53818] [PATCH v3 1/7] upstream: Sort list of updaters Xinglu Chen
2022-02-09 13:24     ` [bug#53818] [PATCH v3 2/7] http-client: Make 'http-fetch/cached' take '#:headers' argument Xinglu Chen
2022-02-09 13:24     ` [bug#53818] [PATCH v3 3/7] http-client: 'http-fetch/cached' accepts a string or a <uri> Xinglu Chen
2022-02-09 13:25     ` [bug#53818] [PATCH v3 4/7] import: json: Make 'json-fetch' take '#:http-fetch' argument Xinglu Chen
2022-02-09 13:25     ` [bug#53818] [PATCH v3 5/7] import: Add 'repology' updater Xinglu Chen
2022-02-09 13:25     ` [bug#53818] [PATCH v3 6/7] gnu: xorg-server-xwayland: Set 'repology-name' property Xinglu Chen
2022-02-09 13:25     ` [bug#53818] [PATCH v3 7/7] gnu: xorg-server-xwayland: Prepare for cross-compilation Xinglu Chen
2022-02-08 22:59 ` [bug#53818] [PATCH 0/3] Add Repology updater Ludovic Courtès
2022-02-09 12:52   ` Xinglu Chen
2022-02-09 14:29     ` Nicolas Goaziou
2022-02-10 18:17       ` Xinglu Chen
2022-02-10 19:30         ` Nicolas Goaziou
2022-02-10 20:49     ` Ludovic Courtès
2022-02-14 10:40       ` Nicolas Goaziou
2022-02-14 16:07         ` Maxime Devos
2022-02-14 16:58         ` Ludovic Courtès
2022-02-14 18:42           ` Nicolas Goaziou
2022-02-15  9:57             ` [bug#53818] Improving updaters and ‘guix refresh’ Ludovic Courtès
2022-02-16 12:43               ` Nicolas Goaziou
2022-02-17 10:35                 ` Ludovic Courtès
2022-02-17 11:17                   ` zimoun
2022-02-18 10:28                     ` Nicolas Goaziou
2022-03-03 21:28                       ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).