dh-make-raku - Create debian source package from Raku module
Contents
Bugs
• I could not find a way to extract a description from markdown documentation. So you'll have to
manually edit this field in "debian/control" or with "cme edit dpkg-control".
• The content of the generated "debian/gbp.conf" may have the wrong version tag. Edit this file
manually if "gbp build-package" complains about missing tarball.
• The generated "debian/copyright" file is somewhat too verbose. This file is generated by cme
<https://manpages.debian.org/unstable/cme/cme.1p.en.html>. I'm working on improving this. See cme
wiki on dpkg-copyright <https://github.com/dod38fr/config-model/wiki/Updating-debian-copyright-file-
with-cme> if you want to work around generation issues.
Build The Package
Run:
gbp buildpackage
Change Upstream Remote Url
To update upstream remote URL and its homepage, run
dh-make-raku -git <new_remote>
Then "dh-make-raku" updates git remote, all reference of upstream home page in debian files.
Create Package Files
Withupstreamreleasetag
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
Withoutupstreamreleasetag
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
Description
When fed a "git" upstream URL, dh-make-raku does the following tasks:
• Clone upstream repository and setup an "upstream" branch with an "upstream-git" remote.
• 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
This works for most simple packages and is also useful for getting started with packaging Raku modules.
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".
Name
dh-make-raku - Create debian source package from Raku module
Options
--git
URL of the package repository.
--pkg
Debian package name.
--tag
Upstream tag or a git reference.
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 installing "dh-make-raku", but the configuration must be done in your home directory.
Please see Using Quilt <https://wiki.debian.org/UsingQuilt> wiki page.
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
# get new release from upstream
dh-make-raku --upgrade <new_upstream_version>
Update A Package
Run
dh-make-raku --upgrade <new_upstream_version>
This command update the "upstream" branch and merge it in "debian/sid" branch and then update debian
files.
