[Unit] Description=hammer build farm worker (loop autónomo) After=network-online.target Wants=network-online.target [Service] Type=simple WorkingDirectory=/opt/hammer Environment=HOME=/root Environment=HAMMER_DIR=/opt/hammer # JOBS no se fija: el loop usa nproc por defecto (cada build usa 1 core por codegen-units=1). # Así, al REPOTENCIAR la caja (CCX13→CCX23/33), el worker auto-escala los slots sin tocar config. # La línea CCX da ~4GB RAM/core ⇒ nproc slots quedan con margen para builds Rust + swap. ExecStart=/opt/hammer/scripts/farm/farm-worker-loop.sh Restart=always RestartSec=30 # deja respirar al sistema en una caja chica Nice=10 IOSchedulingClass=idle [Install] WantedBy=multi-user.target