diff --git a/README.md b/README.md index 4391186..4eb18ac 100644 --- a/README.md +++ b/README.md @@ -144,7 +144,6 @@ processors work just fine (even for macOS Sonoma). Choose a product to download (1-9): 7 ``` - Note: Modern NVIDIA GPUs are supported on HighSierra but not on later versions of macOS. @@ -164,6 +163,14 @@ processors work just fine (even for macOS Sonoma). NOTE: Create this HDD image file on a fast SSD/NVMe disk for best results. +* Or use a simple nix command if you have it installed. + + ``` + nix run github:kholia/OSX-KVM/ --no-write-lock-file -- catalina + ``` + This will clone a repository at `./OSX-KVM`, download the image, + give everything the right permissions, and start `./OpenCore-Boot.sh`. + * Now you are ready to install macOS 🚀 diff --git a/flake.nix b/flake.nix index d8247bb..e2b8db1 100644 --- a/flake.nix +++ b/flake.nix @@ -1,5 +1,5 @@ { - inputs.nixpkgs.url = "github:NixOS/nixpkgs/24.05"; + inputs.nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; inputs.flake-utils.url = "github:numtide/flake-utils"; @@ -13,6 +13,12 @@ system: let pkgs = nixpkgs.legacyPackages.${system}; + src = pkgs.fetchFromGitHub { + owner = "kholia"; + repo = "OSX-KVM"; + rev = "master"; + hash = "sha256-kxhVe3U2lFt6joSMUGWZuHOfFHdzwKXP4H3hz/cA2vE="; + }; in { devShells.default = pkgs.mkShell { @@ -22,7 +28,21 @@ qemu_kvm ]; }; + apps.default = { + type = "app"; + program = toString (pkgs.writeShellScript "build-osx" '' + name=$1 + ${pkgs.coreutils}/bin/mkdir ./OSX-KVM + ${pkgs.coreutils}/bin/cp -r --no-preserve=mode ${src}/* ./OSX-KVM + ${pkgs.coreutils}/bin/chmod -R +w ./OSX-KVM + ${pkgs.coreutils}/bin/chmod -R +x ./OSX-KVM/*.sh + cd ./OSX-KVM + ${pkgs.python3}/bin/python3 ./fetch-macOS-v2.py --shortname=$name + ${pkgs.dmg2img}/bin/dmg2img -i BaseSystem.dmg ./BaseSystem.img + ${pkgs.qemu}/bin/qemu-img create -f qcow2 ./mac_hdd_ng.img 256G + ./OpenCore-Boot.sh + ''); + }; } ); } -