-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
190 lines (181 loc) · 10.1 KB
/
Copy pathindex.html
File metadata and controls
190 lines (181 loc) · 10.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Expires" content="0">
<title>Joe Maloney</title>
<style>
body {
font-family: -apple-system, "Helvetica Neue", Helvetica, Arial, sans-serif;
max-width: 760px;
margin: 40px auto;
padding: 0 20px;
color: #222;
line-height: 1.6;
}
header {
border-bottom: 1px solid #ccc;
padding-bottom: 16px;
margin-bottom: 24px;
}
h1 { font-size: 1.8em; margin: 0 0 4px; }
header p { margin: 0; color: #666; }
h2 {
font-size: 1.25em;
margin-top: 2em;
border-bottom: 1px solid #eee;
padding-bottom: 4px;
}
ul { padding-left: 20px; }
li { margin-bottom: 8px; }
a { color: #0366d6; text-decoration: none; }
a:hover { text-decoration: underline; }
.guides li { margin-bottom: 12px; }
.guides .desc { color: #666; font-size: 0.92em; display: block; }
footer {
margin-top: 3em;
padding-top: 16px;
border-top: 1px solid #eee;
color: #888;
font-size: 0.9em;
}
</style>
</head>
<body>
<header>
<h1>Joe Maloney</h1>
<p>Open-source contributor · <a href="https://github.com/pkgdemon">github.com/pkgdemon</a></p>
</header>
<h2>Blog</h2>
<ul class="guides">
<li>
<a href="the-50th-floor.html?v=20260514">The 50th Floor</a>
<span class="desc">Porting launchd to FreeBSD — and why FreeNAS Corral is next. On the phases of a software life, AI as a paintbrush, vibe coding honestly, and the rabbit hole that led to a standalone Mach kernel module.</span>
</li>
<li>
<a href="how-a-computer-should-work.html?v=20260514">How a Computer Should Work</a>
<span class="desc">The case for an offline-first appliance, simple enough for a mere mortal. A quiet boot, login without the internet, applications you actually own, upgrades that don't erase your disk, and a desktop that runs on refurbished hardware.</span>
</li>
</ul>
<h2>Vibe Coding</h2>
<ul class="guides">
<li>
<a href="devuan-system7-workalike-plan.html?v=20260727">A System 7 Workalike on Devuan</a>
<span class="desc">Feasibility study for a graphical-only Devuan ISO: <code>mlvwm</code> on XLibre, a System Folder over bind-mounted FHS paths, AppImages dropped into <code>/Applications</code>, <code>.sit</code> extraction straight into HFS volumes, and classic Mac software via Executor and Advanced Mac Substitute — no Apple ROM, no redistribution problem. With mockups and diagrams throughout.</span>
</li>
<li>
<a href="gnustep-executor-port-plan.html?v=20260727">A GNUstep Front End for Executor</a>
<span class="desc">Porting plan from a code review of both Executor trees — ARDI's 1993 NeXTSTEP front end and autc04's modern C++17 fork. Four pure virtuals, ~1,000–2,000 lines of Objective-C++, and the traps that cost someone a day each in 1993: the update deadlock, the bitmap format flag, the XOR cursor. Why per-window <code>NSWindow</code>s are impossible and rootless works anyway.</span>
</li>
<li>
<a href="executor-gnustep-code-review.html?v=20260727">Executor, Read Twice — Code Review Findings</a>
<span class="desc">The evidence behind the porting plan, with file and line citations throughout. The <code>VideoDriver</code> contract, the threading and deadlock rules, pixel formats, the libobjc2 toolchain traps, the GNUstep API gap tables, why the nibs can't be opened, and why <code>HFS_XFer</code>'s HFS engine is dead code. Includes what could not be verified.</span>
</li>
</ul>
<h2>GNUstep & Gershwin Guides</h2>
<ul class="guides">
<li>
<a href="SquashFS-Setup.html?v=20260514">SquashFS Setup Guide for Gershwin Workspace</a>
<span class="desc">Building a SquashFS-based workspace on Debian/Linux.</span>
</li>
<li>
<a href="default-browser-setup.html?v=20260514">Setting Chromium as the Default Web Browser</a>
<span class="desc">Configuring the default browser under GNUstep.</span>
</li>
<li>
<a href="mdns-local-fix.html?v=20260514">Fixing <code>.local</code> (mDNS) Resolution</a>
<span class="desc">Getting mDNS name resolution working on Debian/Devuan.</span>
</li>
<li>
<a href="zsh-setup.html?v=20260514">Zsh System-Wide Setup</a>
<span class="desc">Configuring zsh as a system-wide shell environment.</span>
</li>
<li>
<a href="devuan-alsa-only.html?v=20260514">ALSA + dmix + apulse Setup</a>
<span class="desc">Sharing the sound card via ALSA dmix with apulse, no PulseAudio/PipeWire.</span>
</li>
<li>
<a href="nfs-locking-freeze-investigation.html?v=20260514">NFS Locking Freeze Investigation</a>
<span class="desc">Why Chromium screen-share freezes the X session when <code>$HOME</code> is on NFS: the server doesn't register NLM, SQLite POSIX locks block in <code>fcntl()</code>, and the main thread stops servicing X events. Evidence, root cause, and fix.</span>
</li>
</ul>
<h2>Research</h2>
<ul class="guides">
<li>
<a href="gnustep-research.html">GNUstep Research</a>
<span class="desc">Menu rendering (macOS vs GNUstep), menu-bar ownership, the WindowServer.app display-server plan, and the Gershwin WindowManager QA plan.</span>
</li>
<li>
<a href="freebsd-research.html">FreeBSD Research</a>
<span class="desc">Live ISO / livecd architecture, SquashFS on FreeBSD, gunion/unionfs reroot, and the native <code>Copier.framework</code> installer backend.</span>
</li>
<li>
<a href="launchd-research.html">Launchd Research</a>
<span class="desc">Porting Apple’s launchd to FreeBSD — the AF_UNIX sockets track and the Mach track (<code>mach.ko</code>, libdispatch, XPC, configd, IOKit, and the userland command ports).</span>
</li>
<li>
<a href="nextbsd-research.html">NextBSD</a>
<span class="desc">CI pipelines, native cross-build, the Gershwin live-ISO pipeline, kernel syscall-slot work, and the <code>.ko</code>→<code>.kext</code> conversion for the NextBSD base.</span>
</li>
<li>
<a href="gershwin-research.html">Gershwin Research</a>
<span class="desc">The Gershwin desktop — installer backends (Linux/FreeBSD/NextBSD), live-ISO architecture, and component/CI plans for <code>gershwin-desktop</code>.</span>
</li>
</ul>
<h2>Volunteer Projects</h2>
<ul class="guides">
<li>NextBSD 2026–present —
<a href="https://github.com/search?q=org%3Anextbsd-redux+author%3Apkgdemon&type=commits&s=author-date&o=asc">Commits</a>,
<a href="https://github.com/search?q=org%3Anextbsd-redux+author%3Apkgdemon&type=pullrequests&s=updated&o=asc">Pull Requests</a>
<span class="desc">Reviving NextBSD — macOS system technologies (launchd, Mach IPC, libdispatch) on a modern FreeBSD base, with a CI-built kernel, modules, and live ISO.</span>
</li>
<li>HexBSD 2025–present —
<a href="https://github.com/search?q=org%3Ahexbsd+author%3Apkgdemon&type=commits&s=author-date&o=asc">Commits</a>
<span class="desc">A native macOS application, written in Swift, for managing FreeBSD servers.</span>
</li>
<li>Gershwin 2025–present —
<a href="https://github.com/search?q=org%3Agershwin-desktop+author%3Apkgdemon&type=commits&s=author-date&o=asc">Commits</a>,
<a href="https://github.com/search?q=org%3Agershwin-desktop+author%3Apkgdemon&type=pullrequests&s=updated&o=asc">Pull Requests</a>
<span class="desc">A GNUstep-based desktop environment.</span>
</li>
<li>GNUstep 2024–present —
<a href="https://github.com/search?q=org%3Agnustep+author%3Apkgdemon&type=commits&s=author-date&o=asc">Commits</a>,
<a href="https://github.com/search?q=org%3Agnustep+author%3Apkgdemon&type=pullrequests&s=updated&o=asc">Pull Requests</a>
<span class="desc">Open-source implementation of the OpenStep / Cocoa frameworks — Foundation, AppKit, and the Objective-C runtime.</span>
</li>
<li>GhostBSD 2015–present —
<a href="https://github.com/search?q=org%3Aghostbsd+author%3Apkgdemon&type=commits&s=author-date&o=asc">Commits</a>,
<a href="https://github.com/search?q=org%3Aghostbsd+author%3Apkgdemon&type=pullrequests&s=updated&o=asc">Pull Requests</a>
<span class="desc">Desktop-focused FreeBSD distribution with a ready-to-use graphical environment.</span>
</li>
<li>FreeNAS/TrueNAS 2015–2022 —
<a href="https://github.com/search?q=org%3Atruenas+author%3Apkgdemon&type=commits&s=author-date&o=asc&p=1">Commits</a>,
<a href="https://github.com/search?q=org%3Atruenas+author%3Apkgdemon&type=pullrequests&s=updated&o=asc">Pull Requests</a>
<span class="desc">FreeBSD-based network-attached storage operating system, with ZFS at its core.</span>
</li>
<li>HelloSystem 2019–2020 —
<a href="https://github.com/search?q=org%3AhelloSystem+author%3Apkgdemon&type=commits&s=author-date&o=asc&p=1">Commits</a>
<span class="desc">FreeBSD-based desktop system designed for simplicity and a Mac-like experience.</span>
</li>
<li>NextBSD 2015–2016 —
<a href="https://github.com/search?q=org%3ANextBSD+author%3Apkgdemon&type=pullrequests&s=updated&o=asc">Pull Requests</a>
<span class="desc">Effort to bring macOS system technologies — launchd, Mach IPC, libdispatch — to a FreeBSD base.</span>
</li>
<li>PCBSD/TrueOS 2013–2018 —
<a href="https://github.com/search?q=org%3Atrueos+author%3Apkgdemon&type=commits&s=author-date&o=asc">Commits</a>,
<a href="https://github.com/search?q=org%3Atrueos+author%3Apkgdemon&type=pullrequests&s=updated&o=asc&p=1">Pull Requests</a>
<span class="desc">Desktop-oriented FreeBSD distribution (later TrueOS), focused on ease of installation and use.</span>
</li>
</ul>
<h2>Sample Projects</h2>
<ul>
<li><a href="https://github.com/pkgdemon/dockerstep">Dockerized GNUstep</a> (2024)</li>
<li><a href="https://github.com/pkgdemon/swift-vm-cli">Swift CLI to boot ISOs with the Apple Hypervisor Framework</a> (2023)</li>
</ul>
<p>More examples, including forks I've contributed fixes to, can be found on
<a href="https://github.com/pkgdemon?tab=repositories">my GitHub</a>.</p>
</body>
</html>