{"id":20857120,"url":"https://github.com/flipperdevices/chmocker","last_synced_at":"2025-04-10T21:09:13.347Z","repository":{"id":207753441,"uuid":"720011262","full_name":"flipperdevices/chmocker","owner":"flipperdevices","description":"Chroot-based Docker-like pseudo-containers for MacOS","archived":false,"fork":false,"pushed_at":"2025-01-30T14:08:30.000Z","size":52,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":12,"default_branch":"dev","last_synced_at":"2025-04-10T21:09:09.809Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flipperdevices.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2023-11-17T11:40:27.000Z","updated_at":"2025-04-04T02:23:56.000Z","dependencies_parsed_at":"2024-02-16T12:26:52.286Z","dependency_job_id":"9f0476e5-931a-4a35-b606-23b5ebbbc306","html_url":"https://github.com/flipperdevices/chmocker","commit_stats":null,"previous_names":["flipperdevices/chmocker"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipperdevices%2Fchmocker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipperdevices%2Fchmocker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipperdevices%2Fchmocker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flipperdevices%2Fchmocker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flipperdevices","download_url":"https://codeload.github.com/flipperdevices/chmocker/tar.gz/refs/heads/dev","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248298346,"owners_count":21080320,"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-11-18T04:36:18.196Z","updated_at":"2025-04-10T21:09:13.320Z","avatar_url":"https://github.com/flipperdevices.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Chmocker\n\nChmocker (chroot + docker) is yet another try to create MacOS containers. Chmocker accepts the classic Dockerfile format and allows you to have an isolated environment on MacOS computers. Created for building [Flipper Zero Embedded toolchain](https://github.com/flipperdevices/flipperzero-toolchain)\n\n## How it works\n- FS layers made through tar images (very slow, way to discover - [APFS snapshots](https://github.com/ahl/apfs/tree/master))\n- FS isolation made through chroot\n- Process isolation is absent (way to discover - [Process groups](https://jmmv.dev/2019/11/wait-for-process-group-darwin.html))\n\n## How to use\n### Images\nAll begins with the base system image. In first you need to create it from your system, or download it from somewhere.\n```bash\nsudo chmocker image create -t MacOSVenturaWithBrew\n```\nThis command will build a chroot-ready .tar archive, jump to it and install [Brew](https://brew.sh). Try using `-h` flag to see extended flags, e.g. for skipping brew install or adding a custom ComandLineTools.\n\n### Dockerfile\nYou can try to build something inside a chroot of the image created above.\nExample Dockerfile:\n\n```Dockerfile\nFROM MacOSVenturaWithBrew\nRUN brew install coreutils\nADD https://www.python.org/ftp/python/3.11.2/Python-3.11.2.tgz /toolchain/src/src/archives/\nRUN tar -xvf /toolchain/src/src/archives/Python-3.11.2.tgz -C /toolchain/src/src/\nADD scripts/build-mac-python.sh /toolchain/src/\nRUN bash /toolchain/src/build-mac-python.sh\n```\n\n### Build\n```bash\nsudo chmocker build -t macos-python\n```\n\n### Run\n```bash\nsudo chmocker run --rm --it macos-python\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflipperdevices%2Fchmocker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflipperdevices%2Fchmocker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflipperdevices%2Fchmocker/lists"}