OpenBSD Journal

p2k19 Hackathon Report: Landry Breuil on unveil(2)-ing Mozilla, sqlite3 testing

Contributed by Peter N. M. Hansteen on from the leashing-the-lizard-and-the-fox dept.

Fresh from the just concluded p2k19 hackathon comes this report from Landry breuil (landry@), who writes:

This year having been a bit hectic with work and house renovation, i was really planning to enjoy bucarest as the first real break of the year.. and it definitely was a blast.

I had planned to arrive some days in advance to enjoy the city, and thanks to paul i really had a great time wandering around, biking in all the neighborhoods with a great weather, visiting parks with his lovely kids, discovering the city center.. a good break to rest before actually starting the hackathon !

For once, i had one goal: working with upstream to properly integrate jcs@'s work on adding unveil() support to firefox. And i had to admit this went pretty well, i mostly needed to adapt to the new mozilla workflow of reviewing patches through instead of the previous workflow where everything happened through - this required levelling up my mercurial-fu and learning new tools, but all in all this went pretty well, and the patches were quickly integrated (cf,, &

So now (in mozilla trunk), the pledge() and unveil() configs moved from about:config variables to plaintext files, installed by default by the package in /usr/local/lib/firefox/browser/defaults/preferences/, and overridable if needed by copying them in /etc/firefox and editing them there. This has the advantage of only allowing root to modify those configs.

As it is done in chromium, the browser can only access files inside /tmp and ~/Downloads by default, so user workflows to upload/download files might have to by adapted.. this also has the side effect of losing mimetype associations, only now relying on the system defaults configured via xdg-mime.

Of course all this is being documented in the fine README (, and since now all the patches are commited upstream, i plan to backport them to firefox 71 once its released so that -current users can benefit from jcs@'s work. In the meantime, ppl can still test the 71 betas i provide, cf this thread:

Btw, during this hackathon, more patches that we had lying around were merged upstream: fixed the sound playback with unveil, fixed arm64 build, fixed the trunk build... maybe i spent more time working on mozilla than actually working on OpenBSD :)

I spent some time with kmos@ to give him the ropes on how to run the sparc64 ports bulk build cluster, with cwen@ online to transfer her the macppc ports bulk cluster, and i can say that now both architectures are in really good caring hands .. after having run those for almost ten years, i think it was time to transfer them to someone else.

I also tried reviving the sqlite3 testing infrastructure, which requires the tcl bits provided upstream, and it was a 'fun' hacking time to figure out how to properly integrate the testing step in the databases/sqlite3-tcl port.. work is still underway, but on the 3444413 tests that ship with the recently updated 3.30.1, only 13 fail on OpenBSD, and the full tcl test suite ( runs in 6 hours.

And finally, i spent the last days of the hackathon playing with the brand new debug infrastructure for packages, providing them for key ports such as firefox/thunderbird and Xfce. Pretty happy how it turned out, and now we can be sure that we will receive better bug reports with useful traces.. so thanks espie@ and pirofti@ for working on this !

So, all in all, not that many actual commits to the ports tree, but much useful hours ! And all the other hours were definitely enjoyable, walking under the sunshine in bucarest, visiting the crazy palace of parliament, enjoying beers & wine with my fellow friends, trying all the possible coffees and local foods, having a blast at the thermes...

Many many thanks paul, the university of bucarest and the OpenBSD foundation for having us for a great hackathon !

(Comments are closed)

  1. By Magic carpet (bodie) on

    Great job Landry. Interesting work and nice cooperation with upstream.


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 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.]