get_power_info is defined in PRbL/functions, not in quickinfo.bashrc itself. On systems where PRbL is sourced from an older GitHub copy or the function is unavailable (e.g. WSL, minimal installs), the bare call crashes with 'command not found'. Guard with declare -F so the power block is silently skipped when the function is not loaded. |
||
|---|---|---|
| cf-apps | ||
| extras | ||
| lib | ||
| PRbL@6090507530 | ||
| scripts | ||
| .gitignore | ||
| .gitmodules | ||
| functions | ||
| install.sh | ||
| README.md | ||
| scriptexample.sh | ||
cf-node-bootstrap
Pyr0ball's Reductive [bash] Library (PRbL) Auto-Installer — plus CircuitForge node provisioning.
Bootstraps a new machine with a sane bash environment and optionally provisions it as a CircuitForge product node or GPU worker.
Depends on PRbL. Clone recursively:
git clone --recurse-submodules https://github.com/CircuitForgeLLC/cf-node-bootstrap.git
cd cf-node-bootstrap/
What it installs
PRbL— pluggable bash functions and scripting helpers- A
~/.bashrc.d/drop-in directory for modular shell config - An informative login splash screen (quickinfo)
- Vim color scheme and formatting
- Core dependencies:
git,vim,lm-sensors,curl,net-tools,bc
Install
Basic (current user)
./install.sh -i
Installs to ~/.local/share/prbl. During install you will be prompted to:
- Install optional extras (e.g. dev-tool cache redirect for machines with a separate
/devldisk) - Provision this node for CircuitForge apps (see Provisioning Profiles below)
Global (all users, requires root)
sudo ./install.sh -i
Installs to /usr/share/prbl.
Flags
| Flag | Description |
|---|---|
-i / --install |
Install PRbL and run provisioning menus |
-u / --update |
Update an existing install |
-d / --dependencies |
Install package dependencies only |
-D / --dry-run |
Show what would happen without making changes |
-r / --remove |
Remove the PRbL install |
-f / --force |
Remove then reinstall |
-F / --force-remove |
Remove without reinstalling |
-h / --help |
Print usage |
Provisioning Profiles
After the base PRbL install, the installer offers to set up CircuitForge apps on this node. You will be asked to pick a profile, which controls which apps are available and which remote they are cloned from.
OEM / customer node
For end-user machines. Clones apps from the public GitHub mirror (CircuitForgeLLC). Only apps with oem in their app_available_profiles are shown.
Use this for:
- A customer deploying a licensed CircuitForge product
- A self-hoster running a public release
Collaborator node
For contributors and internal team machines. Clones apps from the private Forgejo instance (git.opensourcesolarpunk.com). All apps with collaborator in their app_available_profiles are shown, including pre-release and internal tools.
Use this for:
- A developer working on CircuitForge products
- An internal machine with Forgejo access
Orchard-join node
For GPU worker nodes joining an existing cf-orch orchard. Clones circuitforge-orch from Forgejo and hands off to its own interactive installer — when prompted, choose the agent topology and have your coordinator's URL ready.
Use this for:
- Adding a GPU machine to an existing CircuitForge compute cluster
- Any remote worker node joining a coordinator
Optional Extras
After the base install, you will be prompted to select extras. Each extra is a standalone install script in extras/.
| Extra | Purpose |
|---|---|
model-cache-redirect |
Redirects pip, whisper, clip, and Hugging Face caches from ~/.cache to /devl/user-cache (for machines with a separate fast disk at /devl). Skips cleanly on machines without a separate /devl mount. |
CF Apps manifests
Each CircuitForge product has a .manifest file under cf-apps/. These are plain bash files declaring the app name, description, repo URLs, supported provisioning profiles, and install types (bare-metal, Docker, Podman). See cf-apps/README.md for the full schema.
Available apps:
| App | Description |
|---|---|
circuitforge-core |
Shared scaffold library required by most CF products |
peregrine |
LLM-powered job discovery and application pipeline |
kiwi |
Pantry tracker with barcode/receipt scanning and recipe suggestions |
snipe |
Auction trust-scoring for eBay and estate sales |
turnstone |
Log diagnostics tool |
linnet |
Real-time tone annotation product |
pagepiper |
Document/rulebook RAG tool |
Quickinfo only (no full install)
To get the login splash screen without installing PRbL or changing anything else on the system:
# Create the drop-in directory if it doesn't exist
mkdir -p ~/.bashrc.d
# Copy the quickinfo scripts
cp lib/skel/.bashrc.d/11-quickinfo.bashrc ~/.bashrc.d/
cp lib/skel/.bashrc.d/11-quickinfo.settings ~/.bashrc.d/
# Wire up the drop-in directory if your .bashrc doesn't already include it
grep -q 'bashrc.d' ~/.bashrc || cat >> ~/.bashrc << 'EOF'
# Load drop-in bashrc modules
for f in ~/.bashrc.d/*.bashrc; do [ -f "$f" ] && source "$f"; done
EOF
The quickinfo script self-sources PRbL at runtime (via curl/wget) so no prior PRbL install is needed.
Customize display options by editing ~/.bashrc.d/11-quickinfo.settings — you can hide disconnected adapters, filter specific network interfaces, or restrict which disks are shown.
Open a new terminal (or source ~/.bashrc) to see the splash.
Planned
- Expanded automatic OS detection and package management (non-Debian/Ubuntu)
- Modular login splash page