Read the articles...
Highly Esteemed Members of our NuttX Build Farm:
- jerpelea (Ubuntu)
- lvanasse (Ubuntu)
- nuttxpr (Ubuntu i5)
- nuttxlinux (Ubuntu Xeon)
- nuttxmacos (macOS M2 Pro)
To Join Ubuntu Build Farm:
Please tell me your Gist ID. See "Build NuttX for All Target Groups".
## TODO: Install Docker Engine
## https://docs.docker.com/engine/install/ubuntu/
## Download the scripts
git clone https://github.com/lupyuen/nuttx-release
cd nuttx-release
## Login to GitHub in Headless Mode
sudo apt install gh neofetch
sudo gh auth login
## (1) What Account: "GitHub.com"
## (2) Preferred Protocol: "HTTPS"
## (3) Authenticate GitHub CLI: "Login with a web browser"
## (4) Copy the One-Time Code, press Enter
## (5) Press "q" to quit the Text Browser that appears
## (6) Switch to Firefox Browser and load https://github.com/login/device
## (7) Enter the One-Time Code. GitHub Login will proceed.
## See https://stackoverflow.com/questions/78890002/how-to-do-gh-auth-login-when-run-in-headless-mode
## Run the Build Job forever: arm-01 ... arm-14
sudo ./run-ci.sh
(GitHub Token should also work, see below)
To keep the Build Farm running after logout: Use tmux
...
## First Time: Run tmux and start `sudo ./run-ci.sh`
sudo apt install tmux
tmux
## Next Time: Attach to the previous tmux session
tmux a
For a super-duper Server-Class Xeon PC: Run multiple jobs run-ci.sh
, run-ci2.sh
, run-ci3.sh
, run-ci4.sh
To Join macOS Build Farm:
Please tell me your Gist ID:
## TODO: Install Xcode Command Line Tools, brew, autoconf, wget
## Then install these tools
brew install gh neofetch
## Download the scripts
git clone https://github.com/lupyuen/nuttx-build-farm
cd nuttx-build-farm
## Set the GitHub Token: export GITHUB_TOKEN=...
## To create GitHub Token: GitHub Settings > Developer Settings > Tokens (Classic) > Generate New Token (Classic)
## Check the following:
## repo (Full control of private repositories)
## repo:status (Access commit status)
## repo_deployment (Access deployment status)
## public_repo (Access public repositories)
## repo:invite (Access repository invitations)
## security_events (Read and write security events)
## gist (Create gists)
. $HOME/github-token-macos.sh
## Start the macOS Build Task
./run-ci-macos.sh
## To re-download the toolchain, if the files get messed up:
## rm -rf /tmp/run-job-macos
Warning: This will max out all 12 CPU Cores of Mac Mini M2 Pro. Running at a boiling hot 100 deg C!