USCAN-TEMPLATES(5)

πŸ“¦
version 2.26.11ubuntu1 Β· 3 versions
, in ubuntu stonking

πŸ’… USCAN-TEMPLATES(5) β€” the manual page, bestie edition ✨

okay so this is uscan-templates(5), and it's literally just the tea on which templates uscan(1) has available for you. no cap, it's short and it slaps.


🌸 NAME 🌸

uscan-templates β€” the available templates for uscan(1). that's it. that's the whole vibe. πŸ’–


πŸŽ€ USING TEMPLATES πŸŽ€

Templates are the glow-up for your debian/watch file. instead of writing a whole scavenger hunt in there, you just say which template you want and drop in the specific args. it's giving simplicity. it's giving main character energy.

Example:

Version: 5

Template: GitHub
Dist: https://github.com/guimard/llng-docker

Or, if you'd rather split it up:

Version: 5

Template: GitHub
Owner: guimard
Project: llng-docker

and you can still pile other parameters on top like normal, it's not a one-or-the-other situation bestie:

Version: 5

Template: GitHub
Owner: guimard
Project: llng-docker
Version-Mangle: auto

✨ AVAILABLE TEMPLATES ✨

here's the full roster, the whole friend group:

  • "Bioconductor"
  • "CRAN"
  • "GitHub"
  • "GitLab"
  • "Metacpan"
  • "Npmregistry"
  • "Pypi"

🧬 Bioconductor 🧬

This template fetches a Bioconductor R package's source from bioconductor.org, the main mirror. very demure, very mindful, very main-mirror. πŸ‘‘

Specific parameters

  • Package β€” name of the package.

Example

Version: 5

Template: Bioconductor
Package: IRanges

πŸ“Š CRAN πŸ“Š

This template fetches a CRAN (Complete R Archive Network) package's source from cran.r-project.org, the main mirror. yes, the main mirror again. we love consistency. 🫢

Specific parameters

  • Package β€” name of the package.

Example

Version: 5

Template: CRAN
Package: vegan

πŸ™ GitHub πŸ™

This template uses the GitHub API to find archives to download. slay, API girlies. πŸ’…

Specific parameters

  • Dist β€” URL to the project.
  • Owner <owner> β€” (ignored if "Dist" is used).
  • Project <project> β€” (ignored if "Dist" is used).
  • Release-Only <yes> β€” when set, search only in "/releases" instead of "/tags".
  • Version-Type β€” (default: ANY_VERSION): by default, templates use the ANY_VERSION macro to find valid version. You can override this here using a valid macro name (ANY_VERSION or STABLE_VERSION or SEMANTIC_VERSION).
  • Custom-Version β€” (capturing version regexp): Use a custom version regexp. Syntax is the same used for versions in Matching-Pattern. Example:
Custom-Version: v(0\.7\.\d+)

This parameter takes precedence over Version-Type and can use its valid macro names, like in

Custom-Version: version_@ANY_VERSION@

Example

Using the Dist parameter:

Version: 5

Template: GitHub
Dist: https://github.com/guimard/llng-docker

Using the Owner and Project parameters:

Version: 5

Template: GitHub
Owner: guimard
Project: llng-docker

🦊 GitLab 🦊

This template uses Mode: gitlab to download package. periodt.

Specific parameters

  • Dist β€” URL to the project.
  • Release-Only <yes> β€” when set, search only in "/releases" instead of "/tags".
  • Version-Type β€” (default: ANY_VERSION): by default, templates use the ANY_VERSION macro to find valid version. You can override this here using a valid macro name (ANY_VERSION or STABLE_VERSION or SEMANTIC_VERSION).
  • Custom-Version β€” (capturing version regexp): Use a custom version regexp. Syntax is the same used for versions in Matching-Pattern. Example:
Custom-Version: v(0\.7\.\d+)

This parameter takes precedence over Version-Type and can use its valid macro names, like in

Custom-Version: version_@ANY_VERSION@

Example

Version: 5

Template: GitLab
Dist: https://salsa.debian.org/debian/devscripts

πŸͺ Metacpan πŸͺ

This template uses MetaCPAN::Client(3pm) to download package. perl besties rise up 🧚

Specific parameters

  • Dist β€” distribution name (with "::" or "-").
  • Version-Type β€” (default: ANY_VERSION): by default, templates use the ANY_VERSION macro to find valid version. You can override this here using a valid macro name (ANY_VERSION or STABLE_VERSION or SEMANTIC_VERSION).
  • Maturity β€” (default: released): kind of CPAN releases to consider. Developer releases (versions containing a _, archives with a -TRIAL suffix, ...) are skipped by default. Set it to developer to look only at them, or to any to look at all releases. See debian-watch(5).

Example

Version: 5

Template: Metacpan
Dist: MetaCPAN-Client

πŸ“¦ Npmregistry πŸ“¦

no extra intro here, straight to business. iconic honestly.

Specific parameters

  • Dist β€” distribution name.
  • Version-Type β€” (default: ANY_VERSION): by default, templates use the ANY_VERSION macro to find valid version. You can override this here using a valid macro name (ANY_VERSION or STABLE_VERSION or SEMANTIC_VERSION).

Example

Version: 5

Template: Npmregistry
Dist: @lemonldapng/handler

🐍 Pypi 🐍

This template uses pypi.debian.net to download the tarball. delulu? no. it's just efficient πŸ’œ

Specific parameters

  • Dist β€” name of the project.
  • Version-Type β€” (default: ANY_VERSION): by default, templates use the ANY_VERSION macro to find valid version. You can override this here using a valid macro name (ANY_VERSION or STABLE_VERSION or SEMANTIC_VERSION).

Example

Version: 5

Template: Pypi
Dist: bitbox02

πŸ› οΈ Adding templates πŸ› οΈ

so you wanna be the template? obsessed. if you want to add a template in uscan, the documentation lives here:

$ perldoc /usr/share/perl5/Devscripts/Uscan/Templates.pod

Then build a merge-request into the devscripts project <https://salsa.debian.org/debian/devscripts>. go off, contribute, we're rooting for you 🫢✨


πŸ‘‘ Authors πŸ‘‘

  • Xavier Guimard <yadd@debian.org>

that's the whole page, bestie β€” courtesy of Debian Utilities, dated 2026-09-21, filed under USCAN-TEMPLATES(5). go write a watch file that eats πŸ’…πŸŒˆβ­

πŸ“¦ where this page comes from