Ad

NixThePlanet: Run macOS, Windows and more via Nix

NixThePlanet enables running various operating systems like macOS, Windows, and DOS using Nix, offering convenient command-line launching and flexible NixOS module integration.

NixThePlanet allows users to run classic medieval operating systems, including macOS Ventura, Windows 3.0, and Windows 2.2, using a single Nix command. Inspired by projects like OSX-KVM and WFVM, it leverages Nix's declarative approach for reproducible and reliable virtual machine creation. The flake exports functions to create and run virtual machines, employing TCL Expect and Tesseract OCR for robust installer automation, and includes a robust CI process to verify image integrity.

This project distinguishes itself through its use of TCL Expect and Tesseract OCR for installer automation, aiming for greater reliability than sleep-based methods. It offers flexible NixOS module integration for system configuration and includes a comprehensive CI process ensuring image consistency. The makeDarwinImage function allows for customization of VM disk sizes, and the project provides dedicated builders for multiple operating systems, including older versions of Windows.

  • Operating System Support: Runs macOS Ventura, Windows 3.0, Windows 3.11 (ForWorkgroups), and DOS 6.22.
  • Command-Line Launch: Provides simple nix run commands for launching each operating system.
  • NixOS Integration: Offers a NixOS module for enabling and configuring macOS Ventura as a system service.
  • Customizable Disk Size: The makeDarwinImage function allows users to specify the disk size of the virtual machine image.
  • DOS/Win3.x Support: Includes builders and runScript functionality for building and running DOS 6.22, Windows 3.0, and Windows 3.11 images.
  • Automated CI: The project includes a CI process that rebuilds the macOS image on every change to ensure reliability.
  • Post-Install Scripting: Allows users to run arbitrary commands after the installation of Windows operating systems.

NixThePlanet appears to be an actively maintained project with recent commits and a clear structure. The inclusion of a robust CI process and detailed documentation suggests a focus on reliability and usability. The project's reliance on established tools like Nix and QEMU indicates a solid foundation. However, the reliance on the macOS installer download within the Nix sandbox may introduce some variability depending on download speeds and availability.

NixThePlanet benefits developers and enthusiasts who need to run legacy operating systems in a controlled and reproducible environment. It simplifies the process of creating and deploying virtual machines with macOS, older Windows versions, and DOS using the Nix package manager. The project's emphasis on automation and testability ensures consistent results and eases the management of diverse operating system environments.

Languages:
Summarize:
Share:
Stars
712
Forks
22
Issues
11
Created
2 years ago
Commit
7 months ago
License
MIT
Archived
No
Updated 1 month ago

Similar Repositories