Coder Social home page Coder Social logo

5l1v3r1 / zenithos Goto Github PK

View Code? Open in Web Editor NEW

This project forked from pasqualelivecchi/zenithos

0.0 1.0 0.0 49.37 MB

The Zenith Operating System is a modern, professional fork of the 64-bit Temple Operating System, designed to survive societal collapse.

Home Page: https://zenithos.org

License: The Unlicense

HolyC 99.15% C++ 0.63% Shell 0.02% Makefile 0.07% PowerShell 0.13%

zenithos's Introduction

Discord Website goto counter

ZenithOS

The Zenith Operating System is a modernized, professional fork of the 64-bit Temple Operating System. It is a direct reaction against Jewish technological subversion, and also against the corporate takeover of free and open source software to be used as a mouthpiece for furthering their political agenda.

Features in development include:

  • Fully-functional AHCI support
  • VBE support 32-bit color VBE graphics
  • A new GUI framework in 32-bit color
  • Compiler optimizations for speed improvements
  • SSE2+ instruction support in compiler and assembler
  • Network card drivers and a networking stack

Changes include:

  • 60 FPS
  • VBE graphics with variable resolutions
  • 440Hz 'A' tuning changed to 432Hz
  • HolyC -> CosmiC
  • System-wide renaming for clarity
  • No weird shift-space mechanism
  • Caps Lock is reassigned as Backspace
  • Reformatted code for readability
  • Added comments and documentation

Getting started

See the Releases page for the latest stable release. As ZenithOS is in heavy development the last release may be quite behind from master. Alternatively, you can do the following and build an ISO from inside the OS, export it, and use that.

Prerequisites

  • Intel VT-x/AMD-V enabled in your BIOS settings (required to virtualize any 64-bit operating system properly).
  • A brain.

Unix-like Systems

The source code and binary files for ZenithOS can be found in the src/ directory, and are assembled into a ZenithOS.hdd disk image by running make for a fat32 disk or make echfs for an echfs disk. After this, you can do make run to run the image in QEMU, or more preferably, set up a VM in VirtualBox or VMWare, select ZenithOS.hdd as the hard disk image, and boot the VM.

Windows

You can also build the disk image on Windows (I personally think it's a more robust system). You will need Git installed and usable through the terminal. You will need to be on an edition of Windows that is not Home Edition in order to enable the needed Hyper-V disk image tools. There are multiple ways to upgrade to Professional or Education Edition you can find with a quick web search. You should also enable Developer mode under Settings -> Developer Settings. The required setting is under "Powershell", to enable execution of local unsigned Powershell scripts.

You will need some kind of C compiler, in order to create the installer executable for writing qloader2 to the disk image. If you have Visual Studio with the C++ workload installed, or even just the Visual C++ Build Tools, it will compile it automatically. If you want to avoid having MSVC on your machine, the program is in ANSI C, so any compliant C compiler will work. The script checks for tcc and clang on your PATH, and I have tested both to be working. Avoid GNU bloat like MinGW or Cygwin.

The Powershell script make.ps1 must be run from an elevated Powershell process. It will guide you through enabling the two needed Hyper-V features. Avoiding enabling the other Hyper-V features is recommended, because if they are enabled (specifically the hypervisor), it will force any other virtualization software (like VirtualBox) to use the native Hyper-V API, which is terribly slow.

Once you have a compiler, just run .\make.ps1 to create the FAT32 disk image. Optional arguments can be specified:

make.ps1 create <size=2GB> <driveletter=Z>

You can specify sizes using KB, MB, GB, TB postfixes:

.\make.ps1 create 20MB #creates a 20MiB VHD

There are more commands in the PS script, you should take a peek. I suggest running VSCode as Administrator and having a tasks.json file with the script commands assigned to various keybindings.

VirtualBox

If you are using VirtualBox, you should put the install directory of VirtualBox (usually C:\Program Files\Oracle\VirtualBox) in your PATH for a couple of reasons. After generating a disk image, attach it to your VM. VirtualBox stores the UUID of that disk image in its internal volume manager. When you generate a new image, it has a new UUID, and VirtualBox refuses to run the VM because the UUID of the disk has changed. The first reason is so that the script can reuse the same UUID everytime a new disk is generated. This way, VirtualBox won't complain that the attached disk has the wrong UUID. The second reason is so that you can use the run command in the script to launch the VM from the terminal.

Contributing

You can contribute to the repository from inside or outside the OS.

To make changes outside the OS, you can edit files in the src/ directory, and changes will be reflected in the OS image the next time make is executed. The exception to this is files related to the Kernel or the Compiler, as both are compiled when BootHDIns; is run within ZenithOS. In these cases, you must make changes within the OS.

To make changes within the OS, boot up the VM and edit files as necessary. If modifying Kernel files, recompile with BootHDIns;. if modifying Compiler files, recompile with CompComp;. Reboot to see if everything is fine before powering-off the VM. When finished, run make export-fat32 or make export-echfs (depending on which filesystem you are using) to pull the files from ZenithOS.hdd into the src/ directory.

Background

In around November of 2019, I decided I wanted to continue Terry's work in a direction that would make it a viable operating system while still keeping the innovative and frankly, divine-intellect ideas and design strategies intact.

At first, I was developing exclusively inside a VM and occasionally generating ISOs as official releases. This was not a good approach, as things broke and I had no way of telling which changes caused what. So I decided to scrap that and restart from scratch.
Releases of the "old" Zenith are currently archived on the mega.nz website:

Screenshots

System Report, Z Splash and AutoComplete, with Stars wallpaper

32-bit color!

zenithos's People

Contributors

mintsuki avatar tomawezome avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.