> For the complete documentation index, see [llms.txt](https://brian-anderson01.gitbook.io/open-source-thin-client/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://brian-anderson01.gitbook.io/open-source-thin-client/documentation/creating-a-custom-linux-iso.md).

# Creating a custom Linux ISO

To create Open Source Thin Client we used [Linux Live](https://github.com/Tomas-M/linux-live) to create an ISO of our activly running Linux instance. This allowed us to install any packages and files that we wanted on our OS before creating an ISO.

### How to use Linux Live to create an ISO or ZIP of your system

1. Download Linux Live onto the computer you would like to make an ISO from. You can get Linux Live from [here](https://github.com/Tomas-M/linux-live/releases).
2. Next, download the packages that are needed to use Linux Live
   1. `sudo apt-get update`
   2. `sudo apt-get install squashfs-tools`
   3. `sudo apt-get install genisoimage`
3. Once downloaded, unzip the file, `unzip lunix-live.zip`&#x20;
4. Move the folder to the `tmp` directory `mv linux-live /tmp`&#x20;
5. Now enter the folder, `cd /tmp/linux-live`&#x20;
6. Now edit the config file with some basic options regarding the ISO it will create `nano config` Your config should end up looking similar to the one below. The only parameters that need to be changed are the live kit name, which is a name of your choosing, along with the vmlinuz path. For most distributions, vmlinuz will be located in the root `/` folder or in `/boot` like it in the example.&#x20;

   <img src="https://i.imgur.com/PZwZdXk.png" alt="" data-size="original">
7. Once you have finished editing the file, save it and close it. Next, open the syslinux config file `nano bootfiles/syslinux.cfg`&#x20;

   <img src="https://i.imgur.com/qYkfTAB.png" alt="" data-size="original">
8. Once that has been added, save and exit the file.
9. Make sure you are still in the `linux-live` folder and run `sudo ./build`&#x20;
10. Linux live will now begin running and creating a copy of your OS. Please ensure you have enough space on your system to make a copy of itself.
11. After some time, the script should finish and will have instructions on how to build an ISO or ZIP.
12. To build an ISO or ZIP, return to the temp directory `cd /tmp`&#x20;
13. Now, to create an ISO run: `./gen_livekitname_iso.sh`&#x20;
14. To create a ZIP of the system, run: `./gen_livekitname_zip.sh`&#x20;
15. Once the ISO or ZIP has been generated it can be found in `/tmp`&#x20;
16. Once you are ready, move on to making the system bootable from a USB device.
