*Phyllome OS is a [Fedora Remix](https://fedoraproject.org/wiki/Remix) based on [Fedora Server 35](https://getfedora.org/en/server/) designed to leverage hardware-assisted virtualization and VirtIO-based paravirtualization to make it easier to run modern UEFI-compatible guest operating systems locally.*
> External contributions for Phyllome OS are welcome. Have a look [here](https://kanboard.phyllo.me/b/CH7qd98J2v7egmodk/development) for some ideas on what to do next, or feel free to create an issue and suggest an idea you wish to work on.
> The Phyllome OS Project is **looking** for **core contributors**, willing to contribute regularly on the project. If you are interested about making cutting-edge open-source virtualization more accessible, please send an email to contact@phyllo.me.
This repository contains the basic building blocks required for deploying [Phyllome OS](https://phyllo.me/) in a virtual machine, using kickstart files.
Kickstart files are used to automate the installation and configuration of RPM-based operating systems.
> If you would like to install Phyllome OS on your computer, please follow [this guide](https://wiki.phyllo.me/deploy/install) instead.
*`blocks` : this directory contains the basic building blocks for assembling Phyllome OS Desktop and Phyllome OS Server.
* This is where most of the development happens.
*`blocks-live` : this directory contains the basic building blocks for creating a live medium for Phyllome OS.
* The code in this directory usually lags behind what is found in the `blocks` directory.
* Ideally, the `blocks` and `blocks-live` repository would be merged, and the number of blocks reduced, to avoid code duplication.
*`leaves` : this directory contains the end product in the form of stand-alone and ready-to-use kickstart files.
* For instance, the Phyllome OS Desktop version optimized for Intel(tm) CPUs and Intel(tm) graphics cards, refered internally as `flat-dhi`, is stored there (*d* stands for desktop, *h* for hypervisor and *i* for intel).
*`post` : this directory contains scripts that are meant to be run after a successful installation, after Phyllome OS has started
* Ideally, these code snippets will be merged with existing building blocks, or summoned as a systemd unit.
Have a look [here](https://docs.fedoraproject.org/en-US/fedora/rawhide/install-guide/appendixes/Kickstart_Syntax_Reference/) to learn the kickstart syntax.
The installation process will be launched behind the scene. You can open `virt-manager` and connect to the virtual machine console to follow the process. Eventually, you will be greeted with this screen:
Phyllome OS goal is to maximize ease-of-use and compatibility. As such, it intends to become the easiest way to virtualize modern operating systems locally, by integrating pertinent open-source software such as `libvirt`, `qemu-kvm` (and eventually `Cloud Hypervisor`), as well as `virt-manager`.
A user should not have to manage Phyllome OS: it should be able to pick its favorite operating system and Phyllome OS should run it, no question asked.
> Note : at the exception of open-source [Darwin derivatives](https://en.wikipedia.org/wiki/Darwin_(operating_system)#Derived_projects), Phyllome OS **strongly** discourage users from running proprietary, darwin-based derivatives on non-Apple hardware.
* **Wiki**: Have a look at the [wiki repository](https://github.com/PhyllomeOS/wiki) for more information on how you can contribute to improve the documentation.
* **Issues tracker**: a public, read-only issue tracking is [available online](https://kanboard.phyllo.me/b/CH7qd98J2v7egmodk/development). For now one, GitHub issue tracking will be used to track development only issues.
* **Code repository**: GitHub is used to host the code, with a mirror pointing to git.phyllo.me