-
-
Save Jeket/e40073e8e3ad9fee8e28ec5c25c7c0ee to your computer and use it in GitHub Desktop.
Revisions
-
niw revised this gist
Mar 22, 2021 . 2 changed files with 44 additions and 4 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -78,7 +78,7 @@ ARM 版 Windows 10 や Ubuntu を Apple Silicon な Mac で動かす簡単な方 VHDX のままだとかなりの頻度でイメージが壊れる印象があるので qcow2 に変換しておく。 ``` qemu-img convert -p -O qcow2 ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_21286.VHDX ~/Downloads/Windows10.qcow2 ``` 10. Windows 10 を起動する @@ -100,7 +100,7 @@ ARM 版 Windows 10 や Ubuntu を Apple Silicon な Mac で動かす簡単な方 -device intel-hda \ -device hda-duplex \ -nic user,model=virtio \ -drive file=~/Downloads/Windows10.qcow2,format=qcow2,if=none,id=boot,cache=writethrough \ -device nvme,drive=boot,serial=boot ``` @@ -157,6 +157,26 @@ VirtIO NIC は標準では有効にならないので、デバイスドライバ Next をクリックして `Red Hat VertIO Ethernet Adapter` をインストール。 ## ディスクイメージをを縮小する ディスクイメージである `Windows10.qcow2` ファイルは Windows Update などをすると容量まで大きくなる可能性があり、たとえファイルを削除してもディスクイメージのサイズは減りません。 そのため、ディスクサイズが大きくなりすぎた場合などは使用していない領域を開放する必要があります。 1. Windows 10に付属の Defragment and Optimize Drives で、`C:` ドライブを Optimize する。 2. [SDelete](https://docs.microsoft.com/en-us/sysinternals/downloads/sdelete) をダウンロードする。`SDelete64a -z C:` を Administrator Command Prompt で実行し、使用していない領域をゼロで埋める。 このコマンドの実行はしばらくかかります。この時、ディスクイメージがとても大きくなるので Mac の空き容量に注意。 3. Windows を終了して、以下のコマンドを Mac で実行する。 このコマンドの実行はしばらくかかります。また縮小したディスクイメージは別に作られるので Mac の空き容量に注意。 ``` qemu-img convert -O qcow2 ~/Downloads/Windows10.qcow2 ~/Downloads/Windows10_compacted.qcow2 ``` 4. `Windows10.qcow2` を縮小した `Windows10_compacted.qcow2` で置き換え。 ## Ubuntu Server for ARM64 を動かす ARM 版 Windows 10 を動かす手順に従って QEMU を準備して、Ubuntu Server for ARM64 をダウンロードしてインストールします。 This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -81,7 +81,7 @@ Enjoy! It seems that VHDX often gets broken while it is being used, so probably it is better to convert it to qcow2 format before using it. ``` qemu-img convert -p -O qcow2 ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_21286.VHDX ~/Downloads/Windows10.qcow2 ``` 10. Run Windows 10 @@ -103,7 +103,7 @@ Enjoy! -device intel-hda \ -device hda-duplex \ -nic user,model=virtio \ -drive file=~/Downloads/Windows10.qcow2,format=qcow2,if=none,id=boot,cache=writethrough \ -device nvme,drive=boot,serial=boot ``` @@ -162,6 +162,26 @@ device driver. Click Next to install `Red Hat VertIO Ethernet Adapter`. ## Compact disk image The disk image, `Windows10.qcow2`, can be getting bigger as using Windows, especially after Windows Update, even if you delete files. If the disk image is too big, you may want to compact it to release free space. 1. Use Defragment and Optimize Drives coming with Windows 10 and optimize `C:` drive. 2. Download [SDelete](https://docs.microsoft.com/en-us/sysinternals/downloads/sdelete). Run `SDelete64a -z C:` by using Administrator Command Prompt to zero-fill free space. This may take a while. While running this command, the disk image can be bigger, so be sure Mac have enough free space. 3. Shutdown Windows, then run next command on Mac. This may take a while. Since this command creates compacted disk image, so be sure Mac has enough free space. ``` qemu-img convert -O qcow2 ~/Downloads/Windows10.qcow2 ~/Downloads/Windows10_compacted.qcow2 ``` 4. Replace `Windows10.qcow2` by compacted `Windows10_compacted.qcow2`. ## Running Ubuntu Server for ARM64 Follow the same steps for Windows 10 to prepare QEMU, then download Ubuntu Server for ARM64 and install it. -
niw revised this gist
Mar 21, 2021 . 1 changed file with 1 addition and 0 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -102,6 +102,7 @@ Enjoy! -device usb-tablet \ -device intel-hda \ -device hda-duplex \ -nic user,model=virtio \ -drive file=~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_21286.qcow2,format=qcow2,if=none,id=boot,cache=writethrough \ -device nvme,drive=boot,serial=boot ``` -
niw revised this gist
Mar 8, 2021 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -228,7 +228,7 @@ Follow the previous instructions to run Ubuntu Server for ARM64. Then, you will get `QEMU_EFI.fd` and `QEMU_VARS.fd` in `Build/ArmVirtQemu-AARCH64/DEBUG_GCC5/FV`. - The easiest way to take these files to the host macOS, run Remote Login on macOS then `scp` these to `10.0.2.2`. - To build these on x86_64 environment, use following toolchain to cross compile. ``` -
niw revised this gist
Feb 9, 2021 . 2 changed files with 20 additions and 16 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -2,7 +2,7 @@ ARM 版 Windows 10 や Ubuntu を Apple Silicon な Mac で動かす簡単な方法です。 > メモ: 2021年2月8日現時点での方法で、今後まだ改善されていくと思います。 ## ARM 版 Windows 10 を動かす @@ -11,12 +11,16 @@ ARM 版 Windows 10 や Ubuntu を Apple Silicon な Mac で動かす簡単な方 ``` xcode-select --install ``` 2. ARM64 対応の Homebrew で QEMU の依存ライブラリをインストール **すでに x86_64 の Homebrew が `/usr/local` にインストールされている場合は削除するなどしてください。** **x86_64 の Homebrew では QEMU がビルドできません** https://brew.sh/ ``` /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" brew install ninja pkgconfig glib pixman ``` 3. QEMU のソースコードをとってくる @@ -29,14 +33,12 @@ ARM 版 Windows 10 や Ubuntu を Apple Silicon な Mac で動かす簡単な方 ``` cd qemu git checkout d0dddab40e -b wip/hvf curl 'https://patchwork.kernel.org/series/418581/mbox/'|git am --3way ``` 5. QEMU をビルドする ``` mkdir build cd build This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -3,7 +3,7 @@ Here is easy steps to try Windows 10 on ARM or Ubuntu for ARM64 on your Apple Silicon Mac. Enjoy! > NOTE: that this is current, 2/8/2021 state. I think it will be improved in upcoming a few months. ## Running Windows 10 on ARM @@ -13,12 +13,16 @@ Enjoy! xcode-select --install ``` 2. Install ARM64 Homebrew and QEMU dependencies. **If you already installed x86_64 Homebrew in `/usr/local`, please uninstall it.** **It's not possible to build QEMU with x86_64 Homebrew** https://brew.sh/ ``` /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" brew install ninja pkgconfig glib pixman ``` 3. Clone QEMU source code. @@ -31,14 +35,12 @@ Enjoy! ``` cd qemu git checkout d0dddab40e -b wip/hvf curl 'https://patchwork.kernel.org/series/418581/mbox/'|git am --3way ``` 5. Build QEMU ``` mkdir build cd build -
niw revised this gist
Jan 17, 2021 . 2 changed files with 4 additions and 4 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -76,7 +76,7 @@ ARM 版 Windows 10 や Ubuntu を Apple Silicon な Mac で動かす簡単な方 VHDX のままだとかなりの頻度でイメージが壊れる印象があるので qcow2 に変換しておく。 ``` qemu-img convert -p -O qcow2 ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_21286.VHDX ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_21286.qcow2 ``` 10. Windows 10 を起動する @@ -98,7 +98,7 @@ ARM 版 Windows 10 や Ubuntu を Apple Silicon な Mac で動かす簡単な方 -device intel-hda \ -device hda-duplex \ -nic user,model=virtio \ -drive file=~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_21286.qcow2,format=qcow2,if=none,id=boot,cache=writethrough \ -device nvme,drive=boot,serial=boot ``` This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -79,7 +79,7 @@ Enjoy! It seems that VHDX often gets broken while it is being used, so probably it is better to convert it to qcow2 format before using it. ``` qemu-img convert -p -O qcow2 ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_21286.VHDX ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_21286.qcow2 ``` 10. Run Windows 10 @@ -100,7 +100,7 @@ Enjoy! -device usb-tablet \ -device intel-hda \ -device hda-duplex \ -drive file=~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_21286.qcow2,format=qcow2,if=none,id=boot,cache=writethrough \ -device nvme,drive=boot,serial=boot ``` -
niw revised this gist
Jan 17, 2021 . 2 changed files with 2 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -76,7 +76,7 @@ ARM 版 Windows 10 や Ubuntu を Apple Silicon な Mac で動かす簡単な方 VHDX のままだとかなりの頻度でイメージが壊れる印象があるので qcow2 に変換しておく。 ``` qemu-img convert -p -O qcow2 ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_21286.VHDX ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_20231.qcow2 ``` 10. Windows 10 を起動する This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -79,7 +79,7 @@ Enjoy! It seems that VHDX often gets broken while it is being used, so probably it is better to convert it to qcow2 format before using it. ``` qemu-img convert -p -O qcow2 ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_21286.VHDX ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_20231.qcow2 ``` 10. Run Windows 10 -
niw revised this gist
Dec 28, 2020 . 2 changed files with 2 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -30,7 +30,7 @@ ARM 版 Windows 10 や Ubuntu を Apple Silicon な Mac で動かす簡単な方 ``` cd qemu git checkout master -b wip/hvf curl 'https://patchwork.kernel.org/series/400619/mbox/'|git am --3way ``` 5. QEMU をビルドする This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -32,7 +32,7 @@ Enjoy! ``` cd qemu git checkout master -b wip/hvf curl 'https://patchwork.kernel.org/series/400619/mbox/'|git am --3way ``` 5. Build QEMU -
niw revised this gist
Dec 20, 2020 . 2 changed files with 10 additions and 4 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -46,9 +46,11 @@ ARM 版 Windows 10 や Ubuntu を Apple Silicon な Mac で動かす簡単な方 6. QEMU 用の EDK II OVMF EFI イメージをダウンロードする。 このイメージは `stable202011` タグに、`QemuRamfb.c` に追加の解像度を足したものです。 https://gist.github.com/niw/4f1f9bb572f40d406866f23b3127919b/raw/f546faea68f4149c06cca88fa67ace07a3758268/QEMU_EFI-cb438b9-edk2-stable202011-with-extra-resolutions.tar.gz さらに解像度を追加するなど、ソースコードからビルドする場合は以下を参照のこと。 7. pflash イメージを作って、画面サイズなどを設定する不揮発なストレージを準備する @@ -102,6 +104,7 @@ ARM 版 Windows 10 や Ubuntu を Apple Silicon な Mac で動かす簡単な方 - イメージへのパスなどは適宜修正してください。 - TianoCore のロゴが出ている時に `ESC` を押して、`Device Manager`、`OVMF Platform Configuration`、`Change Preferred Resolution for Next Boot` と進めて解像度を変更できます。 - 解像度を追加するには、下記の「EDK II の OVMF EFI イメージをビルドする」に従って `OvmfPkg/QemuRamfbDxe/QemuRamfb.c` を変更し、新しい `QEMU_EFI.fd` を作ってください。 - `-device usb-mouse` より `-device usb-tablet` を使うことでマウスカーソルがロックされなくなり使いやすくなります。 - `-device intel-hda -device hda-duplex` でオーディオが使えるようになります。 - `-nic user,model=virtio` がネットワークインターフェイスです。有効にするには以下を参照してください。 This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -48,9 +48,11 @@ Enjoy! 6. Download pre-build EDK II OVMF EFI image for QEMU. This EFI image is built from `stable202011` tag with additional resolutions in `QemuRamfb.c`. https://gist.github.com/niw/4f1f9bb572f40d406866f23b3127919b/raw/f546faea68f4149c06cca88fa67ace07a3758268/QEMU_EFI-cb438b9-edk2-stable202011-with-extra-resolutions.tar.gz To build it from the source code for adding more resolutions, see the following section. 7. Prepare pflash for non-volatile variable store, such as screen resolution. @@ -104,6 +106,7 @@ Enjoy! - Please modify each path to the image depends on your environment. - Hit `ESC` while you see TianoCore, then `Device Manager`, `OVMF Platform Configuration`, `Change Preferred Resolution for Next Boot` to change screen resolution. - To add more resolutions, follow "Build EDK II OVMF EFI image from the source code" below and modify `OvmfPkg/QemuRamfbDxe/QemuRamfb.c` then build new `QEMU_EFI.fd`. - Use `-device usb-tablet` instead of `-device usb-mouse` allows transparently moving mouse cursor. - `-device intel-hda -device hda-duplex` to enable audio. - `-nic user,model=virtio` is the network interface. To enable it, see the following section. -
niw revised this gist
Dec 20, 2020 . 2 changed files with 2 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -188,7 +188,7 @@ ARM 版 Windows 10 を動かす手順に従って QEMU を準備して、Ubuntu -device intel-hda \ -device hda-duplex \ -drive file=~/Downloads/ubuntu.qcow2,if=virtio,cache=writethrough \ -cdrom ~/Downloads/ubuntu-20.04.1-live-server-arm64.iso ``` - 指示に従ってインストールしたあとは `-cdrom` は不要です。 This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -192,7 +192,7 @@ Follow the same steps for Windows 10 to prepare QEMU, then download Ubuntu Serve -device intel-hda \ -device hda-duplex \ -drive file=~/Downloads/ubuntu.qcow2,if=virtio,cache=writethrough \ -cdrom ~/Downloads/ubuntu-20.04.1-live-server-arm64.iso ``` - Follow instruction to install Ubuntu Server. Once it's installed, `-cdrom` argument is not needed. -
niw revised this gist
Dec 20, 2020 . 2 changed files with 2 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,6 +1,6 @@ # ARM 版 Windows 10 や Ubuntu for ARM64 を Apple Silicon な Mac で動かす ARM 版 Windows 10 や Ubuntu を Apple Silicon な Mac で動かす簡単な方法です。 > メモ: 2020年12月19日現時点での方法で、今後おおきく改善されていくと思います(だといいな。) This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,6 +1,6 @@ # How to run Windows 10 on ARM or Ubuntu for ARM64 in QEMU on Apple Silicon Mac Here is easy steps to try Windows 10 on ARM or Ubuntu for ARM64 on your Apple Silicon Mac. Enjoy! > NOTE: that this is current, 12/19/2020 state. It will be improved a lot in upcoming a few months... (I hope.) -
niw revised this gist
Dec 20, 2020 . No changes.There are no files selected for viewing
-
niw revised this gist
Dec 20, 2020 . 2 changed files with 142 additions and 46 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,10 +1,10 @@ # ARM 版 Windows 10 や Ubuntu for ARM64 を Apple Silicon な Mac で動かす ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です。 > メモ: 2020年12月19日現時点での方法で、今後おおきく改善されていくと思います(だといいな。) ## ARM 版 Windows 10 を動かす 1. Xcode を App Store で、あるいは Command Line Tools を Apple Silicon な Mac にインストール @@ -44,25 +44,13 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です make -j ``` 6. QEMU 用の EDK II OVMF EFI イメージをダウンロードする。 https://gist.github.com/niw/4f1f9bb572f40d406866f23b3127919b/raw/f4dab9b407a2ea94ceceb7905eb918e1317bc251/QEMU_EFI-a096471-edk2-stable202011.tar.gz ソースコードからビルドする場合は以下を参照のこと。 7. pflash イメージを作って、画面サイズなどを設定する不揮発なストレージを準備する `QEMU_EFI-....tar.gz` をダウンロードしたディレクトリで以下を実行。 @@ -77,6 +65,18 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です - このステップは省略可能。その場合は次のステップで `-drive ...,if=pflash,...` のかわりに `-bios ~/Downloads/QEMU_EFI.fd` を指定すること。ただし、EFI での変更が保存されなくなります。 8. Windows 10 on ARM Insider Preview をダウンロードする https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewARM64 9. VHDX から qcow2 に変換する VHDX のままだとかなりの頻度でイメージが壊れる印象があるので qcow2 に変換しておく。 ``` qemu-img convert -p -O qcow2 ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_20231.VHDX ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_20231.qcow2 ``` 10. Windows 10 を起動する ``` @@ -152,16 +152,56 @@ VirtIO NIC は標準では有効にならないので、デバイスドライバ Next をクリックして `Red Hat VertIO Ethernet Adapter` をインストール。 ## Ubuntu Server for ARM64 を動かす ARM 版 Windows 10 を動かす手順に従って QEMU を準備して、Ubuntu Server for ARM64 をダウンロードしてインストールします。 1. 上記の手順 1 から 7 までに従って QEMU を準備する。 2. 空のディスクイメージを作成する。 ``` ./qemu-img create -f qcow2 ~/Downloads/ubuntu.qcow2 40G ``` 3. Ubuntu Server for ARM64 をダウンロードする。 https://ubuntu.com/download/server/arm 4. Ubuntu Server for ARM をインストールする。 ``` ./qemu-system-aarch64 \ -monitor stdio \ -M virt,highmem=off \ -accel hvf \ -cpu cortex-a72 \ -smp 4 \ -m 4096 \ -drive file=~/Downloads/pflash0.img,format=raw,if=pflash,readonly=on \ -drive file=~/Downloads/pflash1.img,format=raw,if=pflash \ -device virtio-gpu-pci \ -display default,show-cursor=on \ -device qemu-xhci \ -device usb-kbd \ -device usb-tablet \ -device intel-hda \ -device hda-duplex \ -drive file=~/Downloads/ubuntu.qcow2,if=virtio,cache=writethrough \ -cdrom ~/Downloads/ubuntu-20.04.1-live-server-arm64.iso \ ``` - 指示に従ってインストールしたあとは `-cdrom` は不要です。 ## EDK II の OVMF EFI イメージをビルドする 上記の手順に従って Ubuntu Server for ARM64 を動かします。 1. EDK II のソースコードを取ってくる。 ``` git clone --depth 1 --branch edk2-stable202011 https://github.com/tianocore/edk2.git cd edk2 git submodule update --init --recursive ``` @@ -170,10 +210,18 @@ OVMF EFI イメージをソースコードから作る場合、とりあえず 2. ビルドする ``` sudo apt install iasl python3 python3-distutils uuid-dev make g++ source edksetup.sh make -C BaseTools build -a AARCH64 -t GCC5 -p ArmVirtPkg/ArmVirtQemu.dsc ``` `Build/ArmVirtQemu-AARCH64/DEBUG_GCC5/FV` に `QEMU_EFI.fd` と `QEMU_VARS.fd` ができるはず。 - これらのファイルを簡単に macOS ホストに取り出すには macOS でリモートアクセスを有効にして `scp` で `10.0.2.2` にコピー。 - x86_64 の環境でビルドする場合は以下のツールチェーンでクロスコンパイル。 ``` sudo apt install gcc-aarch64-linux-gnu env GCC5_AARCH64_PREFIX=aarch64-linux-gnu- build -a AARCH64 -t GCC5 -p ArmVirtPkg/ArmVirtQemu.dsc ``` This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,11 +1,11 @@ # How to run Windows 10 on ARM or Ubuntu for ARM64 in QEMU on Apple Silicon Mac Here is easy steps to try Windows 10 on ARM on your Apple Silicon Mac. Enjoy! > NOTE: that this is current, 12/19/2020 state. It will be improved a lot in upcoming a few months... (I hope.) ## Running Windows 10 on ARM 1. Install Xcode from App Store or install Command Line Tools on your Mac running on Apple Silicon. @@ -46,25 +46,13 @@ Enjoy! make -j ``` 6. Download pre-build EDK II OVMF EFI image for QEMU. https://gist.github.com/niw/4f1f9bb572f40d406866f23b3127919b/raw/f4dab9b407a2ea94ceceb7905eb918e1317bc251/QEMU_EFI-a096471-edk2-stable202011.tar.gz To build it from the source code, see the following section. 7. Prepare pflash for non-volatile variable store, such as screen resolution. In the directory where you downloaded `QEMU_EFI-....tar.gz`, run following commands. @@ -80,6 +68,18 @@ Enjoy! - This step is optional, you can use `-bios ~/Downloads/QEMU_EFI.fd` instead of `-drive ...if=pflash` lines in the next step, but in that case, any changes in EFI will not be persistent. 8. Download Windows 10 on ARM Insider Preview https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewARM64 9. Convert VHDX downloaded Windows image to qcow2 format It seems that VHDX often gets broken while it is being used, so probably it is better to convert it to qcow2 format before using it. ``` qemu-img convert -p -O qcow2 ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_20231.VHDX ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_20231.qcow2 ``` 10. Run Windows 10 ``` @@ -156,16 +156,56 @@ device driver. Click Next to install `Red Hat VertIO Ethernet Adapter`. ## Running Ubuntu Server for ARM64 Follow the same steps for Windows 10 to prepare QEMU, then download Ubuntu Server for ARM64 and install it. 1. Follow previous steps from 1. to 7. to prepare QEMU. 2. Create an empty disk image. ``` ./qemu-img create -f qcow2 ~/Downloads/ubuntu.qcow2 40G ``` 3. Download Ubuntu Server for ARM64 https://ubuntu.com/download/server/arm 4. Install Ubuntu Server for ARM ``` ./qemu-system-aarch64 \ -monitor stdio \ -M virt,highmem=off \ -accel hvf \ -cpu cortex-a72 \ -smp 4 \ -m 4096 \ -drive file=~/Downloads/pflash0.img,format=raw,if=pflash,readonly=on \ -drive file=~/Downloads/pflash1.img,format=raw,if=pflash \ -device virtio-gpu-pci \ -display default,show-cursor=on \ -device qemu-xhci \ -device usb-kbd \ -device usb-tablet \ -device intel-hda \ -device hda-duplex \ -drive file=~/Downloads/ubuntu.qcow2,if=virtio,cache=writethrough \ -cdrom ~/Downloads/ubuntu-20.04.1-live-server-arm64.iso \ ``` - Follow instruction to install Ubuntu Server. Once it's installed, `-cdrom` argument is not needed. ## Build EDK II OVMF EFI image from the source code Follow the previous instructions to run Ubuntu Server for ARM64. 1. Checkout EDK II source code. ``` git clone --depth 1 --branch edk2-stable202011 https://github.com/tianocore/edk2.git cd edk2 git submodule update --init --recursive ``` @@ -175,10 +215,18 @@ To build this from the source code, you may need to setup Linux environment. Ins 2. Build it. ``` sudo apt install iasl python3 python3-distutils uuid-dev make g++ source edksetup.sh make -C BaseTools build -a AARCH64 -t GCC5 -p ArmVirtPkg/ArmVirtQemu.dsc ``` Then, you will get `QEMU_EFI.fd` and `QEMU_VARS.fd` in `Build/ArmVirtQemu-AARCH64/DEBUG_GCC5/FV`. - The easiest way to take these files to the host macOS, run Remove Login on macOS then `scp` these to `10.0.2.2`. - To build these on x86_64 environment, use following toolchain to cross compile. ``` sudo apt install gcc-aarch64-linux-gnu env GCC5_AARCH64_PREFIX=aarch64-linux-gnu- build -a AARCH64 -t GCC5 -p ArmVirtPkg/ArmVirtQemu.dsc ``` -
niw revised this gist
Dec 19, 2020 . 2 changed files with 2 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -170,7 +170,7 @@ OVMF EFI イメージをソースコードから作る場合、とりあえず 2. ビルドする ``` sudo apt install iasl python3 python3-distutils uuid-dev gcc-aarch64-linux-gnu source edksetup.sh make -C BaseTools env GCC5_AARCH64_PREFIX=aarch64-linux-gnu- build -a AARCH64 -t GCC5 -p ArmVirtPkg/ArmVirtQemu.dsc This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -175,7 +175,7 @@ To build this from the source code, you may need to setup Linux environment. Ins 2. Build it. ``` sudo apt install iasl python3 python3-distutils uuid-dev gcc-aarch64-linux-gnu source edksetup.sh make -C BaseTools env GCC5_AARCH64_PREFIX=aarch64-linux-gnu- build -a AARCH64 -t GCC5 -p ArmVirtPkg/ArmVirtQemu.dsc -
niw revised this gist
Dec 19, 2020 . 2 changed files with 5 additions and 3 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -170,7 +170,7 @@ OVMF EFI イメージをソースコードから作る場合、とりあえず 2. ビルドする ``` apt install iasl python3 python3-distutils uuid-dev gcc-aarch64-linux-gnu source edksetup.sh make -C BaseTools env GCC5_AARCH64_PREFIX=aarch64-linux-gnu- build -a AARCH64 -t GCC5 -p ArmVirtPkg/ArmVirtQemu.dsc This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -110,7 +110,9 @@ Enjoy! ## Enable the internet VirtIO NIC is not enabled by default. To make it works, you need to device driver. 1. Download VirtIO device drivers ISO from [Fedora Project](https://docs.fedoraproject.org/en-US/quick-docs/creating-windows-virtual-machines-using-virtio-drivers/index.html#virtio-win-direct-downloads). @@ -173,7 +175,7 @@ To build this from the source code, you may need to setup Linux environment. Ins 2. Build it. ``` apt install iasl python3 python3-distutils uuid-dev gcc-aarch64-linux-gnu source edksetup.sh make -C BaseTools env GCC5_AARCH64_PREFIX=aarch64-linux-gnu- build -a AARCH64 -t GCC5 -p ArmVirtPkg/ArmVirtQemu.dsc -
niw revised this gist
Dec 12, 2020 . 2 changed files with 6 additions and 6 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -2,7 +2,7 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です。 > メモ: 2020年12月12日現時点での方法で、今後おおきく改善されていくと思います(だといいな。) ## 手順 @@ -29,8 +29,8 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です ``` cd qemu git checkout master -b wip/hvf curl 'https://patchwork.kernel.org/series/400619/mbox/'|git am ``` 5. QEMU をビルドする This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -3,7 +3,7 @@ Here is easy steps to try Windows 10 on ARM on your Apple Silicon Mac. Enjoy! > NOTE: that this is current, 12/12/2020 state. It will be improved a lot in upcoming a few months... (I hope.) ## Steps @@ -31,8 +31,8 @@ Enjoy! ``` cd qemu git checkout master -b wip/hvf curl 'https://patchwork.kernel.org/series/400619/mbox/'|git am ``` 5. Build QEMU -
niw revised this gist
Dec 8, 2020 . 2 changed files with 8 additions and 14 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -16,11 +16,9 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です https://www.macports.org/install.php ``` sudo port install ninja pkgconfig glib2 libpixman ``` 3. QEMU のソースコードをとってくる ``` @@ -31,22 +29,21 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です ``` cd qemu git checkout v5.2.0 -b wip/hvf curl https://patchwork.kernel.org/series/395899/mbox/|git am ``` 5. QEMU をビルドする 必ず `PATH` や `PKG_CONFIG_PATH` を書き換えるなどして、Homebrew などの **x86_64 のツールがインストールされていないか、有効になっていないことを確認してください**。 ``` mkdir build cd build ../configure --target-list=aarch64-softmmu --enable-cocoa make -j ``` 6. Windows 10 on ARM Insider Preview をダウンロードする https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewARM64 This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -18,11 +18,9 @@ Enjoy! https://www.macports.org/install.php ``` sudo port install ninja pkgconfig glib2 libpixman ``` 3. Clone QEMU source code. ``` @@ -33,22 +31,21 @@ Enjoy! ``` cd qemu git checkout v5.2.0 -b wip/hvf curl https://patchwork.kernel.org/series/395899/mbox/|git am ``` 5. Build QEMU Before building, **please ensure there are no x86_64 tools enabled**, such the one installed by Homebrew, by rewriting `PATH` or `PKG_CONFIG_PATH`. ``` mkdir build cd build ../configure --target-list=aarch64-softmmu --enable-cocoa make -j ``` 6. Download Windows 10 on ARM Insider Preview https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewARM64 -
niw revised this gist
Dec 6, 2020 . 2 changed files with 2 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -2,7 +2,7 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です。 > メモ: 2020年12月5日現時点での方法で、今後おおきく改善されていくと思います(だといいな。) ## 手順 This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -3,7 +3,7 @@ Here is easy steps to try Windows 10 on ARM on your Apple Silicon Mac. Enjoy! > NOTE: that this is current, 12/5/2020 state. It will be improved a lot in upcoming a few months... (I hope.) ## Steps -
niw revised this gist
Dec 6, 2020 . 2 changed files with 32 additions and 14 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -51,17 +51,26 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewARM64 7. VHDX から qcow2 に変換する VHDX のままだとかなりの頻度でイメージが壊れる印象があるので qcow2 に変換しておく。 ``` qemu-img convert -p -O qcow2 ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_20231.VHDX ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_20231.qcow2 ``` 8. QEMU 用の EDK II OVMF EFI イメージをダウンロードする。 https://gist.github.com/niw/4f1f9bb572f40d406866f23b3127919b/raw/f4dab9b407a2ea94ceceb7905eb918e1317bc251/QEMU_EFI-a096471-edk2-stable202011.tar.gz ソースコードからビルドする場合は以下を参照のこと。 9. pflash イメージを作って、画面サイズなどを設定する不揮発なストレージを準備する `QEMU_EFI-....tar.gz` をダウンロードしたディレクトリで以下を実行。 ``` cd ~/Downloads tar xzvf QEMU_EFI-*.tar.gz dd if=/dev/zero of=pflash0.img bs=1m count=64 dd if=/dev/zero of=pflash1.img bs=1m count=64 @@ -71,7 +80,7 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です - このステップは省略可能。その場合は次のステップで `-drive ...,if=pflash,...` のかわりに `-bios ~/Downloads/QEMU_EFI.fd` を指定すること。ただし、EFI での変更が保存されなくなります。 10. Windows 10 を起動する ``` ./qemu-system-aarch64 \ @@ -90,7 +99,7 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です -device intel-hda \ -device hda-duplex \ -nic user,model=virtio \ -drive file=~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_20231.qcow2,format=qcow2,if=none,id=boot,cache=writethrough \ -device nvme,drive=boot,serial=boot ``` @@ -123,10 +132,10 @@ VirtIO NIC は標準では有効にならないので、デバイスドライバ Windows を起動して Windows スタートボタン を右クリック、Command Prompt (Admin) を選択。 bcdedit を使ってテスト署名されたデバイスドライバを有効にする。 ``` bcdedit.exe -set TESTSIGNING ON ``` このあと Windows を再起動すること。 This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -53,17 +53,26 @@ Enjoy! https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewARM64 7. Convert VHDX downloaded Windows image to qcow2 format It seems that VHDX often gets broken while it is being used, so probably it is better to convert it to qcow2 format before using it. ``` qemu-img convert -p -O qcow2 ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_20231.VHDX ~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_20231.qcow2 ``` 8. Download pre-build EDK II OVMF EFI image for QEMU. https://gist.github.com/niw/4f1f9bb572f40d406866f23b3127919b/raw/f4dab9b407a2ea94ceceb7905eb918e1317bc251/QEMU_EFI-a096471-edk2-stable202011.tar.gz To build it from the source code, see the following section. 9. Prepare pflash for non-volatile variable store, such as screen resolution. In the directory where you downloaded `QEMU_EFI-....tar.gz`, run following commands. ``` cd ~/Downloads tar xzvf QEMU_EFI-*.tar.gz dd if=/dev/zero of=pflash0.img bs=1m count=64 dd if=/dev/zero of=pflash1.img bs=1m count=64 @@ -74,7 +83,7 @@ Enjoy! - This step is optional, you can use `-bios ~/Downloads/QEMU_EFI.fd` instead of `-drive ...if=pflash` lines in the next step, but in that case, any changes in EFI will not be persistent. 10. Run Windows 10 ``` ./qemu-system-aarch64 \ @@ -92,7 +101,7 @@ Enjoy! -device usb-tablet \ -device intel-hda \ -device hda-duplex \ -drive file=~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_20231.qcow2,format=qcow2,if=none,id=boot,cache=writethrough \ -device nvme,drive=boot,serial=boot ``` @@ -125,10 +134,10 @@ VirtIO NIC is not enabled by default. To make it works, you need to install devi Boot Windows, then right click Windows Start button, then select Command Prompt (Admin). Use bcdedit to enable test-signed device drivers. ``` bcdedit.exe -set TESTSIGNING ON ``` Then reboot Windows. -
niw revised this gist
Dec 5, 2020 . 2 changed files with 2 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -32,7 +32,7 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です ``` cd qemu git checkout d73c46e -b wip/hvf # これは現時点での `origin/master` のコミット。 curl https://patchwork.kernel.org/series/395899/mbox/|git am ``` 5. QEMU をビルドする This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -34,7 +34,7 @@ Enjoy! ``` cd qemu git checkout d73c46e -b wip/hvf # This is current `origin/master` when this document is written. curl https://patchwork.kernel.org/series/395899/mbox/|git am ``` 5. Build QEMU -
niw revised this gist
Dec 3, 2020 . 2 changed files with 2 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -106,7 +106,7 @@ VirtIO NIC は標準では有効にならないので、デバイスドライバ 1. VirtIO デバイスドライバの ISO を [Fedora Project](https://docs.fedoraproject.org/en-US/quick-docs/creating-windows-virtual-machines-using-virtio-drivers/index.html#virtio-win-direct-downloads) からダウンロード。 https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.190-1/virtio-win-0.1.190.iso 2. デバイスドライバの ISO をマウント This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -108,7 +108,7 @@ VirtIO NIC is not enabled by default. To make it works, you need to install devi 1. Download VirtIO device drivers ISO from [Fedora Project](https://docs.fedoraproject.org/en-US/quick-docs/creating-windows-virtual-machines-using-virtio-drivers/index.html#virtio-win-direct-downloads). https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.190-1/virtio-win-0.1.190.iso 2. Mount device drivers ISO -
niw revised this gist
Dec 2, 2020 . 2 changed files with 6 additions and 6 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -2,7 +2,7 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です。 > メモ: 2020年12月2日現時点での方法で、今後おおきく改善されていくと思います(だといいな。) ## 手順 @@ -31,8 +31,8 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です ``` cd qemu git checkout d73c46e -b wip/hvf # これは現時点での `origin/master` のコミット。 curl https://patchwork.kernel.org/series/394901/mbox/|git am ``` 5. QEMU をビルドする This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -3,7 +3,7 @@ Here is easy steps to try Windows 10 on ARM on your Apple Silicon Mac. Enjoy! > NOTE: that this is current, 12/2/2020 state. It will be improved a lot in upcoming a few months... (I hope.) ## Steps @@ -33,8 +33,8 @@ Enjoy! ``` cd qemu git checkout d73c46e -b wip/hvf # This is current `origin/master` when this document is written. curl https://patchwork.kernel.org/series/394901/mbox/|git am ``` 5. Build QEMU -
niw revised this gist
Dec 2, 2020 . 2 changed files with 11 additions and 8 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -86,17 +86,19 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です -device ramfb \ -device qemu-xhci \ -device usb-kbd \ -device usb-tablet \ -device intel-hda \ -device hda-duplex \ -nic user,model=virtio \ -drive file=~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_20231.VHDX,if=none,id=boot,cache=writethrough \ -device nvme,drive=boot,serial=boot ``` - イメージへのパスなどは適宜修正してください。 - TianoCore のロゴが出ている時に `ESC` を押して、`Device Manager`、`OVMF Platform Configuration`、`Change Preferred Resolution for Next Boot` と進めて解像度を変更できます。 - `-device usb-mouse` より `-device usb-tablet` を使うことでマウスカーソルがロックされなくなり使いやすくなります。 - `-device intel-hda -device hda-duplex` でオーディオが使えるようになります。 - `-nic user,model=virtio` がネットワークインターフェイスです。有効にするには以下を参照してください。 ## インターネットに接続する This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -89,17 +89,18 @@ Enjoy! -device ramfb \ -device qemu-xhci \ -device usb-kbd \ -device usb-tablet \ -device intel-hda \ -device hda-duplex \ -drive file=~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_20231.VHDX,if=none,id=boot,cache=writethrough \ -device nvme,drive=boot,serial=boot ``` - Please modify each path to the image depends on your environment. - Hit `ESC` while you see TianoCore, then `Device Manager`, `OVMF Platform Configuration`, `Change Preferred Resolution for Next Boot` to change screen resolution. - Use `-device usb-tablet` instead of `-device usb-mouse` allows transparently moving mouse cursor. - `-device intel-hda -device hda-duplex` to enable audio. - `-nic user,model=virtio` is the network interface. To enable it, see the following section. ## Enable the internet -
niw revised this gist
Dec 1, 2020 . 2 changed files with 4 additions and 0 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -96,6 +96,8 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です - TianoCore のロゴが出ている時に `ESC` を押して、`Device Manager`、`OVMF Platform Configuration`、`Change Preferred Resolution for Next Boot` と進めて解像度を変更できます。 - `-device usb-mouse` のかわりに `-device usb-tablet` を使うとマウスカーソルがロックされなくなり使いやすさが向上します。 ## インターネットに接続する VirtIO NIC は標準では有効にならないので、デバイスドライバを入れる必要がある。 This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -99,6 +99,8 @@ Enjoy! - Hit `ESC` while you see TianoCore, then `Device Manager`, `OVMF Platform Configuration`, `Change Preferred Resolution for Next Boot` to change screen resolution. - Use `-device usb-tablet` instead of `-device usb-mouse` allows transparently moving mouse cursor. ## Enable the internet VirtIO NIC is not enabled by default. To make it works, you need to install device driver. -
niw revised this gist
Dec 1, 2020 . 2 changed files with 42 additions and 21 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -57,7 +57,21 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です ソースコードからビルドする場合は以下を参照のこと。 8. pflash イメージを作って、画面サイズなどを設定する不揮発なストレージを準備する `QEMU_EFI-....tar.gz` をダウンロードしたディレクトリで、例えば `~/Downloads` などで、以下を実行。 ``` tar xzvf QEMU_EFI-*.tar.gz dd if=/dev/zero of=pflash0.img bs=1m count=64 dd if=/dev/zero of=pflash1.img bs=1m count=64 dd if=QEMU_EFI.fd of=pflash0.img conv=notrunc dd if=QEMU_VARS.fd of=pflash1.img conv=notrunc ``` - このステップは省略可能。その場合は次のステップで `-drive ...,if=pflash,...` のかわりに `-bios ~/Downloads/QEMU_EFI.fd` を指定すること。ただし、EFI での変更が保存されなくなります。 9. Windows 10 を起動する ``` ./qemu-system-aarch64 \ @@ -67,7 +81,8 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です -cpu cortex-a72 \ -smp 4 \ -m 4096 \ -drive file=~/Downloads/pflash0.img,format=raw,if=pflash,readonly=on \ -drive file=~/Downloads/pflash1.img,format=raw,if=pflash \ -device ramfb \ -device qemu-xhci \ -device usb-kbd \ @@ -77,7 +92,9 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です -device nvme,drive=boot,serial=boot ``` - イメージへのパスなどは適宜修正してください。 - TianoCore のロゴが出ている時に `ESC` を押して、`Device Manager`、`OVMF Platform Configuration`、`Change Preferred Resolution for Next Boot` と進めて解像度を変更できます。 ## インターネットに接続する @@ -118,7 +135,7 @@ VirtIO NIC は標準では有効にならないので、デバイスドライバ Device Manager のウィンドウで、View メニューの Devices by Connection を選択。 デバイスのツリーから、`ACPU ARM64-based PC`、`Microsoft ACPI-Compliant System`、`PCI Express Root Complex` と選択してその中にある `Unknown device` を探す。 (`Unknown device` はデバイスのツリーに沢山あるけれど、`PCI Express Root Complex`の下にあるのが、VirtIO NIC。) 該当の `Unknown device` を右クリックして、Update Drivers を選択、Browse my computer for drivers を選んで、`D:\NetKVM\w10\ARM64` を指定。 @@ -150,10 +167,3 @@ OVMF EFI イメージをソースコードから作る場合、とりあえず ``` `Build/ArmVirtQemu-AARCH64/DEBUG_GCC5/FV` に `QEMU_EFI.fd` とかができるはず。 This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -59,7 +59,22 @@ Enjoy! To build it from the source code, see the following section. 8. Prepare pflash for non-volatile variable store, such as screen resolution. In the directory where you downloaded `QEMU_EFI-....tar.gz`, for example, `~/Downloads`, ``` tar xzvf QEMU_EFI-*.tar.gz dd if=/dev/zero of=pflash0.img bs=1m count=64 dd if=/dev/zero of=pflash1.img bs=1m count=64 dd if=QEMU_EFI.fd of=pflash0.img conv=notrunc dd if=QEMU_VARS.fd of=pflash1.img conv=notrunc ``` - This step is optional, you can use `-bios ~/Downloads/QEMU_EFI.fd` instead of `-drive ...if=pflash` lines in the next step, but in that case, any changes in EFI will not be persistent. 9. Run Windows 10 ``` ./qemu-system-aarch64 \ @@ -69,7 +84,8 @@ Enjoy! -cpu cortex-a72 \ -smp 4 \ -m 4096 \ -drive file=~/Downloads/pflash0.img,format=raw,if=pflash,readonly=on \ -drive file=~/Downloads/pflash1.img,format=raw,if=pflash \ -device ramfb \ -device qemu-xhci \ -device usb-kbd \ @@ -79,7 +95,9 @@ Enjoy! -device nvme,drive=boot,serial=boot ``` - Please modify each path to the image depends on your environment. - Hit `ESC` while you see TianoCore, then `Device Manager`, `OVMF Platform Configuration`, `Change Preferred Resolution for Next Boot` to change screen resolution. ## Enable the internet @@ -153,10 +171,3 @@ To build this from the source code, you may need to setup Linux environment. Ins ``` Then, you will get `QEMU_EFI.fd` in `Build/ArmVirtQemu-AARCH64/DEBUG_GCC5/FV`. -
niw revised this gist
Dec 1, 2020 . 2 changed files with 11 additions and 14 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -51,9 +51,9 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewARM64 7. QEMU 用の EDK II OVMF EFI イメージをダウンロードする。 https://gist.github.com/niw/4f1f9bb572f40d406866f23b3127919b/raw/f4dab9b407a2ea94ceceb7905eb918e1317bc251/QEMU_EFI-a096471-edk2-stable202011.tar.gz ソースコードからビルドする場合は以下を参照のこと。 @@ -134,15 +134,13 @@ OVMF EFI イメージをソースコードから作る場合、とりあえず ``` git clone https://github.com/tianocore/edk2.git cd edk2 git checkout edk2-stable202011 # stable ってタグされてるやつがいい git submodule update --init --recursive ``` Hypervisor.framework パッチの制限で xHCI を無効にする必要があれば `/ArmVirtPkg/ArmVirtQemu.dsc` と `/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc` にある `MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf` の行をコメントアウト。たぶん現状は問題ない。 2. ビルドする ``` apt install install iasl python3 python3-distutils uuid-dev gcc-aarch64-linux-gnu This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -53,9 +53,9 @@ Enjoy! https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewARM64 7. Download prebild EDK II OVMF EFI image for QEMU. https://gist.github.com/niw/4f1f9bb572f40d406866f23b3127919b/raw/f4dab9b407a2ea94ceceb7905eb918e1317bc251/QEMU_EFI-a096471-edk2-stable202011.tar.gz To build it from the source code, see the following section. @@ -136,15 +136,14 @@ To build this from the source code, you may need to setup Linux environment. Ins ``` git clone https://github.com/tianocore/edk2.git cd edk2 git checkout edk2-stable202011 # or any stable tagged commit git submodule update --init --recursive ``` You may want to disable xHCI due to current Hypervisor.framework patch limitation. Comment out `MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf` in `/ArmVirtPkg/ArmVirtQemu.dsc` and `/ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc`. Probably this is no longer needed. 2. Build it. ``` apt install install iasl python3 python3-distutils uuid-dev gcc-aarch64-linux-gnu -
niw revised this gist
Dec 1, 2020 . 2 changed files with 2 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -125,7 +125,7 @@ VirtIO NIC は標準では有効にならないので、デバイスドライバ Next をクリックして `Red Hat VertIO Ethernet Adapter` をインストール。 ## EDK II の OVMF EFI イメージをビルドする OVMF EFI イメージをソースコードから作る場合、とりあえず簡単にビルドするには、まず VMWare Fusion とか、VirtualBox とかを Intel Mac (そう、Intel Mac が必要)にインストールして、Ubuntu などの Linux が必要になります。 This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -127,7 +127,7 @@ VirtIO NIC is not enabled by default. To make it works, you need to install devi Click Next to install `Red Hat VertIO Ethernet Adapter`. ## Build EDK II OVMF EFI image from the source code To build this from the source code, you may need to setup Linux environment. Install VMWare Fusion or VirtualBox on your Intel Mac (Yes, Intel Mac.) and install Ubuntu. -
niw revised this gist
Dec 1, 2020 . 2 changed files with 2 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -67,7 +67,7 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です -cpu cortex-a72 \ -smp 4 \ -m 4096 \ -bios ~/Downloads/QEMU_EFI.fd \ -device ramfb \ -device qemu-xhci \ -device usb-kbd \ This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -69,7 +69,7 @@ Enjoy! -cpu cortex-a72 \ -smp 4 \ -m 4096 \ -bios ~/Downloads/QEMU_EFI.fd \ -device ramfb \ -device qemu-xhci \ -device usb-kbd \ -
niw revised this gist
Dec 1, 2020 . 2 changed files with 14 additions and 12 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -2,7 +2,7 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です。 > メモ: 2020年11月30日現時点での方法で、今後おおきく改善されていくと思います(だといいな。) ## 手順 @@ -32,7 +32,7 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です ``` cd qemu git checkout 944fdc5 -b wip/hvf # これは現時点での `origin/master` のコミット。 curl https://patchwork.kernel.org/series/392975/mbox/|git am ``` 5. QEMU をビルドする @@ -44,7 +44,8 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です make -j ``` - x86_64 な Homebrew などを使っている場合は問題がおこるので、`PATH` などを書き換えるなどして無効にしておくこと。 - Intel な Mac と比べて、めっちゃ速い。 6. Windows 10 on ARM Insider Preview をダウンロードする @@ -61,7 +62,7 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です ``` ./qemu-system-aarch64 \ -monitor stdio \ -M virt,highmem=off \ -accel hvf \ -cpu cortex-a72 \ -smp 4 \ @@ -72,7 +73,7 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です -device usb-kbd \ -device usb-mouse \ -nic user,model=virtio \ -drive file=~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_20231.VHDX,if=none,id=boot,cache=writethrough \ -device nvme,drive=boot,serial=boot ``` @@ -154,7 +155,7 @@ OVMF EFI イメージをソースコードから作る場合、とりあえず ## メモ - ~~CPU 使用率が指定したコア数 × 100% で張り付くのは Hypervisor.framework パッチの仕様です。~~ Patch 2 でなおった - 同様の手順で Ubuntu Server for ARM も動きます。こっちはより安定している。 https://ubuntu.com/download/server/arm - 8GB の Apple Silicon Mac だとメモリが厳しいかもしれない。4096 から減らしても問題ない。 This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -3,7 +3,7 @@ Here is easy steps to try Windows 10 on ARM on your Apple Silicon Mac. Enjoy! > NOTE: that this is current, 11/30/2020 state. It will be improved a lot in upcoming a few months... (I hope.) ## Steps @@ -34,7 +34,7 @@ Enjoy! ``` cd qemu git checkout 944fdc5 -b wip/hvf # This is current `origin/master` when this document is written. curl https://patchwork.kernel.org/series/392975/mbox/|git am ``` 5. Build QEMU @@ -46,7 +46,8 @@ Enjoy! make -j ``` - Please disable any x86_64 tools such as the one installed by Homebrew, please rewrite `PATH` etc to disable them. - This is surprisingly fast on Apple Silicon Mac, compare to Intel Mac... 6. Download Windows 10 on ARM Insider Preview @@ -63,7 +64,7 @@ Enjoy! ``` ./qemu-system-aarch64 \ -monitor stdio \ -M virt,highmem=off \ -accel hvf \ -cpu cortex-a72 \ -smp 4 \ @@ -74,7 +75,7 @@ Enjoy! -device usb-kbd \ -device usb-mouse \ -nic user,model=virtio \ -drive file=~/Downloads/Windows10_InsiderPreview_Client_ARM64_en-us_20231.VHDX,if=none,id=boot,cache=writethrough \ -device nvme,drive=boot,serial=boot ``` @@ -156,7 +157,7 @@ To build this from the source code, you may need to setup Linux environment. Ins ## Note - ~~It is Hypervisor.framework patch’s known issue that CPU usage keeps about number of cores x 100%.~~ It's fixed now. - You can run Ubuntu Server for ARM in same way, which is stabler than that. https://ubuntu.com/download/server/arm - You may need to reduce memory from 4096, if you’re using 8GB Apple Silicon Mac. -
niw revised this gist
Dec 1, 2020 . No changes.There are no files selected for viewing
-
niw revised this gist
Dec 1, 2020 . 2 changed files with 10 additions and 10 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,4 +1,4 @@ # ARM 版 Windows 10 を Hypervisor.framework のパッチをあてた QEMU を使って Apple Silicon な Mac で動かす ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です。 @@ -11,7 +11,7 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です ``` xcode-select --install ``` 2. MacPorts で QEMU の依存ライブラリをインストール https://www.macports.org/install.php @@ -21,7 +21,7 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です sudo とか使いたくない場合は、`/opt/local` を `$USER:staff` で作って、MacPorts をソースコードからインストールすれば可能です。 3. QEMU のソースコードをとってくる ``` git clone https://git.qemu.org/git/qemu.git @@ -35,7 +35,7 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です curl https://patchwork.kernel.org/series/391797/mbox/|git am ``` 5. QEMU をビルドする ``` mkdir build @@ -50,7 +50,7 @@ ARM 版 Windows 10 を Apple Silicon な Mac で動かす簡単な方法です https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewARM64 7. QEMU 用の xHCI 無効化済み EDK II OVMF EFI イメージをダウンロードする。 https://gist.github.com/niw/4f1f9bb572f40d406866f23b3127919b/raw/d3dc861d1c8578f996bbfcd0e014586a2eb52d8c/QEMU_EFI-8c552e8.tar.gz This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,4 +1,4 @@ # How to run Windows 10 on ARM in QEMU with Hypervisor.framework patches on Apple Silicon Mac Here is easy steps to try Windows 10 on ARM on your Apple Silicon Mac. Enjoy! @@ -13,7 +13,7 @@ Enjoy! xcode-select --install ``` 2. Install MacPorts and QEMU dependencies. https://www.macports.org/install.php @@ -23,7 +23,7 @@ Enjoy! Don’t want to use sudo with MacPorts? Create `/opt/local` as `$USER:staff` and install MacPorts from the source code. 3. Clone QEMU source code. ``` git clone https://git.qemu.org/git/qemu.git @@ -37,7 +37,7 @@ Enjoy! curl https://patchwork.kernel.org/series/391797/mbox/|git am ``` 5. Build QEMU ``` mkdir build @@ -52,7 +52,7 @@ Enjoy! https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewARM64 7. Download prebild, xHCI disabled version of EDK II OVMF EFI image for QEMU. https://gist.github.com/niw/4f1f9bb572f40d406866f23b3127919b/raw/d3dc861d1c8578f996bbfcd0e014586a2eb52d8c/QEMU_EFI-8c552e8.tar.gz
NewerOlder