OpenBSD Journal

How the OpenBSD -stable packages are built

Contributed by rueda on from the who-says-i'm-stable? dept.

Solène Rapenne (solene@) has written a blog entry on the software system underlying the building of -stable packages:

In this long blog post, I will write about the technical details of the OpenBSD stable packages building infrastructure. I have setup the infrastructure with the help of Theo De Raadt who provides me the hardware in summer 2019, since then, OpenBSD users can upgrade their packages using pkg_add -u for critical updates that has been backported by the contributors. Many thanks to them, without their work there would be no packages to build.

(-stable packages have been the subject of earlier articles.)

Readers are reminded that they can express their gratitude to solene@ and others by donating!

(Comments are closed)


Comments
  1. By Carson Chittom (carsonc) carson@wistly.net on

    This was an interesting read. Many thanks to Solène for taking the time to write it up! One thing I wish she'd talked more about was:

    dpb(1) can’t be used because it didn’t gave good results for building the delta of the packages between release and stable.

    I'd just assumed dpb was being used, so it was a surprise. I'm curious to know what the issues were.

    Comments
    1. By Solène Rapenne (solene) solene+undeadly@perso.pw on https://dataswamp.org/~solene/

      I am not sure but if I remember well dpb was recompiling too many packages. As dpb checks the signature of every package (which is like the sum of all its dependencies), when a dependency version is bumped it will rebuild the package.

      This mean if you update curl or libpng, every port using them will be rebuilt, even if there are no changes in the library they provide.

      Now, I think I could reuse dpb but not by scanning the whole tree but feeding it with the computed pkgpath list file to make, but using dpb would add more complexity to something simple, altough it would bring the possibility to compile ports in parallel and within a clean chroot. This may be an improvement I could do.

Credits

Copyright © - Daniel Hartmeier. All rights reserved. Articles and comments are copyright their respective authors, submission implies license to publish on this web site. Contents of the archive prior to as well as images and HTML templates were copied from the fabulous original deadly.org with Jose's and Jim's kind permission. This journal runs as CGI with httpd(8) on OpenBSD, the source code is BSD licensed. undeadly \Un*dead"ly\, a. Not subject to death; immortal. [Obs.]