131 lines
3.3 KiB
HTML
131 lines
3.3 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
<title>Clawdie Operator USB</title>
|
|
<style>
|
|
:root {
|
|
--bg: #f3f1ea;
|
|
--paper: #fffdf7;
|
|
--ink: #1f2629;
|
|
--muted: #5b6469;
|
|
--line: #d8d1c4;
|
|
--accent: #1f6a5e;
|
|
--accent-soft: #d8eee9;
|
|
}
|
|
body {
|
|
margin: 0;
|
|
font-family: "Noto Sans", "DejaVu Sans", sans-serif;
|
|
background: linear-gradient(135deg, #f6f4ee 0%, #ece7dd 100%);
|
|
color: var(--ink);
|
|
}
|
|
main {
|
|
max-width: 860px;
|
|
margin: 32px auto;
|
|
padding: 32px;
|
|
background: var(--paper);
|
|
border: 1px solid var(--line);
|
|
box-shadow: 0 20px 50px rgba(31, 38, 41, 0.08);
|
|
}
|
|
h1 {
|
|
margin-top: 0;
|
|
font-size: 2rem;
|
|
letter-spacing: 0.01em;
|
|
}
|
|
h2 {
|
|
margin-top: 2rem;
|
|
font-size: 1.2rem;
|
|
}
|
|
p,
|
|
li {
|
|
line-height: 1.6;
|
|
color: var(--muted);
|
|
}
|
|
.lead {
|
|
color: var(--ink);
|
|
font-size: 1.05rem;
|
|
}
|
|
.card {
|
|
margin-top: 1rem;
|
|
padding: 16px 18px;
|
|
background: var(--accent-soft);
|
|
border-left: 4px solid var(--accent);
|
|
}
|
|
code,
|
|
pre {
|
|
font-family: "DM Mono", "Cascadia Mono", monospace;
|
|
}
|
|
pre {
|
|
overflow-x: auto;
|
|
padding: 14px;
|
|
background: #f0ede4;
|
|
border: 1px solid var(--line);
|
|
color: var(--ink);
|
|
}
|
|
ul {
|
|
padding-left: 1.2rem;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<main>
|
|
<h1>Clawdie Operator USB</h1>
|
|
<p class="lead">
|
|
This USB is your operator workstation, not the final runtime. Use it to
|
|
verify desktop, browser, networking, <code>pi</code>, and future deploy
|
|
flow.
|
|
</p>
|
|
|
|
<div class="card">
|
|
<strong>Included now:</strong>
|
|
<ul>
|
|
<li>XFCE desktop</li>
|
|
<li>Firefox browser</li>
|
|
<li>Tailscale package</li>
|
|
<li>Bundled npm globals, including <code>pi</code></li>
|
|
<li>
|
|
FreeBSD mac_do for kernel-enforced privilege escalation (no sudo)
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<h2>Quick checks</h2>
|
|
<pre>
|
|
pi --help
|
|
tailscale version
|
|
tailscale status
|
|
firefox</pre
|
|
>
|
|
|
|
<h2>What to do next</h2>
|
|
<ul>
|
|
<li>Verify network access and browser usability.</li>
|
|
<li>Authenticate Tailscale if you have an auth key.</li>
|
|
<li>Use <code>pi</code> as the minimal assistant harness.</li>
|
|
<li>Later phases will add disk deploy, upgrade, and rescue flows.</li>
|
|
</ul>
|
|
|
|
<h2>Tailscale</h2>
|
|
<p>If this USB was built without an auth key, join later with:</p>
|
|
<pre>mdo -u root tailscale up</pre>
|
|
|
|
<h2>Privilege escalation</h2>
|
|
<p>
|
|
This USB uses FreeBSD's native <code>mac_do</code> instead of
|
|
<code>sudo</code>. Wheel group members escalate with <code>mdo</code>:
|
|
</p>
|
|
<pre>
|
|
mdo -u root <command>
|
|
mdo -u root service tailscaled restart
|
|
mdo -u root networkmgr</pre
|
|
>
|
|
|
|
<h2>Disk deployment</h2>
|
|
<p>
|
|
Disk deployment is intentionally deferred on this branch. This first
|
|
milestone is only about a stable operator USB environment.
|
|
</p>
|
|
</main>
|
|
</body>
|
|
</html>
|