← Back to list

unity-headless
by BreakerOfStems
⭐ 0🍴 0📅 Jan 23, 2026
SKILL.md
name: unity-headless description: Install Unity Hub/Editor, activate licenses, run headless builds and tests
Unity Headless Skill
Install Unity components, manage licenses, and run headless builds/tests.
See also: Shared Conventions | Safety Guidelines
Purpose
Set up Unity for CI/CD and run builds without a GUI.
Background Knowledge
Unity Hub CLI
Unity Hub supports headless operation via CLI:
unityhub --headless <command>
Licensing Models
- Serial-based activation - Requires serial key, can be done headless
- Account-based activation - Requires Unity account login, interactive
Build Server Concept
Unity supports "Build Server" licensing for headless builds only (batchmode). This is ideal for CI/CD pipelines.
Installation Paths
Unity can be installed to:
/opt/unity/- System-wide$HOME/.local/share/Unity/- User-local- Hub default paths
Commands
Hub Installation
# Download and install Hub (Ubuntu/Debian)
wget -qO - https://hub.unity3d.com/linux/keys/public | sudo apt-key add -
sudo sh -c 'echo "deb https://hub.unity3d.com/linux/repos/deb stable main" > /etc/apt/sources.list.d/unityhub.list'
sudo apt update && sudo apt install unityhub
Editor Installation
# List available versions
unityhub --headless editors --releases
# Install specific version with modules
unityhub --headless install --version 2022.3.0f1 --module linux-il2cpp --module linux-server
License Activation
# Serial-based activation
unity -quit -batchmode -serial <serial> -username <email> -password <password>
# Return license
unity -quit -batchmode -returnlicense
Headless Build
unity -quit -batchmode -nographics \
-projectPath /path/to/project \
-executeMethod BuildScript.PerformBuild \
-logFile build.log
Headless Tests
unity -quit -batchmode -nographics \
-projectPath /path/to/project \
-runTests \
-testResults results.xml \
-logFile test.log
Helper Scripts
scripts/unity_install.sh- Install Hub + Editor + modulesscripts/unity_build.sh- Run batchmode build with loggingscripts/unity_logs.sh- Parse logs for errors
Workflow: Set Up Build Environment
# 1. Install Hub
./scripts/unity_install.sh hub
# 2. Install Editor (version from ProjectSettings/ProjectVersion.txt)
./scripts/unity_install.sh editor 2022.3.0f1 linux-il2cpp,linux-server
# 3. Activate license
./scripts/unity_install.sh license <serial>
Workflow: Run a Build
# Build with logging and error checking
./scripts/unity_build.sh \
~/workspace/my-game \
BuildScript.PerformBuild \
~/workspace/_artifacts/build.log
# Check exit code
echo "Exit code: $?"
Artifacts
Write all build outputs and logs to:
~/workspace/_artifacts/
Safety Rails
- Always use
-logFile- Never run a build without capturing logs - Always capture exit code - Check
$?after builds - License activation failure - Stop and report required inputs (serial vs account)
- Never run builds without
-quit- Ensures Unity exits after completion
Common Exit Codes
| Code | Meaning |
|---|---|
| 0 | Success |
| 1 | Build failed |
| 2 | Invalid arguments |
| 3 | License error |
Troubleshooting
If license activation fails:
- Check if machine already has a license (
~/.local/share/unity3d/Unity/Unity_lic.ulf) - Verify serial is valid for this license type
- Check if Build Server license is appropriate (headless only)
- Report to user with specific error from log
Score
Total Score
50/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
Reviews
💬
Reviews coming soon