Cleaning installation process

Make the installation process a bit more easy to follow
This commit is contained in:
lukas 2023-05-29 16:55:01 +02:00
parent 1b3b3aa8e6
commit 65a0ad71f5
7 changed files with 67 additions and 236 deletions

View File

@ -10,24 +10,31 @@ dateCreated: 2021-11-14T16:19:00.348Z
# Install Phyllome OS # Install Phyllome OS
*This page is intended for users that would like to install Phyllome OS permanently on their computer. To use it as a live system, please [see this page](https://wiki.phyllo.me/getstarted/live).* *This page is intended for users that would like to install Phyllome OS permanently on a computer. Make sure you understand what [Phyllome OS](/phyllomeos/purpose.md) is about before installing it*
Installing Phyllome OS means booting from a [bootable USB flash drive](/deploy/medium) and fetching [an online kickstart file](https://raw.githubusercontent.com/PhyllomeOS/phyllomeos/main/leaves/flat-dhi.cfg). A kickstart file contains instructions to automatically deploy an operating system. Installing Phyllome OS involves booting from a [bootable USB flash drive](/deploy/medium) and fetching an online kickstart file, which contains instructions to automatically deploy Phyllome OS.
* General requirements: * General requirements:
* **A bootable USB flash drive** * **A bootable USB flash drive**
* *If you don't have a USB flash drive ready to use, please go back to [the last section](https://wiki.phyllo.me/deploy/medium)* * *If you don't have a USB flash drive ready to use, please go back to [the last section](/deploy/medium)*
* **A wired Internet connection** * **A wired Internet connection**
* *Many files will be fetched online during the installation process* * *Many files will be fetched online during the installation process*
* *Wireless is not supported*
* **A storage device** * **A storage device**
* *The kickstart file will look for a storage device and install Phyllome OS on it. If there is no disk available, the installation will fail* * *The kickstart file will look for a storage device and install Phyllome OS on it. If there is no disk available, the installation will fail*
## Create a bootable USB flash drive > The process to install Phyllome OS is destructive. Only follow the following instructions on a computer whose data has been backed-up and which has only one storage device attached to it.
{.is-danger}
> *As of now, it is only possible to deploy Phyllome OS from an [**official Fedora Everything ISO file**](https://alt.fedoraproject.org/en/)*. ## Choose your edition
{.is-info}
* Go back to [the last section](https://wiki.phyllo.me/deploy/medium) to learn how to create a bootable USB flash drive. | | GPU-agnostic | Intel GPUs (5th to 9th gen)[^2] |
|---|---|---|
| *Intel CPU* | **Phyllome OS Desktop I** | **Phyllome OS Desktop II** |
| *AMD CPU* | **Phyllome OS Desktop A** | N/A |
| CPU-agnostic | **Phyllome OS Desktop** | N/A |
[^2]: Only [Broadwell-based SoC](https://en.wikipedia.org/wiki/Broadwell_(microarchitecture)) (5th generation) to [Cascade Lake-based SoC](https://en.wikipedia.org/wiki/Cascade_Lake_(microarchitecture)) (9th generation) are supported. If you possess a more recent SoC from Intel, for instance one based on the Tiger Lake SoC, please pick Phyllome OS Desktop I or Phyllome OS Desktop A instead.
## Boot from the USB flash drive ## Boot from the USB flash drive
@ -44,13 +51,13 @@ The following section illustrates how to change the boot order *temporarily*. Th
![kickstart-1](/assets/grub-kickstart/kickstart-1.png) ![kickstart-1](/assets/grub-kickstart/kickstart-1.png)
## Alter the GRUB instructions ## Boot into the automated install process
> GRUB is universal bootloader that ship with many Linux distributions. It is a software made to find and load operating systems during a boot process. One needs to alter the GRUB instructions in order trigger the automated installation.
> GRUB is universal bootloader that ship with many Linux distributions.
{.is-info} {.is-info}
One needs to alter the GRUB instructions before the USB flash drive can load the Anaconda Installer, which is normally used to install Fedora and other related distributions. If Fedora is already installed on your computer, and if your GRUB is not password protected, which is the default behavior, you may also be able to follow the instructions below.
### EFI-based firmware ### EFI-based firmware
* On the GRUB splash screen, navigate to the first entry using your keyboard arrow key and press <kbd>e</kbd>. * On the GRUB splash screen, navigate to the first entry using your keyboard arrow key and press <kbd>e</kbd>.
@ -61,19 +68,30 @@ One needs to alter the GRUB instructions before the USB flash drive can load the
![kickstart-2](/assets/grub-kickstart/kickstart-3.png) ![kickstart-2](/assets/grub-kickstart/kickstart-3.png)
> *GRUB defaults to the US keyboard layout. Have a look at [this online resource](https://en.wikipedia.org/wiki/QWERTY#/media/File:KB_United_States.svg) to find the corresponding keys if you are not using a US keyboard layout* > GRUB defaults to the US keyboard layout. Have a look at [this online resource](https://en.wikipedia.org/wiki/QWERTY#/media/File:KB_United_States.svg) to find the corresponding keys if you are not using a US keyboard layout
{.is-info} {.is-info}
> ***Danger Zone**: the next instruction will trigger a process that will automatically **destroy** any data located on the internal disk present in your computer* * Write-down the URL associated to the edition you picked
| | Edition | Kickstart URL |
|---|---|---|
| *CPU and GPU agnostic* | **Phyllome OS Desktop** |
[ks.phyllo.me/d](
https://ks.phyllo.me/d) |
| *Intel CPU* | **Phyllome OS Desktop I** | [ks.phyllo.me/di](
https://ks.phyllo.me/d) |
| *AMD CPU* | **Phyllome OS Desktop A** | [ks.phyllo.me/da](
https://ks.phyllo.me/d) |
| *Intel CPU and GPU* | **Phyllome OS Desktop II** | [ks.phyllo.me/dii](
https://ks.phyllo.me/d) |
> **Danger Zone**: the following instruction will trigger a process that will automatically **destroy** any data located on the internal disk present in your computer *without* asking for a confirmation*
{.is-danger} {.is-danger}
* Leave a blank space after the word `quiet` and write exactly the following `inst.ks=https://ks.phyllo.me/dii`, then press <kbd>Ctrl</kbd> + <kbd>x</kbd> simultaneously or <kbd>F10</kbd>. This command will trigger the automated installation of Phyllome OS. * Leave a blank space after the word `quiet` and write exactly the following `inst.ks=https://ks.phyllo.me/dii`, then press <kbd>Ctrl</kbd> + <kbd>x</kbd> simultaneously or <kbd>F10</kbd>. This command will trigger the automated installation of Phyllome OS.
![kickstart-3.png](/assets/grub-kickstart/kickstart-4.png) ![kickstart-3.png](/assets/grub-kickstart/kickstart-4.png)
> *The shortened URL `https://ks.phyllo.me/dii` points to the latest Desktop version of Phyllome OS, tweaked for Intel CPUs and GPUs (gen 5th to gen 9th). The shortened link points to the kickstart file available here: https://raw.githubusercontent.com/PhyllomeOS/phyllomeos/main/dishes/phyllome-desktop-intelcpu-intelgpu.cfg. Any valid kickstart file may be used.*
{.is-info}
* During the installation process, you can use <kbd>Alt</kbd> + <kbd>Tab</kbd> to cycle through tabs, and look at the logs in real-time * During the installation process, you can use <kbd>Alt</kbd> + <kbd>Tab</kbd> to cycle through tabs, and look at the logs in real-time
![kickstart-4](/assets/grub-kickstart/kickstart-5.png) ![kickstart-4](/assets/grub-kickstart/kickstart-5.png)
@ -82,16 +100,9 @@ One needs to alter the GRUB instructions before the USB flash drive can load the
![kickstart-5](/assets/grub-kickstart/kickstart-6.png) ![kickstart-5](/assets/grub-kickstart/kickstart-6.png)
* Go to the [First-launch configuration section](/deploy/install#first-launch) to learn what to do next. > If you wish to learn more about how kickstart files are used to create Phyllome OS, please have a look at [the official git repository](https://github.com/PhyllomeOS/phyllomeos).
> *If you wish to learn more about how kickstart files are used to create Phyllome OS, please have a look at [the official git repository](https://github.com/PhyllomeOS/phyllomeos).*
{.is-info} {.is-info}
### BIOS-based firmware
> Section under construction
{.is-warning}
## First-launch ## First-launch
* **Welcome screen**: on first-launch, for the *Desktop edition*, you will be greeted with the GNOME Welcome Screen. As of now, only English is available out of the box. Click *Next* when you are ready. * **Welcome screen**: on first-launch, for the *Desktop edition*, you will be greeted with the GNOME Welcome Screen. As of now, only English is available out of the box. Click *Next* when you are ready.
@ -100,7 +111,7 @@ One needs to alter the GRUB instructions before the USB flash drive can load the
* **Keyboard layout**: you can select your favorite keyboard layout by clicking on the three stacked vertical dots at the bottom of the screen. * **Keyboard layout**: you can select your favorite keyboard layout by clicking on the three stacked vertical dots at the bottom of the screen.
> *By default, Phyllome OS is set to use the *fr-CH* keyboard layout. This keyboard layout is used by people living in [Romandy](https://en.wikipedia.org/wiki/Romandy), Switzerland, which is also where the original author of Phyllome OS is from.* > By default, Phyllome OS is set to use the *fr-CH* keyboard layout. This keyboard layout is used by people living in [Romandy](https://en.wikipedia.org/wiki/Romandy), Switzerland, which is also where the original author of Phyllome OS is from.
{.is-info} {.is-info}
![first-launch-2.png](/assets/first-launch/first-launch-2.png) ![first-launch-2.png](/assets/first-launch/first-launch-2.png)
@ -111,19 +122,13 @@ One needs to alter the GRUB instructions before the USB flash drive can load the
* **Online Accounts**: Phyllome OS strongly discourages the use of *Online Accounts*, and therefore provides no option here. Click on *Skip* to go to the next screen. * **Online Accounts**: Phyllome OS strongly discourages the use of *Online Accounts*, and therefore provides no option here. Click on *Skip* to go to the next screen.
> *Phyllome OS is **not** designed to be a safe place for storing persistent or personal data, as it doesn't provide full-disk encryption by default. Phyllome OS instead relies on filesystem-level encryption to protect virtual machine disks, and encourage its users to rely on another layer of encryption as provided by their operating system inside their virtual machine, whenever available.*
{.is-info}
![first-launch-4.png](/assets/first-launch/first-launch-4.png) ![first-launch-4.png](/assets/first-launch/first-launch-4.png)
* **Create a user account**: you are invited to create a user account, which by default will be granted administrator or root privileges. Click on *Next* when you are done. * **Create a user account**: you are invited to create a user account, which by default will be granted administrator or root privileges. Click on *Next* when you are done.
![first-launch-5.png](/assets/first-launch/first-launch-5.png) ![first-launch-5.png](/assets/first-launch/first-launch-5.png)
* **Provide a password**: please do provide a strong password. In case you ever forget it, write it down on a piece of paper and store it somewhere safe, or/and rely on an online password manager like [Bitwarden](https://bitwarden.com/) with [multi-factor authentication](https://en.wikipedia.org/wiki/Multi-factor_authentication) enabled. Click on *Next* when you are done. * **Provide a password**: please do provide a strong password. In case you ever forget it, write it down on a piece of paper and store it somewhere safe, or/and rely on an online password manager like [Bitwarden](https://bitwarden.com/). Click on *Next* when you are done.
> *Phyllome OS will eventually rely on the user password as provided here to decrypt the folder containing virtual machine disks. Loosing the password will mean loosing any access to the virtual machine disks.*
{.is-info}
![first-launch-6.png](/assets/first-launch/first-launch-6.png) ![first-launch-6.png](/assets/first-launch/first-launch-6.png)
@ -140,12 +145,12 @@ One needs to alter the GRUB instructions before the USB flash drive can load the
![first-launch-10.png](/assets/first-launch/first-launch-10.png) ![first-launch-10.png](/assets/first-launch/first-launch-10.png)
> *Don't forget to remove the USB flash drive from your computer, so that next time your computer will boot, it will use the internal disk where Phyllome OS has been deployed.* > Don't forget to remove the USB flash drive from your computer, so that next time your computer will boot, it will use the internal disk where Phyllome OS has been deployed.
{.is-info} {.is-info}
--- ---
*[**Go to parent page**](https://wiki.phyllo.me/)* *[**You are ready to get started**](https://wiki.phyllo.me/#get-started)*

View File

@ -10,28 +10,17 @@ dateCreated: 2021-11-13T11:34:07.852Z
# Create a bootable USB flash drive # Create a bootable USB flash drive
*In this section, you will learn how to download Phyllome OS and how to create a live medium that will allow you to boot it from a USB flash drive.* *In this section, you will learn how to create a bootable USB medium that will allow you to install Phyllome on your computer.*
## Download Phyllome OS > As it is not yet possible to install Phyllome OS from the live image., intent to install Phyllome OS permanently on your computer, you need to use a [Fedora Server ISO instead](https://getfedora.org/en/server/). The steps below are made to be generic, and should be valid regardless of the ISO you use
The Phyllome OS ISOs files are made available [on GitHub](https://github.com/PhyllomeOS/phyllomeos/releases).
As of now, only the *Phyllome OS Desktop II edition* is available as an ISO file. The *II edition* is tuned for Intel CPUs and Intel GPUs. It is also known as *ldhi*, for *live*, *desktop*, *hypervisor*, and *intel*.
> If you intent to install Phyllome OS permanently on your computer, use a [Fedora Server ISO instead](https://getfedora.org/en/server/), as it is not yet possible to install Phyllome OS from the live image. The steps below are made to be generic, and should be valid regardless of the ISO you use
{.is-info} {.is-info}
* [**The direct link**](https://github.com/PhyllomeOS/phyllomeos/releases/download/v.0.2.0-alpha/phyllome-live_ldhi_v0.2.0-alpha_x86_64.iso) to download the ISO. It will take some time to load. ## Load the ISO on a USB flash drive
> As of now, there is no checksum available, and the release is not signed using GPG keys. Among other things, it means that there is no guarantee about the authenticity of the file or its integrity, whatsoever. Alternatively, a safer is to deploy Phyllome OS [in a virtual machine](https://github.com/PhyllomeOS/phyllomeos#how-to-hack-phyllome-os) or to deploy it directly on a host using [this method](/deploy/live)
{.is-warning}
## Load Phyllome OS on a USB flash drive
The following instructions may have to be adapted depending on the operating system that you are currently using. The following instructions may have to be adapted depending on the operating system that you are currently using.
* *General requirements* * *General requirements*
* A fast USB 3.0 flash drive of at least 2 GB * A fast USB 3.0 flash drive of at least 10 GB
### Command-line instructions (Linux-only) ### Command-line instructions (Linux-only)
@ -43,7 +32,7 @@ The next command, which requires root privileges, assumes that the ISO file is a
{.is-danger} {.is-danger}
``` ```
dd bs=4MB if=~/Downloads/phyllome-live_ldhi_v0.2.0-alpha_x86_64.iso of=/dev/sdz dd bs=4MB if=~/Downloads/Fedora-Server-dvd-x86_64-38-1.6 of=/dev/sdz
``` ```
### Manual instructions (Cross-platform) ### Manual instructions (Cross-platform)
@ -101,5 +90,4 @@ Follow the normal procedure to install an application on your computer.
--- ---
*If you have followed the procedure using the Fedora Server ISO, with the intent of installing Phyllome OS permanently, please go to the [Install Phyllome OS page](https://wiki.phyllo.me/deploy/install).* *Now that your USB flash drive is ready, please go to the [Install Phyllome OS page](https://wiki.phyllo.me/deploy/install).*
*If you have followed the procedure using the Phyllome OS ISO, go to the section [Get started with the live system](/gofurther/live).*

View File

@ -23,14 +23,10 @@ Before creating your first virtual machine, it is a good idea to check if everyt
The command-line tool `virt-host-validate` allows you to check whether virtualization features are activated or not. The command-line tool `virt-host-validate` allows you to check whether virtualization features are activated or not.
* Use the following command to check your system: * Use the following command to check your system:
```
virt-host-validate
```
* Make sure the result look like this:
``` ```
[groot@phyllome ~]$ virt-host-validate $ virt-host-validate
QEMU: Checking for hardware virtualization : PASS QEMU: Checking for hardware virtualization : PASS
QEMU: Checking if device /dev/kvm exists : PASS QEMU: Checking if device /dev/kvm exists : PASS
QEMU: Checking if device /dev/kvm is accessible : PASS QEMU: Checking if device /dev/kvm is accessible : PASS
@ -58,18 +54,19 @@ virt-host-validate
* For Intel CPUs, you can use the following more specific command to check whether *hardware virtualization* is activated: * For Intel CPUs, you can use the following more specific command to check whether *hardware virtualization* is activated:
``` ```
cat /proc/cpuinfo | grep vmx $ cat /proc/cpuinfo | grep vmx
``` ```
* For AMD CPUs, the following command can be used: * For AMD CPUs, the following command can be used:
``` ```
cat /proc/cpuinfo | grep svm $ cat /proc/cpuinfo | grep svm
``` ```
* Look for `svm` for AMD-based processors, or `vmx` for Intel-based processors. * Look for `svm` for AMD-based processors, or `vmx` for Intel-based processors.
``` ```
[groot@phyllome ~]$ cat /proc/cpuinfo | grep svm $ cat /proc/cpuinfo | grep svm
flags : fpu vme de [...] svm [...] sme sev sev_es flags : fpu vme de [...] svm [...] sme sev sev_es
``` ```
@ -137,7 +134,7 @@ Any new user, including the one that has been created during the first-launch se
To avoid a password prompt each time you connect to *qemu:///system*, you can add the current user to the `libvirt` by using the following command, in the terminal: To avoid a password prompt each time you connect to *qemu:///system*, you can add the current user to the `libvirt` by using the following command, in the terminal:
``` ```
sudo usermod -a -G libvirt $(whoami) # usermod -a -G libvirt $(whoami)
``` ```
> Phyllome OS will eventually switch to the *qemu:///session* URI, which doesn't require elevated privileges. Have a look at [this great blog post](https://blog.wikichoon.com/2016/01/qemusystem-vs-qemusession.html) to understand some of the differences between the *session* and the *system* URI. > Phyllome OS will eventually switch to the *qemu:///session* URI, which doesn't require elevated privileges. Have a look at [this great blog post](https://blog.wikichoon.com/2016/01/qemusystem-vs-qemusession.html) to understand some of the differences between the *session* and the *system* URI.
@ -148,12 +145,14 @@ sudo usermod -a -G libvirt $(whoami)
Unfortunately, the GRUB config won't correctly update during the kickstart phase, so it has to be done manually. Unfortunately, the GRUB config won't correctly update during the kickstart phase, so it has to be done manually.
``` ```
sudo grub2-mkconfig -o /boot/grub2/grub.cfg # grub2-mkconfig -o /boot/grub2/grub.cfg
```
When the is done, please reboot:
```
# reboot
``` ```
When the is done, please reboot: `sudo reboot`
--- ---
*Are you looking for tasks to do with your system? If so, have a look at doing some [suggested tasks](/gofurther)* *Are you looking for tasks to do with your system? If so, have a look at doing some [suggested tasks](https://wiki.phyllo.me/)*
[^1]: Although, we very much encourage you to [hack it](https://github.com/PhyllomeOS/phyllomeos#how-to-hack-phyllome-os).

View File

@ -147,7 +147,7 @@ This section will show you how to modify the boot order permanently, so you can
* That's it. Save changes and exist. Note that it is advisable to revert these changes after a successful installation, or to only change the bootloader temporary. * That's it. Save changes and exist. Note that it is advisable to revert these changes after a successful installation, or to only change the bootloader temporary.
> ***Failing to activate hardware-assisted virtualization** will make running virtual machines extremly **slow**, or not possible at all. If, for some reasons, it cannot be activated on your computer, for example because of a lack of hardware support, you would be better off picking a Linux distribution which doesn't require it, such as [Debian](https://www.debian.org/distrib/).* > **Failing to activate hardware-assisted virtualization** will make running virtual machines extremly **slow**, or not possible at all. If, for some reasons, it cannot be activated on your computer, for example because of a lack of hardware support, you would be better off picking a Linux distribution which doesn't require it, such as [Debian](https://www.debian.org/distrib/).
{.is-warning} {.is-warning}
--- ---

View File

@ -1,51 +0,0 @@
---
title: Understand what you are signing up for
description:
published: true
date: 2023-05-27T21:33:07.233Z
tags:
editor: markdown
dateCreated: 2021-11-13T11:19:38.215Z
---
# Phyllome OS Philosophy
> Phyllome OS has one goal: to let users run their favorite operating system well.
* The host operating system, Phyllome OS, is designed to be as discrete as possible.
* Phyllome OS should mostly take care of itself.
* Eventually, users should be able to reach *the state of virtual enlightenment*, which boils down to:
* Accepting the fact that your favorite operating system is running inside a virtual machine.
* Learning how to leverage this new state of affairs.
> Phyllome OS has just started its journey and there is still a long, *years-long*, way to go to achieve its vision.
{.is-warning}
## Phyllome OS Desktop and Phyllome OS Server
Phyllome OS exists in two main versions:
* **Phyllome OS Desktop**, which features a graphical desktop environment.
* **Phyllome OS Server**, which does not feature a graphical desktop environment.
> Phyllome OS Server is made for power users. It includes all virtualization enhancements that Phyllome OS Desktop provides, minus the Desktop Environment. If you don't know which one to choose, you should most certainly pick the Desktop version.
{.is-info}
Phyllome OS Desktop and Phyllome OS Server also comes with several editions optimized for a particular combination of hardware. At some point, there will be merged into one.
> As of now, **only Phyllome OS Desktop II** is officially supported. A computer with both an Intel CPU and an Intel GPU (gen 5th to gen 9th) is expected, so it can leverage most features Phyllome OS can offer. Support for other other editions are expected for the Beta realease.
{.is-info}
| | GPU-agnostic[^1] | Intel GPUs[^2] |
|---|---|---|
| *Intel CPU* | **Phyllome OS Desktop I** and **Phyllome OS Server I** | **Phyllome OS Desktop II** and **Phyllome OS Server II** |
| *AMD CPU* | **Phyllome OS Desktop A** and **Phyllome OS Server A** | N/A |
| CPU-agnostic | **Phyllome OS Desktop** and **Phyllome OS Server** | N/A |
[^1]: GPUs agnostic editions will work with almost any GPUs that Linux can drive. Some severe limitations apply to [most recent Nvidia offerings](https://nouveau.freedesktop.org/FeatureMatrix.html). In general, **Nvidia GPUs are strongly discouraged** in all capacities, at least until Nvidia stop actively hindering the development of open-source drivers for its GPUs.
[^2]: Only [Broadwell-based SoC](https://en.wikipedia.org/wiki/Broadwell_(microarchitecture)) (5th generation) to [Cascade Lake-based SoC](https://en.wikipedia.org/wiki/Cascade_Lake_(microarchitecture)) (9th generation) are supported. If you possess a more recent SoC from Intel, for instance one based on the Tiger Lake SoC, please pick Phyllome OS Desktop I or Phyllome OS Desktop instead.
---
*Ready to try it out? If so, please go to [**the next section**](/deploy/prepare) to prepare your host computer.*

View File

@ -14,20 +14,11 @@ As of now, `netboot.xyz` is one of the main way to deploy or use a guest operati
## Preparation ## Preparation
By default, `netboot.xyz.iso` should already be located under `var/lib/libvirt/iso`. If it's not the case, please use the following command to fetch it, or navigate to [the website](https://netboot.xyz/): By default, `netboot.xyz.iso` should already be located under `var/lib/libvirt/image/iso`. If it's not the case, please use the following command to fetch it, or navigate to [the website](https://netboot.xyz/):
``` ```
wget https://boot.netboot.xyz/ipxe/netboot.xyz.iso -P /var/lib/libvirt/iso/ wget https://boot.netboot.xyz/ipxe/netboot.xyz.iso -P /var/lib/libvirt/image/iso/
``` ```
## Run the script
The following script, which also doesn't require root privileges, will create a virtual machine called `my-first-live-vm`. This virtual machine will be started automatically and added to `virt-manager`.
```
/usr/sbin/create-live-vm.sh
```
*Notice the new icon under QEMU/KVM: this is the new virtual machine that has just been created. Go to the section to learn how to interact with it.*
![post-install-conf-2.png](/assets/post-launch/post-install-conf-2.png) ![post-install-conf-2.png](/assets/post-launch/post-install-conf-2.png)
## Access your virtual machine display ## Access your virtual machine display

View File

@ -63,10 +63,7 @@ wget https://raw.githubusercontent.com/PhyllomeOS/phyllomeos/main/dishes/virtual
> Please verify the content of the script if you intent to use this virtual machine in production, for instance by using the following command `cat virtual-desktop.cfg` > Please verify the content of the script if you intent to use this virtual machine in production, for instance by using the following command `cat virtual-desktop.cfg`
{.is-info} {.is-info}
> If using a custom kickstart script, make sure it includes the `repo` information * Deploy a stripped-down desktop based on GNOME Shell using the local kickstart file previously downloaded
{.is-warning}
* Deploy a stripped down desktop based on GNOME Shell using the local kickstart file previously downloaded
``` ```
virt-install \ virt-install \
@ -95,108 +92,10 @@ virt-install \
--input type=tablet,bus=virtio \ --input type=tablet,bus=virtio \
--rng /dev/urandom,model=virtio \ --rng /dev/urandom,model=virtio \
--disk path=/var/lib/libvirt/images/virtual-desktop.img,format=raw,bus=virtio,cache=writeback,size=10 \ --disk path=/var/lib/libvirt/images/virtual-desktop.img,format=raw,bus=virtio,cache=writeback,size=10 \
--location=https://download.fedoraproject.org/pub/fedora/linux/releases/35/Everything/x86_64/os/ \ --location=https://download.fedoraproject.org/pub/fedora/linux/releases/38/Everything/x86_64/os/ \
--initrd-inject virtual-desktop.cfg --extra-args "inst.ks=file:/virtual-desktop.cfg" --initrd-inject virtual-desktop.cfg --extra-args "inst.ks=file:/virtual-desktop.cfg"
``` ```
### Local deployment without installation
* The idea here is to define a virtual machine and use the `netboot.xyz.iso` as a way to boot into an installer.
```
virt-install \
--connect qemu:///system \
--os-variant detect=off \
--virt-type kvm \
--arch x86_64 \
--machine q35 \
--name virtual-desktop \
--boot uefi \
--cpu host-model,topology.sockets=1,topology.cores=2,topology.threads=1 \
--vcpus 2 \
--memory 4096 \
--video virtio \
--graphics spice,listen=none \
--channel spicevmc \
--channel unix,target.type=virtio,target.name=org.qemu.guest_agent.0 \
--autoconsole none \
--console pty,target.type=virtio \
--sound none \
--network type=default,model=virtio \
--controller type=virtio-serial \
--controller type=usb,model=none \
--controller type=scsi,model=virtio-scsi \
--input type=keyboard,bus=virtio \
--input type=tablet,bus=virtio \
--rng /dev/urandom,model=virtio \
--disk none \
--cdrom=/var/lib/libvirt/iso/netboot.xyz.iso \
--install no_install=yes
```
## Automated installation using an ISO file and a local kickstart file
> **Warning**: doesn't work as intended. The kickstart file won't have to be modified to include the `cdrom` option and the ISO would have to include the necessary packages.
{.is-danger}
* Use the following `wget` command to fetch the official Fedora Server ISO file and to put it in the current working directory
```
wget https://download.fedoraproject.org/pub/fedora/linux/releases/35/Server/x86_64/iso/Fedora-Server-dvd-x86_64-35-1.2.iso
```
> Please [verify your download](https://getfedora.org/en/security/) if you intent to use this virtual machine in production
{.is-info}
Move the file to `/var/lib/libvirt/iso`:
```
mv Fedora-Server-dvd-x86_64-35-1.2.iso /var/lib/libvirt/iso
```
* Use the following `wget` command to fetch a standalone kickstart file made to deploy a stripped down desktop based on GNOME Shell, and put it in the working directory
```
wget https://raw.githubusercontent.com/PhyllomeOS/phyllomeos/main/dishes/virtual-desktop.cfg
```
> Please verify the content of the script if you intent to use this virtual machine in production, for instance by using the following command `cat virtual-desktop.cfg`
{.is-info}
> If you use a custom kickstart script, make sure it does include the `cdrom` option.
{.is-warning}
* Deploy a UEFI-based machine with Fedora Server using the relative path of the local kickstart file
```
virt-install \
--connect qemu:///system \
--os-variant detect=off \
--virt-type kvm \
--arch x86_64 \
--machine q35 \
--name virtual-desktop-cdrom \
--boot uefi \
--cpu host-model,topology.sockets=1,topology.cores=2,topology.threads=1 \
--vcpus 2 \
--memory 4096 \
--video virtio \
--graphics spice,listen=none \
--channel spicevmc \
--channel unix,target.type=virtio,target.name=org.qemu.guest_agent.0 \
--autoconsole none \
--console pty,target.type=virtio \
--sound none \
--network type=default,model=virtio \
--controller type=virtio-serial \
--controller type=usb,model=none \
--controller type=scsi,model=virtio-scsi \
--input type=keyboard,bus=virtio \
--input type=tablet,bus=virtio \
--rng /dev/urandom,model=virtio \
--disk path=~/.local/share/libvirt/images/virtual-phyllome-desktop-cdrom.img,format=raw,bus=virtio,cache=writeback,size=10 \
--location=/tmp/Fedora-Everything-netinst-x86_64-35-1.2.iso \
--initrd-inject virtual-desktop-cdrom.cfg --extra-args "inst.ks=file:/virtual-phyllome-desktop-cdrom.cfg"
```
--- ---
*[**Go to parent page**](https://wiki.phyllo.me/)* *[**Go to parent page**](https://wiki.phyllo.me/)*