table of contents
DH-MAKE-RAKU(1p) | User Contributed Perl Documentation | DH-MAKE-RAKU(1p) |
NAME¶
dh-make-raku - Create debian source package from Raku module
SYNOPSIS¶
# Create a new package dh-make-raku --git=<git_url> --pkg=<pkg-name> --tag=<upstream_release_tag> # refresh a package (to be run in package dir) dh-make-raku
REQUIREMENTS¶
This script requires:
- An account on Salsa and be part of Raku package team. See How to get involved <https://wiki.debian.org/Teams/DebianRakudoGroup#How_to_get_involved> wiki page.
- Git credentials for Salsa. See "Git credentials" section.
- Quilt <https://tracker.debian.org/pkg/quilt> installed and configured. The installation should be done when install "dh-make-raku", but the configuration must be done in your home directory. Please see Using Quilt <https://wiki.debian.org/UsingQuilt> wiki page.
- A specific directory layout. See "Directory layout" section.
DESCRIPTION¶
When fed a "git" upstream URL, dh-make-raku does the following tasks:
- Clone upstream repository in "upstream" branch
- Create the files required to build a debian source package on "debian/sid" branch.
- Commit these files
- Create a Raku module project on Debian's salsa
- Setup "origin" remote on Salsa
- If the package is part of Rakudo Star <https://github.com/rakudo/star>, check or update the dependency list of raku <https://tracker.debian.org/pkg/raku> package. (<raku> package is expected to be in "../../raku").
This works for most simple packages and is also useful for getting started with packaging Raku modules.
Create package files¶
Directory layout¶
Your Raku work zone is expected to have this layout:
. |-- modules | |-- raku-module-1 | |-- raku-module-2 | |-- etc... `-- raku `-- debian `-- control
Updates of raku package dependencies are skipped if "dh-make-raku" cannot find "raku" package in "../../raku".
With upstream release tag¶
To create a new package, you must have:
- The URL of the git repository of the new module. Only "https" style URL are supported.
- Debian package name. Usually "raku-something"
- The upstream tag of the release to be packaged. See below if upstream does not use tags.
Then run a command like:
dh-make-raku --git=<git_url> --pkg=<pkg-name> --tag=<upstream_release_tag>
For instance:
dh-make-raku --git=https://git.tyil.nl/raku/Log --pkg=raku-log --tag=v0.3.1
Without upstream release tag¶
In this case, you must use a git reference instead of a tag. Usually "HEAD" is good enough. "dh-make-raku" will get upstream version from "META6.json"
For instance:
dh-make-raku --tag HEAD --git https://github.com/tadzik/File-Find.git --pkg raku-file-find
Build the package¶
Run:
gbp buildpackage --git-pristine-tar --git-pristine-tar-commit --git-debian-branch=debian/sid
Options¶
Git credentials¶
Be default, "dh-make-raku" gets git credentials from "~/.git-credentials" file.
If this file is not available, Salsa credentials must be provided with "DRT_SALSA_USER" and "DRT_SALSA_PRIVATE_TOKEN" environment variables.
For what it's worth, "DRT" means "Debian Raku Team".
BUGS¶
- •
- Dependencies are not yet managed.
AUTHOR¶
2022-06-28 | perl v5.34.0 |