mihaip / infinite-mac

A classic Mac loaded with everything you'd want
https://infinitemac.org
Apache License 2.0
1.12k stars 66 forks source link

Creating a custom boot disk with no startup items #298

Closed eliot-akira closed 3 months ago

eliot-akira commented 4 months ago

When running without the Infinite HD drive attached, using URL query infinite_hd=false, I'm seeing a notification on boot.

The alias "Infinite HD" could not be opened, because the disk "Infinite HD" could not be found.

It's somewhat similar to issue #202, where the suggested solution was:

You can create a custom boot disk that omits that startup item

Searching around the codebase, I couldn't find how to do this. Could you give a hint what files to look into? I'm guessing somewhere in import-disks.py, but maybe that's different from a boot disk.

mihaip commented 3 months ago

@eliot-akira: there's two options:

  1. Copy the contents of the system disk you wish to modify to Saved HD. You can then edit it to remove the Infinite HD alias from the Startup Items folder (and make any other customizations you want to it). If you then create a custom instance (at https://infinitemac.org/run) with no built-in system disk but with Saved HD, you'll be able to start up from it.
  2. Download the disk image that you wish to use as a foundation from the Images directory. You can then load it in Basilisk II or other emulator and make changes to it. In the custom instance dialog you can then use the "Disk File…" option at the bottom of the disk list to pick that custom boot image.
eliot-akira commented 3 months ago

Thank you for the helpful response.

create a custom instance with no built-in system disk

I see, I didn't notice the system disk can be removed in the customization screen. OK, so the Saved HD can serve as the boot disk. I'll try that. (EDIT: Yes, success!)

The second approach is what I vaguely had in mind, to produce a custom .dsk file and use that to boot. But from what I understand in the README, I need a macOS version of an emulator to do this (and I'm guessing there's no way to do it in a Docker image). (EDIT: Solved by exporting Saved HD as .dsk.)

That's plenty of info for me to continue exploring. Please feel free to close the issue. Much appreciated!


..I had a question on a different topic, but I found the solution as I was writing. I'm trying to prepare a single page that runs a specific machine setup and custom boot disk.

After I build the project with vite build, when I visit the resulting static site it was producing many failed requests to /assets/worker-commands and /assets/worker-idlewait. And I was wondering if it's possible to run the site without Cloudflare Worker.

Found the answer here: #284#issuecomment-1916236436. I'll be using NGINX but the idea is the same.


Anyway, thanks so much for open-sourcing a fun and fascinating project.

mihaip commented 3 months ago

But from what I understand in the README, I need a macOS version of an emulator to do this (and I'm guessing there's no way to do it in a Docker image).

You can also use Infinite Mac itself to do this. Once you have Saved HD set up the way you want it, you can export it as a .dsk file (from the Settings dialog).

Please feel free to close the issue.

Will do, but feel free to leave more comments if you need any other pointers.

eliot-akira commented 3 months ago

you can export it as a .dsk file (from the Settings dialog)

Found it, perfect!

Just wanted to say, I think this project is valuable for computer/software history preservation and maybe education, since it's so accessible and easy to run in a web browser. I'm happy I can run a (virtual) retro Macintosh for practical use now, with nostalgia and re-discovering the charm of its user interface design.