-
040ea41dbc
per-user linux accounts are not optional any more

pastilhasandClaude Opus 5
2026-08-12 22:58:35 +00:00
-
32af97e260
secret-store: the anthropic proxy secret moves in too

pastilhasandClaude Opus 5
2026-08-12 22:52:23 +00:00
-
cb67b22f80
officer-setup: the environment section

pastilhasandClaude Opus 5
2026-08-12 22:41:49 +00:00
-
9eabc3ee4c
design: the secret store

pastilhasandClaude Opus 5
2026-08-12 22:36:14 +00:00
-
0bceace6f1
an officerdev docker network, and the reasoning next to the port binding

pastilhasandClaude Opus 5
2026-08-12 22:17:07 +00:00
-
a64d5610e6
officer-setup section 5: Postgres, and only Postgres

pastilhasandClaude Opus 5
2026-08-12 22:12:10 +00:00
-
911b79b6a2
drop a comment describing a machine that no longer exists

pastilhasandClaude Opus 5
2026-08-12 22:07:19 +00:00
-
a0b083db8f
officer-setup section 2: one root, and nothing configurable underneath it

pastilhasandClaude Opus 5
2026-08-12 22:02:21 +00:00
-
8a0946ea39
officer-setup section 3: dependencies

pastilhasandClaude Opus 5
2026-08-12 21:55:04 +00:00
-
ee21fa16f0
officer-setup: the repository URL is https

pastilhasandClaude Opus 5
2026-08-12 21:52:53 +00:00
-
a5a8cd4e9c
officer-setup section 2: the repository

pastilhasandClaude Opus 5
2026-08-12 21:48:35 +00:00
-
b724e3ffbe
start officer-setup: pre-flight, inheriting what machine-setup already asked

pastilhasandClaude Opus 5
2026-08-12 21:45:02 +00:00
-
e120dfa36e
full read: fix the set -e footguns a full run would have hit

pastilhasandClaude Opus 5
2026-08-12 21:34:20 +00:00
-
30052e3295
port the firewall, last, and bind the Docker rules to the real interface

pastilhasandClaude Opus 5
2026-08-12 21:25:13 +00:00
-
d6a78d7b5a
put the shell configuration in one place, after everything it configures

pastilhasandClaude Opus 5
2026-08-12 21:22:15 +00:00
-
607a962115
port the agent CLIs, using Anthropic's installer rather than npm

pastilhasandClaude Opus 5
2026-08-12 21:18:10 +00:00
-
cb3e7062b9
ensure the bun symlink on every run, not only after installing it

pastilhasandClaude Opus 5
2026-08-12 21:11:38 +00:00
-
00e58931ff
port the JS runtimes: node, bun and pm2 installed rather than offered

pastilhasandClaude Opus 5
2026-08-12 21:08:41 +00:00
-
999362948f
allow Node 22 or newer, and record why it was pinned to exactly 22

pastilhasandClaude Opus 5
2026-08-12 21:04:13 +00:00
-
068a310bd3
add python3 to core utils — node-gyp needs it, and node-gyp is not optional

pastilhasandClaude Opus 5
2026-08-12 21:01:17 +00:00
-
0286cc6db6
port the Neovim section

pastilhasandClaude Opus 5
2026-08-12 20:54:59 +00:00
-
5a33a517e7
move Tailscale ahead of the command-line tools

pastilhasandClaude Opus 5
2026-08-12 20:51:39 +00:00
-
2e70a6dd21
ask before replacing a config the user already has, and show the difference

pastilhasandClaude Opus 5
2026-08-12 20:48:08 +00:00
-
2b9e16c11e
port the shell section, and make one starship config serve both audiences

pastilhasandClaude Opus 5
2026-08-12 20:45:25 +00:00
-
03cc01a135
say that stopping and coming back costs nothing

pastilhasandClaude Opus 5
2026-08-12 20:39:39 +00:00
-
4fcc34de18
frame the public server as common to all three, not a cost of offscale

pastilhasandClaude Opus 5
2026-08-12 20:37:26 +00:00
-
a989f8fbfa
say where offscale runs, which matters more than how it installs

pastilhasandClaude Opus 5
2026-08-12 20:34:40 +00:00
-
c629a849d9
make all four network options work, including having no network at all

pastilhasandClaude Opus 5
2026-08-12 20:32:27 +00:00
-
06492c3297
name the control server explicitly, and log out before moving between them

pastilhasandClaude Opus 5
2026-08-12 20:29:26 +00:00
-
22a661131d
page the ? output

pastilhasandClaude Opus 5
2026-08-12 20:27:00 +00:00
-
85d8fa62f1
mention that Officer administers the network it just told you to set up

pastilhasandClaude Opus 5
2026-08-12 20:13:54 +00:00
-
766c8ee655
say what the mobile app actually is, rather than overclaiming it

pastilhasandClaude Opus 5
2026-08-12 20:04:39 +00:00
-
2d544db07e
write the offscale copy from officer.dev, and link it in both places

pastilhasandClaude Opus 5
2026-08-12 20:03:03 +00:00
-
46ce58dd12
correct the client claim: the mobile apps are ours

pastilhasandClaude Opus 5
2026-08-12 19:57:33 +00:00
-
2803bc34b7
draft the offscale copy: same protocol, different amount of work

pastilhasandClaude Opus 5
2026-08-12 19:50:14 +00:00
-
538a2d3b6d
give every network option its own exposition, not just offscale

pastilhasandClaude Opus 5
2026-08-12 19:47:51 +00:00
-
ff7035a47a
correct the mechanism recorded for the set -e failure

pastilhasandClaude Opus 5
2026-08-12 19:46:30 +00:00
-
4d478cc0f1
add the offscale line, and fix a set -e bug the test exposed

pastilhasandClaude Opus 5
2026-08-12 19:45:19 +00:00
-
6a29c39b74
restructure the Tailscale network choice, with offscale left to be written

pastilhasandClaude Opus 5
2026-08-12 19:41:43 +00:00
-
059f0f6df2
lead the Tailscale section with the question, not the explanation

pastilhasandClaude Opus 5
2026-08-12 19:34:09 +00:00
-
a63a327065
remember the pre-flight answers between runs

pastilhasandClaude Opus 5
2026-08-12 19:29:15 +00:00
-
09303299cc
port Tailscale as its own section, early, and stop it hanging

pastilhasandClaude Opus 5
2026-08-12 19:25:12 +00:00
-
9d53ff506e
port Docker, with the group-versus-rootless choice spelled out

pastilhasandClaude Opus 5
2026-08-12 19:11:49 +00:00
-
f9c6b7925a
record the default-editor section, to come last

pastilhasandClaude Opus 5
2026-08-12 19:04:15 +00:00
-
4339ab829d
set pull.rebase, and say why core.editor is not set

pastilhasandClaude Opus 5
2026-08-12 19:02:49 +00:00
-
28673869c3
port the git section, and stop it overwriting an identity that already exists

pastilhasandClaude Opus 5
2026-08-12 19:00:54 +00:00
-
08e7de1b6d
move unattended-upgrades into core utils, and make sure it is actually on

pastilhasandClaude Opus 5
2026-08-12 18:56:27 +00:00
-
0da184d082
verify the fail2ban defaults instead of recalling them

pastilhasandClaude Opus 5
2026-08-12 18:52:41 +00:00
-
f176b92378
move fail2ban into core utils, and reduce its section to a status report

pastilhasandClaude Opus 5
2026-08-12 18:52:14 +00:00
-
bdf13331ae
port the static IP section, and offer the actual fix for the reboot-changes-IP problem

pastilhasandClaude Opus 5
2026-08-12 18:49:50 +00:00
-
7a5cf89819
port the DNS section, as a choice rather than a decision

pastilhasandClaude Opus 5
2026-08-12 18:45:24 +00:00
-
192293cdca
offer to add an ssh key even when one already exists

pastilhasandClaude Opus 5
2026-08-12 18:42:58 +00:00
-
9591f917f5
port ssh keys and hardening as one section, and make the hardening actually work

pastilhasandClaude Opus 5
2026-08-12 18:39:23 +00:00
-
b1cc916258
detect root by uid, not by the name root

pastilhasandClaude Opus 5
2026-08-12 18:36:16 +00:00
-
d9d4085033
warn against working as root at the username prompt

pastilhasandClaude Opus 5
2026-08-12 18:33:32 +00:00
-
c0eb3e3a85
create the user account first, and fix the sudoers filename bug that found

pastilhasandClaude Opus 5
2026-08-12 18:31:29 +00:00
-
fbb90c917d
default the username to whoever ran sudo, and look up their real home

pastilhasandClaude Opus 5
2026-08-12 18:27:46 +00:00
-
3fb0e5c887
port the user account section, and stop clobbering files in the home

pastilhasandClaude Opus 5
2026-08-12 18:22:40 +00:00
-
458510a0a8
scope sleep to homelab, and port the boot hang fix

pastilhasandClaude Opus 5
2026-08-12 18:17:17 +00:00
-
c87127ff93
port the sleep and suspend section

pastilhasandClaude Opus 5
2026-08-12 18:11:16 +00:00
-
6ffd3534bd
do not offer the ballast on a dev machine, and route its alerts through one place

pastilhasandClaude Opus 5
2026-08-12 18:09:03 +00:00
-
d19dc5a92a
ask where the ballast goes and how big it is

pastilhasandClaude Opus 5
2026-08-12 18:05:42 +00:00
-
d4b9b7b334
ask where Officer should be installed, in pre-flight

pastilhasandClaude Opus 5
2026-08-12 18:02:28 +00:00
-
6947284f1b
check the root filesystem is actually using the whole drive

pastilhasandClaude Opus 5
2026-08-12 17:59:38 +00:00
-
9b0e05bfd8
add three resource-pressure sections, each asked rather than assumed

pastilhasandClaude Opus 5
2026-08-12 17:54:48 +00:00
-
716a6e2750
port the swap section, and size it against the disk

pastilhasandClaude Opus 5
2026-08-12 17:48:45 +00:00
-
b5948f9673
refresh the package index in pre-flight, not inside a skippable step

pastilhasandClaude Opus 5
2026-08-12 17:45:19 +00:00
-
6480788979
port the timezone section

pastilhasandClaude Opus 5
2026-08-12 17:43:20 +00:00
-
163f8d5899
port the locale section

pastilhasandClaude Opus 5
2026-08-12 17:41:49 +00:00
-
1beb357f2e
drop the ominous wording from the system update prompt

pastilhasandClaude Opus 5
2026-08-12 17:39:16 +00:00
-
454faf5406
list what the system update would actually upgrade

pastilhasandClaude Opus 5
2026-08-12 17:39:00 +00:00
-
f896d4882f
one section per concern, each announced and confirmed before it acts

pastilhasandClaude Opus 5
2026-08-12 17:37:31 +00:00
-
a5ef9f7662
report what a section actually installed, not what it was asked for

pastilhasandClaude Opus 5
2026-08-12 17:34:34 +00:00
-
dd655577e3
make the machine-role question require an answer

pastilhasandClaude Opus 5
2026-08-12 17:32:41 +00:00
-
5cb243eed9
port into a clean script instead of editing the original in place

pastilhasandClaude Opus 5
2026-08-12 17:30:29 +00:00
-
7622239949
split the upstream binaries out of the package section

pastilhasandClaude Opus 5
2026-08-12 17:28:46 +00:00
-
bba6d854bc
stop the run at the end of the rewritten sections

pastilhasandClaude Opus 5
2026-08-12 17:25:38 +00:00
-
dbdef23d29
install what is missing and keep what is there, per package manager

pastilhasandClaude Opus 5
2026-08-12 17:19:46 +00:00
-
41ff8030e9
ask what the machine is for, once, in pre-flight

pastilhasandClaude Opus 5
2026-08-12 17:11:47 +00:00
-
34bb8fc22a
put the superseded setup scripts in setup-old, and repair what the move broke

pastilhasandClaude Opus 5
2026-08-12 17:07:28 +00:00
-
44141faf0a
split machine-setup into an entry point and a base library

pastilhasandClaude Opus 5
2026-08-12 17:02:15 +00:00
-
dda214ffb0
detect the operating system before any step runs

pastilhasandClaude Opus 5
2026-08-12 16:55:06 +00:00
-
483bb15d8a
vendor the ubuntu machine provisioning script, verbatim

pastilhasandClaude Opus 5
2026-08-12 16:54:47 +00:00
-
315073cf3b
move the pm2 ecosystem files into ecosystem-files/ for reference

pastilhasandClaude Opus 5
2026-08-12 16:54:35 +00:00
-
79da78008a
turn the field report into something an agent can follow

pastilhasandClaude Opus 5
2026-08-12 16:52:27 +00:00
-
015e280e5c
document how to launch the watcher, since the mechanism is what did not transfer

pastilhasandClaude Opus 5
2026-08-12 16:44:20 +00:00
-
e9d0261e87
a field report on two agents working one branch

pastilhasandClaude Opus 5
2026-08-12 16:37:48 +00:00
-
2eedbcda54
bind nginx proxy manager to the tailscale address

pastilhasandClaude Opus 5
2026-08-12 07:24:30 +02:00
-
4e404f17c8
split the optional host dependencies out of setup.sh

pastilhasandClaude Opus 5
2026-08-12 07:24:19 +02:00
-
cec8fbe57e
the acl check could not fail, because sudo drops DATA_PATH

pastilhasandClaude Opus 5
2026-08-12 04:34:30 +00:00
-
76cd7c20bf
sever the ACL as well as the ownership

pastilhasandClaude Opus 5
2026-08-12 04:28:59 +00:00
-
a2f63dc534
severing ownership does not sever the ACL, and neither the spec nor the checker said so

pastilhasandClaude Opus 5
2026-08-12 04:24:31 +00:00
-
46799dada8
deprovision a member's linux account when the platform account goes

pastilhasandClaude Opus 5
2026-08-12 04:19:50 +00:00
-
f34d7fef70
merge: a checker for the deprovision spec, and the trap that makes it pass for free
pastilhas
2026-08-12 04:11:38 +00:00
-
-
35715546e2
a checker for the deprovision spec, and the trap that makes it pass for free

pastilhasandClaude Opus 5
2026-08-12 04:05:48 +00:00
-
f5f509a99d
scripts/setup is the initial install, nothing else

pastilhasandClaude Opus 5
2026-08-12 04:05:06 +00:00
-
9c353f5f0d
move host setup into scripts/setup/

pastilhasandClaude Opus 5
2026-08-12 04:02:19 +00:00
-
37adc65a12
delete the spent one-shot scripts

pastilhasandClaude Opus 5
2026-08-12 03:58:13 +00:00
-
a6acfea9a6
carry the two threads todo.md was missing
pastilhas
2026-08-12 03:52:29 +00:00
-
a730fc0fe0
keep the three open threads the comms channel was holding
pastilhas
2026-08-12 03:52:11 +00:00
-
-
-