{"id":19364360,"url":"https://github.com/davidfstr/classicbox","last_synced_at":"2025-07-19T23:09:43.375Z","repository":{"id":10128788,"uuid":"12200149","full_name":"davidfstr/ClassicBox","owner":"davidfstr","description":"Allows one-click installation of Mac OS 0.x - 9.x software.","archived":false,"fork":false,"pushed_at":"2014-04-24T03:40:48.000Z","size":340,"stargazers_count":11,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-14T05:27:03.765Z","etag":null,"topics":["classic-mac-os","emulation"],"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-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/davidfstr.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-GPLv2.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-08-18T19:03:52.000Z","updated_at":"2025-06-25T19:53:21.000Z","dependencies_parsed_at":"2022-08-17T15:51:01.396Z","dependency_job_id":null,"html_url":"https://github.com/davidfstr/ClassicBox","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/davidfstr/ClassicBox","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davidfstr%2FClassicBox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davidfstr%2FClassicBox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davidfstr%2FClassicBox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davidfstr%2FClassicBox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/davidfstr","download_url":"https://codeload.github.com/davidfstr/ClassicBox/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davidfstr%2FClassicBox/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266039003,"owners_count":23867815,"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":["classic-mac-os","emulation"],"created_at":"2024-11-10T07:37:11.682Z","updated_at":"2025-07-19T23:09:43.347Z","avatar_url":"https://github.com/davidfstr.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Classic Box \u003csmall\u003e(CPM Project)\u003c/small\u003e\n\nThe CPM project contains a collection of tools and prototypes for manipulating virtual machines that run early Macintosh operating systems (System 1 - Mac OS 9).\n\nMuch of this software is incomplete. I am publishing it now because I am no longer actively working on it.\n\n## Vision\n\nAllow one-click installation of arbitrary Mac OS 0.x - 9.x\ngames and apps from the 1980s and 1990s.\n\n## Tools\n\n* **app_archive_install**\n    - Attempts to automatically install an application from an archive\n      file downloaded from Macintosh Garden or a similar site into a box.\n    - This tool is incomplete.\n* **box_create, box_up**\n    - Low-level tools for manipulating boxes.\n    - A **box** is a self-contained classic Mac OS virtual machine.\n      It is a directory in a special layout containing emulation\n      software, a machine ROM, mounted disk images, and preferences.\n* **box_bootstrap**\n    - Similar to box_create but automatically installs the minimum\n      set of components for the box to function, namely an emulator,\n      a machine ROM, and a boot disk image.\n    - Requires an emulator package, a ROM package, and an OS boot\n      disk package as inputs.\n    - I am not currently distributing any of these packages myself\n      for copyright reasons.\n* **catalog_create, catalog_diff**\n    - Utilities that manipulate *catalog* structures, which describe the\n      name and last modified date of files on an HFS disk image.\n\n## Libraries\n\nMuch functionality here is likely to be useful in other tools.\n\n* **classicbox.alias.file**\n    - Read and write alias files.\n* **classicbox.alias.record**\n    - Read and write alias records, typically found in alias files.\n* **classicbox.archive**\n    - Extracts compressed archives in arbitrary formats.\n    - Depends on [unar] to do the heavy lifting.\n* **classicbox.disk.hfs**\n    - Manipulate and inspect HFS disk images and contained files.\n    - Depends on [hfsutils] to do the heavy lifting.\n* **classicbox.io**\n    - Read and write complex binary structures.\n    - Shims for performing I/O in Python 2 and 3 with the same interface.\n* **classicbox.macbinary**\n    - Read MacBinary I, II, or III files.\n    - Write MacBinary III files.\n* **classicbox.resource_fork**\n    - Read and write Mac resource forks.\n\n## Requirements\n\n* Mac OS X 10.7 (Lion)\n    * Support for Windows and other versions of Mac OS X will be added over time.\n* Python 2.7\n    * Experimental support for Python 3 exists after conversion by the `2to3` tool.  \n      Particularly for code exercised by the `test` tool.\n* The following tools must be installed and in your system path:\n    * [hfsutils] 3.2.6 \u0026ndash; hdel, hdir, hmkdir, hmount, hpwd\n    * [unar] 1.3 \u0026ndash; unar\n\n[hfsutils]: http://www.mars.org/home/rob/proj/hfs/\n[unar]: http://unarchiver.c3.cx/commandline\n\n## License\n\nCopyright (c) 2013 David Foster.\n\nThis software is licensed under the GPLv2. See the [LICENSE](LICENSE-GPLv2.txt) file for more information.\n\n## Historical Notes\n\n### Names\n\nThe acronym \"CPM\" originally signified \"Classic Package Manager\", when I\nconceived of this project as a kind of package manager that could install\nprepared packages into a classic Mac OS virtual machine.\nCPM is now an umbrella term for all tools related to the effort of\nmaking it *easy* to run classic Mac software on modern hardware.\n\n\"Classic Box\" refers to the idea of a classic Mac OS virtual machine\nbundled as a single executable program. Similar to VMware or Parallels,\nbut without support for managing multiple machines. Classic Box is part\nof the larger CPM project.\n\n\"classicbox\" is the root package name for shared and reusable components\nof the CPM project.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdavidfstr%2Fclassicbox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdavidfstr%2Fclassicbox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdavidfstr%2Fclassicbox/lists"}