An opensource tool to build Android ROMs on Crave. If you have better name for this script, let me know!
Warning
Forking this repository is not recommended as its content frequently changes; instead, please refer to the instructions below. You don't need to fork it.
Connect to crave devspace, create your project (crave clone list and crave clone create "my_first_build" --projectID XX) and run crave ssh.
Create an empty file with name config.ini, then put #!/bin/bash at start of the file. (nano config.ini) After that, add some variables.
Example config.ini file can be found here
When you'll be ready, simply run exit and:
crave run --no-patch -- "curl https://raw.githubusercontent.com/wojtekojtek/builddroid/refs/heads/main/builddroid.sh | bash"
If you ran all commands correctly, you should see "Waiting for build id:XXXXX to start...". You can close your terminal now. Check results on crave.
There are 30 variables, only 3 are required to build custom ROM.
codename- your device's codenamelunch- type of android build: user, userdebug or engmanifest- link to your manifest with trees, fill this ortreestrees- all your device-related repositories, fill this ormanifest
sign- set to true or falsekeys- directory with keys
server- SourceForge, BashUpload, PixelDrain. Only these are supported.sfproject- project name if you're using SourceForgesfdir- directory to upload to, if you're using SourceForgesfuser- SourceForge usernamessh- auth file name if you're using SourceForge, read more here. don't use passphrase!
For now, only GitHub is supported.
ota- set to true or falsegithubota- repo with OTA jsons, in format: "username/repo"url- url to raw json OTA filejsonversion- version of the romjsonromtype- type of builddownloadurl- custom url to download, leave empty if you're usingservergitemail- public github emailgituser- github usernamegitbranch- ota repo branch, leave "main" if you aren't using different branch
telegram- send info to telegram, set to true or falsechat_id- telegram chat idprivate_chat_id- to send BashUpload download link (because the file can be downloaded only once). you can usechat_idconsole- if true, will show messages printed by this scriptquiet- if true, hide repo tool, github, and other's output, it doesn't hide script output and build logsuser_id- your telegram user ID, allows you to kill build task through telegram (/kill)
githubtoken- for uploading ota jsonstelegramtoken- required if you want to send info about building to telegrampixeldraintoken- if you are uploading to pixeldrain, fill this too!
unsupported- put repo init command here to sync unsupported by crave rom
cleanbuild- set to true only if you got permission and you need to