DH_OCTAVE_MAKE(1)

πŸ¦‹ DH_OCTAVE_MAKE β€” bestie's guide to the dh-octave manual πŸ’–

okay so imagine you have an Octave add-on package and you need a Debian package out of it and you're like "where do I even start" β€” this is literally the page for you. it's from the dh-octave manual, and we're gonna go through it together, no cap ✨


🌸 NAME 🌸

dh_octave_make β€” generates a Debian package from the sources of an Octave add-on package. it's giving "glow up your sources into a .deb", fr fr πŸ‘‘


⭐ SYNOPSIS ⭐

dh_octave_make

that's it. that's the whole invocation. no flags, no args, just vibes (and a correctly-placed working directory, see below πŸ‘€).


πŸ’œ DESCRIPTION πŸ’œ

so dh_octave_make is a helper script 🫢 and its whole job is generating a first version of a Debian package for an Octave add-on package. yes, first version β€” it gets you started, it doesn't finish the job, iykyk.

Where do you run it? From the top directory of the unpacked sources of an Octave add-on package. Not a subdirectory, not your home folder, the top. do it right πŸ’…

What has to already exist? A file called DESCRIPTION must be present, and that's where all the info about the package gets gathered from. no DESCRIPTION, no package, periodt πŸ™ˆ

What does it make for you? The following files, generated with sensible contents β€” although bestie, they need further editing, this is a starting point not a final form 😭

  • debian/changelog
  • debian/control
  • debian/copyright
  • debian/rules
  • debian/source/format
  • debian/upstream/metadata
  • debian/watch
  • debian/gbp.conf
  • debian/.gitignore
  • debian/salsa-ci.yml

The important catch: those files above are only created if they do not exist yet. not a single one of them gets clobbered. and that is actually iconic, because it means you can run dh_octave_make again on an already debianized source tree to update it 🌈 β€” it'll fill in the gaps instead of stomping your edits.


πŸŽ€ ENVIRONMENT VARIABLES πŸŽ€

the whole "who even made this package" situation gets handled by env vars, okay:

  • DEBFULLNAME β€” used for generating the identity of the developer, which will appear in debian/changelog and debian/copyright.
  • DEBEMAIL β€” also used for generating the identity of the developer, appearing in debian/changelog and debian/copyright.
  • FULLNAME β€” the fallback. if DEBFULLNAME doesn't exist, FULLNAME is used instead.
  • EMAIL β€” the other fallback. if DEBEMAIL doesn't exist, EMAIL is used instead.

so like, set DEBFULLNAME and DEBEMAIL if you want the cool ones, or let it fall back to FULLNAME and EMAIL. either way you're getting credited, slay 🫢


πŸ’€ DISCLAIMER πŸ’€

dh_octave_make is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. yes, that's the real legal text, bestie, read it and weep (or don't, honestly, just don't come for the author if it misbehaves) 😭


Copyright 2012, 2017-2021 Rafael Laboissière

This script is free software; you can redistribute it and/or modify it under the terms of the GNU GPL, v3 or later. 🌈


🧚 AUTHOR 🧚

Rafael LaboissiΓ¨re <rafael@debian.org> β€” thank you for your service, legend πŸ’–


and that's the whole page, bestie!! go forth and debianize your Octave add-ons, you're gonna ate πŸ’…βœ¨

this was version 1.16.2, dated 2026-07-18 β€” from the dh-octave manual. mwah, see you in the next one πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from