GL1TCH OS is an exciting project in early development aimed at creating an operating system that's both innovative and educational. This project is open for contributions from the community and is designed to be a fantastic learning opportunity for developers and enthusiasts interested in operating systems, low-level programming, and system architecture.
GL1TCH OS is all about pushing the boundaries of what an operating system can do. It's being developed to provide a playground for experimenting with unique concepts, exploring system internals, and understanding the intricacies of OS development. Even though we're in the early stages of development, we're excited to invite you to join us on this journey.
We believe in the power of open collaboration. If you're passionate about operating systems, programming, or just curious to learn, there are several ways you can get involved:
- Fork: Start by forking this repository to your own GitHub account.
- Clone: Clone the forked repository to your local machine.
- Explore: Dive into the code, documentation, and issues to understand the project better.
- Contribute: Contribute by fixing bugs, adding features, or enhancing documentation.
- Discuss: Join discussions on GitHub issues to share your ideas and feedback.
- Spread the Word: Share the project with others who might be interested.
- Linux OS: All scripts are written in Bash, so a Linux environment is required.
- Qemu: Virtualization software. Download from Qemu website.
- NASM: Assembly compiler. Install from NASM website.
- mtools: Tool for manipulating the floppy disk (used in the early stages). Install from mtools website.
- make: Build automation tool. Install using your package manager (e.g.,
sudo apt-get install make
). - Bochs: Debugger and emulator. Optional for debugging purposes. Install from Bochs website.
- File Editor: Any text editor of your choice for code modifications.
- WCC (Watcom C Compiler): C compiler for compiling the kernel as it supports the 16-bit mode. Install from WCC repository.
-
Install Requirements:
- Ensure that you have a Linux environment.
- Install Qemu, NASM, mtools, make, and Bochs using the provided links or your package manager.
-
Build the Project:
- Run the
make
command in the project directory to build the project.
- Run the
-
Set Execution Permissions:
- Execute
chmod +x run.sh
to grant execution permissions to therun.sh
script.
- Execute
-
Execute the Project:
- Run the project using
./run.sh
.
- Run the project using
-
Debug with Bochs (Optional):
-
If you want to debug the project using Bochs, run the appropriate Bochs command with your configuration. For example:
bochs -f bochsrc.txt
or by just using the default config and runing./debug.sh
-
Note: Bochs is optional and can be used for debugging purposes. If not needed, you can skip this step.
We welcome contributions from developers of all skill levels. Whether you're an experienced developer or just starting, your ideas and contributions are valuable to us. To contribute, follow these steps:
- Check the Issues section for tasks and bugs you can work on.
- Fork the repository and create a new branch for your contribution.
- Make your changes, following the coding guidelines and best practices.
- Test your changes thoroughly.
- Submit a pull request, explaining the changes you've made and why they should be merged.
To kickstart your journey with GL1TCH OS development, we recommend checking out the following resources:
- YouTube Playlist: This playlist is a cornerstone of our project, providing valuable insights into OS development.
- Documentation(still not created): Our documentation hub where you can find guides, tutorials, and more.
Let's come together and create something truly exceptional. Join us in shaping the future of GL1TCH OS!
Note: GL1TCH OS is currently in early development. Features, design, and functionality are subject to change as the project progresses.