开源软件名称(OpenSource Name):bacongravy/macinbox开源软件地址(OpenSource Url):https://github.com/bacongravy/macinbox开源编程语言(OpenSource Language):Ruby 99.8%开源软件介绍(OpenSource Introduction):macinboxPuts macOS Catalina in a Vagrant box. Some sequences shortened. Original run time 14.5 minutes. Supports creating boxes in either the 'vmware_fusion', 'vmware_desktop', 'parallels', or 'virtualbox' formats. System Requirements
Additional DependenciesThe following software is required. Versions other than those mentioned may work, but these are the latest versions tested. VagrantTo boot a box created by macOS InstallerTo create a box you will need a macOS installer application. If you are using a Catalina host you must use a Catalina installer:
Catalina hosts cannot use earlier (e.g. macOS 10.14 Mojave) installers, and Mojave hosts cannot use Catalina installers. If you are using a Mojave host you should use a Mojave installer:
It is recommended that you use the same version for the host and the installer, but previous versions of the macOS installer (e.g. macOS 10.13 High Sierra) may also work with Mojave hosts, and vice-versa. NOTE: If you have questions about the permissibility of virtualizing macOS you may want to review the documentation for the virtualization software you are using and the software license agreement for macOS. Virtualization SoftwareOne of the following virtualization applications is required: VMware FusionTo create and boot a box in the 'vmware_fusion' or 'vmware_desktop' formats you will need: Parallels DesktopTo create and boot a box in the 'parallels' format you will need: VirtualBoxTo create and boot a box in the 'virtualbox' format you will need: InstallationInstall the gem:
Basic UsageRun with
Please be patient, as this may take a while. (On a 2.5 GHz MacBookPro11,5 it takes about 11 minutes, 30 seconds.) After the tool completes you can create a new Vagrant environment with the box and start it:
A few moments after running this command you will see your virtual machine's display appear fullscreen. (Press Command-Control-F to exit fullscreen mode.) After the virtual machine completes booting (approximately 1-2 minutes) you will see the desktop of the 'vagrant' user and can begin using the virtual machine. To create a Parallels Desktop box, pass the
Advanced UsageTo see the advanced options, pass the
Enabling debug mode causes the intermediate files (disk image, VMDK, and box) to be preserved after the tool exits rather than being cleaned up. WARNING!!! These intermediate files are very large and you can run out of disk space very quickly when using this option. This advanced example creates and adds a box named 'macinbox-large-nogui' with 4 cores, 8 GB or RAM, and a 128 GB disk; turns off auto login; and prevents the VMware GUI from being shown when the VM is started:
If you have the VAGRANT_HOME environment variable set and want the created box to be added to the 'boxes' directory in that location you will need to tell sudo to pass it through to macinbox, e.g.:
Retina Display and HiDPI SupportBy default Box Format SupportBy default When the box format is set to 'parallels' using the When the box format is set to 'virtualbox' no guest extensions are installed. Note that some features behave differently with VirtualBox. The screen resolution is set to 1280x800 and HiDPI resolutions are not supported. The GUI scale factor is set to 2.0 (so that the VM displays properly on a host with a retina display) unless the User scriptsIf additional box customization is required a user script may be specified using the Installer Disk Image SupportThe Implementation DetailsThis tool performs the following actions:
The box created by this tool includes a built-in Vagrantfile which disables the following default Vagrant behaviors:
To re-enable the default ssh port forwarding you can add the following line to your environment's Vagrantfile:
To re-enable the default synced folder you can add the following line to your environment's Vagrantfile:
Design PhilosophyThis tool is intended to do everything that needs to be done to a fresh install of macOS before the first boot to turn it into a Vagrant box that boots macOS with a seamless user experience. However, this tool is also intended to the do the least amount of configuration possible. Nothing is done that could instead be deferred to a provisioning step in a Vagrantfile or packer template. AcknowledgementsThis project was inspired by the great work of others:
Why?This project draws inspiration from an episode of Mr. Robot. In the episode, Elliot is shown quickly booting what appeared to be a virtual machine running a fresh Linux desktop environment, in order to examine the contents of an untrusted CD-ROM. As I watched I thought, "I want to be able to do that kind of thing with macOS!". Surely I'm not the only person who has downloaded untrusted software from the internet, and wished that there was an easy way to evaluate it without putting my primary working environment at risk? This project is a direct successor to my vagrant-box-macos project, which itself was heavily inspired by Tim Sutton's osx-vm-templates project. With the release of macOS 10.12.4 the prevailing techniques for customizing macOS installs were hampered by a new installer requirement that all packages be signed by Apple. After attempting various techniques to allow DevelopmentStart by running To run To install this gem onto your local machine, run You can also run
To release a new version, update the version number in ContributingBug reports and pull requests are welcome on GitHub at https://github.com/bacongravy/macinbox. |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论