{"id":18057280,"url":"https://github.com/m4cs/theosbuild","last_synced_at":"2025-04-05T10:22:45.204Z","repository":{"id":96218425,"uuid":"298353031","full_name":"M4cs/theosbuild","owner":"M4cs","description":"A Docker Container to Easily Build Tweaks On Any Platform","archived":false,"fork":false,"pushed_at":"2020-09-24T17:50:21.000Z","size":2,"stargazers_count":7,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-17T21:13:29.631Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/M4cs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-09-24T17:48:06.000Z","updated_at":"2025-01-30T20:29:40.000Z","dependencies_parsed_at":"2023-04-22T17:23:57.176Z","dependency_job_id":null,"html_url":"https://github.com/M4cs/theosbuild","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/M4cs%2Ftheosbuild","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/M4cs%2Ftheosbuild/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/M4cs%2Ftheosbuild/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/M4cs%2Ftheosbuild/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/M4cs","download_url":"https://codeload.github.com/M4cs/theosbuild/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247320216,"owners_count":20919734,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-31T02:07:15.620Z","updated_at":"2025-04-05T10:22:45.181Z","avatar_url":"https://github.com/M4cs.png","language":"Dockerfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Theos Build - A docker container that makes it easy to compile tweaks on any system.\n\n### Features:\n\n- #### iOS 9.3 - iOS 13.0 SDKs\n- #### arm64e toolchain and compatibility\n- #### Updated llvm binaries from apt.llvm.org\n\n## Usage\n\nTo open a bash shell and start a Theos project:\n\n```\ndocker run -it mabridgland/theosbuild:latest /bin/bash\n\n# Once inside shell\n$THEOS/bin/nic.pl # Opens New Instance Creator\n```\n\nTo use as a base image in another script:\n\n```dockerfile\n# In your Dockerfile\nFROM mabridgland/theosbuild:latest\n\nENV TWEAK_NAME {YOUR TWEAK NAME}\n\nRUN mkdir -p /root/.ssh\nRUN mkdir -p /root/$TWEAK_NAME\n\nCOPY Resources/* /root/$TWEAK_NAME/Resources-bak/\nCOPY control /root/$TWEAK_NAME/control-bak\nCOPY *.mm /root/$TWEAK_NAME/ # Change to *.xm or add a line with *.xm if using logos\nCOPY *.h /root/$TWEAK_NAME/\nCOPY Makefile /root/$TWEAK_NAME/\n\n# Place an id_rsa, id_rsa.pub, and known_hosts into your\n# tweak directory that is pre-authed with your device.\nCOPY id_rsa /root/.ssh/id_rsa\nCOPY id_rsa.pub /root/.ssh/id_rsa.pub\nCOPY known_hosts /root/.ssh/known_hosts\n\n# Make sure perms are correct on ssh files\nRUN chmod 700 /root/.ssh\nRUN chmod 600 /root/.ssh/id_rsa /root/.ssh/id_rsa.pub /root/.ssh/known_hosts\n\nWORKDIR /root/$TWEAK_NAME/\n\n# Permissions get messed up with Windows, you may need this\nRUN cat ./control-bak \u003e ./control\nRUN mkdir ./Resources\nRUN cd ./Resources-bak/; for i in *; do cat $i \u003e ../Resources/$i; done\n\n# Own that directory\nRUN chmod -R +x *\n\nRUN make clean do\n```\n\nPlace that as a Dockerfile in your Tweak's root directory.\n\nNow make a `docker-compose.yml` file inside of your Tweak's directory with the following content:\n\n```yaml\nversion: '2'\nservices:\n  tweak_builder:\n    build:\n      context: ./\n      dockerfile: Dockerfile\n    volumes:\n      - \"./:/usr/src/tweak\"\n    environment:\n      - THEOS=/usr/src/theos\n      - THEOS_DEVICE_IP=YOUR DEVICE IP HERE # REPLACE THIS\n      - THEOS_DEVICE_PORT=22 # Shouldn't have to replace this unless you set it to something else\n```\n\nTo compile your tweak, run `docker-compose up --build`.\n\n## Credit\n\n[DavidSkrundz's SDKs](https://github.com/DavidSkrundz/sdks)\n\n[Sam Binger's Toolchain](https://github.com/sbingner/llvm-project)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fm4cs%2Ftheosbuild","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fm4cs%2Ftheosbuild","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fm4cs%2Ftheosbuild/lists"}