klange / toaruos

A completely-from-scratch hobby operating system: bootloader, kernel, drivers, C library, and userspace including a composited graphical UI, dynamic linker, syntax-highlighting text editor, network stack, etc.
https://toaruos.org/
University of Illinois/NCSA Open Source License
6.03k stars 475 forks source link

Install without docker #237

Closed 17lwinn closed 2 years ago

17lwinn commented 2 years ago

Hi- I'm interested in trying this but what I plan to try it on does not allow docker. I want to use QEMU so how would I be able to get this running if this is even possible?

klange commented 2 years ago

Docker is only part of the build process, and you do not need to build ToaruOS from source to run it. Prebuilt CD images are attached to tagged releases and also uploaded as build artifacts by CI with every push, though I do not recommend using the latest master builds. Instructions for running the CD image in various virtual machines are provided in the README.

17lwinn commented 2 years ago

Hi- so if I made some changes and wanted to build what do I do? For some OSes like this I usually have to run a script that creates an image ready to use and this way I can make any changes and it can be used straight away.

klange commented 2 years ago

What changes do you want to make?

The build requires a cross compiler toolchain (GCC and Binutils targeted to the OS) and a number of utilities. The Docker image is a shortcut to obtaining those, and is used by the CI builders. You can attempt to install the required packages following the same steps used to build the Docker images, but it can take multiple hours to build the required tools. I no longer provide instructions for this, as the necessary packages are prone to name changes in distribution repositories so my instructions are regularly outdated even for Ubuntu, and the gcc/binutils builds are not special beyond the patches for the OS target so they're far more dependent on the host environment.

You can also fork the repository and push your changes to your own copy and Github will run the CI tasks for you.

17lwinn commented 2 years ago

I'll give forking a try, thanks!