To get started, simply download the following file (clean-boot-kot.img) and launch QEMU (you will need to install ovmf dependency before) with the command below: qemu-system-x86_64 -bios /usr/share/ovmf/OVMF.fd -rtc base=localtime,clock=host -drive file=clean-boot-kot.img -machine q35 -m 4G -smp cores=4 -serial stdio -device e1000e,netdev=net0 -netdev user,id=net0,hostfwd=tcp::5001-:5000,hostfwd=udp::5001-:5000 -object filter-dump,id=f1,netdev=net0,file=dump.bin
To run the nighly build boot-kot.img
, you'll need the QEMU emulator and OVMF. You can install it on most Linux distributions using your package manager. Once QEMU is installed, you can run the program using the following command: qemu-system-x86_64 -bios /usr/share/ovmf/OVMF.fd -rtc base=localtime,clock=host -drive file=boot-kot.img -machine q35 -m 4G -smp cores=4 -serial stdio -device e1000e,netdev=net0 -netdev user,id=net0,hostfwd=tcp::5001-:5000,hostfwd=udp::5001-:5000 -object filter-dump,id=f1,netdev=net0,file=dump.binn
That's easy! Run make init
to install all the required build tools and then run PACKAGE=all make build
to start the building process. Right after, make run
will start TNK in Qemu.
To effectively use the main Makefile in this project, follow these steps:
-
Initialization: Before you can build, run, or perform any other actions, you need to initialize the project. Run the following command:
make init
-
Build a Specific Package:
To build a specific package, use the PACKAGE
variable. For example, if you want to build the kernel, run: PACKAGE=kernel make build
This command will also work to rebuild the specified package if necessary.
- Build All Packages:
To build all packages in the project, simply use the following command: PACKAGE=all make build
This command will build all packages and also rebuild them if needed.
- Configure a Specific Package:
To configure a specific package, again use the PACKAGE
variable. For instance, if you want to configure the kernel, run: PACKAGE=kernel make reconfigure
This command will also work to reconfigure the specified package if necessary.
- Configure All Packages:
To configure all packages in the project, use the following command: PACKAGE=all make reconfigure
This command will configure all packages and also reconfigure them if needed.
By following these instructions, you can effectively use the main Makefile to build and configure packages in your project.
- Use USB key:
BOOT_DEVICE
variable with the correct USB device name. Here's an example of how to do it: BOOT_DEVICE=<device> PACKAGE=all make build
Replace with the actual device name of your USB key, such as /dev/sdc. Be aware that using the USB key in this way will format it, erasing any existing data. Ensure that you have correctly identified the USB device name, as specifying the wrong device can result in data loss. This command will start Kot in Qemu using the specified USB key as the boot device.
- Use your PC:
INSTALL=true PACKAGE=all make build
, and then you can reboot your PC. Then enter into your BIOS and select EFI/limine/BOOTX64.EFI
as a boot file.