SPRAWL Notes
User & Hostname
-
Every PI has the same user name
-
member
-
Every PI has an individual hostname
- AP_XX
Network
-
Ethernet: switch with router and DHCP, nodes can be reached via hostnam.
-
Wireless: each PI opens an individual WiFi.
- SSH enabled
- VNC/RDP enabled
Installed Software
- jack
-
aj-snapshot
-
JackTrip
-
SuperCollider
-
sclang
- scsynth
-
sc3-plugins
-
PD (vanilla)
-
Python3
- python-osc
Initial Setup of Pi
Flash Rasperry Pi OS to a SD-Card, use these Settings in the RPi-Imager:
- set hostname:
AP-XX
(whereXX
is the associated number of the Pi) - enable SSH, use password authentication
- set username and password
- Username:
member
- Password:
- set locale settings (optional)
Provisioning
After boot, execute these playbooks to make it run
ansible-playbook pi_setup/playbooks/install_ssh_key.yml --ask-pass -e "key=path/to/public/key"
ansible-playbook pi_setup/playbooks/full_setup.yml
Jacktrip Configuration
Two options:
- One server on each PI, every PI has a client for each server (n Servers, n*n-1 clients)
- p2p connections between all PIs ((n*(n-1))/2 connections)
Roll out (new) Pieces
Stuff for pieces in one directory only:
/home/member/pieces/piece_subdir
Two options:
- Distribute code & binaries via ssh (ansible).
- Grab all code (& build binaries) via repositories (pull via ansible).
Start and Stop Pieces
- System needs to be back in plain state after each piece.
- provide 'kill' playbooks