A machine's role is now the interview's first question and the one answer Panama records. Servers get the same shell minus the screen: core packages, nvm, Bun, Claude Code and Codex (desktops get Codex too), linger, rootless ports from 80, firewalld, the nginx-bridge network, and a nightly image updater that replaced watchtower for cause. server/containers/ carries junior's 23 compose services -- secrets moved to per-machine .env files that never enter this public repo, every transformed compose proven to render byte-identical to what is live. 'panama server' enables, disables and relinks them; nothing here restarts a running service. 'boot --server' walks a fresh VPS from its root login to a normal install. Five new contracts pin the secrets rule, the catalog's shape, panama-server's behavior, the role plumbing, and the dotfile classification. Claude-Session: https://claude.ai/code/session_01NU5JGiN3JfzqrLQB6wmJ1E
37 lines
804 B
Plaintext
37 lines
804 B
Plaintext
bison
|
|
clang-analyzer
|
|
clangd
|
|
cmake
|
|
compat-lua
|
|
composer
|
|
dotnet-sdk-9.0
|
|
g++
|
|
gcc
|
|
go
|
|
gem
|
|
ImageMagick
|
|
java-latest-openjdk-devel
|
|
luarocks
|
|
maven
|
|
# Node is installed through nvm rather than dnf, because config/bash/shell
|
|
# switches version per project from .nvmrc and a system Node earlier on PATH
|
|
# would win every switch. install-packages does the rest.
|
|
nvm
|
|
pipx
|
|
# bin/get-port and bin/cp-files are interactive python tools; these are the
|
|
# libraries they import, and without them both crash on their first line.
|
|
python3-questionary
|
|
python3-pyperclip
|
|
php
|
|
php-fpm
|
|
python3-devel
|
|
python3-gobject
|
|
python3-tkinter
|
|
python3-torch
|
|
python3-virtualenv
|
|
ruby
|
|
sqlite3
|
|
# vimx: clipboard-capable vim, which the shipped `vim` alias and the vimrc
|
|
# that link-dotfiles installs both assume. Fedora carries it as vim-X11.
|
|
vim-X11
|