dh-make-golang

Automatically creates Debian packaging for Go packages

BSD-3-CLAUSE License

Downloads
85
Stars
375

dh-make-golang is a tool to automatically create Debian packaging for Go packages. Its goal is to automate away as much of the work as possible when creating a Debian package for a Go library package or Go program.

Overview

All you need to specify is a Go package name. In your current working directory, a new directory will be created containing a git repository. Inside that repository, youll find the Go packages source code plus the necessary Debian packaging files to build a Debian package. The packaging adheres to the pkg-go packaging guidelines and hence can be placed alongside the other team-maintained packages in pkg-go, hosted on Debians salsa.

Usage/example

For an introductory example, see this annotated demonstration of how to use dh-make-golang.

dh-make-golangs usage of the internet

dh-make-golang makes heavy use of online resources to improve the resulting package. In no particular order and depending on where your package is hosted, dh-make-golang may query:

  • By virtue of using go get, the specified Go package and all of its
    dependencies will be downloaded. This step can quickly cause dozens of
    megabytes to be transferred, so be careful if you are on a metered internet
    connection.
  • The output of
    filter-packages.sh,
    hosted on https://people.debian.org/~stapelberg/dh-make-golang/. This is used
    to figure out whether dependencies are already packaged in Debian, and
    whether you are about to duplicate somebody elses work.
  • GitHubs API, to get the license, repository creator, description and README
    for Go packages hosted on GitHub.