logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

dh-make-raku - Create debian source package from Raku module

Author

       Dominique Dumont <dod@debian.org>

perl v5.40.0                                       2024-10-16                                   DH-MAKE-RAKU(1p)

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.

See Also