on master help sign in
Fix formatting
commit86fba09184c6a6f1431257b5ef230cc4f233de7e authorMike Osborne <mike@urbit.org> dateFri 28 Jan 2022, 15:56 (5 years ago) parente0d946b
1 file changed+18−12
content/grants/app-openbsd.md+18−12
content/grants/app-openbsd.md+18−12
@@ -16,7 +16,7 @@ completed = false
1616work_request_link = "https://airtable.com/shr4qt9t9kz7RaOIa?prefill_Grant+ID=A0124&prefill_Grant+Name=Resurrect%20OpenBSD%20Build"
1717+++
1818
19−### Background:
19+### Background
2020
2121OpenBSD is a simple, secure, and well-audited operating system; in fact, it is a strong contender for “simplest, most secure, most well-audited” Earth operating system. It is the only production OS I would feel comfortable slapping on a computer on the internet without the ability to update its software. As such it’s a natural candidate for top-tier Urbit hosts who want to differentiate themselves in terms of security. If we think there’s going to be a long time before Nock hardware is realized, then surely it’s worth having something like that in the interim.
2222
@@ -26,17 +26,23 @@ At some point the Urbit build switched to Nix; Nix does not work on OpenBSD, so
2626
2727So the current situation is: it is possible, with some work, to manually build Urbit on OpenBSD. However, this is not automated. And once Urbit is built, it runs extremely, unusably slowly, due to the outstanding performance regression.
2828
29−### Scope:
29+### Scope
3030
3131Get the project to the point where it works on OpenBSD as a first class citizen. Steps involved are probably something like:
3232
33−- Go through the hazing ritual of building Urbit on OpenBSD manually.
34−- Submit patches to add automated OpenBSD build support.
35−- Do some creative benchmarking to locate the performance issue. (Likely candidates: urbit/worker socket IPC, LMDB, and Nock compilation.)
36−- Fix the performance issue.
37−- (Maybe:) Set up an OpenBSD CI runner.
38−- (Extra bonus work:) make use of new OpenBSD security features like unveil(2) and pledge(2).
39−
40−### Requirements:
41−
42−Some existing experience with OpenBSD strongly recommended. Some familiarity with autoconf / automake / make / bash; some familiarity with C; interest in working on the Urbit runtime; self-directedness, ability to debug and troubleshoot creatively; some familiarity with Nock. Optional: nix, hoon.
33+- Go through the hazing ritual of building Urbit on OpenBSD manually
34+- Submit patches to add automated OpenBSD build support
35+- Do some creative benchmarking to locate the performance issue. Likely candidates: urbit/worker socket IPC, LMDB, and Nock compilation
36+- Fix the performance issue
37+- (Maybe:) Set up an OpenBSD CI runner
38+- (Extra bonus work:) make use of new OpenBSD security features like unveil(2) and pledge(2)
39+
40+### Requirements
41+
42+- Some existing experience with OpenBSD strongly recommended
43+- Some familiarity with autoconf / automake / make / bash
44+- Some familiarity with C
45+- Interest in working on the Urbit runtime
46+- Self-directedness, ability to debug and troubleshoot creatively
47+- Some familiarity with Nock
48+- Optional: nix, hoon