├── .editorconfig ├── .github ├── FUNDING.yml ├── dependabot.yml └── workflows │ ├── build_image.yml │ └── release.yml ├── .gitignore ├── LICENSE ├── MultiOS-USB.version ├── README.md ├── binaries ├── efitools-1.9.2-2 │ ├── KeyTool.efi │ └── ReadMe.txt ├── grub-v2.12-6 │ ├── ReadMe.txt │ ├── grubenv │ ├── grubx64.efi │ ├── i386-pc.tar.xz │ └── unicode.pf2 ├── mountiso │ ├── ReadMe.txt │ ├── SHA256SUMS │ ├── mountiso32.exe │ └── mountiso64.exe ├── mt86plus_7.20 │ ├── ReadMe.txt │ ├── memtest32.bin │ ├── memtest32.efi │ ├── memtest64.bin │ └── memtest64.efi ├── shim-signed_1.59+15.8-0ubuntu2_amd64 │ ├── ReadMe.txt │ ├── bootx64.efi │ └── mmx64.efi ├── syslinux-6.04-pre1 │ ├── ReadMe.txt │ └── memdisk └── wimboot-v2.8.0-1 │ ├── ReadMe.txt │ ├── wimboot.i386 │ └── wimboot.x86_64 ├── cert ├── MultiOS-USB.cer ├── MultiOS-USB.crt ├── ReadMe.txt ├── altlinux │ ├── altlinux-ca.cer │ └── altlinux-ca.crt ├── canonical │ ├── canonical-uefi-ca.cer │ └── canonical-uefi-ca.crt ├── centOS │ ├── centossecurebootca2.cer │ └── centossecurebootca2.crt ├── debian │ ├── debian-uefi-ca.cer │ └── debian-uefi-ca.crt ├── fedora │ ├── fedora-uefi-ca-2012.cer │ ├── fedora-uefi-ca-2012.crt │ ├── fedora-uefi-ca-2020.cer │ └── fedora-uefi-ca-2020.crt ├── microsoft │ ├── MicCorKEKCA2011_2011-06-24.cer │ ├── MicCorKEKCA2011_2011-06-24.crt │ ├── MicCorUEFCA2011_2011-06-27.cer │ ├── MicCorUEFCA2011_2011-06-27.crt │ ├── MicWinProPCA2011_2011-10-19.cer │ └── MicWinProPCA2011_2011-10-19.crt ├── openSUSE │ ├── SLES-UEFI-CA-Certificate.cer │ ├── SLES-UEFI-CA-Certificate.crt │ ├── openSUSE-UEFI-CA-Certificate.cer │ └── openSUSE-UEFI-CA-Certificate.crt ├── oracle │ ├── oracle-linux-uefi-ca.cer │ ├── oracle-linux-uefi-ca.crt │ ├── securebootca.cer │ └── securebootca.crt ├── redhat │ ├── redhat_test.cer │ └── redhat_test.crt ├── refind │ ├── refind.cer │ └── refind.crt ├── rocky │ ├── rocky-root-ca.cer │ └── rocky-root-ca.crt ├── solus │ ├── solus.cer │ └── solus.crt └── tuxedo │ ├── TUXEDO_Computers_GmbH_Secure_Boot_Signing.cer │ └── TUXEDO_Computers_GmbH_Secure_Boot_Signing.crt ├── config ├── 4MLinux │ └── 4MLinux.cfg ├── Acronis_True_Image │ └── Acronis_True_Image.cfg ├── AntivirusLiveCD │ └── AntivirusLiveCD.cfg ├── Archman │ └── Archman.cfg ├── CentOS │ └── CentOS.cfg ├── KDE_neon │ └── neon-user.cfg ├── KaOS │ └── KaOS.cfg ├── Linuxfx │ └── Linuxfx.cfg ├── Mageia │ └── Mageia_netinstall.cfg ├── antiX │ ├── antiX_base_full.cfg │ └── antiX_core_net.cfg ├── archbang │ └── archbang.cfg ├── athenaos │ └── athenaos.cfg ├── bluestar │ ├── bluestar.cfg │ └── bluestar.txt ├── clonezilla │ ├── clonezilla.cfg │ ├── clonezilla_eoan.cfg │ └── clonezilla_focal.cfg ├── config.version ├── damnsmalllinux │ └── damnsmalllinux.cfg ├── debian │ └── debian-mini.cfg ├── devuan │ ├── devuan-install.cfg │ ├── devuan_desktop-live.cfg │ └── devuan_minimal-live.cfg ├── dr-parted-live │ └── dr-parted-live.cfg ├── endeavourOS │ └── endeavourOS.cfg ├── euroLinux │ ├── EuroLinux-desktop.cfg │ └── EuroLinux.cfg ├── fedora │ ├── fedora-live.cfg │ └── fedora.cfg ├── ferenos │ └── ferenos.cfg ├── gentoo │ ├── gentoo-gui.cfg │ └── gentoo.cfg ├── gparted │ └── gparted-live.cfg ├── grub.config ├── grub_loopback │ └── loopback.cfg ├── grub_netboot │ ├── alpinelinux.cfgnet │ ├── archlinux.cfgnet │ ├── debian.cfgnet │ ├── main.cfgnet │ ├── openSUSE_Leap_15.1.cfgnet │ ├── openSUSE_Leap_15.2.cfgnet │ ├── openSUSE_Leap_15.3.cfgnet │ ├── openSUSE_Tumbleweed.cfgnet │ ├── slax11.2.0.cfgnet │ ├── ubuntu_18.04.cfgnet │ ├── ubuntu_19.10.cfgnet │ └── ubuntu_20.04.cfgnet ├── hbcd │ ├── Winpeshl.ini │ └── hbcd_wimboot.cfg ├── kaspersky │ └── krd.cfg ├── lwRescue │ └── lwRescue.cfg ├── mx │ └── MX-19.cfg ├── openSUSE │ ├── openSUSE-DVD.cfg │ └── openSUSE-NET.cfg ├── oracleLinux │ └── OracleLinux.cfg ├── pclinuxos │ └── pclinuxos.cfg ├── ploplinux │ └── ploplinux.cfg ├── pmagic │ └── pmagic.cfg ├── qubes-os │ └── qubes-os.cfg ├── rescuezilla │ └── rescuezilla.cfg ├── rocky │ └── Rocky.cfg ├── salientos │ ├── salientos.cfg │ └── salientos.txt ├── shredos │ └── shredos.cfg ├── slackware │ ├── slackware_install.cfg │ └── slackware_live.cfg ├── slax │ └── slax.cfg ├── solus │ └── Solus.cfg ├── tails │ └── tails.cfg ├── ubuntu │ ├── ubuntu_mini.cfg │ └── ubuntu_netboot_x64.cfg ├── void-linux │ └── void-linux.cfg └── windows │ ├── Winpeshl.ini │ ├── info.txt │ ├── wim_file.cfg │ ├── windows11-bypass.reg │ └── windows_iso.cfg ├── config_priv ├── README.md └── examples │ ├── lmde.cfg-example │ └── shredos.cfg-example ├── docs ├── Enroll_key.png ├── README_image ├── Security_Volation.png ├── Supported_OS.md └── main_menu.png ├── multios-usb.sh └── themes └── MultiOS-USB ├── DejaVuSans-Bold14.pf2 ├── DejaVuSans10.pf2 ├── DejaVuSans12.pf2 ├── background.png ├── highlight_c.png ├── slider_c.png ├── slider_n.png ├── slider_s.png └── theme.txt /.editorconfig: -------------------------------------------------------------------------------- 1 | # https://EditorConfig.org 2 | 3 | # Top-most EditorConfig file. 4 | root = true 5 | 6 | [*] 7 | indent_style = tab 8 | indent_size = 4 9 | trim_trailing_whitespace = true 10 | charset = utf-8 11 | end_of_line = lf 12 | insert_final_newline = true 13 | 14 | [.github/**.yml] 15 | indent_style = space 16 | indent_size = 2 17 | 18 | [*.md] 19 | trim_trailing_whitespace = false 20 | -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: mexit # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] 2 | patreon: # Replace with a single Patreon username 3 | open_collective: # Replace with a single Open Collective username 4 | ko_fi: # Replace with a single Ko-fi username 5 | tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel 6 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 7 | liberapay: # Replace with a single Liberapay username 8 | issuehunt: # Replace with a single IssueHunt username 9 | otechie: # Replace with a single Otechie username 10 | lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry 11 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 12 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | # To get started with Dependabot version updates, you'll need to specify which 2 | # package ecosystems to update and where the package manifests are located. 3 | # Please see the documentation for all configuration options: 4 | # https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates 5 | 6 | version: 2 7 | updates: 8 | - package-ecosystem: "github-actions" # See documentation for possible values 9 | directory: "/" # Location of package manifests 10 | schedule: 11 | interval: "monthly" 12 | -------------------------------------------------------------------------------- /.github/workflows/build_image.yml: -------------------------------------------------------------------------------- 1 | name: Build image 2 | 3 | on: 4 | push: 5 | branches: 6 | - '**' 7 | pull_request: 8 | 9 | jobs: 10 | build_image: 11 | runs-on: ubuntu-24.04 12 | steps: 13 | - uses: actions/checkout@v4 14 | 15 | - name: Set version 16 | run: echo "ver=$(git log -1 --pretty=format:"%h")" >> "$GITHUB_ENV" 17 | 18 | - name: Linux Release 19 | run: git archive --prefix=MultiOS-USB_$ver/ -o MultiOS-USB_linux_$ver.tar.gz $ver 20 | 21 | - name: Windows Release 22 | run: | 23 | efiPartSize="$(grep ^efi_size= multios-usb.sh | cut -f2- -d'=' | xargs)" 24 | imageName="image.img" 25 | imageSize=$(($(echo $efiPartSize | sed 's/\([0-9]\+\)\([A-Za-z]\)/\1/') + 2)) 26 | tmp_imageName="tmp.img" 27 | tmp_imageSize="$(($imageSize + 50))$(echo $efiPartSize | sed 's/\([0-9]\+\)\([A-Za-z]\)/\2/')" 28 | fallocate $tmp_imageName -l $tmp_imageSize 29 | dev=$(sudo losetup -f -P --show $tmp_imageName) 30 | echo "YeS" | sudo ./multios-usb.sh $dev 31 | mkdir part_data && sudo mount ${dev}p2 part_data 32 | (cd part_data && sudo zip -r ../files.zip *) 33 | sudo umount ${dev}p2 34 | sudo dd if=$dev of=$imageName bs=1M count=$imageSize 35 | sudo sgdisk -d 2 $imageName 36 | mv docs/README_image README.txt 37 | sudo zip MultiOS-USB_windows_image_$ver.zip $imageName files.zip README.txt 38 | 39 | - name: Generate SHA256SUM 40 | run: sha256sum MultiOS-USB_windows_image_*.zip MultiOS-USB_linux_*.tar.gz > sha256sums.txt 41 | 42 | - uses: actions/upload-artifact@v4 43 | with: 44 | name: MultiOS-USB_images_${{ env.ver }} 45 | path: | 46 | MultiOS-USB_windows_image_*.zip 47 | MultiOS-USB_linux_*.tar.gz 48 | sha256sums.txt 49 | -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- 1 | name: Release 2 | 3 | on: 4 | push: 5 | tags: 6 | - 'v*' 7 | 8 | jobs: 9 | build_image: 10 | runs-on: ubuntu-24.04 11 | steps: 12 | - uses: actions/checkout@v4 13 | with: 14 | fetch-depth: 0 15 | 16 | - name: Linux Release 17 | run: git archive --prefix=MultiOS-USB_${{ github.ref_name }}/ -o MultiOS-USB_linux_${{ github.ref_name }}.tar.gz ${{ github.ref_name }} 18 | 19 | - name: Windows Release 20 | run: | 21 | efiPartSize="$(grep ^efi_size= multios-usb.sh | cut -f2- -d'=' | xargs)" 22 | imageName="image.img" 23 | imageSize=$(($(echo $efiPartSize | sed 's/\([0-9]\+\)\([A-Za-z]\)/\1/') + 2)) 24 | tmp_imageName="tmp.img" 25 | tmp_imageSize="$(($imageSize + 50))$(echo $efiPartSize | sed 's/\([0-9]\+\)\([A-Za-z]\)/\2/')" 26 | fallocate $tmp_imageName -l $tmp_imageSize 27 | dev=$(sudo losetup -f -P --show $tmp_imageName) 28 | echo "YeS" | sudo ./multios-usb.sh $dev 29 | mkdir part_data && sudo mount ${dev}p2 part_data 30 | (cd part_data && sudo zip -r ../files.zip *) 31 | sudo umount ${dev}p2 32 | sudo dd if=$dev of=$imageName bs=1M count=$imageSize 33 | sudo sgdisk -d 2 $imageName 34 | mv docs/README_image README.txt 35 | sudo zip MultiOS-USB_windows_image_${{ github.ref_name }}.zip $imageName files.zip README.txt 36 | 37 | - name: Generate SHA256SUM 38 | run: sha256sum MultiOS-USB_windows_image_*.zip MultiOS-USB_linux_*.tar.gz > sha256sums.txt 39 | 40 | - name: Release 41 | env: 42 | GH_TOKEN: ${{ github.token }} 43 | run: | 44 | echo "![Downloads](https://img.shields.io/github/downloads/${{ github.repository }}/${{ github.ref_name }}/total)" > notes.txt 45 | echo "### Main changes:" >> notes.txt 46 | git log --reverse --pretty=format:"- %h: %s" $(git describe --tags --abbrev=0 HEAD^)..HEAD | egrep -v 'fix:|minor:|typo:' >> notes.txt 47 | commits="$GITHUB_SERVER_URL/$GITHUB_REPOSITORY/compare/$(git tag --sort=-v:refname | sed -n 2p)...$(git tag --sort=-v:refname | sed -n 1p)" 48 | echo -e "
\n\n**Full Changelog**: $commits" >> notes.txt 49 | 50 | gh release create ${{ github.ref_name }} \ 51 | --title ${{ github.ref_name }} \ 52 | --verify-tag \ 53 | --latest \ 54 | --notes-file notes.txt \ 55 | MultiOS-USB_windows_image_*.zip MultiOS-USB_linux_*.tar.gz sha256sums.txt 56 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | config_priv/* 2 | !config_priv/README.md 3 | !config_priv/examples 4 | -------------------------------------------------------------------------------- /MultiOS-USB.version: -------------------------------------------------------------------------------- 1 | 0.9.8 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # [MultiOS-USB](https://github.com/Mexit/MultiOS-USB) 2 | 3 | One device with multiple ISO/WIM files. Easy to use: install once, add ISO/WIM files and boot computers from it 4 | 5 | ![Main menu](docs/main_menu.png) 6 | 7 | ## Features: 8 | 9 | - BIOS and UEFI support 10 | - Secure Boot support (boot, manage uefi keys) 11 | - Load UEFI drivers 12 | - Launch .efi executables and other boot loaders 13 | - Boot Linux from .iso images 14 | - Boot [WinPE](https://en.wikipedia.org/wiki/Windows_Preinstallation_Environment) from bootable .wim images 15 | - Boot Windows 10/11 installer from ISO (currently, SB must be disabled during installation) 16 | - Boot Linux installer from network (experimental) 17 | - Boot locally installed systems: Linux, Windows 18 | - Automatically update configuration files 19 | - Without background services 20 | - exFAT file system support 21 | - Automatic detection of compatible ISO images (GRUB loopback) 22 | - Support for systems without loopback support 23 | - Allows customisation of ISO boot menu (for example: custom kernel options) 24 | - Support for USB, SSD, nvme, mmcblk, loop, nbd and virtual disks 25 | - Support for x86, x86_64 26 | 27 | ## Tested ISOs 28 | 29 | A list of tested ISO images can be found [here](docs/Supported_OS.md) 30 | 31 | ## Installation 32 | 33 | **SparkyLinux** 34 | 35 | ```sh 36 | # Refresh the package list and install MultiOS-USB 37 | sudo apt update 38 | sudo apt install multios-usb 39 | 40 | # Display available USB devices 41 | multios-usb -l 42 | 43 | # Install to the selected device (replace sdX with your target device) 44 | sudo multios-usb /dev/sdX 45 | ``` 46 | 47 | **From GitHub - Linux console** 48 | 49 | Go to [Releases](https://github.com/Mexit/MultiOS-USB/releases), download the latest version and unpack the downloaded archive. 50 | 51 | Check and install the required packages (in most cases they should be installed by default): 52 | - tar, bzip2, xz 53 | - sgdisk, wipefs 54 | - mkfs.fat, mkfs.exfat, ... 55 | 56 | Go to the directory where you extracted the files and run the following at the console 57 | 58 | ```sh 59 | ./multios-usb.sh -l 60 | ``` 61 | 62 | This command will show you the USB devices available on your system. 63 | To install MultiOS-USB, type the following command, replacing `/dev/sdX` with your chosen device path. 64 | For example: 65 | 66 | ```sh 67 | sudo ./multios-usb.sh /dev/sdX 68 | ``` 69 | 70 | **From GitHub - image based installation (experimental)** 71 | 72 | Recommended installation method for Windows. Go to [Releases](https://github.com/Mexit/MultiOS-USB/releases) and download the appropriate file. 73 | Installation details can be found [here](docs/README_image) and in the downloaded archive. 74 | 75 | ## First use 76 | 77 | After installation, copy your ISO files to the `/ISOs` directory and boot your computer from USB. 78 | You can also add your own configuration files to the `/MultiOS-USB/config_priv` directory. They will not be deleted during the automatic MultiOS-USB update. 79 | If you want to change the configuration for a given ISO - copy the one you have chosen from the [config](config) folder, paste into [config_priv](config_priv) and update it according to your needs. 80 | The updated configuration will be detected automatically. 81 | 82 | On the first boot with Secure Boot enabled on each new computer, a MultiOS USB certificate must be installed. 83 | 84 | ![Press OK](docs/Security_Volation.png) 85 | Press Enter 86 | 87 | ![Choose: Enroll key from disk](docs/Enroll_key.png) 88 | Select: Enroll key from disc 89 | 90 | Select `MultiOS-EFI` as partition, then browse to the `EFI/cert` directory and select `MultiOS-USB.cer`, `Continue` and confirm (`Yes`) key enrolling. 91 | You can also immediately add certificates (keys) from popular distributions in the same way. 92 | If you want to add a certificate later, you can do it by selecting in the Main Menu: 93 | `EFI Tools -->` and then `Add UEFI key or hash`. 94 | 95 | ## Update MultiOS-USB: 96 | 97 | You can add support for new operating systems. No need to reinstall. 98 | Download [zip](https://github.com/Mexit/MultiOS-USB/archive/refs/heads/master.zip) or [tar.gz](https://github.com/Mexit/MultiOS-USB/archive/refs/heads/master.tar.gz) archive and unpack MultiOS-USB repository 99 | 100 | ##### Automatic update 101 | To update configuration files, simply type the following command, replacing `/dev/sdX` with your chosen device path. 102 | 103 | ```sh 104 | ./multios-usb.sh -u /dev/sdX 105 | ``` 106 | 107 | ##### Manual update 108 | - Remove all files and directories on your USB in `/MultiOS-USB/config/` 109 | - Copy the downloaded files and directories from `config` to the above directory. 110 | 111 | ## Project URLs 112 | - https://gitlab.com/MultiOS-USB - full MultiOS-USB source code 113 | - https://github.com/Mexit/MultiOS-USB - MultiOS-USB releases 114 | -------------------------------------------------------------------------------- /binaries/efitools-1.9.2-2/KeyTool.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/binaries/efitools-1.9.2-2/KeyTool.efi -------------------------------------------------------------------------------- /binaries/efitools-1.9.2-2/ReadMe.txt: -------------------------------------------------------------------------------- 1 | Download URL: 2 | https://gitlab.com/MultiOS-USB/efitools/uploads/3b1fa3e3ef4d8f347ed7f478b27b9ed4/efitools_v1.9.2-2.zip 3 | 4 | Source code: 5 | https://gitlab.com/MultiOS-USB/efitools 6 | -------------------------------------------------------------------------------- /binaries/grub-v2.12-6/ReadMe.txt: -------------------------------------------------------------------------------- 1 | Grub base source code: 2 | https://git.savannah.gnu.org/cgit/grub.git/tree/?id=9c34d56c2dafcd2737db0e3e49df63bce4d8b504 3 | 4 | MultiOS-USB grub binary files and source code download: 5 | https://gitlab.com/MultiOS-USB/grub/-/releases/v2.12-6 6 | -------------------------------------------------------------------------------- /binaries/grub-v2.12-6/grubenv: -------------------------------------------------------------------------------- 1 | # GRUB Environment Block 2 | # WARNING: Do not edit this file by tools other than grub-editenv!!! 3 | ################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################## -------------------------------------------------------------------------------- /binaries/grub-v2.12-6/grubx64.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/binaries/grub-v2.12-6/grubx64.efi -------------------------------------------------------------------------------- /binaries/grub-v2.12-6/i386-pc.tar.xz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/binaries/grub-v2.12-6/i386-pc.tar.xz -------------------------------------------------------------------------------- /binaries/grub-v2.12-6/unicode.pf2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/binaries/grub-v2.12-6/unicode.pf2 -------------------------------------------------------------------------------- /binaries/mountiso/ReadMe.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/binaries/mountiso/ReadMe.txt -------------------------------------------------------------------------------- /binaries/mountiso/SHA256SUMS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/binaries/mountiso/SHA256SUMS -------------------------------------------------------------------------------- /binaries/mountiso/mountiso32.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/binaries/mountiso/mountiso32.exe -------------------------------------------------------------------------------- /binaries/mountiso/mountiso64.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/binaries/mountiso/mountiso64.exe -------------------------------------------------------------------------------- /binaries/mt86plus_7.20/ReadMe.txt: -------------------------------------------------------------------------------- 1 | Download URL: 2 | https://memtest.org/download/v7.20/mt86plus_7.20.binaries.zip 3 | -------------------------------------------------------------------------------- /binaries/mt86plus_7.20/memtest32.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/binaries/mt86plus_7.20/memtest32.bin -------------------------------------------------------------------------------- /binaries/mt86plus_7.20/memtest32.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/binaries/mt86plus_7.20/memtest32.efi -------------------------------------------------------------------------------- /binaries/mt86plus_7.20/memtest64.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/binaries/mt86plus_7.20/memtest64.bin -------------------------------------------------------------------------------- /binaries/mt86plus_7.20/memtest64.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/binaries/mt86plus_7.20/memtest64.efi -------------------------------------------------------------------------------- /binaries/shim-signed_1.59+15.8-0ubuntu2_amd64/ReadMe.txt: -------------------------------------------------------------------------------- 1 | Download URL: 2 | https://mirrors.kernel.org/ubuntu/pool/main/s/shim-signed/shim-signed_1.59+15.8-0ubuntu2_amd64.deb 3 | -------------------------------------------------------------------------------- /binaries/shim-signed_1.59+15.8-0ubuntu2_amd64/bootx64.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/binaries/shim-signed_1.59+15.8-0ubuntu2_amd64/bootx64.efi -------------------------------------------------------------------------------- /binaries/shim-signed_1.59+15.8-0ubuntu2_amd64/mmx64.efi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/binaries/shim-signed_1.59+15.8-0ubuntu2_amd64/mmx64.efi -------------------------------------------------------------------------------- /binaries/syslinux-6.04-pre1/ReadMe.txt: -------------------------------------------------------------------------------- 1 | Download URL: 2 | https://www.kernel.org/pub/linux/utils/boot/syslinux/Testing/6.04/syslinux-6.04-pre1.tar.xz 3 | -------------------------------------------------------------------------------- /binaries/syslinux-6.04-pre1/memdisk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/binaries/syslinux-6.04-pre1/memdisk -------------------------------------------------------------------------------- /binaries/wimboot-v2.8.0-1/ReadMe.txt: -------------------------------------------------------------------------------- 1 | MultiOS-USB wimboot binary files and source code: 2 | https://gitlab.com/MultiOS-USB/wimboot/-/releases/v2.8.0-1 3 | -------------------------------------------------------------------------------- /binaries/wimboot-v2.8.0-1/wimboot.i386: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/binaries/wimboot-v2.8.0-1/wimboot.i386 -------------------------------------------------------------------------------- /binaries/wimboot-v2.8.0-1/wimboot.x86_64: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/binaries/wimboot-v2.8.0-1/wimboot.x86_64 -------------------------------------------------------------------------------- /cert/MultiOS-USB.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/MultiOS-USB.cer -------------------------------------------------------------------------------- /cert/MultiOS-USB.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIFAjCCAuqgAwIBAgIJAI/r5LMDG6yOMA0GCSqGSIb3DQEBCwUAMBYxFDASBgNV 3 | BAMMC011bHRpT1MtVVNCMB4XDTIwMDMxNjIwNDEwM1oXDTMwMDMxNDIwNDEwM1ow 4 | FjEUMBIGA1UEAwwLTXVsdGlPUy1VU0IwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw 5 | ggIKAoICAQD539uJgS/zNsfv6v3ERX7xfyKS7m7TwwbTWw9xOMSm1aCaMXQ/S0fB 6 | OdGeKxMa1Ol4qPl6GACpNsWAgDi/SM10W3ltPP5CvzOpWrWMFO6WPBAr9LvDVWXx 7 | mKtFD98qCJ12aVkCaeRmF80qZl4suUz1u48CsiRSTCbnFUd0xVS8z9FnjVBnMVXm 8 | XKhwOmC4RWbqx6ELVrREjEP3skzXz/BqYusGMUL1hnJZU/6oD8jYQY/gWOQ1Fac0 9 | UTQtkhfX9ZYdWLLMxX4Qf8V4Rzhh5mnh4PP35lkDz0q4vvxwI+PM9cIJbAB9jpAU 10 | wWFXwfRkx7fsZ1qoJmIeaRP3UndG4HZP8zu5YkgQNWxR5O0X1N48eN2ehYjt1ufU 11 | EFPI1SC5WjbvIzSl1F/CYTrvmTvQnqYSK5vYXY4wfzw73DffSnCbtslpawY+VA21 12 | VBBjhcxLtXjrAA4pdjwcfMKNwaouIqav0JSD254QlpxYx+BAxDb0R5iULtZcEKCr 13 | 4yoaV7IDXfdxBWI1ZRbWFfGfeHB1jbJFE1RVPW4CQTvP0UIUp612Zz1ZeM0l2IX+ 14 | D57fddlY/fcqSM8t4Qf+oRp5Ybe/bZUXVVdwNEzA/0s9l0BsA7cLmtEARIt1b2wa 15 | VyWL/mCbRIueT9uiT0cRtMQij40Pqok98HDmUnlkwoDWiiZr0oGapwIDAQABo1Mw 16 | UTAdBgNVHQ4EFgQUuRqz66CeyL5MFFpf3sWYwGWgSt0wHwYDVR0jBBgwFoAUuRqz 17 | 66CeyL5MFFpf3sWYwGWgSt0wDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsF 18 | AAOCAgEAeNoI7QhaJqoN11I2r4IeHAsU1mZIA92lQcDDro9Z7+ddY5KsaqmbfNEB 19 | j9Pnoxi80kilwy5o/Low9wABQjTE4LM6AzO5qKVx2xLBkY/Q9Md+87DC+hhCHIUH 20 | 3VW3wjeoe1Mhds4QgqfhXm5lcguDmvmCrN8vsI8JMPB28T7mLkS6Mv6t052sGCvx 21 | CZGhauIVswG4ViMjVuezXk0Ch9qtoY/MraO/3adW/ejbCKwgJx1Ypg+5Rzyw7cpd 22 | 5kV9ZHnnjOZk+8tUZY7rJ3+lVNO2qLFcoK8uweNdgcSqEpG+WfwwWSaN4MGumLEx 23 | A+d6iNJpkvxgeiEXRoD8jIYWa0yDt5n5Icv2FAInHKMLPnj+q7sOpoPqIZ9xV7b0 24 | Z9dNsdjcQxk/ZeD9WIZZk8s8BDnGsV2tjIGXzjIx7B5eilqm6jU1p4PUk+tijLhh 25 | y3HSGgA5YZc0nSaI/xaRto3rvXy1IfxNlwF5J1gMAbgvej1aqRpzgl7nhJTDB1A6 26 | g6hP+6MaLDQuN6ExMnnCiF8VfWO4ol+AlygC1m3o9aim8NWzCH7hn0Ufxs46YS89 27 | vU+UrQulXHt0jtDZnyQOCl0tek/jxAoCpgHNVsPFJWjWLjYdnXL+ex7QPT43SHwb 28 | dpmYjAHSiyehGrMo+FWAeAbebpY7Qt7PxcX7Dn6wziIl6HM9z4A= 29 | -----END CERTIFICATE----- 30 | -------------------------------------------------------------------------------- /cert/ReadMe.txt: -------------------------------------------------------------------------------- 1 | Directory contains known public keys that sign UEFI boot loaders and kernels, these should be verifiable by shim. 2 | MokManager utility require *.cer files. 3 | 4 | 5 | - altlinux-ca.cer: ALT Linux public key 6 | http://ftp.altlinux.org/pub/distributions/ALTLinux/p9/branch/files/SRPMS/shim-15-alt2.src.rpm 7 | 8 | - canonical-uefi-ca.cer: Ubuntu & Ubuntu-based distros public key 9 | https://git.launchpad.net/~ubuntu-core-dev/shim/+git/shim/plain/debian/canonical-uefi-ca.der 10 | 11 | - centossecurebootca2.cer: CentOS public key 12 | http://vault.centos.org/8.3.2011/BaseOS/Source/SPackages/shim-15-15.el8_2.src.rpm 13 | 14 | - debian-uefi-ca.cer: Debian & Debian-based distros public key 15 | https://dsa.debian.org/secure-boot-ca 16 | 17 | - fedora-uefi-ca-*.cer: Fedora Secure Boot CA 18 | 19 | - MicCorKEKCA2011_2011-06-24.cer: Microsoft Corporation KEK CA 2011 20 | 21 | - MicCorUEFCA2011_2011-06-27.cer: Microsoft Corporation UEFI CA 2011 22 | 23 | - MicWinProPCA2011_2011-10-19.cer: Microsoft Windows Production PCA 2011 24 | 25 | - MultiOS-USB.cer: MultiOS-USB public key 26 | 27 | - openSUSE-UEFI-CA-Certificate.cer: openSUSE Leap 15.2 & Tumbleweed public key 28 | https://build.opensuse.org/package/view_file/openSUSE:Factory/shim/openSUSE-UEFI-CA-Certificate.crt 29 | 30 | - refind.cer: rEFInd - An EFI boot manager utility 31 | https://sourceforge.net/p/refind/code/ci/master/tree/keys/refind.cer?format=raw 32 | 33 | - SLES-UEFI-CA-Certificate.cer: openSUSE Leap 15.3 & SLES public key 34 | https://build.opensuse.org/package/view_file/openSUSE:Factory/shim/SLES-UEFI-CA-Certificate.crt 35 | 36 | 37 | *.crt files are similar to *.cer files but in a different form. 38 | sbverify can be used to verify the authenticity of a *.efi signed file. 39 | 40 | $ sbverify --cert MultiOS-USB.crt grubx64.efi 41 | -------------------------------------------------------------------------------- /cert/altlinux/altlinux-ca.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/altlinux/altlinux-ca.cer -------------------------------------------------------------------------------- /cert/altlinux/altlinux-ca.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIID/zCCAuegAwIBAgIBADANBgkqhkiG9w0BAQsFADBqMQswCQYDVQQGEwJSVTEX 3 | MBUGA1UEChMOQUxUIExpbnV4IFRlYW0xJDAiBgNVBAsTG0FMVCBDZXJ0aWZpY2F0 4 | aW9uIEF1dGhvcml0eTEcMBoGA1UEAxMTQUxUIFVFRkkgU0IgQ0EgMjAxMzAeFw0x 5 | MzA4MDExMjIyMzlaFw0yMzA3MzAxMjIyMzlaMGoxCzAJBgNVBAYTAlJVMRcwFQYD 6 | VQQKEw5BTFQgTGludXggVGVhbTEkMCIGA1UECxMbQUxUIENlcnRpZmljYXRpb24g 7 | QXV0aG9yaXR5MRwwGgYDVQQDExNBTFQgVUVGSSBTQiBDQSAyMDEzMIIBIjANBgkq 8 | hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvO2x9hRX0SwElrPCavoQL1SMl3psYjBi 9 | byRj5Ojk0uPbDEl8B5t0JJHofRFh0ax1vCiZk2IjXXGWT8l2rbL+lrXB+RfXv89H 10 | TlHwztXEca8qwKtfqToWeApz97b9yZfaWz1E2an0wU2DybZCXq9BaihJxiFlVZhM 11 | Fhv9pVxGgokNv68wKoZu1VHuLa94/2BE/5BCxSS1bhoXbvX+R62lGUmzA1LTO2JJ 12 | 6qOselBu3pgd/O/zST6BW3t18gfJ4Jgc1nBJ55MwrJrGJbdP3ZHIKRM8QIDZcjwd 13 | UH62JHnB3mb5pjKITO/zNwWRJLEd7tVxoe0f/OnZeqbnXQeQ2rC4gQIDAQABo4Gv 14 | MIGsMDQGCCsGAQUFBwEBBCgwJjAkBggrBgEFBQcwAoYYaHR0cDovL2FsdGxpbnV4 15 | Lm9yZy9VRUZJMB8GA1UdIwQYMBaAFKjA8B4f7YKXQ51p/7VhOfnhQmM5MBMGA1Ud 16 | JQQMMAoGCCsGAQUFBwMDMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/ 17 | MB0GA1UdDgQWBBSowPAeH+2Cl0Odaf+1YTn54UJjOTANBgkqhkiG9w0BAQsFAAOC 18 | AQEAGZudMv/31Aq+F32eJ/01Mwo0joBXO8BMfBjhdicL/A0+1cK8MFp/AGT9pyZk 19 | lWM7hoOpU4hZYEGqBt9rHLU62HaqqUHHqHfgHEAFKzKrDfyY6sk+6JGkCowE+OdL 20 | +VPya1ddGc6DG8wMDMOIXnIZanxgOkZRkxrSXaX7kyaWHuzpDR3MEM0uQvOUP/Gx 21 | tgtWNRWkVxPwDPQ1T6cOvIsa7eDm0i7EJHC1IaoNI/mMrxquKe+hKniBba178DEQ 22 | kqq8cGDDs9ptLJR8BEy4U75ukMqMdla4ES0uqY4m0qgn/ruxUxNETphCx0QrmySa 23 | x5zuJb09iWFyJl7J0p1GmKlxUA== 24 | -----END CERTIFICATE----- 25 | -------------------------------------------------------------------------------- /cert/canonical/canonical-uefi-ca.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/canonical/canonical-uefi-ca.cer -------------------------------------------------------------------------------- /cert/canonical/canonical-uefi-ca.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIENDCCAxygAwIBAgIJALlBJKAYLJJnMA0GCSqGSIb3DQEBCwUAMIGEMQswCQYD 3 | VQQGEwJHQjEUMBIGA1UECAwLSXNsZSBvZiBNYW4xEDAOBgNVBAcMB0RvdWdsYXMx 4 | FzAVBgNVBAoMDkNhbm9uaWNhbCBMdGQuMTQwMgYDVQQDDCtDYW5vbmljYWwgTHRk 5 | LiBNYXN0ZXIgQ2VydGlmaWNhdGUgQXV0aG9yaXR5MB4XDTEyMDQxMjExMTI1MVoX 6 | DTQyMDQxMTExMTI1MVowgYQxCzAJBgNVBAYTAkdCMRQwEgYDVQQIDAtJc2xlIG9m 7 | IE1hbjEQMA4GA1UEBwwHRG91Z2xhczEXMBUGA1UECgwOQ2Fub25pY2FsIEx0ZC4x 8 | NDAyBgNVBAMMK0Nhbm9uaWNhbCBMdGQuIE1hc3RlciBDZXJ0aWZpY2F0ZSBBdXRo 9 | b3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC/WzoWdO4hXa5h 10 | 7Z1WrL3e3nLz3X4tTGIPrMBtSAgRz42L+2EfJ8wRbtlVPTlU60A7sbvihTR5yvd7 11 | v7p6yBAtGX2tWc+m1OlOD9quUupMnpDOxpkNTmdleF350dU4Skp6j5OcfxqjhdvO 12 | +ov3wqIhLZtUQTUQVxONbLwpBlBKfuqZqWinO8cHGzKeoBmHDnm7aJktfpNS5fbr 13 | yZv5K+24aEm82ZVQQFvFsnGq61xX3nH5QArdW6wehC1QGlLW4fNrbpBkT1u06yDk 14 | YRDaWvDq5ELXAcT+IR/ZucBUlUKBUnIfSWR6yGwk8QhwC02loDLRoBxXqE3jr6WO 15 | BQU+EEOhAgMBAAGjgaYwgaMwHQYDVR0OBBYEFK2RmQvCKrH1FwSMI7ZlWiaONFpj 16 | MB8GA1UdIwQYMBaAFK2RmQvCKrH1FwSMI7ZlWiaONFpjMA8GA1UdEwEB/wQFMAMB 17 | Af8wCwYDVR0PBAQDAgGGMEMGA1UdHwQ8MDowOKA2oDSGMmh0dHA6Ly93d3cuY2Fu 18 | b25pY2FsLmNvbS9zZWN1cmUtYm9vdC1tYXN0ZXItY2EuY3JsMA0GCSqGSIb3DQEB 19 | CwUAA4IBAQA/ffZ2pbODtCt60G1SGgODxBKnUJxHkszAlHeC0q5Xs5kE9TI6xlUd 20 | B9sSqVb62NR2IOvkw1Hbmlyckj8Yc9qUaqGZOIykiG3B/Dlx0HR2FgM+ViM11VVH 21 | WxodQcLTEkzc/64KkpxiChcBnHPgXrH9vNa1GRF6fs0+A35m21uoyTlIUf9T4Zwx 22 | U5EbOxB1Axe65oECgJRwTEa3lLA9Fc0fjgLgaAKP+/lHHX2iAcYHUcSazO3dz6Nd 23 | 7ZK7vtH95uwfM1FzBL48crB9CPgB/5h9y5zgaTl3JUdxiLGNJ6UuqPc/X4Bplz6p 24 | 9JkU284DDgtmxBxtvbgnd8FClL38agq8 25 | -----END CERTIFICATE----- 26 | -------------------------------------------------------------------------------- /cert/centOS/centossecurebootca2.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/centOS/centossecurebootca2.cer -------------------------------------------------------------------------------- /cert/centOS/centossecurebootca2.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIDYjCCAkqgAwIBAgIJAIlReu6IOzL7MA0GCSqGSIb3DQEBCwUAMEYxIDAeBgNV 3 | BAMMF0NlbnRPUyBTZWN1cmUgQm9vdCBDQSAyMSIwIAYJKoZIhvcNAQkBFhNzZWN1 4 | cml0eUBjZW50b3Mub3JnMB4XDTIwMDYwOTA4MTkzMloXDTM4MDExODA4MTkzMlow 5 | RjEgMB4GA1UEAwwXQ2VudE9TIFNlY3VyZSBCb290IENBIDIxIjAgBgkqhkiG9w0B 6 | CQEWE3NlY3VyaXR5QGNlbnRvcy5vcmcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw 7 | ggEKAoIBAQChatbNaQDV0RTCqff1tl92xI6gu1k8jYufW8FyzZ6uDnxoGpBT0LiU 8 | WKuGjMQ89JgiApFzDYSLWrZg8NbTnVdz0hny4SMyspe5weUk6IToKXvEejZNFn6i 9 | vae2vfT0/ASKsgIvUcz4sWHMK43vbfv/pVpYGLgoG5aNUkt7VhkeURwJzR3ODgDp 10 | aL4bQ/7qEo8ASHCEvQx6klG330Z06O0kjS6GK12cPC1t5ZlimVXCNWP1jf0pMWmh 11 | aBrZjbyY0j8R7Yns3cEovAM230chsVdyFxSYpqCLzMlmWNxiIlvcAoDIRMWEa7Da 12 | SSAfJWH+ygAzad1PHlnCB0zAFbLAMJH1AgMBAAGjUzBRMB0GA1UdDgQWBBRwAH+Z 13 | IJwSa+FHdOrse22WMfNNyjAfBgNVHSMEGDAWgBRwAH+ZIJwSa+FHdOrse22WMfNN 14 | yjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQAe5NcVSUd/POZs 15 | Jkiep8ATNwXglLAeYxB55F42sXx5OOdKMBmhqWQIVJvaih/wsfKIBfdUGv2L9dH8 16 | IQgiU1PRYx0baSVJno3HcQTbCqLvnvckusR7IUTDAFj774MvXwS6yV6pXzxDmuh2 17 | t8hRktOKFeUtdlDYqg9X3Ia3GkoB5huyEbuaZTNcV4TAfU/yAERNIAgRs+fLQU70 18 | OgGlWsp35J8qPkZKabGf0surDa2xa6iAoFyknxruoKQ8uNSB9KB7/0JvVouNx90+ 19 | ncykWW96GVKs8+H5WGza10FqrchtThSNCSXTtLbTXoK0Atdvu0o04XUbsCGMnlcG 20 | zAVb3/m0 21 | -----END CERTIFICATE----- 22 | -------------------------------------------------------------------------------- /cert/debian/debian-uefi-ca.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/debian/debian-uefi-ca.cer -------------------------------------------------------------------------------- /cert/debian/debian-uefi-ca.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIDnjCCAoagAwIBAgIRAO1UodWvh0iUjZ+JMu6cfDQwDQYJKoZIhvcNAQELBQAw 3 | IDEeMBwGA1UEAxMVRGViaWFuIFNlY3VyZSBCb290IENBMB4XDTE2MDgxNjE4MDkx 4 | OFoXDTQ2MDgwOTE4MDkxOFowIDEeMBwGA1UEAxMVRGViaWFuIFNlY3VyZSBCb290 5 | IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnZXUi5vaEKwuyoI3 6 | waTLSsMbQpPCeinTbt1kr4Cv6maiG2GcgwzFa7k1Jf/F++gpQ97OSz3GEk2x7yZD 7 | lWjNBBH+wiSb3hTYhlHoOEO9sZoV5Qhr+FRQi7NLX/wU5DVQfAux4gOEqDZI5IDo 8 | 6p/6v8UYe17OHL4sgHhJNRXAIc/vZtWKlggrZi9IF7Hn7IKPB+bK4F9xJDlQCo7R 9 | cihQpZ0h9ONhugkDZsjfTiY2CxUPYx8rr6vEKKJWZIWNplVBrjyIld3Qbdkp29jE 10 | aLX89FeJaxTb4O/uQA1iH+pY1KPYugOmly7FaxOkkXemta0jp+sKSRRGfHbpnjK0 11 | ia9XeQIDAQABo4HSMIHPMEEGCCsGAQUFBwEBBDUwMzAxBggrBgEFBQcwAoYlaHR0 12 | cHM6Ly9kc2EuZGViaWFuLm9yZy9zZWN1cmUtYm9vdC1jYTAfBgNVHSMEGDAWgBRs 13 | zs5+TGwNH2FJ890n38xcu0GeoTAUBglghkgBhvhCAQEBAf8EBAMCAPcwEwYDVR0l 14 | BAwwCgYIKwYBBQUHAwMwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8w 15 | HQYDVR0OBBYEFGzOzn5MbA0fYUnz3SffzFy7QZ6hMA0GCSqGSIb3DQEBCwUAA4IB 16 | AQB3lj5Hyc4Jz4uJzlntJg4mC7mtqSu9oeuIeQL/Md7+9WoH72ETEXAev5xOZmzh 17 | YhKXAVdlR91Kxvf03qjxE2LMg1esPKaRFa9VJnJpLhTN3U2z0WAkLTJPGWwRXvKj 18 | 8qFfYg8wrq3xSGZkfTZEDQY0PS6vjp3DrcKR2Dfg7npfgjtnjgCKxKTfNRbCcitM 19 | UdeTk566CA1Zl/LiKaBETeru+D4CYMoVz06aJZGEP7dax+68a4Cj2f2ybXoeYxTr 20 | 7/GwQCXV6A6B62v3y//lIQAiLC6aNWASS1tfOEaEDAacz3KTYhjuXJjWs30GJTmV 21 | 305gdrAGewiwbuNknyFWrTkP 22 | -----END CERTIFICATE----- 23 | -------------------------------------------------------------------------------- /cert/fedora/fedora-uefi-ca-2012.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/fedora/fedora-uefi-ca-2012.cer -------------------------------------------------------------------------------- /cert/fedora/fedora-uefi-ca-2012.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIDaDCCAlCgAwIBAgIFAJl28vQwDQYJKoZIhvcNAQELBQAwIDEeMBwGA1UEAxMV 3 | RmVkb3JhIFNlY3VyZSBCb290IENBMB4XDTEyMTIwNzE2MjU1NFoXDTIyMTIwNTE2 4 | MjU1NFowIDEeMBwGA1UEAxMVRmVkb3JhIFNlY3VyZSBCb290IENBMIIBIjANBgkq 5 | hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArvX3UoGpXD4r9x1V9FpohC28i3aWhQ0n 6 | uBilzcGDsownXSMK0RIKdZii5l0BivTZn/xwvMPEF3sCtRPEUZLgwAV0uS49JHig 7 | eXOUwMIrsoKn9KtnSiLzZM3D+QwmAb8b1T05v8n6+15SuaRI+xO/hykKZO8he7we 8 | FnuIT/FAK9kiFUdOhPYkHE1TFlqxKbtefX/A1OLVea9ZcwLct0i/ritwwfp0f3n1 9 | 7iPQAwWxeRhP/U8v4mMZTXe6wSyLs9kFLtnYtlETv842Z5fkrVhWB6vQjGYSSdyR 10 | aLTI6t2cwIHGkVvbEnjb/8GvCBb8cBOXW1eta0SYfh/s7UZmlQ8FVQIDAQABo4Go 11 | MIGlME4GCCsGAQUFBwEBBEIwQDA+BggrBgEFBQcwAoYyaHR0cHM6Ly9mZWRvcmFw 12 | cm9qZWN0Lm9yZy93aWtpL0ZlYXR1cmVzL1NlY3VyZUJvb3QwHwYDVR0jBBgwFoAU 13 | /eMlmcLWHbG/WAczXXsg5M2WO0IwEwYDVR0lBAwwCgYIKwYBBQUHAwMwHQYDVR0O 14 | BBYEFP3jJZnC1h2xv1gHM117IOTNljtCMA0GCSqGSIb3DQEBCwUAA4IBAQA3d/A6 15 | QaIcn3E71puVtRXfSrb00VG6DQTanLIj8PM0WY241Jp1dGWAF2E6wZZ/p8Er0xrW 16 | YDxxOqTE4zkDAhUSCB9OzZdQ+P9QzLY+A31654J6wme+yQ4RDxYuHqnybv4Eveqe 17 | 9Kmz2dRhVwiHxJjYoplk3hVUjVd5FB/6DU1rzZg19QwGvfMx1v4FH2CQth4Q9yTg 18 | PPYzUM1EwnEYUb0YMYEeMuHmn/mcAlO05WpB1mW0LvHPs7iCsKOW4iTYg64GW7Mk 19 | dE3RpAodCjIbdaKW0Q4+4TDDGOjLU8QLAK1+rchJQe+Xab0TX+/vPNpgBdiS/Npq 20 | 6kg/Dj5zd/2miek/ 21 | -----END CERTIFICATE----- 22 | -------------------------------------------------------------------------------- /cert/fedora/fedora-uefi-ca-2020.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/fedora/fedora-uefi-ca-2020.cer -------------------------------------------------------------------------------- /cert/fedora/fedora-uefi-ca-2020.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIEWzCCA0OgAwIBAgIQIjmvBBMMRESz83ftvhr3hjANBgkqhkiG9w0BAQsFADCB 3 | jTELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDU1hc3NhY2h1c2V0dHMxEjAQBgNVBAcT 4 | CUNhbWJyaWRnZTEWMBQGA1UEChMNUmVkIEhhdCwgSW5jLjEnMCUGA1UECxMeRmVk 5 | b3JhIFNlY3VyZSBCb290IENBIDIwMjAwNzA5MREwDwYDVQQDEwhmZWRvcmFjYTAe 6 | Fw0yMDA3MTMxNzMxMTZaFw0zNzAxMTkwMzE0MDdaMIGNMQswCQYDVQQGEwJVUzEW 7 | MBQGA1UECBMNTWFzc2FjaHVzZXR0czESMBAGA1UEBxMJQ2FtYnJpZGdlMRYwFAYD 8 | VQQKEw1SZWQgSGF0LCBJbmMuMScwJQYDVQQLEx5GZWRvcmEgU2VjdXJlIEJvb3Qg 9 | Q0EgMjAyMDA3MDkxETAPBgNVBAMTCGZlZG9yYWNhMIIBIjANBgkqhkiG9w0BAQEF 10 | AAOCAQ8AMIIBCgKCAQEAq8RBrct6UIlmZfAJ3tuRK7fhex5LKMUpMaXbFVRE3/XI 11 | srYPjxiQKtJ1thweVxvCbI2IW1VJDBmX3EbJxca6jXA4h92czXkr6XS0h8zgbbc6 12 | jl1Y/lNwXcqRo1KNL6wiDl2KDnX7Ub705MupRS+iBhtkl5DN1g+hY76FTfN5yQnm 13 | xFBq4unk8qYG3pF7cVQrl1fKbTIwBXsw22+M5JUuDNGor/buO5oI1mRklIFt8q50 14 | 89ADgl5K84/JBcUdmc5DjdGbX8+OGF3r4LYSHmje6y0KhZZnS1ZImprkQO714HJ3 15 | a9dyQs1/nn0K5jX1DzhP0UD1ZqM0TF6FO/DYgyKNtQIDAQABo4G0MIGxME4GCCsG 16 | AQUFBwEBBEIwQDA+BggrBgEFBQcwAoYyaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9y 17 | Zy93aWtpL0ZlYXR1cmVzL1NlY3VyZUJvb3QwHwYDVR0jBBgwFoAUsoDHrmuITg9N 18 | Kg2HJMJer2xlwyYwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wHQYD 19 | VR0OBBYEFLKAx65riE4PTSoNhyTCXq9sZcMmMA0GCSqGSIb3DQEBCwUAA4IBAQBq 20 | 6hHXlrN/76q4P93HdMlc5xT1c13EtCK38YLS/z1LVaDbwjpc2BYlAi9kNrlhB/V9 21 | vQDQwMGtckicgsdal0dSYfw6ip+S4BGn/Ykw4PdyQtnie0FhF7PnaYB4Hju7d1Lr 22 | xk6AsbQttmaiwIRZ4eu/sSEqGuFzCnRimEhuRM6A+uJbZ4U5hmFua0EfMBXEUk1q 23 | 1yt/DY2sjKTqFcB5o+HBOT46cNO8v9GBlXArdcN8vOLxaXZRys3JYIa8xS0ljUOB 24 | JAw+t853cq0Ig9gxD+NZHe3TKWHo18Kdqd3PT1thBR9nvG7uwFDThYDeaZmkYDOQ 25 | QH0B7YJMk/PLH91foJzD 26 | -----END CERTIFICATE----- 27 | -------------------------------------------------------------------------------- /cert/microsoft/MicCorKEKCA2011_2011-06-24.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/microsoft/MicCorKEKCA2011_2011-06-24.cer -------------------------------------------------------------------------------- /cert/microsoft/MicCorKEKCA2011_2011-06-24.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIF6DCCA9CgAwIBAgIKYQrRiAAAAAAAAzANBgkqhkiG9w0BAQsFADCBkTELMAkG 3 | A1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQx 4 | HjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjE7MDkGA1UEAxMyTWljcm9z 5 | b2Z0IENvcnBvcmF0aW9uIFRoaXJkIFBhcnR5IE1hcmtldHBsYWNlIFJvb3QwHhcN 6 | MTEwNjI0MjA0MTI5WhcNMjYwNjI0MjA1MTI5WjCBgDELMAkGA1UEBhMCVVMxEzAR 7 | BgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1p 8 | Y3Jvc29mdCBDb3Jwb3JhdGlvbjEqMCgGA1UEAxMhTWljcm9zb2Z0IENvcnBvcmF0 9 | aW9uIEtFSyBDQSAyMDExMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA 10 | xOi1ir+tVyawJsPq5/tXekQCXQcN2krldCrmsA/sbevsf7njWmMyfBEXTw7jC6c4 11 | FZOOxvXghLGamyzn9beR1gnh4sAEqKwwHN9I8wZQmmSnUX/IhU+PIIbO/i/hn/+C 12 | wO3pzc70U2piOgtDueIl/f4F+dTEFKsR4iOJjXC3pB1N7K7lnPoWwtfBy9ToxC/l 13 | me4kiwPsjfKL6sNK+0MREgt+tUeSbNzmBInr9TME6xABKnHl+YMTPP8lCS9odkb/ 14 | uk++3K1xKliq+w7SeT3km2U7zCkqn/xyWaLrrpLv9jUTgMYC7ORfzJ12ze9jksGv 15 | eUCEeYd/41Ko6J17B2mPFQIDAQABo4IBTzCCAUswEAYJKwYBBAGCNxUBBAMCAQAw 16 | HQYDVR0OBBYEFGL8Q82gPqTLZxLSW9lVrHvMtopfMBkGCSsGAQQBgjcUAgQMHgoA 17 | UwB1AGIAQwBBMAsGA1UdDwQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQY 18 | MBaAFEVmUkPhflgRv9ZOniNVCDs6ImqoMFwGA1UdHwRVMFMwUaBPoE2GS2h0dHA6 19 | Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2kvY3JsL3Byb2R1Y3RzL01pY0NvclRoaVBh 20 | ck1hclJvb18yMDEwLTEwLTA1LmNybDBgBggrBgEFBQcBAQRUMFIwUAYIKwYBBQUH 21 | MAKGRGh0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2kvY2VydHMvTWljQ29yVGhp 22 | UGFyTWFyUm9vXzIwMTAtMTAtMDUuY3J0MA0GCSqGSIb3DQEBCwUAA4ICAQDUhIj1 23 | FJQYAsoqPPsqkhwM16DR8ehSZqjuorV1epAAqi2kdlrqebe5N2pRexBk9uFk8gJn 24 | vveoG3i9us6IWGQM1lfIGaNfBdbbxtBpzkhLMrfrXdIw9cD1uLp4B6Mr/pvbNFaE 25 | 7ILKrkElcJxr6f6QD9eWH+XnlB+yKgyNS/8oKRB799d8pdF2uQXIee0PkJKcwv7f 26 | b35sD3vUwUXdNFGWOQ/lXlbYGAWW9AemQrOgd/0IGfJxVsyfhiOkh8um/Vh+1Gln 27 | FZF+gfJ/E+UNi4o8h4Tr4869Q+WtLYSTjmorWnxE+lKqgcgtHLvgUt8AEfiaPcFg 28 | sOEztaOI0WUZChrnrHykwYKHTjixLw3FFIdv/Y0uvDm25+bD4OTNJ4TvlELvKYuQ 29 | RkE7gRtn2PlDWWXLDbz9AJJP9HU7p6kk/FBBQHngLU8Kaid2blLtlml7rw/3hwXQ 30 | RcKtUxSBH/swBKo3NmHaSmkbNNho7dYCz2yUDNPPbCJ5rbHwvAOiRmCpxAfCIYLx 31 | /fLoeTJgv9ispSIUS8rB2EvrfT9XNbLmT3W0sGADIlOukXkd1ptBHxWGVHCy3g01 32 | D3ywNHK6l2A78HnrorIcXaIWuIfF6Rv2tZclbzif45H6inmYw2kOt6McIAWX+MoU 33 | rgDXxPPAFBB1azSgG7WZYPNcsMVXTjbSMoS/ng== 34 | -----END CERTIFICATE----- 35 | -------------------------------------------------------------------------------- /cert/microsoft/MicCorUEFCA2011_2011-06-27.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/microsoft/MicCorUEFCA2011_2011-06-27.cer -------------------------------------------------------------------------------- /cert/microsoft/MicCorUEFCA2011_2011-06-27.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIGEDCCA/igAwIBAgIKYQjTxAAAAAAABDANBgkqhkiG9w0BAQsFADCBkTELMAkG 3 | A1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQx 4 | HjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjE7MDkGA1UEAxMyTWljcm9z 5 | b2Z0IENvcnBvcmF0aW9uIFRoaXJkIFBhcnR5IE1hcmtldHBsYWNlIFJvb3QwHhcN 6 | MTEwNjI3MjEyMjQ1WhcNMjYwNjI3MjEzMjQ1WjCBgTELMAkGA1UEBhMCVVMxEzAR 7 | BgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1p 8 | Y3Jvc29mdCBDb3Jwb3JhdGlvbjErMCkGA1UEAxMiTWljcm9zb2Z0IENvcnBvcmF0 9 | aW9uIFVFRkkgQ0EgMjAxMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB 10 | AKUIbEzHRQlqSwykwId/BnUMQwFUZOAWfwftkn0LsnO/DArGSkVhoMUWLZbT9Sug 11 | +01Jm0GAkDy5VP3mvNGdxKQYin9BilxZg2gyu4xHye5xvCFPmop8/0Q/jY8ysiZI 12 | rnW17slMHkoZfuSCmh14d00MsL32D9MW07z6K6VROF31+7rbeALb/+wKG5bVg7gZ 13 | E+m2wHtAe+EfKCfJ+u9WXhzmfpR+wPBEsnk55dqyYotNvzhw4mgkFMkzpAg31Vhp 14 | XtN87cEEUwjnTrAqh2MIYW9jFVnqsit51wxhZ4pb/V6th3+6hmdPcVgSIgQiIs6L 15 | 71RxAM5QNVh2lQjuarGiAdUCAwEAAaOCAXYwggFyMBIGCSsGAQQBgjcVAQQFAgMB 16 | AAEwIwYJKwYBBAGCNxUCBBYEFPjBa7d/d1NK8yU3HU6hJnsPIHCAMB0GA1UdDgQW 17 | BBQTrb9DCb2CcJyM1U8xbtUimIob1DAZBgkrBgEEAYI3FAIEDB4KAFMAdQBiAEMA 18 | QTALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBRFZlJD 19 | 4X5YEb/WTp4jVQg7OiJqqDBcBgNVHR8EVTBTMFGgT6BNhktodHRwOi8vY3JsLm1p 20 | Y3Jvc29mdC5jb20vcGtpL2NybC9wcm9kdWN0cy9NaWNDb3JUaGlQYXJNYXJSb29f 21 | MjAxMC0xMC0wNS5jcmwwYAYIKwYBBQUHAQEEVDBSMFAGCCsGAQUFBzAChkRodHRw 22 | Oi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpL2NlcnRzL01pY0NvclRoaVBhck1hclJv 23 | b18yMDEwLTEwLTA1LmNydDANBgkqhkiG9w0BAQsFAAOCAgEANQhC/zDMzvd2DK0Q 24 | aFg1KUYydid87xJBJ0IbSqptgThIWRNV8+lYNKYWC4KqXa2C2oCDQQaPtB3yA7nz 25 | Gl0b8VCQ+bNVhEIoHCC9sq5RFMXArJeVIRyQ2w/8d56Vc5GIyr29UrkFUA3fV56g 26 | Ye0N5W0l2UAPF0DIzqNKwk2vmhIdCFSPvce8uSs9SSsfMvxqIWlPm8h+QjT8NgYX 27 | i48gQMCzmiV1J83JA6P2XdHnNlR6uVC10xLRB7+7dN/cHo+A1e0Y9C8UFmsv3maM 28 | sCPlx4TY7erBM4KtVksYLfFolQfNz/By8K673YaFmCwhTDMr8A9K8GiHtZJVMnWh 29 | aoJqPKMlEaTtrdcErsvYQFmghNGVTGKRIhp0HYw9Rw5EpuSwmzQ1sfq2U6gsgeyk 30 | BXHInbi66BtEZuRHVA6OVn+znxaYsobQaD6QI7UvXo9QhY3GjYJfQaH0Lg3gmdJs 31 | deS2abUhhvoH0fbiTdHarSx3Ux4lMjfHbFJylYaw8TVhahn1sjuBUFamMi3+oon5 32 | QoYnGFWhgspam/gwmFQUpkeWJS/IJuRBlBpcAj/lluOFWzw+P7tHFnJV4iUisdl7 33 | 5wMGKqP3HpBGwwAN1hmJ4w41J2IDcRWm79AnoKBZN2D4OJS44Hhw+LpMhoeU9uCu 34 | AkXuZcK2o35pFnUHkpv1prxZg1g= 35 | -----END CERTIFICATE----- 36 | -------------------------------------------------------------------------------- /cert/microsoft/MicWinProPCA2011_2011-10-19.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/microsoft/MicWinProPCA2011_2011-10-19.cer -------------------------------------------------------------------------------- /cert/microsoft/MicWinProPCA2011_2011-10-19.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIF1zCCA7+gAwIBAgIKYQd2VgAAAAAACDANBgkqhkiG9w0BAQsFADCBiDELMAkG 3 | A1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQx 4 | HjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEyMDAGA1UEAxMpTWljcm9z 5 | b2Z0IFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIwMTAwHhcNMTExMDE5MTg0 6 | MTQyWhcNMjYxMDE5MTg1MTQyWjCBhDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldh 7 | c2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBD 8 | b3Jwb3JhdGlvbjEuMCwGA1UEAxMlTWljcm9zb2Z0IFdpbmRvd3MgUHJvZHVjdGlv 9 | biBQQ0EgMjAxMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAN0Mu6Lk 10 | Lgnj58X3lmm8ACG9aTMz760Ey1SA7gaDu8UghNn30ovzOLCrpK0tfGJ5Bf/jSj8E 11 | NSBw48Tna+CcwDZ16Yox3Y1w5dw3tXRGlihbh2AjLL/cR6Vn91EnnnLrB6bJuR47 12 | UzV85dPsJ7mHHP65ySMJb6hGkcFuljxB08ujP10Cak3saR8lKFw2//1DFQqU4Bm0 13 | z9/CEuLCWyfuJ3gwi1sqCWsiiVNgFizAaB1TuuxJ851hjIVoCXNEXX2iVCvdefcV 14 | zzVdbBwrXM68nCOLb261Jtk2E8NP1ieuuTI7QZIs4cfNd+iqVE73XAsEh2W0Qxio 15 | suBtGXfsWiT6SAMCAwEAAaOCAUMwggE/MBAGCSsGAQQBgjcVAQQDAgEAMB0GA1Ud 16 | DgQWBBSpKQI5jhbEl3jNkPmeT5rhfFWvUzAZBgkrBgEEAYI3FAIEDB4KAFMAdQBi 17 | AEMAQTALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBTV 18 | 9lbLj+iiXGJo0T2UkFvXzpoYxDBWBgNVHR8ETzBNMEugSaBHhkVodHRwOi8vY3Js 19 | Lm1pY3Jvc29mdC5jb20vcGtpL2NybC9wcm9kdWN0cy9NaWNSb29DZXJBdXRfMjAx 20 | MC0wNi0yMy5jcmwwWgYIKwYBBQUHAQEETjBMMEoGCCsGAQUFBzAChj5odHRwOi8v 21 | d3d3Lm1pY3Jvc29mdC5jb20vcGtpL2NlcnRzL01pY1Jvb0NlckF1dF8yMDEwLTA2 22 | LTIzLmNydDANBgkqhkiG9w0BAQsFAAOCAgEAFPx8cVGlecJusu85Prw8Ug9uKz8Q 23 | E3P+qGjQSKY0TYqWBSbuMUaQYXnW/zguRWv0wOUouNodj4rbCdcax0wKNmZqjOwb 24 | 1wSQqBgXpJu54kAyNnbEwVrGv+QEwOoW06zDaO9irN1UbFAwWKbrfP6Up06O9Ox8 25 | hnNXwlIhczRa86OKVsgE2gcJ7fiL4870fo6u8PYLigj7P8kdcn9TuOu+Y+DjPTFl 26 | sIHl8qzNFqSfPaixm8JC0JCEX1Qd/4nquh1HkG+wc05Bn0CfX+WhKrIRkXOKISjw 27 | zt5zOV8+q1xg7N8DEKjTCen09paFtn9RiGZHGY2isBI9gSpoBXe7kUxie7bBB8e6 28 | eoc0Aw5LYnqZ6cr8zko3yS2kV3wc/j3cuA9a+tbEswKFAjrqs9lu5GkhN96B0fZ1 29 | GQVn05NXXikbOcjuLeHN5EVzW9DSznqrFhmCRljQXp2Bs2evbDXyvOU/JOI1ogp1 30 | BvYYVpnUeCzRBRvr0IgBnaoQ8QXfun4sY7cGmyMhxPl4bOJYFwY2K5ESA8yk2fIt 31 | uvmUnUDtGEXxzopcaz6rA9NwGCoKauBfR9HVYwoy8q/XNh8qcFrlQlkIcUtXun6D 32 | gfAhPPQcwcW5kJMOiEWThumxIJm+mMvFlaRdYtagYwggvXUQd30980W5n5efy1eA 33 | bzOpBM93pGIcWX4= 34 | -----END CERTIFICATE----- 35 | -------------------------------------------------------------------------------- /cert/openSUSE/SLES-UEFI-CA-Certificate.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/openSUSE/SLES-UEFI-CA-Certificate.cer -------------------------------------------------------------------------------- /cert/openSUSE/SLES-UEFI-CA-Certificate.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIE5TCCA82gAwIBAgIBATANBgkqhkiG9w0BAQsFADCBpjEtMCsGA1UEAwwkU1VT 3 | RSBMaW51eCBFbnRlcnByaXNlIFNlY3VyZSBCb290IENBMQswCQYDVQQGEwJERTES 4 | MBAGA1UEBwwJTnVyZW1iZXJnMSEwHwYDVQQKDBhTVVNFIExpbnV4IFByb2R1Y3Rz 5 | IEdtYkgxEzARBgNVBAsMCkJ1aWxkIFRlYW0xHDAaBgkqhkiG9w0BCQEWDWJ1aWxk 6 | QHN1c2UuZGUwHhcNMTMwNDE4MTQzMzQxWhcNMzUwMzE0MTQzMzQxWjCBpjEtMCsG 7 | A1UEAwwkU1VTRSBMaW51eCBFbnRlcnByaXNlIFNlY3VyZSBCb290IENBMQswCQYD 8 | VQQGEwJERTESMBAGA1UEBwwJTnVyZW1iZXJnMSEwHwYDVQQKDBhTVVNFIExpbnV4 9 | IFByb2R1Y3RzIEdtYkgxEzARBgNVBAsMCkJ1aWxkIFRlYW0xHDAaBgkqhkiG9w0B 10 | CQEWDWJ1aWxkQHN1c2UuZGUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB 11 | AQDN/avXKoT4gcM2NVA1LMfsBPH01sxgS8gTs3SbvfbEP2M+ZlHyfj9ufHZ7cZ1p 12 | ISoVm6ql5VbIeZgSNc17Y4y4Nynud1C8t2SP/iZK5YMYHGxdtIfv1zPE+Bo/KZqE 13 | WgHg2YFtMXdiKfXBZRTfSh37t0pGO/OQi6K4JioKw55UtQNggePZWDXtsAviT2vv 14 | abqLR9+kxdrQ0iWqhWM+LwXbTGkCpg41s8KucLD/JYAxxw05dKPApFDNnz+Ft2L7 15 | e5JtyB4S0u4PlvQBMNHt4hDs0rK4oeHFLbOxHvjF+nloneWhkg9eT0VCfpAYVYz+ 16 | whMxuCHerDCdmeFrRGEMQz11AgMBAAGjggEaMIIBFjAPBgNVHRMBAf8EBTADAQH/ 17 | MB0GA1UdDgQWBBTsqw1CxFbPdwQ2uXOZOGKWXocmLzCB0wYDVR0jBIHLMIHIgBTs 18 | qw1CxFbPdwQ2uXOZOGKWXocmL6GBrKSBqTCBpjEtMCsGA1UEAwwkU1VTRSBMaW51 19 | eCBFbnRlcnByaXNlIFNlY3VyZSBCb290IENBMQswCQYDVQQGEwJERTESMBAGA1UE 20 | BwwJTnVyZW1iZXJnMSEwHwYDVQQKDBhTVVNFIExpbnV4IFByb2R1Y3RzIEdtYkgx 21 | EzARBgNVBAsMCkJ1aWxkIFRlYW0xHDAaBgkqhkiG9w0BCQEWDWJ1aWxkQHN1c2Uu 22 | ZGWCAQEwDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBCwUAA4IBAQASviyFhVqU 23 | Wc1JUQgXwdljJynTnp0/FQOZJBSe7XdBGPmy91+3ITqrXgyqo/218KISiQl53Qlw 24 | pq+cIiGRAia1D7p7wbg7wsg+Trt0zZFXes30wfYq5pjfWadEBAgNCffkBz10TSjL 25 | jQrVwW5N+yUJMoq+r843TzV56Huy6LBOVhI5yTz7X7i2rSJYfyQWM8oeHLj8Yl5M 26 | rOB9gyTumxB4mOLmSqwKzJiUB0ppGPohdLUSSEKDdo6KSH/GjR7M7uBicwnzwJD3 27 | SVfT9nx9HKF2nXZlHvs5ViQQru3qP1tc6i0eXEnPTYW2+zkZcN0e5iHyozEZHsO0 28 | rvc1p6G0YWtO 29 | -----END CERTIFICATE----- 30 | -------------------------------------------------------------------------------- /cert/openSUSE/openSUSE-UEFI-CA-Certificate.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/openSUSE/openSUSE-UEFI-CA-Certificate.cer -------------------------------------------------------------------------------- /cert/openSUSE/openSUSE-UEFI-CA-Certificate.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIEdDCCA1ygAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgTEgMB4GA1UEAwwXb3Bl 3 | blNVU0UgU2VjdXJlIEJvb3QgQ0ExCzAJBgNVBAYTAkRFMRIwEAYDVQQHDAlOdXJl 4 | bWJlcmcxGTAXBgNVBAoMEG9wZW5TVVNFIFByb2plY3QxITAfBgkqhkiG9w0BCQEW 5 | EmJ1aWxkQG9wZW5zdXNlLm9yZzAeFw0xMzA4MjYxNjEyMDdaFw0zNTA3MjIxNjEy 6 | MDdaMIGBMSAwHgYDVQQDDBdvcGVuU1VTRSBTZWN1cmUgQm9vdCBDQTELMAkGA1UE 7 | BhMCREUxEjAQBgNVBAcMCU51cmVtYmVyZzEZMBcGA1UECgwQb3BlblNVU0UgUHJv 8 | amVjdDEhMB8GCSqGSIb3DQEJARYSYnVpbGRAb3BlbnN1c2Uub3JnMIIBIjANBgkq 9 | hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3t9hknqk/oPRfTtoDrGn8E6Sk/xHPnAt 10 | Tojcmp76M7Sm2w4jwQ2owdVlBIQE/zpIGE85MuTKTvkEnp8PzSBdYaunANil/yt/ 11 | vuhHwy9bAsi73o4a6UbThu//iJmQ6xCJuIs/PqgHxlV6btNf/IM8PRbtJsUTc5Kx 12 | cB4ilcgAbCV2RvGi2dCwmGgPpy2xDWeJypRK6hLFkVV2f2x6LvkYiZ/49CRD1TVq 13 | ywAOLu1L4l0J2BuXcJmeWm+mgaidqVh2fWlxgtO6OpZDm/DaFcZO6cgVuenLx+Rx 14 | zuoQG2vEKnABqVK0F94AUs995P0PTQMYspAo1G/Erla8NmBJRotrCwIDAQABo4H0 15 | MIHxMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFGhCYA3iLExHfpW+I9/qlRPl 16 | lxdiMIGuBgNVHSMEgaYwgaOAFGhCYA3iLExHfpW+I9/qlRPllxdioYGHpIGEMIGB 17 | MSAwHgYDVQQDDBdvcGVuU1VTRSBTZWN1cmUgQm9vdCBDQTELMAkGA1UEBhMCREUx 18 | EjAQBgNVBAcMCU51cmVtYmVyZzEZMBcGA1UECgwQb3BlblNVU0UgUHJvamVjdDEh 19 | MB8GCSqGSIb3DQEJARYSYnVpbGRAb3BlbnN1c2Uub3JnggEBMA4GA1UdDwEB/wQE 20 | AwIBhjANBgkqhkiG9w0BAQsFAAOCAQEAiqOJwo7Z+YIL8zPO6RkXF6NlgM0zrgZR 21 | Vim2OId79J38KI6q4FMSDjpgxwbYOmF2O3cI9JSkjHxHOpnYhJsXzCBiLuJ25MY2 22 | DSbpLlM1Cvs6NZNFw5OCwQvzCOlXH1k3qdBsafto6n87r9P3WSeO1MeWc/QMCvc+ 23 | 5K9sjMd6bwl59EEf428R+z5ssaB75JK3yvky9d7DsHN947OCXc3sYdz+DD7Gteds 24 | LV2Sc//tqmqpm2aeXjptcLAxwM7fLyEQaAyH83egMzEKDxX27jKIxZpTcc0NGqEo 25 | idC/9lasSzs2BisBxevl3HKDPZSsKIMT+8FdJ5wT9jJf9h9Ktz5Tig== 26 | -----END CERTIFICATE----- 27 | -------------------------------------------------------------------------------- /cert/oracle/oracle-linux-uefi-ca.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/oracle/oracle-linux-uefi-ca.cer -------------------------------------------------------------------------------- /cert/oracle/oracle-linux-uefi-ca.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIGvDCCBaSgAwIBAgIQA/G04V86gvEUlniz19hHXDANBgkqhkiG9w0BAQsFADBs 3 | MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 4 | d3cuZGlnaWNlcnQuY29tMSswKQYDVQQDEyJEaWdpQ2VydCBIaWdoIEFzc3VyYW5j 5 | ZSBFViBSb290IENBMB4XDTEyMDQxODEyMDAwMFoXDTI3MDQxODEyMDAwMFowbDEL 6 | MAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0IEluYzEZMBcGA1UECxMQd3d3 7 | LmRpZ2ljZXJ0LmNvbTErMCkGA1UEAxMiRGlnaUNlcnQgRVYgQ29kZSBTaWduaW5n 8 | IENBIChTSEEyKTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKdT+g+y 9 | tRPxZM+EgPyugDXRttfHoyysGiys8YSsOjUSOpKRulfkxMnzL6hIPLfWbtyXIrpR 10 | eWGvQy8Nt5u0STGuRFg+pKGWp4dPI37DbGUkkFU+ocojfMVC6cR6YkWbfd5jdMue 11 | YyX4hJqarUVPrn0fyBPLdZvJ4eGK+AsMmPTKPtBFqnoepViTNjS+Ky4rMVhmtDIQ 12 | n53wUqHv6D7TdvJAWtz6aj0bS612sIxc7ja6g+owqEze8QsqWEGIrgCJqwPRFoIg 13 | InbrXlQ4EmLh0nAk2+0fcNJkCYAt4radzh/yuyHzbNvYsxl7ilCf7+w2Clyat0rT 14 | CKA5ef3dvz06CSUCAwEAAaOCA1gwggNUMBIGA1UdEwEB/wQIMAYBAf8CAQAwDgYD 15 | VR0PAQH/BAQDAgGGMBMGA1UdJQQMMAoGCCsGAQUFBwMDMH8GCCsGAQUFBwEBBHMw 16 | cTAkBggrBgEFBQcwAYYYaHR0cDovL29jc3AuZGlnaWNlcnQuY29tMEkGCCsGAQUF 17 | BzAChj1odHRwOi8vY2FjZXJ0cy5kaWdpY2VydC5jb20vRGlnaUNlcnRIaWdoQXNz 18 | dXJhbmNlRVZSb290Q0EuY3J0MIGPBgNVHR8EgYcwgYQwQKA+oDyGOmh0dHA6Ly9j 19 | cmwzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEhpZ2hBc3N1cmFuY2VFVlJvb3RDQS5j 20 | cmwwQKA+oDyGOmh0dHA6Ly9jcmw0LmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEhpZ2hB 21 | c3N1cmFuY2VFVlJvb3RDQS5jcmwwggHEBgNVHSAEggG7MIIBtzCCAbMGCWCGSAGG 22 | /WwDAjCCAaQwOgYIKwYBBQUHAgEWLmh0dHA6Ly93d3cuZGlnaWNlcnQuY29tL3Nz 23 | bC1jcHMtcmVwb3NpdG9yeS5odG0wggFkBggrBgEFBQcCAjCCAVYeggFSAEEAbgB5 24 | ACAAdQBzAGUAIABvAGYAIAB0AGgAaQBzACAAQwBlAHIAdABpAGYAaQBjAGEAdABl 25 | ACAAYwBvAG4AcwB0AGkAdAB1AHQAZQBzACAAYQBjAGMAZQBwAHQAYQBuAGMAZQAg 26 | AG8AZgAgAHQAaABlACAARABpAGcAaQBDAGUAcgB0ACAAQwBQAC8AQwBQAFMAIABh 27 | AG4AZAAgAHQAaABlACAAUgBlAGwAeQBpAG4AZwAgAFAAYQByAHQAeQAgAEEAZwBy 28 | AGUAZQBtAGUAbgB0ACAAdwBoAGkAYwBoACAAbABpAG0AaQB0ACAAbABpAGEAYgBp 29 | AGwAaQB0AHkAIABhAG4AZAAgAGEAcgBlACAAaQBuAGMAbwByAHAAbwByAGEAdABl 30 | AGQAIABoAGUAcgBlAGkAbgAgAGIAeQAgAHIAZQBmAGUAcgBlAG4AYwBlAC4wHQYD 31 | VR0OBBYEFI/ofvBtMmoABSPHcJdqOpD/a+rUMB8GA1UdIwQYMBaAFLE+w2kD+L9H 32 | AdSYJhoIAu9jZCvDMA0GCSqGSIb3DQEBCwUAA4IBAQAZM0oMgTM32602yeTJOru1 33 | Gy56ouL0Q0IXnr9OoU3hsdvpgd2fAfLkiNXp/gn9IcHsXYDS8NbBQ8L+dyvb+deR 34 | M85s1bIZO+Yu1smTT4hAjs3h9X7xD8ZZVnLo62pBvRzVRtV8ScpmOBXBv+CRcHeH 35 | 3MmNMckMKaIz7Y3ih82JjT8b/9XgGpeLfNpt+6jGsjpma3sBs83YpjTsEgGrlVil 36 | xFNXqGDm5wISoLkjZKJNu3yBJWQhvs/uQhhDl7ulNwavTf8mpU1hS+xGQbhlzrh5 37 | ngiWC4GMijuPx5mMoypumG1eYcaWt4q5YS2TuOsOBEPX9f6m8GLUmWqlwcHwZJSA 38 | -----END CERTIFICATE----- 39 | -------------------------------------------------------------------------------- /cert/oracle/securebootca.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/oracle/securebootca.cer -------------------------------------------------------------------------------- /cert/oracle/securebootca.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIGsDCCBJigAwIBAgIQCK1AsmDSnEyfXs2pvZOu2TANBgkqhkiG9w0BAQwFADBi 3 | MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 4 | d3cuZGlnaWNlcnQuY29tMSEwHwYDVQQDExhEaWdpQ2VydCBUcnVzdGVkIFJvb3Qg 5 | RzQwHhcNMjEwNDI5MDAwMDAwWhcNMzYwNDI4MjM1OTU5WjBpMQswCQYDVQQGEwJV 6 | UzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4xQTA/BgNVBAMTOERpZ2lDZXJ0IFRy 7 | dXN0ZWQgRzQgQ29kZSBTaWduaW5nIFJTQTQwOTYgU0hBMzg0IDIwMjEgQ0ExMIIC 8 | IjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA1bQvQtAorXi3XdU5WRuxiEL1 9 | M4zrPYGXcMW7xIUmMJ+kjmjYXPXrNCQH4UtP03hD9BfXHtr50tVnGlJPDqFX/IiZ 10 | wZHMgQM+TXAkZLON4gh9NH1MgFcSa0OamfLFOx/y78tHWhOmTLMBICXzENOLsvsI 11 | 8IrgnQnAZaf6mIBJNYc9URnokCF4RS6hnyzhGMIazMXuk0lwQjKP+8bqHPNlaJGi 12 | TUyCEUhSaN4QvRRXXegYE2XFf7JPhSxIpFaENdb5LpyqABXRN/4aBpTCfMjqGzLm 13 | ysL0p6MDDnSlrzm2q2AS4+jWufcx4dyt5Big2MEjR0ezoQ9uo6ttmAaDG7dqZy3S 14 | vUQakhCBj7A7CdfHmzJawv9qYFSLScGT7eG0XOBv6yb5jNWy+TgQ5urOkfW+0/tv 15 | k2E0XLyTRSiDNipmKF+wc86LJiUGsoPUXPYVGUztYuBeM/Lo6OwKp7ADK5GyNnm+ 16 | 960IHnWmZcy740hQ83eRGv7bUKJGyGFYmPV8AhY8gyitOYbs1LcNU9D4R+Z1MI3s 17 | MJN2FKZbS110YU0/EpF23r9Yy3IQKUHw1cVtJnZoEUETWJrcJisB9IlNWdt4z4FK 18 | PkBHX8mBUHOFECMhWWCKZFTBzCEa6DgZfGYczXg4RTCZT/9jT0y7qg0IU0F8WD1H 19 | s/q27IwyCQLMbDwMVhECAwEAAaOCAVkwggFVMBIGA1UdEwEB/wQIMAYBAf8CAQAw 20 | HQYDVR0OBBYEFGg34Ou2O/hfEYb7/mF7CIhl9E5CMB8GA1UdIwQYMBaAFOzX44LS 21 | cV1kTN8uZz/nupiuHA9PMA4GA1UdDwEB/wQEAwIBhjATBgNVHSUEDDAKBggrBgEF 22 | BQcDAzB3BggrBgEFBQcBAQRrMGkwJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRp 23 | Z2ljZXJ0LmNvbTBBBggrBgEFBQcwAoY1aHR0cDovL2NhY2VydHMuZGlnaWNlcnQu 24 | Y29tL0RpZ2lDZXJ0VHJ1c3RlZFJvb3RHNC5jcnQwQwYDVR0fBDwwOjA4oDagNIYy 25 | aHR0cDovL2NybDMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0VHJ1c3RlZFJvb3RHNC5j 26 | cmwwHAYDVR0gBBUwEzAHBgVngQwBAzAIBgZngQwBBAEwDQYJKoZIhvcNAQEMBQAD 27 | ggIBADojRD2NCHbuj7w6mdNW4AIapfhINPMstuZ0ZveUcrEAyq9sMCcTEp6QRJ9L 28 | /Z6jfCbVN7w6XUhtldU/SfQnuxaBRVD9nL22heB2fjdxyyL3WqqQz/WTauPrINHV 29 | UHmImoqKwba9oUgYftzYgBoRGRjNYZmBVvbJ43bnxOQbX0P4PpT/djk9ntSZz0rd 30 | KOtfJqGVWEjVGv7XJz/9kNF2ht0csGBc8w2o7uCJob054ThO2m67Np375SFTWsPK 31 | 6Wrxoj7bQ7gzyE84FJKZ9d3OVG3ZXQIUH0AzfAPilbLCIXVzUstG2MQ0HKKlS43N 32 | b3Y3LIU/Gs4m6Ri+kAewQ3+ViCCCcPDMyu/9KTVcH4k4Vfc3iosJocsL6TEa/y4Z 33 | XDlx4b6cpwoG1iZnt5LmTl/eeqxJzy6kdJKt2zyknIYf48FWGysj/4+16oh7cGvm 34 | oLr9Oj9FpsToFpFSi0HASIRLlk2rREDjjfAVKM7t8RhWByovEMQMCGQ8M4+uKIw8 35 | y4+ICw2/O/TOHnuO77Xry7fwdxPm5yg/rBKupS8ibEH5glwVZsxsDsrFhsP2JjMM 36 | B0ug0wcCampAMEhLNKhRILutG4UI4lkNbcoFUCvqShyepf2gpx8GdOfy1lKQ/a+F 37 | SCH5Vzu0nAPthkX0tGFuv2jiJmCG6sivqf6UHedjGzqGVnhO 38 | -----END CERTIFICATE----- 39 | -------------------------------------------------------------------------------- /cert/redhat/redhat_test.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/redhat/redhat_test.cer -------------------------------------------------------------------------------- /cert/redhat/redhat_test.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIID+DCCAuCgAwIBAgIJAPcYZcwSArfTMA0GCSqGSIb3DQEBBQUAMHYxCzAJBgNV 3 | BAYTAlVTMRYwFAYDVQQIEw1NYXNzYWNodXNldHRzMRIwEAYDVQQHEwlDYW1icmlk 4 | Z2UxFjAUBgNVBAoTDVJlZCBIYXQsIEluYy4xIzAhBgNVBAMTGlJlZCBIYXQgVGVz 5 | dCBDZXJ0aWZ5aW5nIENBMB4XDTEyMDcwOTE5MTI0M1oXDTEzMDcwOTE5MTI0M1ow 6 | djELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDU1hc3NhY2h1c2V0dHMxEjAQBgNVBAcT 7 | CUNhbWJyaWRnZTEWMBQGA1UEChMNUmVkIEhhdCwgSW5jLjEjMCEGA1UEAxMaUmVk 8 | IEhhdCBUZXN0IENlcnRpZnlpbmcgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw 9 | ggEKAoIBAQCvIhRc/TCBZMTvu3ccXyKtdpz7gU3MlaIDBqwBlPu+1HaE9pH1iCOd 10 | pGoYCOAxvzaMFLErMzmhyu/GLi0UJmKYfZE5aChmvCrMLPXDYkLnUnDbAkgvAdYa 11 | aa4LufuB2/E0YJu+0+Mni5kYO0i8gLsFxF+zMiZBIF3odEF5RHi0gudPpo7QxT2C 12 | 1cXHhdb9ItK0J3e2+tXCseWlN1lz08eSlpyd7FYMhzzQnuOZMr6E3aBraBsx2CBo 13 | qxZJskqMD2qpSPhZ8CnLjlRvDlyR5p3tdXjQCBVXeAKolx2n6ErsEtZbfodmxE4H 14 | 8rD3VqBmIxn4KO3prc6rg6GUxh24scT7AgMBAAGjgYgwgYUwHQYDVR0OBBYEFAig 15 | 71gAywL7WHwStAMlnH1O8V0cMB8GA1UdIwQYMBaAFAig71gAywL7WHwStAMlnH1O 16 | 8V0cMAsGA1UdDwQEAwIB/jAPBgNVHRMBAf8EBTADAQH/MCUGCWCGSAGG+EIBDQQY 17 | FhZUZXN0aW5nIENBIENlcnRpZmljYXRlMA0GCSqGSIb3DQEBBQUAA4IBAQCEGBTF 18 | 4G5v6FmGexQ5/ZlHPiGeDuCENqIa+dcxpJFn4kfYZTuMPfPUPmpfH/R1zTgwP2U5 19 | DkiTHabdI6HbzE5PqcTCjk/c2l2zrmNl2H6io3Wpes4qk0JQ9OlaMzO8kflIX7fB 20 | vv2ExHJEBg7If10e9BIuhv30/htIwX7awVkCzk38VD1IZXNcbG+VJftE0Dqbwl0I 21 | Br8SpydHiELMIiVnVxdX23/fePKyhKsdvMlQQA4Mez8fnwwH+jEA/29ZdPOr81j1 22 | hXVhf+i3Cr1qhUpQD/Rq0lIkm+zewrOfVkMA+/vqa7BqbAKgJj9RMksScN+ypKzO 23 | FL+r0hv2Y3cNdp9/ 24 | -----END CERTIFICATE----- 25 | -------------------------------------------------------------------------------- /cert/refind/refind.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/refind/refind.cer -------------------------------------------------------------------------------- /cert/refind/refind.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIDOzCCAiOgAwIBAgIJAODF7HQMFVJOMA0GCSqGSIb3DQEBBQUAMDQxMjAwBgNV 3 | BAMMKVJvZGVyaWNrIFcuIFNtaXRoLCByb2RzbWl0aEByb2RzYm9va3MuY29tMB4X 4 | DTEyMTIwNjIxMzgyOFoXDTMyMTIwMTIxMzgyOFowNDEyMDAGA1UEAwwpUm9kZXJp 5 | Y2sgVy4gU21pdGgsIHJvZHNtaXRoQHJvZHNib29rcy5jb20wggEiMA0GCSqGSIb3 6 | DQEBAQUAA4IBDwAwggEKAoIBAQCqTnWTvfemH1XP4RqiCITm1Zuvwil1+XhccYx2 7 | YQ23IU/e1Dvdn5xtk6Qk0IQa8pYG8DrQdOQJkItv3PDYuOu0Zx/dHVm93okHBAS1 8 | X2JJcslswHv/hAATs0Xnv3fJt30mJ0ja+KDbSOZ3V0MH+pjBkc/6Pk7xHuOkWwjJ 9 | 6iP5nePeD8oGvQcGuwZe9XhiK1NKa23j9WzVU8hl0buhyatBd/xASs9JnUsmEhsG 10 | dqasdmWp6QqTvj/QwWoJd7J5zmU0k5SGt5I0kKQGKo/epCU9XdAf5z198J0D6XyP 11 | fN3y2ZYTPGb/1rMNdceQXDxhl/ps3n4A/qIKiZW3Ks8cOj+HAgMBAAGjUDBOMB0G 12 | A1UdDgQWBBTTDAa9OVimbJh1fwmoCFXhdEpacDAfBgNVHSMEGDAWgBTTDAa9OVim 13 | bJh1fwmoCFXhdEpacDAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4IBAQCo 14 | 9/vhRiG9oMEaJtihy4/pYTs9EiKCQ6ewzcbQaBz7mPXec7h5E4LuxhE7Rl/+1/xq 15 | 39X8D7C0mbDyN0Drt3Ovf+hhzWdpkDIQ/7P6SdRTxAXE+/xUOj57jENPXZWV0jDt 16 | Uy1MGZN9IKAUXfnPfmv72FYN9XoUVv3d5yy9wSCc/9AlGHx8lGDJ/p7DJSXGmBKO 17 | BQV/1Y39GCxaSWdyrcjnV1swUBLO9tesfCRwfoo/rNh+wgK9P+emLbh+jSTL/zW/ 18 | Ye1NS0VXD3pWTswA7M7XYOy6KON2vKupFyHhDj3NMzspq8/oDQHLvUzq1I8z99sd 19 | it92eWJ2JKoH6nSKDKXq 20 | -----END CERTIFICATE----- 21 | -------------------------------------------------------------------------------- /cert/rocky/rocky-root-ca.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/rocky/rocky-root-ca.cer -------------------------------------------------------------------------------- /cert/rocky/rocky-root-ca.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIElTCCA32gAwIBAgIUEGxXHO6vKSTAqoXlqrSFQpqx2IYwDQYJKoZIhvcNAQEL 3 | BQAwgdQxCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhEZWxhd2FyZTEOMAwGA1UEBwwF 4 | RG92ZXIxLTArBgNVBAoMJFJvY2t5IEVudGVycHJpc2UgU29mdHdhcmUgRm91bmRh 5 | dGlvbjEhMB8GA1UECwwYUmVsZWFzZSBlbmdpbmVlcmluZyB0ZWFtMSgwJgYDVQQD 6 | DB9Sb2NreSBMaW51eCBTZWN1cmUgQm9vdCBSb290IENBMSYwJAYJKoZIhvcNAQkB 7 | FhdzZWN1cml0eUByb2NreWxpbnV4Lm9yZzAeFw0yMTA2MjAxNTA1MDFaFw0zMTA2 8 | MTgxNTA1MDFaMIHUMQswCQYDVQQGEwJVUzERMA8GA1UECAwIRGVsYXdhcmUxDjAM 9 | BgNVBAcMBURvdmVyMS0wKwYDVQQKDCRSb2NreSBFbnRlcnByaXNlIFNvZnR3YXJl 10 | IEZvdW5kYXRpb24xITAfBgNVBAsMGFJlbGVhc2UgZW5naW5lZXJpbmcgdGVhbTEo 11 | MCYGA1UEAwwfUm9ja3kgTGludXggU2VjdXJlIEJvb3QgUm9vdCBDQTEmMCQGCSqG 12 | SIb3DQEJARYXc2VjdXJpdHlAcm9ja3lsaW51eC5vcmcwggEiMA0GCSqGSIb3DQEB 13 | AQUAA4IBDwAwggEKAoIBAQDjxGsPWwj921H84Ek56ahTmx7wV67aLAUzX28tpHae 14 | 22NAhnemIEs1xXXK3FxLpfjqGuHCR/rTwu/+UoOUFkKQsPITK6pzIuigQhs1AqgD 15 | 3xBJvaA9lDVORCV4CESZwCNYY8xWSKBAi8vroP38kyJG30M2aQHwHbF/YjGgUL5W 16 | 93g+LiKEb96KgcFJsZR++3zY90ogHjeekQXoX7+qTs1nycyeXReQf/10ZMSp4xsD 17 | A9I1oocq5OV0uMNWgnEMs+PMOKNRu1i5l742lZ5kMiXVpJSdATRez2g5nlZ0ctQi 18 | GzRGRBTCFBeIwxas6pr5hfEA+9kOoODP0T0sJNJZlKSlAgMBAAGjXTBbMB0GA1Ud 19 | DgQWBBRMLGvX1k7oFYHKuOmGZh9l4hZvxDAfBgNVHSMEGDAWgBRMLGvX1k7oFYHK 20 | uOmGZh9l4hZvxDAMBgNVHRMEBTADAQH/MAsGA1UdDwQEAwIBhjANBgkqhkiG9w0B 21 | AQsFAAOCAQEAT7JzkK0TB/sfZgVljSF+qUjTkvwuFASb/0h9dNaJEq/ru1GRQ5rf 22 | K/6MU5xKhpYKe9R4sre/xmFf2Qy2QNTxsh4UdBDaQj+llUsi5Oz7qWrJFMXrAvkE 23 | CPhvUe1IndbAFB4AQtXLLKWonjCMc4zJsNB1glK47vJLhxigCa6TEWHtYo2My55Z 24 | BbJBaGfWW/0XbvSHWbu91xQHyup7RRrx/vVrCHhQqymi1EE1lrp2iddTXkYBVU8M 25 | RCp+fXhJhSsIKbXM5fT0eB9kMuCd46KfDabTfyn4ibvifRllVD9C5alLLjGYmioZ 26 | Drftw/lKymO4Q8OTe7skUBoVSFTDmioHMw== 27 | -----END CERTIFICATE----- 28 | -------------------------------------------------------------------------------- /cert/solus/solus.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/solus/solus.cer -------------------------------------------------------------------------------- /cert/solus/solus.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIFJTCCAw2gAwIBAgIUBDvGPAxbLPKwnakur6bRnxtjgQgwDQYJKoZIhvcNAQEL 3 | BQAwIjEgMB4GA1UEAwwXU29sdXMgTWFjaGluZSBPd25lciBLZXkwHhcNMjIxMjEx 4 | MTEzNTE0WhcNMzIxMjA4MTEzNTE0WjAiMSAwHgYDVQQDDBdTb2x1cyBNYWNoaW5l 5 | IE93bmVyIEtleTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAJtwyOMd 6 | AFbdWnK13XzigJAvbHGcG+jM8GdX0doiuMhb1DowQ0gg5e4D8ncUZJqg4Tny/XXE 7 | 1KIveN23VCZVU0wfzoBrU2k1nf2s2hxoMeVV5KtFt1d3WzdRPm3kk95R54VQBgh9 8 | fbRQ5KeBADLhsLBVA6JKxTdpdqX3+QRerUML4qhAZF7LXwDBMv924J1rvOsRgsGD 9 | mzoq4P+PCimtZZymsWcV1hmFbNmdOVfTxKnWZ7N2BZPK+5UGKjec+xVAtOgds5d6 10 | sfJnp1oUYpoH/4Oj7vPjcNhhCmu0sNEjGcFUlmnMXtfxl/cygbdhsCLLuvBTcfIq 11 | Wj2gu+BBjIcP8ljWsIKLRj8EI1A0uV5H+GghUjk1dk3XKPWUKo0xpY+wpdNyxsY+ 12 | FYU9GNHTL7/tRF6xKZ1EJs4qBj00pyHJoKzFMoy/8LB+jtEggq5OM1Zl4r/Srnh2 13 | c9/EZ4SQZq8JuiceBTOn8h22ROSasE0o5VjK4GtXpJt7C852xJPLLQD2engrbMva 14 | UYPKEmrQlZjKIbgE68dcaUOa6YOz/QGIYA31qpd5/aD6UEiLdD3x422q0qYK2U4a 15 | 4Xbe+xjtAIdX1fX0tLI7gagO7XiS4y2sKcaw19IVj1h+/4vrPSayLjuQ+r9x5SXb 16 | NFxdVkodPoLKVllsg1NFhXk7RvWSQz3RBZgNAgMBAAGjUzBRMB0GA1UdDgQWBBQ2 17 | G/Jl2wm7y6A5FFPFKjwFc/8C8TAfBgNVHSMEGDAWgBQ2G/Jl2wm7y6A5FFPFKjwF 18 | c/8C8TAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4ICAQASpEM+dNyA 19 | eMGxd1oespBsfF0ifLtjAuamfC5YKH2a+dxXVbw4wfQSvqAsaYfcjMyxIW0nJQB6 20 | U7ZzX2OnNSMKocUc2NxgQw0RO9ncETRQTIm310dLXdCkDIN7diJfiGC2pIA6lsXU 21 | 2EzDNCmiYH6yvXyoBNCRYNsjgzgEjnmugC6B0SPNZqc29jV7DhrV6fKlksgprXr8 22 | YLoytEAoGOErO3LK8NKafbb3M15mElN22ezi1v1n4KyjLv9LnlADr6pMinpbSxCL 23 | +b7Tdrf63Q8yrTkO9seGgNOetXq5sUuaQ4vHeJxySp4T9AREHB47r9qxgnsi1PH4 24 | lKmddQmHljIxzyH3bcnX5bs/sjH44bHrEi9Psy7zERdcDCAzjNKWxEWpJoDFZpfX 25 | kZxQTHrvkkyHXXoEcEDPo37twfjY3Qezs4PMCsXRus+z+uUotacTfwKO/2U6sUpj 26 | ZvikTWN+WeIYZVg9zb2eo8ChYDK+CosMsVzmigq1UC6rCY/GV7uhFpzY7Gr0flIe 27 | kf2RA0efwYgvBKl/TdhNkDk1Hdhz0Awy57Eaw9XNbtfDnxJXEcAwyChOVBDF+yU8 28 | JWcbs1ChR1fhcKpNF2CKtn8IymHpTChy81wX5E3Y6+Tm10CcmgRwWJYYKgYDtzXr 29 | gsK8wNUzmbP+2FzI8A6n/1usxtN+s55TUg== 30 | -----END CERTIFICATE----- 31 | -------------------------------------------------------------------------------- /cert/tuxedo/TUXEDO_Computers_GmbH_Secure_Boot_Signing.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/cert/tuxedo/TUXEDO_Computers_GmbH_Secure_Boot_Signing.cer -------------------------------------------------------------------------------- /cert/tuxedo/TUXEDO_Computers_GmbH_Secure_Boot_Signing.crt: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIEuTCCA6GgAwIBAgIUbfr/jvTBg6duDAqaPz7lYrG1zy8wDQYJKoZIhvcNAQEL 3 | BQAwgcMxCzAJBgNVBAYTAkRFMQ8wDQYDVQQIDAZCYXllcm4xETAPBgNVBAcMCEF1 4 | Z3NidXJnMR4wHAYDVQQKDBVUVVhFRE8gQ29tcHV0ZXJzIEdtYkgxFDASBgNVBAsM 5 | C1NlY3VyZSBCb290MTIwMAYDVQQDDClUVVhFRE8gQ29tcHV0ZXJzIEdtYkggU2Vj 6 | dXJlIEJvb3QgU2lnbmluZzEmMCQGCSqGSIb3DQEJARYXdHV4QHR1eGVkb2NvbXB1 7 | dGVycy5jb20wIBcNMjExMTI5MTIwNjA1WhgPMjEyMTExMDUxMjA2MDVaMIHDMQsw 8 | CQYDVQQGEwJERTEPMA0GA1UECAwGQmF5ZXJuMREwDwYDVQQHDAhBdWdzYnVyZzEe 9 | MBwGA1UECgwVVFVYRURPIENvbXB1dGVycyBHbWJIMRQwEgYDVQQLDAtTZWN1cmUg 10 | Qm9vdDEyMDAGA1UEAwwpVFVYRURPIENvbXB1dGVycyBHbWJIIFNlY3VyZSBCb290 11 | IFNpZ25pbmcxJjAkBgkqhkiG9w0BCQEWF3R1eEB0dXhlZG9jb21wdXRlcnMuY29t 12 | MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnbpafHdiakrhjBTS8YPr 13 | w8BGwsoLgE4rQH17VKalFGhUabC8hfsnEiu2dySNjUWFTwN9pq1PAobj3Mmzcx9o 14 | wzCnzZuKPv4YoivBD0GhA7XyOd6RvITMlunilMvsj9WmjssV8dcZmeIuUPk4z/n0 15 | mw0U9J7dakWUko574k1ulPSBliHevmmDNyCvkdE21hRV3aRWM7qKc8SpDm4kFE+z 16 | f1x/31giHhwGMQmSLcN9fGCPjnhPi/3GQfEqOgrj4CwzoQJleXxDa8JnwrbafDme 17 | X4N/D+AYXPeJOs7+lkGmP+KcrnYJuRMx1XCIAjuP733HJVRJddYi0CSts99ta2x/ 18 | YwIDAQABo4GgMIGdMB0GA1UdDgQWBBRNu1/NOd9dBWDm+T46STnfaUe30TAfBgNV 19 | HSMEGDAWgBRNu1/NOd9dBWDm+T46STnfaUe30TAMBgNVHRMBAf8EAjAAMB8GA1Ud 20 | JQQYMBYGCCsGAQUFBwMDBgorBgEEAYI3CgMGMCwGCWCGSAGG+EIBDQQfFh1PcGVu 21 | U1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTANBgkqhkiG9w0BAQsFAAOCAQEAVCgF 22 | gIg8gZU++B+5UGiNLBuYKNz+1RKxXjnQ11tSAUuTfCCwbLdrdksLBmVYSk0CuteF 23 | ji8a/CuLGs/dpiZaPUDfTjIybwBeMqUQPmxi+XtUsXhDsDNrTw/bXOY/1m0+I6fG 24 | MKUWQSbxoTABxdMs36JLmE3C146aVYuOizBLXAPtwm4rSZu5+hcLpw7cvWTXu9S3 25 | I0tN5vs3BXV80PwXx68Nq+IP26z6CXeQ71voAT07kslPzkmthW5QYkKeSRydGuY2 26 | MOOavZztzfdc1NKXpalDpGMkQvGmDtih4SEu6hIq7IVNVsLyqzKxVhio0pfVEHAU 27 | CcU2zEP1+B5Up4aw5g== 28 | -----END CERTIFICATE----- 29 | -------------------------------------------------------------------------------- /config/4MLinux/4MLinux.cfg: -------------------------------------------------------------------------------- 1 | # 4MLinux 2 | # https://4mlinux.com 3 | 4 | iso_pattern1="4MLinux-*-64bit.iso" 5 | iso_pattern2="4MServer-*-64bit.iso" 6 | 7 | for isofile in $iso_dir/$iso_pattern1 $iso_dir/$iso_pattern2; do 8 | if [ -e "$isofile" ]; then 9 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 10 | 11 | submenu "$isoname ->" "$isofile" { 12 | iso_path="$2" 13 | LOOPBACK "$iso_path" 14 | isocfg="" 15 | bootoptions="" 16 | linux_path="(loop)/boot/bzImage" 17 | initrd_path="(loop)/boot/initrd.gz" 18 | 19 | menuentry "Start 4MLinux" { 20 | echo Loading kernel... 21 | linux $linux_path $isocfg $bootoptions 22 | echo Loading initrd... 23 | initrd $initrd_path 24 | } 25 | } 26 | fi 27 | done 28 | -------------------------------------------------------------------------------- /config/Acronis_True_Image/Acronis_True_Image.cfg: -------------------------------------------------------------------------------- 1 | # Acronis True Image 2 | # https://www.acronis.com 3 | 4 | iso_pattern="AcronisBootableMedia*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | 14 | menuentry "Acronis True Image (64-bit)" { 15 | echo Loading kernel... 16 | linux (loop)/dat10.dat force_modules=usbhid quiet 17 | echo Loading initrd... 18 | initrd (loop)/dat11.dat (loop)/dat12.dat 19 | } 20 | menuentry "Acronis System Report (64-bit)" { 21 | echo Loading kernel... 22 | linux (loop)/dat14.dat product=system_report force_modules=usbhid quiet 23 | echo Loading initrd... 24 | initrd (loop)/dat15.dat (loop)/dat16.dat 25 | } 26 | menuentry "Acronis True Image (32-bit)" { 27 | echo Loading kernel... 28 | linux (loop)/dat2.dat force_modules=usbhid quiet 29 | echo Loading initrd... 30 | initrd (loop)/dat3.dat (loop)/dat4.dat 31 | } 32 | menuentry "Acronis System Report (32-bit)" { 33 | echo Loading kernel... 34 | linux (loop)/dat6.dat product=system_report force_modules=usbhid quiet 35 | echo Loading initrd... 36 | initrd (loop)/dat7.dat (loop)/dat8.dat 37 | } 38 | } 39 | fi 40 | done 41 | -------------------------------------------------------------------------------- /config/AntivirusLiveCD/AntivirusLiveCD.cfg: -------------------------------------------------------------------------------- 1 | # Antivirus Live CD 2 | # https://antiviruslivecd.4mlinux.com 3 | # https://sourceforge.net/projects/antiviruslivecd 4 | 5 | iso_pattern="AntivirusLiveCD-*.iso" 6 | 7 | for isofile in $iso_dir/$iso_pattern; do 8 | if [ -e "$isofile" ]; then 9 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 10 | 11 | submenu "$isoname ->" "$isofile" { 12 | iso_path="$2" 13 | LOOPBACK "$iso_path" 14 | isocfg="" 15 | bootoptions="rw" 16 | linux_path="(loop)/boot/bzImage" 17 | initrd_path="(loop)/boot/initrd.gz" 18 | 19 | menuentry "Start AntivirusLiveCD" { 20 | echo Loading kernel... 21 | linux $linux_path $isocfg $bootoptions 22 | echo Loading initrd... 23 | initrd $initrd_path 24 | } 25 | } 26 | fi 27 | done 28 | -------------------------------------------------------------------------------- /config/Archman/Archman.cfg: -------------------------------------------------------------------------------- 1 | # Archman GNU/Linux 2 | # https://archman.org 3 | 4 | iso_pattern="Archman-*-x86_64.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | probe --label --set=cd_label (loop) 14 | isocfg="img_dev=$imgdevpath img_loop=$iso_path" 15 | bootoptions="archisobasedir=arch archisolabel=$cd_label cow_spacesize=10G earlymodules=loop modules-load=loop rd.modules-load=loop" 16 | linux_path="(loop)/arch/boot/x86_64/vmlinuz" 17 | initrd_path="(loop)/arch/boot/x86_64/archiso.img (loop)/arch/boot/amd_ucode.img (loop)/arch/boot/intel_ucode.img" 18 | 19 | menuentry "Archman GNU/Linux x86_64" { 20 | 21 | echo Loading kernel... 22 | linux $linux_path $isocfg $bootoptions i915.modeset=1 radeon.modeset=1 nvidia.blacklist=yes modprobe.blacklist=nvidia nouveau.modeset=1 nouveau 23 | echo Loading initrd... 24 | initrd $initrd_path 25 | } 26 | menuentry "Archman GNU/Linux x86_64 ( NVIDIA NONFREE NEW CARDS NON HYBRID )" { 27 | 28 | echo Loading kernel... 29 | linux $linux_path $isocfg $bootoptions nvidia nouveau.modeset=0 nouveau.blacklist=yes modprobe.blacklist=nouveau i915.modeset=1 radeon.modeset=1 30 | echo Loading initrd... 31 | initrd $initrd_path 32 | } 33 | } 34 | fi 35 | done 36 | -------------------------------------------------------------------------------- /config/CentOS/CentOS.cfg: -------------------------------------------------------------------------------- 1 | # For CentOS Linux and CentOS Stream - DVD and net-install (boot) 2 | 3 | iso_pattern="CentOS-*-x86_64-*.iso" 4 | 5 | for isofile in $iso_dir/$iso_pattern; do 6 | if [ -e "$isofile" ]; then 7 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 8 | 9 | submenu "$isoname ->" "$isofile" { 10 | iso_path="$2" 11 | LOOPBACK "$iso_path" 12 | probe --label --set=cd_label (loop) 13 | isocfg="iso-scan/filename=$iso_path" 14 | bootoptions="inst.stage2=hd:LABEL=$cd_label quiet" 15 | linux_path="(loop)/images/pxeboot/vmlinuz" 16 | initrd_path="(loop)/images/pxeboot/initrd.img" 17 | 18 | menuentry "Install CentOS Linux" { 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | menuentry "Test this media & install CentOS Linux" { 25 | echo Loading kernel... 26 | linux $linux_path $isocfg $bootoptions rd.live.check 27 | echo Loading initrd... 28 | initrd $initrd_path 29 | } 30 | menuentry "Install CentOS Linux in basic graphics mode" { 31 | echo Loading kernel... 32 | linux $linux_path $isocfg $bootoptions nomodeset 33 | echo Loading initrd... 34 | initrd $initrd_path 35 | } 36 | menuentry "Rescue a CentOS Linux system" { 37 | echo Loading kernel... 38 | linux $linux_path $isocfg $bootoptions rescue 39 | echo Loading initrd... 40 | initrd $initrd_path 41 | } 42 | } 43 | fi 44 | done 45 | -------------------------------------------------------------------------------- /config/KDE_neon/neon-user.cfg: -------------------------------------------------------------------------------- 1 | # KDE neon 2 | # https://neon.kde.org 3 | 4 | iso_pattern="neon-user-*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="iso-scan/filename=${iso_path}" 14 | bootoptions="boot=casper apparmor=0 quiet splash" 15 | linux_path="(loop)/casper/vmlinuz" 16 | initrd_path="(loop)/casper/initrd" 17 | 18 | menuentry "Start KDE neon" { 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions --- 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | menuentry "Start KDE neon (safe graphics)" { 25 | echo Loading kernel... 26 | linux $linux_path $isocfg $bootoptions nomodeset --- 27 | echo Loading initrd... 28 | initrd $initrd_path 29 | } 30 | menuentry "Start KDE neon (OEM mode - for manufacturers)" { 31 | echo Loading kernel... 32 | linux $linux_path $isocfg $bootoptions --- oem-config/enable=true 33 | echo Loading initrd... 34 | initrd $initrd_path 35 | } 36 | menuentry "Start KDE neon (OEM mode + safe graphics)" { 37 | echo Loading kernel... 38 | linux $linux_path $isocfg $bootoptions nomodeset --- oem-config/enable=true 39 | echo Loading initrd... 40 | initrd $initrd_path 41 | } 42 | } 43 | fi 44 | done 45 | -------------------------------------------------------------------------------- /config/KaOS/KaOS.cfg: -------------------------------------------------------------------------------- 1 | # KaOS 2 | # https://kaosx.us 3 | 4 | iso_pattern="KaOS-*-x86_64.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | probe --label --set=cd_label (loop) 14 | isocfg="img_dev=$imgdevpath img_loop=$iso_path" 15 | bootoptions="kdeosisobasedir=kdeos kdeosisolabel=$cd_label xdriver=no nouveau.modeset=1 i915.modeset=1 radeon.modeset=1" 16 | linux_path="(loop)/kdeos/boot/x86_64/kdeosiso" 17 | initrd_path="(loop)/kdeos/boot/x86_64/kdeosiso.img" 18 | 19 | menuentry "KaOS" { 20 | 21 | echo Loading kernel... 22 | linux $linux_path $isocfg $bootoptions nonfree=no 23 | echo Loading initrd... 24 | initrd $initrd_path 25 | } 26 | menuentry "KaOS (nonfree Nvidia)" { 27 | 28 | echo Loading kernel... 29 | linux $linux_path $isocfg $bootoptions nonfree=yes 30 | echo Loading initrd... 31 | initrd $initrd_path 32 | } 33 | } 34 | fi 35 | done 36 | -------------------------------------------------------------------------------- /config/Linuxfx/Linuxfx.cfg: -------------------------------------------------------------------------------- 1 | # For Linuxfx 2 | # https://www.windowsfx.org/ 3 | 4 | iso_pattern="linuxfx*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="iso-scan/filename=$iso_path" 14 | bootoptions="boot=casper quiet splash" 15 | linux_path="(loop)/casper/vmlinuz" 16 | initrd_path="(loop)/casper/initrd.lz" 17 | 18 | menuentry "Start Linuxfx" { 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | } 25 | fi 26 | done 27 | 28 | -------------------------------------------------------------------------------- /config/Mageia/Mageia_netinstall.cfg: -------------------------------------------------------------------------------- 1 | # For Mageia netinstall 2 | 3 | iso_pattern="Mageia-*-netinstall-*x86_64.iso" 4 | 5 | for isofile in $iso_dir/$iso_pattern; do 6 | if [ -e "$isofile" ]; then 7 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 8 | 9 | submenu "$isoname ->" "$isofile" { 10 | iso_path="$2" 11 | LOOPBACK "$iso_path" 12 | isocfg="" 13 | bootoptions="audit=0" 14 | linux_path="(loop)/isolinux/x86_64/vmlinuz" 15 | initrd_path="(loop)/isolinux/x86_64/all.rdz" 16 | 17 | menuentry "Start Mageia Install" { 18 | echo Loading kernel... 19 | linux $linux_path $isocfg $bootoptions quiet noiswmd 20 | echo Loading initrd... 21 | initrd $initrd_path 22 | } 23 | menuentry "Start Mageia Rescue" { 24 | echo Loading kernel... 25 | linux $linux_path $isocfg $bootoptions noiswmd rescue 26 | echo Loading initrd... 27 | initrd $initrd_path 28 | } 29 | } 30 | fi 31 | done 32 | -------------------------------------------------------------------------------- /config/antiX/antiX_base_full.cfg: -------------------------------------------------------------------------------- 1 | # antiX: base, full 2 | # https://antixlinux.com 3 | 4 | iso_pattern1="antiX-*_x64-base.iso" 5 | iso_pattern2="antiX-*_x64-full.iso" 6 | 7 | for isofile in $iso_dir/$iso_pattern1 $iso_dir/$iso_pattern2; do 8 | if [ -e "$isofile" ]; then 9 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 10 | 11 | submenu "$isoname ->" "$isofile" { 12 | iso_path="$2" 13 | LOOPBACK "$iso_path" 14 | isocfg="from=hd,usb fromiso=$iso_path" 15 | bootoptions="quiet splasht disable=lxF" 16 | linux_path="(loop)/antiX/vmlinuz" 17 | initrd_path="(loop)/antiX/initrd.gz" 18 | 19 | menuentry "Start antiX" { 20 | echo Loading kernel... 21 | linux $linux_path $isocfg $bootoptions 22 | echo Loading initrd... 23 | initrd $initrd_path 24 | } 25 | menuentry "antiX Customize Boot (text menus)" { 26 | echo Loading kernel... 27 | linux $linux_path $isocfg $bootoptions menus 28 | echo Loading initrd... 29 | initrd $initrd_path 30 | } 31 | menuentry "antiX Failsafe" { 32 | echo Loading kernel... 33 | linux $linux_path $isocfg $bootoptions failsafe 34 | echo Loading initrd... 35 | initrd $initrd_path 36 | } 37 | menuentry "antiX Create Bootchart" { 38 | echo Loading kernel... 39 | linux $linux_path $isocfg $bootoptions bootchart initcall_debug printk.time=y 40 | echo Loading initrd... 41 | initrd $initrd_path 42 | } 43 | } 44 | fi 45 | done 46 | -------------------------------------------------------------------------------- /config/antiX/antiX_core_net.cfg: -------------------------------------------------------------------------------- 1 | # antiX: core, net 2 | # https://antixlinux.com 3 | 4 | iso_pattern1="antiX-*_x64-core.iso" 5 | iso_pattern2="antiX-*_x64-net.iso" 6 | 7 | for isofile in $iso_dir/$iso_pattern1 $iso_dir/$iso_pattern2; do 8 | if [ -e "$isofile" ]; then 9 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 10 | 11 | submenu "$isoname ->" "$isofile" { 12 | iso_path="$2" 13 | LOOPBACK "$iso_path" 14 | isocfg="from=hd,usb fromiso=$iso_path" 15 | bootoptions="quiet splash=v disable=lx" 16 | linux_path="(loop)/antiX/vmlinuz" 17 | initrd_path="(loop)/antiX/initrd.gz" 18 | 19 | menuentry "Start antiX" { 20 | echo Loading kernel... 21 | linux $linux_path $isocfg $bootoptions 22 | echo Loading initrd... 23 | initrd $initrd_path 24 | } 25 | menuentry "antiX Customize Boot (text menus)" { 26 | echo Loading kernel... 27 | linux $linux_path $isocfg $bootoptions menus 28 | echo Loading initrd... 29 | initrd $initrd_path 30 | } 31 | menuentry "antiX Failsafe" { 32 | echo Loading kernel... 33 | linux $linux_path $isocfg $bootoptions failsafe 34 | echo Loading initrd... 35 | initrd $initrd_path 36 | } 37 | menuentry "antiX Create Bootchart" { 38 | echo Loading kernel... 39 | linux $linux_path $isocfg $bootoptions bootchart initcall_debug printk.time=y 40 | echo Loading initrd... 41 | initrd $initrd_path 42 | } 43 | } 44 | fi 45 | done 46 | -------------------------------------------------------------------------------- /config/archbang/archbang.cfg: -------------------------------------------------------------------------------- 1 | # ArchBang 2 | # https://archbang.org 3 | 4 | iso_pattern="archbang-*-x86_64.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | probe --label --set=cd_label (loop) 14 | isocfg="img_dev=$imgdevpath img_loop=$iso_path" 15 | bootoptions="archisobasedir=arch archisolabel=$cd_label cow_spacesize=2G" 16 | linux_path="(loop)/arch/boot/x86_64/vmlinuz-linux" 17 | initrd_path="(loop)/arch/boot/x86_64/initramfs-linux.img (loop)/arch/boot/amd-ucode.img (loop)/arch/boot/intel-ucode.img" 18 | 19 | menuentry "Boot ArchBang x86_64" { 20 | 21 | echo Loading kernel... 22 | linux $linux_path $isocfg $bootoptions 23 | echo Loading initrd... 24 | initrd $initrd_path 25 | } 26 | menuentry "Boot ArchBang x86_64 from Ram" { 27 | 28 | echo Loading kernel... 29 | linux $linux_path $isocfg $bootoptions copytoram=y 30 | echo Loading initrd... 31 | initrd $initrd_path 32 | } 33 | } 34 | fi 35 | done 36 | -------------------------------------------------------------------------------- /config/athenaos/athenaos.cfg: -------------------------------------------------------------------------------- 1 | # Athena OS 2 | # https://athenaos.org 3 | 4 | iso_pattern="athena-rolling-x86_64.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | probe --label --set=cd_label (loop) 14 | isocfg="img_dev=$imgdevpath img_loop=$iso_path" 15 | bootoptions="archisobasedir=arch archisolabel=ATHENA-OS cow_spacesize=4G copytoram=n driver=free nouveau.modeset=1 radeon.modeset=1 i915.modeset=1 nvme_load=yes" 16 | linux_path="(loop)/arch/boot/x86_64/vmlinuz-linux-lts" 17 | initrd_path="(loop)/arch/boot/intel-ucode.img (loop)/arch/boot/amd-ucode.img (loop)/arch/boot/x86_64/initramfs-linux-lts.img" 18 | 19 | menuentry "Athena OS install medium (open source)" { 20 | 21 | echo Loading kernel... 22 | linux $linux_path $isocfg $bootoptions 23 | echo Loading initrd... 24 | initrd $initrd_path 25 | } 26 | menuentry "Athena OS install medium with speakup screen reader (open source)" { 27 | 28 | echo Loading kernel... 29 | linux $linux_path $isocfg $bootoptions accessibility=on 30 | echo Loading initrd... 31 | initrd $initrd_path 32 | } 33 | } 34 | fi 35 | done 36 | -------------------------------------------------------------------------------- /config/bluestar/bluestar.cfg: -------------------------------------------------------------------------------- 1 | # Bluestar Linux 2 | # https://sourceforge.net/projects/bluestarlinux 3 | 4 | iso_pattern="bluestar-linux-*-x86_64.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | root=(loop) 14 | probe --label --set=cd_label (loop) 15 | isocfg="img_dev=$imgdevpath img_loop=$iso_path" 16 | bootoptions="archisobasedir=arch archisolabel=$cd_label ipv6.disable=1" 17 | linux_path="/arch/boot/x86_64/vmlinuz" 18 | initrd_path="/arch/boot/x86_64/archiso.img /arch/boot/intel_ucode.img" 19 | 20 | menuentry "Boot Bluestar Linux" { 21 | 22 | echo Loading kernel... 23 | linux $linux_path $isocfg $bootoptions disablehooks=v86d,915resolution,gma3600 modprobe.blacklist=uvesafb 24 | echo Loading initrd... 25 | initrd $initrd_path 26 | } 27 | 28 | menuentry "Boot Bluestar Linux (x86_64-gma3600 - LVDS-0)" { 29 | 30 | echo Loading kernel... 31 | linux $linux_path $isocfg $bootoptions i8042.reset i8042.nomux video=LVDS-1:d enable_mtrr_cleanup 32 | echo Loading initrd... 33 | initrd $initrd_path 34 | } 35 | 36 | menuentry "Boot Bluestar Linux (x86_64-gma3600 - LVDS-1)" { 37 | 38 | echo Loading kernel... 39 | linux $linux_path $isocfg $bootoptions i8042.reset i8042.nomux video=LVDS-0:d enable_mtrr_cleanup 40 | echo Loading initrd... 41 | initrd $initrd_path 42 | } 43 | } 44 | fi 45 | done 46 | -------------------------------------------------------------------------------- /config/bluestar/bluestar.txt: -------------------------------------------------------------------------------- 1 | # Bluestar Linux 2 | # https://sourceforge.net/projects/bluestarlinux 3 | 4 | 5 | # Tested images: Boot from exFAT: Full loopback support: Secure boot support: 6 | bluestar-linux-5.12.1-2021.05.07-x86_64.iso yes no no 7 | -------------------------------------------------------------------------------- /config/clonezilla/clonezilla.cfg: -------------------------------------------------------------------------------- 1 | # Clonezilla Live (Debian-based) 2 | # https://clonezilla.org 3 | 4 | iso_pattern="clonezilla-live-*.*.*-*-amd64.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="findiso=$iso_path" 14 | bootoptions='boot=live union=overlay username=user config components quiet loglevel=0 noswap edd=on \ 15 | enforcing=0 locales= keyboard-layouts= ocs_live_run="ocs-live-general" ocs_live_extra_param="" \ 16 | ocs_live_batch="no" net.ifnames=0 nosplash' 17 | linux_path="(loop)/live/vmlinuz" 18 | initrd_path="(loop)/live/initrd.img" 19 | 20 | menuentry "Clonezilla live (VGA 800x600)" { 21 | echo Loading kernel... 22 | linux $linux_path $isocfg $bootoptions nomodeset vga=788 i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 23 | echo Loading initrd... 24 | initrd $initrd_path 25 | } 26 | menuentry "Clonezilla live (VGA 800x600 & To RAM)" { 27 | echo Loading kernel... 28 | linux $linux_path $isocfg $bootoptions nomodeset vga=788 toram=live,syslinux,EFI,boot,.disk,utils i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 29 | echo Loading initrd... 30 | initrd $initrd_path 31 | } 32 | menuentry "Clonezilla live (VGA with large font & To RAM)" { 33 | echo Loading kernel... 34 | linux $linux_path $isocfg $bootoptions nomodeset nomodeset toram=live,syslinux,EFI,boot,.disk,utils live_console_font_size=16x32 35 | echo Loading initrd... 36 | initrd $initrd_path 37 | } 38 | menuentry "Clonezilla live (Speech synthesis)" { 39 | echo Loading kernel... 40 | linux $linux_path $isocfg $bootoptions nomodeset vga=788 i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 speakup.synth=soft --- 41 | echo Loading initrd... 42 | initrd $initrd_path 43 | } 44 | menuentry "Clonezilla live (VGA 1024x768)" { 45 | echo Loading kernel... 46 | linux $linux_path $isocfg $bootoptions nomodeset vga=791 i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 47 | echo Loading initrd... 48 | initrd $initrd_path 49 | } 50 | menuentry "Clonezilla live (VGA 640x480)" { 51 | echo Loading kernel... 52 | linux $linux_path $isocfg $bootoptions nomodeset vga=785 i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 53 | echo Loading initrd... 54 | initrd $initrd_path 55 | } 56 | menuentry "Clonezilla live (KMS)" { 57 | echo Loading kernel... 58 | linux $linux_path $isocfg $bootoptions vga=791 59 | echo Loading initrd... 60 | initrd $initrd_path 61 | } 62 | menuentry "Clonezilla live (KMS & To RAM)" { 63 | echo Loading kernel... 64 | linux $linux_path $isocfg $bootoptions vga=791 toram=live,syslinux,EFI,boot,.disk,utils 65 | echo Loading initrd... 66 | initrd $initrd_path 67 | } 68 | menuentry "Clonezilla live (KMS with large font & To RAM)" { 69 | echo Loading kernel... 70 | linux $linux_path $isocfg $bootoptions vga=791 toram=live,syslinux,EFI,boot,.disk,utils live_console_font_size=16x32 71 | echo Loading initrd... 72 | initrd $initrd_path 73 | } 74 | menuentry "Clonezilla live Safe graphic settings (vga=normal)" { 75 | echo Loading kernel... 76 | linux $linux_path $isocfg $bootoptions nomodeset vga=normal 77 | echo Loading initrd... 78 | initrd $initrd_path 79 | } 80 | menuentry "Clonezilla live (Failsafe mode)" { 81 | echo Loading kernel... 82 | linux $linux_path $isocfg $bootoptions nomodeset acpi=off irqpoll noapic noapm nodma nomce nolapic nosmp vga=normal 83 | echo Loading initrd... 84 | initrd $initrd_path 85 | } 86 | menuentry "Clonezilla Memtester (VGA 800x600 & To RAM)" { 87 | echo Loading kernel... 88 | linux $linux_path $isocfg $bootoptions nomodeset vga=788 toram=live,syslinux,EFI,boot,.disk,utils i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 init=/bin/bash -- -c "/sbin/ocs-memtester" 89 | echo Loading initrd... 90 | initrd $initrd_path 91 | } 92 | } 93 | fi 94 | done 95 | -------------------------------------------------------------------------------- /config/clonezilla/clonezilla_eoan.cfg: -------------------------------------------------------------------------------- 1 | # For Clonezilla Live (Ubuntu-based) 2 | 3 | iso_pattern="clonezilla-live-*-eoan-amd64.iso" 4 | 5 | for isofile in $iso_dir/$iso_pattern; do 6 | if [ -e "$isofile" ]; then 7 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 8 | 9 | submenu "$isoname ->" "$isofile" { 10 | iso_path="$2" 11 | LOOPBACK "$iso_path" 12 | isocfg="findiso=$iso_path" 13 | bootoptions='boot=live union=overlay username=user hostname=eoan config quiet components noswap edd=on \ 14 | enforcing=0 locales= keyboard-layouts= ocs_live_run="ocs-live-general" ocs_live_extra_param="" \ 15 | ocs_live_batch="no" ip= net.ifnames=0' 16 | linux_path="(loop)/live/vmlinuz" 17 | initrd_path="(loop)/live/initrd.img" 18 | 19 | menuentry "Clonezilla live (Default settings, VGA 800x600)" { 20 | echo Loading kernel... 21 | linux $linux_path $isocfg $bootoptions nomodeset vga=788 splash i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 22 | echo Loading initrd... 23 | initrd $initrd_path 24 | } 25 | menuentry "Clonezilla live (Default settings, KMS with large font)" { 26 | echo Loading kernel... 27 | linux $linux_path $isocfg $bootoptions vga=791 splash live_console_font_size=16x32 28 | echo Loading initrd... 29 | initrd $initrd_path 30 | } 31 | menuentry "Clonezilla live (Speech synthesis)" { 32 | echo Loading kernel... 33 | linux $linux_path $isocfg $bootoptions nomodeset vga=788 splash i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 speakup.synth=soft --- 34 | echo Loading initrd... 35 | initrd $initrd_path 36 | } 37 | menuentry "Clonezilla live (Default settings, VGA 1024x768)" { 38 | echo Loading kernel... 39 | linux $linux_path $isocfg $bootoptions nomodeset vga=791 splash i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 40 | echo Loading initrd... 41 | initrd $initrd_path 42 | } 43 | menuentry "Clonezilla live (Default settings, VGA 640x480)" { 44 | echo Loading kernel... 45 | linux $linux_path $isocfg $bootoptions nomodeset vga=785 splash i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 46 | echo Loading initrd... 47 | initrd $initrd_path 48 | } 49 | menuentry "Clonezilla live (Default settings, KMS)" { 50 | echo Loading kernel... 51 | linux $linux_path $isocfg $bootoptions vga=791 splash 52 | echo Loading initrd... 53 | initrd $initrd_path 54 | } 55 | menuentry "Clonezilla live (To RAM, boot media can be removed later)" { 56 | echo Loading kernel... 57 | linux $linux_path $isocfg $bootoptions nomodeset vga=788 toram=live,syslinux,EFI,boot,.disk,utils splash i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 58 | echo Loading initrd... 59 | initrd $initrd_path 60 | } 61 | menuentry "Clonezilla live Safe graphic settings (vga=normal)" { 62 | echo Loading kernel... 63 | linux $linux_path $isocfg $bootoptions nomodeset nomodeset vga=normal nosplash 64 | echo Loading initrd... 65 | initrd $initrd_path 66 | } 67 | menuentry "Clonezilla live (Failsafe mode)" { 68 | echo Loading kernel... 69 | linux $linux_path $isocfg $bootoptions nomodeset acpi=off irqpoll noapic noapm nodma nomce nolapic nosmp nomodeset vga=normal nosplash 70 | echo Loading initrd... 71 | initrd $initrd_path 72 | } 73 | } 74 | fi 75 | done 76 | -------------------------------------------------------------------------------- /config/clonezilla/clonezilla_focal.cfg: -------------------------------------------------------------------------------- 1 | # For Clonezilla Live (Ubuntu-based) 2 | 3 | iso_pattern="clonezilla-live-*-focal-amd64.iso" 4 | 5 | for isofile in $iso_dir/$iso_pattern; do 6 | if [ -e "$isofile" ]; then 7 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 8 | 9 | submenu "$isoname ->" "$isofile" { 10 | iso_path="$2" 11 | LOOPBACK "$iso_path" 12 | isocfg="findiso=$iso_path" 13 | bootoptions='boot=live union=overlay username=user hostname=focal config quiet components noswap edd=on \ 14 | enforcing=0 locales= keyboard-layouts= ocs_live_run="ocs-live-general" ocs_live_extra_param="" \ 15 | ocs_live_batch="no" ip= net.ifnames=0' 16 | linux_path="(loop)/live/vmlinuz" 17 | initrd_path="(loop)/live/initrd.img" 18 | 19 | menuentry "Clonezilla live (Default settings, VGA 800x600)" { 20 | echo Loading kernel... 21 | linux $linux_path $isocfg $bootoptions nomodeset vga=788 splash i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 22 | echo Loading initrd... 23 | initrd $initrd_path 24 | } 25 | menuentry "Clonezilla live (Default settings, KMS with large font & To RAM)" { 26 | echo Loading kernel... 27 | linux $linux_path $isocfg $bootoptions vga=791 toram=live,syslinux,EFI,boot,.disk,utils splash live_console_font_size=16x32 28 | echo Loading initrd... 29 | initrd $initrd_path 30 | } 31 | menuentry "Clonezilla live (Speech synthesis)" { 32 | echo Loading kernel... 33 | linux $linux_path $isocfg $bootoptions nomodeset vga=788 splash i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 speakup.synth=soft --- 34 | echo Loading initrd... 35 | initrd $initrd_path 36 | } 37 | menuentry "Clonezilla live (Default settings, VGA 1024x768)" { 38 | echo Loading kernel... 39 | linux $linux_path $isocfg $bootoptions nomodeset vga=791 splash i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 40 | echo Loading initrd... 41 | initrd $initrd_path 42 | } 43 | menuentry "Clonezilla live (Default settings, VGA 640x480)" { 44 | echo Loading kernel... 45 | linux $linux_path $isocfg $bootoptions nomodeset vga=785 splash i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 46 | echo Loading initrd... 47 | initrd $initrd_path 48 | } 49 | menuentry "Clonezilla live (Default settings, KMS)" { 50 | echo Loading kernel... 51 | linux $linux_path $isocfg $bootoptions vga=791 splash 52 | echo Loading initrd... 53 | initrd $initrd_path 54 | } 55 | menuentry "Clonezilla live (To RAM, boot media can be removed later)" { 56 | echo Loading kernel... 57 | linux $linux_path $isocfg $bootoptions nomodeset vga=788 toram=live,syslinux,EFI,boot,.disk,utils splash i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 58 | echo Loading initrd... 59 | initrd $initrd_path 60 | } 61 | menuentry "Clonezilla live Safe graphic settings (vga=normal)" { 62 | echo Loading kernel... 63 | linux $linux_path $isocfg $bootoptions nomodeset nomodeset vga=normal nosplash 64 | echo Loading initrd... 65 | initrd $initrd_path 66 | } 67 | menuentry "Clonezilla live (Failsafe mode)" { 68 | echo Loading kernel... 69 | linux $linux_path $isocfg $bootoptions nomodeset acpi=off irqpoll noapic noapm nodma nomce nolapic nosmp nomodeset vga=normal nosplash 70 | echo Loading initrd... 71 | initrd $initrd_path 72 | } 73 | } 74 | fi 75 | done 76 | -------------------------------------------------------------------------------- /config/config.version: -------------------------------------------------------------------------------- 1 | 0.11.5 2 | -------------------------------------------------------------------------------- /config/damnsmalllinux/damnsmalllinux.cfg: -------------------------------------------------------------------------------- 1 | # Damn Small Linux 2 | # https://damnsmalllinux.org 3 | 4 | iso_pattern="dsl-*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="from=hd,usb,mmc fromiso=$iso_path" 14 | bootoptions="quiet splasht disable=lxF" 15 | linux_path="(loop)/antiX/vmlinuz" 16 | initrd_path="(loop)/antiX/initrd.gz" 17 | 18 | menuentry "Start DSL" { 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | menuentry "Start DSL (Safe Video Mode)" { 25 | echo Loading kernel... 26 | linux $linux_path $isocfg $bootoptions xorg=safe 27 | echo Loading initrd... 28 | initrd $initrd_path 29 | } 30 | menuentry "Start DSL (Virtual Box Video)" { 31 | echo Loading kernel... 32 | linux $linux_path $isocfg $bootoptions video=1280x1024 33 | echo Loading initrd... 34 | initrd $initrd_path 35 | } 36 | menuentry "Start DSL (Failsafe Boot)" { 37 | echo Loading kernel... 38 | linux $linux_path $isocfg $bootoptions failsafe 39 | echo Loading initrd... 40 | initrd $initrd_path 41 | } 42 | } 43 | fi 44 | done 45 | -------------------------------------------------------------------------------- /config/debian/debian-mini.cfg: -------------------------------------------------------------------------------- 1 | # Debian amd64 mini 2 | # https://www.debian.org 3 | # 4 | # https://cdimage.debian.org/debian/dists/stable/main/installer-amd64/current/images/netboot/gtk/mini.iso 5 | # https://cdimage.debian.org/debian/dists/stable/main/installer-amd64/current/images/netboot/mini.iso 6 | # 7 | # Download and rename 'mini.iso' to 'debian-*-amd64-mini.iso' (* = version) 8 | # examples: debian-current-gtk-amd64-mini.iso, debian-current-amd64-mini.iso 9 | 10 | iso_pattern="debian-*-amd64-mini.iso" 11 | grub_configfile="grub.cfg" 12 | 13 | for isofile in $iso_dir/$iso_pattern; do 14 | if [ -e "$isofile" ]; then 15 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 16 | 17 | menuentry "$isoname ($grub_configfile) ->" "$isofile" "$grub_configfile" { 18 | iso_path="$2" 19 | export iso_path 20 | LOOPBACK "$iso_path" 21 | root=(loop) 22 | configfile /boot/grub/$3 23 | loopback --delete loop 24 | } 25 | fi 26 | done 27 | -------------------------------------------------------------------------------- /config/devuan/devuan-install.cfg: -------------------------------------------------------------------------------- 1 | # Devuan desktop, netinstall, server x64 2 | # https://www.devuan.org 3 | 4 | iso_pattern1="devuan_*_amd64_desktop.iso" 5 | iso_pattern2="devuan_*_amd64_netinstall.iso" 6 | iso_pattern3="devuan_*_amd64_server.iso" 7 | 8 | for isofile in $iso_dir/$iso_pattern1 $iso_dir/$iso_pattern2 $iso_dir/$iso_pattern3; do 9 | if [ -e "$isofile" ]; then 10 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 11 | 12 | submenu "$isoname ->" "$isofile" { 13 | iso_path="$2" 14 | LOOPBACK "$iso_path" 15 | isocfg="" 16 | bootoptions="" 17 | linux_path="(loop)/boot/isolinux/linux" 18 | initrd_path="(loop)/boot/isolinux/initrd.gz" 19 | set gfxpayload=800x600 20 | 21 | echo -e "\n\nWarning!!!\n\n" 22 | echo -e "You will need to mount the disc with the ISO image manually, as well as the ISO image itself into the /cdrom directory." 23 | echo -e "\nIn devuan installer main menu: after the information that the incorrect installation image was detected select: 'Execute a shell' and mount ISO, for example:" 24 | echo -e "\n\tmkdir /usb\n\tmount /dev/sda3 /usb\n\tmount /usb/ISOs/devuan.iso /cdrom" 25 | echo -e "\n\n'Esc' closes this message" 26 | sleep --interruptible 9999 27 | 28 | menuentry "Install" { 29 | echo Loading kernel... 30 | linux $linux_path $isocfg $bootoptions nomodeset --- quiet 31 | echo Loading initrd... 32 | initrd $initrd_path 33 | } 34 | menuentry "Expert install" { 35 | echo Loading kernel... 36 | linux $linux_path $isocfg $bootoptions priority=low nomodeset --- 37 | echo Loading initrd... 38 | initrd $initrd_path 39 | } 40 | menuentry "Rescue mode" { 41 | echo Loading kernel... 42 | linux $linux_path $isocfg $bootoptions nomodeset rescue/enable=true --- quiet 43 | echo Loading initrd... 44 | initrd $initrd_path 45 | } 46 | menuentry "Automated install" { 47 | echo Loading kernel... 48 | linux $linux_path $isocfg $bootoptions auto=true priority=critical nomodeset --- quiet 49 | echo Loading initrd... 50 | initrd $initrd_path 51 | } 52 | menuentry "Expert install with speech synthesis" { 53 | echo Loading kernel... 54 | linux $linux_path $isocfg $bootoptions priority=low nomodeset speakup.synth=soft --- 55 | echo Loading initrd... 56 | initrd $initrd_path 57 | } 58 | menuentry "Rescue mode with speech synthesis" { 59 | echo Loading kernel... 60 | linux $linux_path $isocfg $bootoptions nomodeset rescue/enable=true speakup.synth=soft --- quiet 61 | echo Loading initrd... 62 | initrd $initrd_path 63 | } 64 | menuentry "Automated install with speech synthesis" { 65 | echo Loading kernel... 66 | linux $linux_path $isocfg $bootoptions auto=true priority=critical nomodeset speakup.synth=soft --- quiet 67 | echo Loading initrd... 68 | initrd $initrd_path 69 | } 70 | menuentry "Install with speech synthesis" { 71 | echo Loading kernel... 72 | linux $linux_path $isocfg $bootoptions nomodeset speakup.synth=soft --- quiet 73 | echo Loading initrd... 74 | initrd $initrd_path 75 | } 76 | } 77 | fi 78 | done 79 | -------------------------------------------------------------------------------- /config/devuan/devuan_desktop-live.cfg: -------------------------------------------------------------------------------- 1 | # Devuan amd64 desktop live 2 | # https://www.devuan.org 3 | 4 | iso_pattern="devuan_*_amd64_desktop-live.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="findiso=$iso_path" 14 | bootoptions="boot=live username=devuan apparmor=0" 15 | linux_path="(loop)/live/vmlinuz" 16 | initrd_path="(loop)/live/initrd.img" 17 | 18 | menuentry "Devuan Live" { 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | menuentry "Devuan Live (other languages - press now 'e' to edit languages)" { 25 | echo Loading kernel... 26 | linux $linux_path $isocfg $bootoptions locales=it_IT.UTF-8 keyboard-layouts=it 27 | echo Loading initrd... 28 | initrd $initrd_path 29 | } 30 | menuentry "Devuan Live (load to RAM)" { 31 | echo Loading kernel... 32 | linux $linux_path $isocfg $bootoptions toram 33 | echo Loading initrd... 34 | initrd $initrd_path 35 | } 36 | menuentry "Devuan Live (failsafe)" { 37 | echo Loading kernel... 38 | linux $linux_path $isocfg $bootoptions noapic noapm nodma nomce nolapic nosmp vga=normal 39 | echo Loading initrd... 40 | initrd $initrd_path 41 | } 42 | } 43 | fi 44 | done 45 | -------------------------------------------------------------------------------- /config/devuan/devuan_minimal-live.cfg: -------------------------------------------------------------------------------- 1 | # Devuan amd64 minimal live 2 | # https://www.devuan.org 3 | 4 | iso_pattern="devuan_*_amd64_minimal-live.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="findiso=$iso_path" 14 | bootoptions="boot=live" 15 | linux_path="(loop)/live/vmlinuz" 16 | initrd_path="(loop)/live/initrd.img" 17 | 18 | menuentry "Devuan Live Minimal (std)" { 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions noautologin vga=auto 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | menuentry "Devuan Live Minimal (access)" { 25 | echo Loading kernel... 26 | linux $linux_path $isocfg $bootoptions noautologin 4 vga=normal 27 | echo Loading initrd... 28 | initrd $initrd_path 29 | } 30 | menuentry "Devuan Live Minimal (std-toram)" { 31 | echo Loading kernel... 32 | linux $linux_path $isocfg $bootoptions noautologin vga=auto toram 33 | echo Loading initrd... 34 | initrd $initrd_path 35 | } 36 | menuentry "Devuan Live Minimal (access-toram)" { 37 | echo Loading kernel... 38 | linux $linux_path $isocfg $bootoptions noautologin 4 vga=normal toram 39 | echo Loading initrd... 40 | initrd $initrd_path 41 | } 42 | menuentry "Devuan Live Minimal (no probe)" { 43 | echo Loading kernel... 44 | linux $linux_path $isocfg $bootoptions noapic noapm nodma nomce nolapic nosmp vga=auto 45 | echo Loading initrd... 46 | initrd $initrd_path 47 | } 48 | } 49 | fi 50 | done 51 | -------------------------------------------------------------------------------- /config/dr-parted-live/dr-parted-live.cfg: -------------------------------------------------------------------------------- 1 | # Dr.Parted Live 2 | # https://dr-parted-live.sourceforge.io 3 | 4 | iso_pattern="Dr.Parted-Live*-amd64.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="findiso=$iso_path" 14 | bootoptions="boot=live components" 15 | linux_path="(loop)/live/vmlinuz" 16 | initrd_path="(loop)/live/initrd.img" 17 | 18 | menuentry "Dr.Parted Live" { 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions splash 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | menuentry "Dr.Parted Live (fail-safe)" { 25 | echo Loading kernel... 26 | linux $linux_path $isocfg $bootoptions noeject memtest noapic noapm nodma nomce nolapic nomodeset nosmp nosplash vga=normal 27 | echo Loading initrd... 28 | initrd $initrd_path 29 | } 30 | } 31 | fi 32 | done 33 | -------------------------------------------------------------------------------- /config/endeavourOS/endeavourOS.cfg: -------------------------------------------------------------------------------- 1 | # EndeavourOS 2 | # https://endeavouros.com 3 | 4 | iso_pattern="EndeavourOS_*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | probe --label --set=cd_label (loop) 14 | isocfg="img_dev=$imgdevpath img_loop=$iso_path" 15 | bootoptions="archisobasedir=arch archisolabel=$cd_label cow_spacesize=10G copytoram=n nvme_load=yes" 16 | linux_path="(loop)/arch/boot/x86_64/vmlinuz-linux" 17 | initrd_path="(loop)/arch/boot/x86_64/initramfs-linux.img (loop)/arch/boot/amd-ucode.img (loop)/arch/boot/intel-ucode.img" 18 | 19 | menuentry "Boot EndeavourOS" { 20 | 21 | echo Loading kernel... 22 | linux $linux_path $isocfg $bootoptions module_blacklist=nvidia,nvidia_modeset,nvidia_uvm,nvidia_drm,pcspkr nouveau.modeset=1 i915.modeset=1 radeon.modeset=1 23 | echo Loading initrd... 24 | initrd $initrd_path 25 | } 26 | menuentry "Boot EndeavourOS NVIDIA (for latest NVIDIA cards only)" { 27 | 28 | echo Loading kernel... 29 | linux $linux_path $isocfg $bootoptions nvidia nvidia-drm.modeset=1 nouveau.modeset=0 i915.modeset=1 radeon.modeset=1 module_blacklist=pcspkr 30 | echo Loading initrd... 31 | initrd $initrd_path 32 | } 33 | menuentry "Boot EndeavourOS Fallback (nomodeset)" { 34 | 35 | echo Loading kernel... 36 | linux $linux_path $isocfg $bootoptions module_blacklist=nvidia,nvidia_modeset,nvidia_uvm,nvidia_drm nomodeset 37 | echo Loading initrd... 38 | initrd $initrd_path 39 | } 40 | } 41 | fi 42 | done 43 | -------------------------------------------------------------------------------- /config/euroLinux/EuroLinux-desktop.cfg: -------------------------------------------------------------------------------- 1 | # EuroLinux 2 | # https://euro-linux.com 3 | 4 | iso_pattern="ELD-*-x86_64-*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | probe --label --set=cd_label (loop) 14 | isocfg="iso-scan/filename=$iso_path" 15 | bootoptions="root=live:CDLABEL=$cd_label selinux=0 rd.live.image" 16 | linux_path="(loop)/images/pxeboot/vmlinuz" 17 | initrd_path="(loop)/images/pxeboot/initrd.img" 18 | 19 | menuentry "Start EuroLinux" { 20 | echo Loading kernel... 21 | linux $linux_path $isocfg $bootoptions quiet 22 | echo Loading initrd... 23 | initrd $initrd_path 24 | } 25 | menuentry "Test this media & start EuroLinux" { 26 | echo Loading kernel... 27 | linux $linux_path $isocfg $bootoptions rd.live.check quiet 28 | echo Loading initrd... 29 | initrd $initrd_path 30 | } 31 | } 32 | fi 33 | done 34 | -------------------------------------------------------------------------------- /config/euroLinux/EuroLinux.cfg: -------------------------------------------------------------------------------- 1 | # EuroLinux 2 | # https://euro-linux.com 3 | 4 | iso_pattern="EL-*-x86_64-*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | probe --label --set=cd_label (loop) 14 | isocfg="iso-scan/filename=$iso_path" 15 | bootoptions="inst.stage2=hd:LABEL=$cd_label" 16 | linux_path="(loop)/images/pxeboot/vmlinuz" 17 | initrd_path="(loop)/images/pxeboot/initrd.img" 18 | 19 | menuentry "Install EuroLinux" { 20 | echo Loading kernel... 21 | linux $linux_path $isocfg $bootoptions quiet 22 | echo Loading initrd... 23 | initrd $initrd_path 24 | } 25 | menuentry "Test this media & install EuroLinux" { 26 | echo Loading kernel... 27 | linux $linux_path $isocfg $bootoptions rd.live.check quiet 28 | echo Loading initrd... 29 | initrd $initrd_path 30 | } 31 | menuentry "Install EuroLinux in text mode" { 32 | echo Loading kernel... 33 | linux $linux_path $isocfg $bootoptions inst.text quiet 34 | echo Loading initrd... 35 | initrd $initrd_path 36 | } 37 | menuentry "Rescue a EuroLinux system" { 38 | echo Loading kernel... 39 | linux $linux_path $isocfg $bootoptions inst.rescue quiet 40 | echo Loading initrd... 41 | initrd $initrd_path 42 | } 43 | } 44 | fi 45 | done 46 | -------------------------------------------------------------------------------- /config/fedora/fedora-live.cfg: -------------------------------------------------------------------------------- 1 | # Fedora Live, Workstation, Fedora Spins (KDE, Xfce, ...) 2 | # https://fedoraproject.org 3 | 4 | iso_pattern="Fedora-*-Live-x86_64-*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | probe --label --set=cd_label (loop) 14 | isocfg="iso-scan/filename=$iso_path" 15 | bootoptions="root=live:CDLABEL=$cd_label rd.live.image quiet" 16 | linux_path="(loop)/images/pxeboot/vmlinuz" 17 | initrd_path="(loop)/images/pxeboot/initrd.img" 18 | 19 | menuentry "Start Fedora Live" { 20 | echo Loading kernel... 21 | linux $linux_path $isocfg $bootoptions rhgb 22 | echo Loading initrd... 23 | initrd $initrd_path 24 | } 25 | menuentry "Test this media & start Fedora Live" { 26 | echo Loading kernel... 27 | linux $linux_path $isocfg $bootoptions rd.live.check 28 | echo Loading initrd... 29 | initrd $initrd_path 30 | } 31 | menuentry "Start Fedora Live in basic graphics mode" { 32 | echo Loading kernel... 33 | linux $linux_path $isocfg $bootoptions nomodeset rhgb 34 | echo Loading initrd... 35 | initrd $initrd_path 36 | } 37 | } 38 | fi 39 | done 40 | -------------------------------------------------------------------------------- /config/fedora/fedora.cfg: -------------------------------------------------------------------------------- 1 | # Fedora Server (DVD and Netinstall), Fedora Everything (Netinstall), Fedira OSTree (IoT, Atomic Desktops) 2 | # https://fedoraproject.org 3 | 4 | iso_pattern1="Fedora-Server-dvd-x86_64-*.iso" 5 | iso_pattern2="Fedora-*-netinst-x86_64-*.iso" 6 | iso_pattern3="Fedora-*-ostree-x86_64-*.iso" 7 | 8 | for isofile in $iso_dir/$iso_pattern1 $iso_dir/$iso_pattern2 $iso_dir/$iso_pattern3; do 9 | if [ -e "$isofile" ]; then 10 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 11 | 12 | submenu "$isoname ->" "$isofile" { 13 | iso_path="$2" 14 | LOOPBACK "$iso_path" 15 | probe --label --set=cd_label (loop) 16 | isocfg="iso-scan/filename=$iso_path" 17 | bootoptions="inst.stage2=hd:LABEL=$cd_label quiet" 18 | linux_path="(loop)/images/pxeboot/vmlinuz" 19 | initrd_path="(loop)/images/pxeboot/initrd.img" 20 | 21 | menuentry "Install Fedora" { 22 | echo Loading kernel... 23 | linux $linux_path $isocfg $bootoptions 24 | echo Loading initrd... 25 | initrd $initrd_path 26 | } 27 | menuentry "Test this media & install Fedora" { 28 | echo Loading kernel... 29 | linux $linux_path $isocfg $bootoptions rd.live.check 30 | echo Loading initrd... 31 | initrd $initrd_path 32 | } 33 | menuentry "Install Fedora in basic graphics mode" { 34 | echo Loading kernel... 35 | linux $linux_path $isocfg $bootoptions nomodeset 36 | echo Loading initrd... 37 | initrd $initrd_path 38 | } 39 | menuentry "Rescue a Fedora system" { 40 | echo Loading kernel... 41 | linux $linux_path $isocfg $bootoptions inst.rescue 42 | echo Loading initrd... 43 | initrd $initrd_path 44 | } 45 | } 46 | fi 47 | done 48 | -------------------------------------------------------------------------------- /config/ferenos/ferenos.cfg: -------------------------------------------------------------------------------- 1 | # Feren OS 2 | # https://ferenos.weebly.com 3 | 4 | iso_pattern="Feren-OS-*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="iso-scan/filename=${iso_path}" 14 | bootoptions="file=/cdrom/preseed/ferenos.seed boot=casper" 15 | linux_path="(loop)/casper/vmlinuz" 16 | initrd_path="(loop)/casper/initrd.lz" 17 | 18 | menuentry "Feren OS" { 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions quiet splash --- 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | menuentry "Feren OS (nomodeset)" { 25 | echo Loading kernel... 26 | linux $linux_path $isocfg $bootoptions nomodeset --- 27 | echo Loading initrd... 28 | initrd $initrd_path 29 | } 30 | } 31 | fi 32 | done 33 | -------------------------------------------------------------------------------- /config/gentoo/gentoo-gui.cfg: -------------------------------------------------------------------------------- 1 | # Gentoo LiveGUI 2 | # https://www.gentoo.org 3 | 4 | iso_pattern="livegui-amd64-*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | probe --label --set=cd_label (loop) 14 | isocfg="iso-scan/filename=$iso_path" 15 | bootoptions="nodhcp secureconsole root=live:CDLABEL=$cd_label rd.live.dir=/ rd.live.squashimg=image.squashfs cdroot" 16 | linux_path="(loop)/boot/gentoo" 17 | initrd_path="(loop)/boot/gentoo.igz" 18 | 19 | menuentry "Boot LiveCD" { 20 | echo Loading kernel... 21 | linux $linux_path $isocfg $bootoptions 22 | echo Loading initrd... 23 | initrd $initrd_path 24 | } 25 | menuentry "Boot LiveCD (cached)" { 26 | echo Loading kernel... 27 | linux $linux_path $isocfg $bootoptions rd.live.ram=1 28 | echo Loading initrd... 29 | initrd $initrd_path 30 | } 31 | } 32 | fi 33 | done 34 | -------------------------------------------------------------------------------- /config/gentoo/gentoo.cfg: -------------------------------------------------------------------------------- 1 | # Gentoo Minimal Installation & Admin CD 2 | # https://www.gentoo.org 3 | 4 | iso_pattern1="admincd-amd64-*.iso" 5 | iso_pattern2="install-amd64-minimal-*.iso" 6 | 7 | for isofile in $iso_dir/$iso_pattern1 $iso_dir/$iso_pattern2; do 8 | if [ -e "$isofile" ]; then 9 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 10 | 11 | submenu "$isoname ->" "$isofile" { 12 | iso_path="$2" 13 | LOOPBACK "$iso_path" 14 | probe --label --set=cd_label (loop) 15 | isocfg="iso-scan/filename=$iso_path" 16 | bootoptions="dokeymap root=live:CDLABEL=$cd_label rd.live.dir=/ rd.live.squashimg=image.squashfs cdroot" 17 | linux_path="(loop)/boot/gentoo" 18 | initrd_path="(loop)/boot/gentoo.igz" 19 | 20 | menuentry "Boot LiveCD" { 21 | echo Loading kernel... 22 | linux $linux_path $isocfg $bootoptions 23 | echo Loading initrd... 24 | initrd $initrd_path 25 | } 26 | menuentry "Boot LiveCD (cached)" { 27 | echo Loading kernel... 28 | linux $linux_path $isocfg $bootoptions rd.live.ram=1 29 | echo Loading initrd... 30 | initrd $initrd_path 31 | } 32 | } 33 | fi 34 | done 35 | -------------------------------------------------------------------------------- /config/gparted/gparted-live.cfg: -------------------------------------------------------------------------------- 1 | # For GParted 2 | 3 | iso_pattern="gparted-live-*-amd64.iso" 4 | 5 | for isofile in $iso_dir/$iso_pattern; do 6 | if [ -e "$isofile" ]; then 7 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 8 | 9 | submenu "$isoname ->" "$isofile" { 10 | iso_path="$2" 11 | LOOPBACK "$iso_path" 12 | isocfg="findiso=$iso_path" 13 | bootoptions="boot=live union=overlay username=user config components quiet noswap" 14 | linux_path="(loop)/live/vmlinuz" 15 | initrd_path="(loop)/live/initrd.img" 16 | 17 | menuentry "GParted Live (Default settings)" { 18 | 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions ip= net.ifnames=0 nosplash 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | menuentry "GParted Live (Default settings, KMS with large font)" { 25 | 26 | echo Loading kernel... 27 | linux $linux_path $isocfg $bootoptions vga=791 ip= net.ifnames=0 nosplash live_console_font_size=16x32 28 | echo Loading initrd... 29 | initrd $initrd_path 30 | } 31 | menuentry "GParted Live (Default settings, KMS)" { 32 | 33 | echo Loading kernel... 34 | linux $linux_path $isocfg $bootoptions vga=791 ip= net.ifnames=0 nosplash 35 | echo Loading initrd... 36 | initrd $initrd_path 37 | } 38 | menuentry "GParted Live (To RAM, boot media can be removed later)" { 39 | 40 | echo Loading kernel... 41 | linux $linux_path $isocfg $bootoptions toram=filesystem.squashfs ip= net.ifnames=0 nosplash 42 | echo Loading initrd... 43 | initrd $initrd_path 44 | } 45 | menuentry "GParted Live Safe graphic settings (vga=normal)" { 46 | 47 | echo Loading kernel... 48 | linux $linux_path $isocfg $bootoptions ip= net.ifnames=0 nomodeset vga=normal nosplash 49 | echo Loading initrd... 50 | initrd $initrd_path 51 | } 52 | menuentry "GParted Live (Failsafe mode)" { 53 | 54 | echo Loading kernel... 55 | linux $linux_path $isocfg $bootoptions acpi=off irqpoll noapic noapm nodma nomce nolapic nosmp ip= net.ifnames=0 nomodeset vga=normal nosplash 56 | echo Loading initrd... 57 | initrd $initrd_path 58 | } 59 | } 60 | fi 61 | done 62 | -------------------------------------------------------------------------------- /config/grub.config: -------------------------------------------------------------------------------- 1 | # MultiOS-USB main config file 2 | # https://gitlab.com/MultiOS-USB 3 | # https://github.com/Mexit/MultiOS-USB 4 | 5 | # Load modules 6 | insmod fat 7 | insmod ntfs 8 | insmod udf 9 | insmod part_msdos 10 | insmod part_gpt 11 | insmod regexp 12 | insmod font 13 | 14 | if [ "${grub_platform}" == "efi" ]; then 15 | # Unload modules 16 | rmmod tpm 17 | 18 | wimboot_kernel=linux 19 | wimboot_initrd=initrd 20 | else 21 | wimboot_kernel=linux16 22 | wimboot_initrd=initrd16 23 | fi 24 | export wimboot_kernel wimboot_initrd 25 | 26 | regexp -s dev '^(.*),' "$root" 27 | probe --fs-uuid $root --set=rootuuid 28 | set imgdevpath="/dev/disk/by-uuid/$rootuuid" 29 | set pager=1 30 | set iso_dir="/ISOs" 31 | set theme_path="/MultiOS-USB/themes/MultiOS-USB/theme.txt" 32 | export dev rootuuid imgdevpath iso_dir 33 | 34 | if [ -e "$theme_path" ]; then 35 | set theme="$theme_path" 36 | export theme 37 | fi 38 | 39 | if loadfont unicode; then 40 | if [ "${grub_platform}" == "efi" ]; then 41 | set gfxmode=auto 42 | insmod efi_gop 43 | insmod efi_uga 44 | else 45 | insmod vbe 46 | insmod vga 47 | set gfxmode="1280x800;1280x720;1024x768;auto" 48 | set gfxpayload="1920x1080;1600x1200;1600x1050;1600x900;1440x900;1366x768;1280x1024;1280x800;1280x720;1024x768;auto" 49 | fi 50 | insmod all_video 51 | insmod gfxterm 52 | insmod gfxmenu 53 | insmod png 54 | export gfxmode gfxpayload 55 | terminal_output gfxterm 56 | fi 57 | 58 | function find_grub_cfg { 59 | submenu "Detect GRUB config file (grub.cfg) -->" { 60 | grubcfg_found=false 61 | insmod ext2 62 | insmod xfs 63 | insmod zfs 64 | insmod btrfs 65 | insmod jfs 66 | insmod reiserfs 67 | 68 | for grubcfg in (*,*)/boot/grub*/grub.cfg (lvm\/*)/boot/grub*/grub.cfg; do 69 | regexp --set=1:grubcfg_device '^\((.*)\)/' "${grubcfg}" 70 | if [ -f "${grubcfg}" ]; then 71 | grubcfg_found=true 72 | menuentry --class=linux "Boot Linux from: ${grubcfg}" "${grubcfg}" "${grubcfg_device}" { 73 | root="(${3})" 74 | configfile "${2}" 75 | } 76 | fi 77 | done 78 | 79 | if [ "${grubcfg_found}" != true ]; then 80 | menuentry "GRUB configuration files (grub.cfg) not found..." { false } 81 | fi 82 | } 83 | } 84 | 85 | function LOOPBACK { 86 | if [ -e (loop) ]; then 87 | loopback --delete loop 88 | fi 89 | loopback loop "$1" 90 | } 91 | 92 | submenu "Auto-detect ISOs/WIMs (Directory: $iso_dir) -->" { 93 | echo -n "Loading configuration files... " 94 | for cfgfile in /MultiOS-USB/config/*/*.cfg /MultiOS-USB/config_priv/*/*.cfg; do 95 | source "$cfgfile" 96 | done 97 | } 98 | 99 | if [ "${grub_platform}" == "pc" ]; then 100 | submenu "Tools -->" { 101 | submenu "Detect Windows Boot Manager -->" { 102 | bootmgr_found=false 103 | for bootmgr in (*,*)/bootmgr; do 104 | regexp --set=1:bootmgr_device '^\((.*)\)/' "${bootmgr}" 105 | if [ -f "${bootmgr}" ]; then 106 | bootmgr_found=true 107 | insmod ntldr 108 | menuentry --class=windows "Windows Boot Manager on (${bootmgr_device})" "${bootmgr_device}" { 109 | root="(${2})" 110 | ntldr "(${2})/bootmgr" 111 | } 112 | fi 113 | done 114 | 115 | if [ "${bootmgr_found}" != true ]; then 116 | menuentry "Windows Boot Manager not found." { false } 117 | fi 118 | } 119 | 120 | # Menu: boot from GRUB config file 121 | find_grub_cfg 122 | 123 | file="/MultiOS-USB/tools/mt86plus_*/memtest64.bin" 124 | if [ -f ${file} ]; then 125 | menuentry "Memtest86+" { 126 | linux16 ${file} 127 | } 128 | fi 129 | 130 | menuentry "Boot from 1st Hard Disk" { 131 | set root=(hd1) 132 | chainloader +1 133 | } 134 | menuentry "Boot from 2nd Hard Disk" { 135 | set root=(hd2) 136 | chainloader +1 137 | } 138 | menuentry "Boot from 3rd Hard Disk" { 139 | set root=(hd3) 140 | chainloader +1 141 | } 142 | } 143 | fi 144 | 145 | if [ "${grub_platform}" == "efi" ]; then 146 | 147 | submenu "EFI Tools -->" { 148 | menuentry "Reboot to UEFI Firmware Setup" { 149 | fwsetup 150 | } 151 | 152 | if [ -f ($dev,1)/efi/boot/mmx64.efi ]; then 153 | menuentry --class=efi "Add UEFI key or hash" { 154 | chainloader ($dev,1)/efi/boot/mmx64.efi 155 | } 156 | fi 157 | 158 | if [ -f /MultiOS-USB/tools/efitools-*/KeyTool.efi ]; then 159 | menuentry --class=efi "Manage UEFI keys and hashes" { 160 | chainloader /MultiOS-USB/tools/efitools-*/KeyTool.efi 161 | } 162 | fi 163 | 164 | submenu "Detect EFI bootloaders -->" { 165 | efi_found=false 166 | for efi in (*,*)/efi/*/*/*.efi (*,*)/efi/*/*.efi (*,*)/efi/*.efi; do 167 | regexp --set=1:efi_device '^\((.*)\)/' "${efi}" 168 | if [ -f "${efi}" ]; then 169 | efi_found=true 170 | if [ ${efi} == (${efi_device})/efi/Microsoft/Boot/bootmgfw.efi ]; then 171 | menuentry --class=efi "Windows Boot Manager on (${efi_device})" "${efi_device}" { 172 | root="(${2})" 173 | chainloader "(${2})/efi/Microsoft/Boot/bootmgfw.efi" 174 | } 175 | else 176 | menuentry --class=efi "${efi}" "${efi_device}" { 177 | root="(${2})" 178 | chainloader "${1}" 179 | } 180 | fi 181 | fi 182 | done 183 | 184 | if [ "${efi_found}" != true ]; then 185 | menuentry "No EFI files detected." { false } 186 | fi 187 | } 188 | 189 | # Menu: boot from GRUB config file 190 | find_grub_cfg 191 | 192 | file="/MultiOS-USB/tools/mt86plus_*/memtest64.efi" 193 | if [ -f ${file} ]; then 194 | menuentry --class=efi "Memtest86+ EFI" { 195 | chainloader ${file} 196 | } 197 | fi 198 | } 199 | 200 | submenu "Network bootable OS installers (DHCP) -->" { 201 | if net_bootp; then 202 | source /MultiOS-USB/config/grub_netboot/main.cfgnet 203 | else 204 | echo -e "\n\nIf your network card is not detected," 205 | echo -e "check the BIOS/UEFI settings to see" 206 | echo -e "if PXE/network card booting is enabled.\n" 207 | fi 208 | } 209 | fi 210 | 211 | submenu "GRUB2 options -->" { 212 | menuentry "Set terminal output to console" { 213 | terminal_output console 214 | } 215 | 216 | menuentry "Set terminal output to gfxterm" { 217 | terminal_output gfxterm 218 | } 219 | 220 | menuentry "List devices/partitions" { 221 | ls -l 222 | sleep --interruptible 9999 223 | } 224 | 225 | menuentry "Enable GRUB2's LVM support" { 226 | insmod lvm 227 | } 228 | 229 | menuentry "Enable GRUB2's RAID support" { 230 | insmod dm_nv 231 | insmod mdraid09_be 232 | insmod mdraid09 233 | insmod mdraid1x 234 | insmod raid5rec 235 | insmod raid6rec 236 | } 237 | 238 | menuentry "Enable GRUB2's PATA support (to work around BIOS bugs/limitations)" { 239 | insmod ata 240 | update_paths 241 | } 242 | 243 | menuentry "Enable GRUB2's USB support *experimental*" { 244 | insmod ohci 245 | insmod uhci 246 | insmod usbms 247 | update_paths 248 | } 249 | 250 | menuentry "Mount encrypted volumes (LUKS and geli)" { 251 | insmod luks 252 | insmod luks2 253 | insmod geli 254 | cryptomount -a 255 | } 256 | 257 | menuentry "Enable serial terminal" { 258 | serial 259 | terminal_input --append serial 260 | terminal_output --append serial 261 | } 262 | } 263 | 264 | menuentry "Reboot (r)" --hotkey=r --class reboot { reboot } 265 | 266 | menuentry "Power Off (p)" --hotkey=p --class shutdown { halt } 267 | -------------------------------------------------------------------------------- /config/grub_loopback/loopback.cfg: -------------------------------------------------------------------------------- 1 | # detect loopback.cfg compatible ISO's 2 | 3 | for isofile in $iso_dir/*.iso; do 4 | if [ -e "$isofile" ]; then 5 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 6 | 7 | LOOPBACK "$isofile" 8 | if [ -e "(loop)/boot/grub/loopback.cfg" ]; then 9 | grub=grub 10 | elif [ -e "(loop)/boot/grub2/loopback.cfg" ]; then 11 | grub=grub2 12 | else 13 | continue 14 | fi 15 | 16 | submenu "$isoname (loopback) ->" "$isofile" "$grub" { 17 | iso_path="$2" 18 | export iso_path 19 | LOOPBACK "$2" 20 | root=(loop) 21 | configfile /boot/$3/loopback.cfg 22 | } 23 | fi 24 | done 25 | -------------------------------------------------------------------------------- /config/grub_netboot/alpinelinux.cfgnet: -------------------------------------------------------------------------------- 1 | # Alpine Linux 2 | # https://alpinelinux.org 3 | 4 | menuentry "Alpine Linux (latest) netboot" { 5 | 6 | server=dl-cdn.alpinelinux.org 7 | os_url=alpine/latest-stable/releases/x86_64 8 | bootoptions="modules=loop,squashfs,sd-mod,usb-storage quiet" 9 | netoptions="alpine_repo=http://${server}/alpine/latest-stable/main modloop=http://${server}/${os_url}/netboot/modloop-lts" 10 | 11 | echo Downloading kernel... 12 | linux (http,${server})/${os_url}/netboot/vmlinuz-lts ${bootoptions} ${netoptions} 13 | echo Downloading initrd... 14 | initrd (http,${server})/${os_url}/netboot/initramfs-lts 15 | } 16 | -------------------------------------------------------------------------------- /config/grub_netboot/archlinux.cfgnet: -------------------------------------------------------------------------------- 1 | # For Arch Linux network installer 2 | # https://www.archlinux.org 3 | # https://wiki.archlinux.org/index.php/archboot 4 | 5 | submenu "Arch Linux (latest) netboot" { 6 | 7 | server=mirror.rackspace.com 8 | os_url=archlinux/iso/latest 9 | bootoptions="archiso_http_srv=https://${server}/${os_url}/ archisobasedir=arch verify=y ip=dhcp net.ifnames=0" 10 | 11 | echo Downloading kernel... 12 | linux (http,${server})/${os_url}/arch/boot/x86_64/vmlinuz-linux ${bootoptions} 13 | echo Downloading initrd... 14 | initrd (http,${server})/${os_url}/arch/boot/x86_64/initramfs-linux.img (http,${server})/${os_url}/arch/boot/amd-ucode.img (http,${server})/${os_url}/arch/boot/intel-ucode.img 15 | } 16 | 17 | submenu "Arch Linux Archboot (latest) netboot" { 18 | 19 | server=mirror.rackspace.com 20 | os_url=archlinux/iso/archboot/latest 21 | bootoptions="cgroup_disable=memory add_efi_memmap _X64_UEFI=1 rootfstype=ramfs" 22 | 23 | echo Downloading kernel... 24 | linux (http,${server})/${os_url}/boot/vmlinuz_x86_64 ${bootoptions} 25 | echo Downloading initrd... 26 | initrd (http,${server})/${os_url}/boot/initramfs_x86_64.img (http,${server})/${os_url}/boot/intel-ucode.img 27 | } 28 | -------------------------------------------------------------------------------- /config/grub_netboot/debian.cfgnet: -------------------------------------------------------------------------------- 1 | # Debian network installer 2 | # https://debian.org 3 | 4 | server=deb.debian.org 5 | export server 6 | 7 | function select_ui { 8 | 9 | submenu "Text-based user interface: ncurses -->" { 10 | 11 | linux_path="/${os_url}/netboot" 12 | export linux_path 13 | debian_menus 14 | 15 | } 16 | submenu "Graphical user interface: gtk -->" { 17 | 18 | linux_path="/${os_url}/netboot/gtk" 19 | export linux_path 20 | debian_menus 21 | } 22 | } 23 | 24 | function debian_menus { 25 | 26 | menuentry "Install" { 27 | 28 | echo Downloading kernel... 29 | linux (http,${server})${linux_path}/debian-installer/amd64/linux vga=788 --- quiet 30 | echo Downloading initrd... 31 | initrd (http,${server})${linux_path}/debian-installer/amd64/initrd.gz 32 | } 33 | menuentry "Expert install" { 34 | 35 | echo Downloading kernel... 36 | linux (http,${server})${linux_path}/debian-installer/amd64/linux priority=low vga=788 --- 37 | echo Downloading initrd... 38 | initrd (http,${server})${linux_path}/debian-installer/amd64/initrd.gz 39 | } 40 | menuentry "Rescue mode" { 41 | 42 | echo Downloading kernel... 43 | linux (http,${server})${linux_path}/debian-installer/amd64/linux vga=788 rescue/enable=true --- quiet 44 | echo Downloading initrd... 45 | initrd (http,${server})${linux_path}/debian-installer/amd64/initrd.gz 46 | } 47 | menuentry "Install with speech synthesis" { 48 | 49 | echo Downloading kernel... 50 | linux (http,${server})${linux_path}/debian-installer/amd64/linux vga=788 speakup.synth=soft --- quiet 51 | echo Downloading initrd... 52 | initrd (http,${server})${linux_path}/debian-installer/amd64/initrd.gz 53 | } 54 | } 55 | 56 | submenu "Debian 12.x (Bookworm) - Net Install -->" { 57 | 58 | os_url=debian/dists/bookworm/main/installer-amd64/current/images 59 | export os_url 60 | select_ui 61 | } 62 | 63 | submenu "Debian 11.x (Bullseye) - Net Install -->" { 64 | 65 | os_url=debian/dists/bullseye/main/installer-amd64/current/images 66 | export os_url 67 | select_ui 68 | } 69 | 70 | submenu "Debian 10.x (Buster) - Net Install -->" { 71 | 72 | os_url=debian/dists/buster/main/installer-amd64/current/images 73 | export os_url 74 | select_ui 75 | } 76 | 77 | submenu "Debian testing - Net Install -->" { 78 | 79 | os_url=debian/dists/testing/main/installer-amd64/current/images 80 | export os_url 81 | select_ui 82 | } 83 | 84 | submenu "Debian unstable (sid) - Net Install -->" { 85 | 86 | os_url=debian/dists/unstable/main/installer-amd64/current/images 87 | export os_url 88 | select_ui 89 | } 90 | -------------------------------------------------------------------------------- /config/grub_netboot/main.cfgnet: -------------------------------------------------------------------------------- 1 | submenu "Alpine Linux -->" { 2 | 3 | source /MultiOS-USB/config/grub_netboot/alpinelinux.cfgnet 4 | } 5 | 6 | submenu "Arch Linux -->" { 7 | 8 | source /MultiOS-USB/config/grub_netboot/archlinux.cfgnet 9 | } 10 | 11 | submenu "Debian -->" { 12 | 13 | source /MultiOS-USB/config/grub_netboot/debian.cfgnet 14 | } 15 | 16 | submenu "openSUSE -->" { 17 | 18 | source /MultiOS-USB/config/grub_netboot/openSUSE_Tumbleweed.cfgnet 19 | source /MultiOS-USB/config/grub_netboot/openSUSE_Leap_15.3.cfgnet 20 | source /MultiOS-USB/config/grub_netboot/openSUSE_Leap_15.2.cfgnet 21 | source /MultiOS-USB/config/grub_netboot/openSUSE_Leap_15.1.cfgnet 22 | } 23 | 24 | submenu "Slax -->" { 25 | 26 | source /MultiOS-USB/config/grub_netboot/slax11.2.0.cfgnet 27 | } 28 | 29 | submenu "Ubuntu -->" { 30 | 31 | source /MultiOS-USB/config/grub_netboot/ubuntu_20.04.cfgnet 32 | source /MultiOS-USB/config/grub_netboot/ubuntu_19.10.cfgnet 33 | source /MultiOS-USB/config/grub_netboot/ubuntu_18.04.cfgnet 34 | } 35 | -------------------------------------------------------------------------------- /config/grub_netboot/openSUSE_Leap_15.1.cfgnet: -------------------------------------------------------------------------------- 1 | # For openSUSE Leap 15.1 network installer 2 | 3 | submenu "openSUSE Leap 15.1 netboot -->" { 4 | 5 | server=download.opensuse.org 6 | os_url=distribution/leap/15.1/repo/oss 7 | bootoptions="netsetup=dhcp install=https://${server}/${os_url} splash=silent" 8 | linux_path="/${os_url}/boot/x86_64/loader/linux" 9 | initrd_path="/${os_url}/boot/x86_64/loader/initrd" 10 | 11 | menuentry "Installation" { 12 | echo Downloading kernel... 13 | linux (http,${server})${linux_path} ${bootoptions} 14 | echo Downloading initrd... 15 | initrd (http,${server})${initrd_path} 16 | } 17 | menuentry "Upgrade" { 18 | echo Downloading kernel... 19 | linux (http,${server})${linux_path} ${bootoptions} upgrade=1 20 | echo Downloading initrd... 21 | initrd (http,${server})${initrd_path} 22 | } 23 | menuentry "Rescue System" { 24 | echo Downloading kernel... 25 | linux (http,${server})${linux_path} ${bootoptions} rescue=1 26 | echo Downloading initrd... 27 | initrd (http,${server})${initrd_path} 28 | } 29 | menuentry "Boot Linux System" { 30 | echo Downloading kernel... 31 | linux (http,${server})${linux_path} ${bootoptions} systemboot=1 32 | echo Downloading initrd... 33 | initrd (http,${server})${initrd_path} 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /config/grub_netboot/openSUSE_Leap_15.2.cfgnet: -------------------------------------------------------------------------------- 1 | # For openSUSE Leap 15.2 network installer 2 | 3 | submenu "openSUSE Leap 15.2 netboot -->" { 4 | 5 | server=download.opensuse.org 6 | os_url=distribution/leap/15.2/repo/oss 7 | bootoptions="netsetup=dhcp install=https://${server}/${os_url} splash=silent" 8 | linux_path="/${os_url}/boot/x86_64/loader/linux" 9 | initrd_path="/${os_url}/boot/x86_64/loader/initrd" 10 | 11 | menuentry "Installation" { 12 | echo Downloading kernel... 13 | linux (http,${server})${linux_path} ${bootoptions} 14 | echo Downloading initrd... 15 | initrd (http,${server})${initrd_path} 16 | } 17 | menuentry "Upgrade" { 18 | echo Downloading kernel... 19 | linux (http,${server})${linux_path} ${bootoptions} upgrade=1 20 | echo Downloading initrd... 21 | initrd (http,${server})${initrd_path} 22 | } 23 | menuentry "Rescue System" { 24 | echo Downloading kernel... 25 | linux (http,${server})${linux_path} ${bootoptions} rescue=1 26 | echo Downloading initrd... 27 | initrd (http,${server})${initrd_path} 28 | } 29 | menuentry "Boot Linux System" { 30 | echo Downloading kernel... 31 | linux (http,${server})${linux_path} ${bootoptions} systemboot=1 32 | echo Downloading initrd... 33 | initrd (http,${server})${initrd_path} 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /config/grub_netboot/openSUSE_Leap_15.3.cfgnet: -------------------------------------------------------------------------------- 1 | # openSUSE Leap 15.3 network installer 2 | # https://www.opensuse.org 3 | 4 | submenu "openSUSE Leap 15.3 netboot -->" { 5 | 6 | server=download.opensuse.org 7 | os_url=distribution/leap/15.3/repo/oss 8 | bootoptions="netsetup=dhcp install=https://${server}/${os_url} splash=silent" 9 | linux_path="/${os_url}/boot/x86_64/loader/linux" 10 | initrd_path="/${os_url}/boot/x86_64/loader/initrd" 11 | 12 | menuentry "Installation" { 13 | echo Downloading kernel... 14 | linux (http,${server})${linux_path} ${bootoptions} 15 | echo Downloading initrd... 16 | initrd (http,${server})${initrd_path} 17 | } 18 | menuentry "Upgrade" { 19 | echo Downloading kernel... 20 | linux (http,${server})${linux_path} ${bootoptions} upgrade=1 21 | echo Downloading initrd... 22 | initrd (http,${server})${initrd_path} 23 | } 24 | menuentry "Rescue System" { 25 | echo Downloading kernel... 26 | linux (http,${server})${linux_path} ${bootoptions} rescue=1 27 | echo Downloading initrd... 28 | initrd (http,${server})${initrd_path} 29 | } 30 | menuentry "Boot Linux System" { 31 | echo Downloading kernel... 32 | linux (http,${server})${linux_path} ${bootoptions} systemboot=1 33 | echo Downloading initrd... 34 | initrd (http,${server})${initrd_path} 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /config/grub_netboot/openSUSE_Tumbleweed.cfgnet: -------------------------------------------------------------------------------- 1 | # For openSUSE Tumbleweed network installer 2 | 3 | submenu "openSUSE Tumbleweed netboot -->" { 4 | 5 | server=download.opensuse.org 6 | os_url=tumbleweed/repo/oss 7 | bootoptions="netsetup=dhcp install=https://${server}/${os_url} splash=silent" 8 | linux_path="/${os_url}/boot/x86_64/loader/linux" 9 | initrd_path="/${os_url}/boot/x86_64/loader/initrd" 10 | 11 | menuentry "Installation" { 12 | echo Downloading kernel... 13 | linux (http,${server})${linux_path} ${bootoptions} 14 | echo Downloading initrd... 15 | initrd (http,${server})${initrd_path} 16 | } 17 | menuentry "Upgrade" { 18 | echo Downloading kernel... 19 | linux (http,${server})${linux_path} ${bootoptions} upgrade=1 20 | echo Downloading initrd... 21 | initrd (http,${server})${initrd_path} 22 | } 23 | menuentry "Rescue System" { 24 | echo Downloading kernel... 25 | linux (http,${server})${linux_path} ${bootoptions} rescue=1 26 | echo Downloading initrd... 27 | initrd (http,${server})${initrd_path} 28 | } 29 | menuentry "Boot Linux System" { 30 | echo Downloading kernel... 31 | linux (http,${server})${linux_path} ${bootoptions} systemboot=1 32 | echo Downloading initrd... 33 | initrd (http,${server})${initrd_path} 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /config/grub_netboot/slax11.2.0.cfgnet: -------------------------------------------------------------------------------- 1 | # Slax network boot 2 | # https://www.slax.org 3 | 4 | menuentry "Slax 11.2.0 network boot" { 5 | 6 | server="ftp.linux.cz" 7 | path="pub/linux/slax/Slax-11.x" 8 | ver="11.2.0" 9 | 10 | linux_path="/${path}/ipxe/${ver}/64bit/vmlinuz" 11 | initrd_path="/${path}/ipxe/${ver}/64bit/initrfs.img" 12 | bootoptions="vga=normal load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 from=http://${server}/${path}/slax-64bit-${ver}.iso" 13 | 14 | echo Configuring network... 15 | net_bootp 16 | 17 | echo Downloading kernel... 18 | linux (http,${server})${linux_path} ${bootoptions} 19 | 20 | echo Downloading initrd... 21 | initrd (http,${server})${initrd_path} 22 | 23 | echo Booting... 24 | boot 25 | } 26 | -------------------------------------------------------------------------------- /config/grub_netboot/ubuntu_18.04.cfgnet: -------------------------------------------------------------------------------- 1 | # For Ubuntu 18.04 network installer 2 | 3 | submenu "Ubuntu 18.04 (Bionic) netboot -->" { 4 | 5 | server=pl.archive.ubuntu.com 6 | bootoptions="" 7 | linux_path="/ubuntu/dists/bionic-updates/main/installer-amd64/current/images/netboot/ubuntu-installer/amd64/linux" 8 | initrd_path="/ubuntu/dists/bionic-updates/main/installer-amd64/current/images/netboot/ubuntu-installer/amd64/initrd.gz" 9 | 10 | menuentry "Install" { 11 | echo Downloading kernel... 12 | linux (http,${server})${linux_path} ${bootoptions} --- quiet 13 | echo Downloading initrd... 14 | initrd (http,${server})${initrd_path} 15 | } 16 | menuentry "Command-line install" { 17 | echo Downloading kernel... 18 | linux (http,${server})${linux_path} ${bootoptions} tasks=standard pkgsel/language-pack-patterns= pkgsel/install-language-support=false --- quiet 19 | echo Downloading initrd... 20 | initrd (http,${server})${initrd_path} 21 | } 22 | menuentry "Expert install" { 23 | echo Downloading kernel... 24 | linux (http,${server})${linux_path} ${bootoptions} priority=low --- 25 | echo Downloading initrd... 26 | initrd (http,${server})${initrd_path} 27 | } 28 | menuentry "Command-line expert install" { 29 | echo Downloading kernel... 30 | linux (http,${server})${linux_path} ${bootoptions} tasks=standard pkgsel/language-pack-patterns= pkgsel/install-language-support=false priority=low --- 31 | echo Downloading initrd... 32 | initrd (http,${server})${initrd_path} 33 | } 34 | menuentry "Rescue mode" { 35 | echo Downloading kernel... 36 | linux (http,${server})${linux_path} ${bootoptions} rescue/enable=true --- quiet 37 | echo Downloading initrd... 38 | initrd (http,${server})${initrd_path} 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /config/grub_netboot/ubuntu_19.10.cfgnet: -------------------------------------------------------------------------------- 1 | # For Ubuntu 19.10 network installer 2 | 3 | submenu "Ubuntu 19.10 (Eoan) netboot -->" { 4 | 5 | server=pl.archive.ubuntu.com 6 | bootoptions="" 7 | linux_path="/ubuntu/dists/eoan/main/installer-amd64/current/images/netboot/ubuntu-installer/amd64/linux" 8 | initrd_path="/ubuntu/dists/eoan/main/installer-amd64/current/images/netboot/ubuntu-installer/amd64/initrd.gz" 9 | 10 | menuentry "Install" { 11 | echo Downloading kernel... 12 | linux (http,${server})${linux_path} ${bootoptions} --- quiet 13 | echo Downloading initrd... 14 | initrd (http,${server})${initrd_path} 15 | } 16 | menuentry "Command-line install" { 17 | echo Downloading kernel... 18 | linux (http,${server})${linux_path} ${bootoptions} tasks=standard pkgsel/language-pack-patterns= pkgsel/install-language-support=false --- quiet 19 | echo Downloading initrd... 20 | initrd (http,${server})${initrd_path} 21 | } 22 | menuentry "Expert install" { 23 | echo Downloading kernel... 24 | linux (http,${server})${linux_path} ${bootoptions} priority=low --- 25 | echo Downloading initrd... 26 | initrd (http,${server})${initrd_path} 27 | } 28 | menuentry "Command-line expert install" { 29 | echo Downloading kernel... 30 | linux (http,${server})${linux_path} ${bootoptions} tasks=standard pkgsel/language-pack-patterns= pkgsel/install-language-support=false priority=low --- 31 | echo Downloading initrd... 32 | initrd (http,${server})${initrd_path} 33 | } 34 | menuentry "Rescue mode" { 35 | echo Downloading kernel... 36 | linux (http,${server})${linux_path} ${bootoptions} rescue/enable=true --- quiet 37 | echo Downloading initrd... 38 | initrd (http,${server})${initrd_path} 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /config/grub_netboot/ubuntu_20.04.cfgnet: -------------------------------------------------------------------------------- 1 | # For Ubuntu 20.04 network installer 2 | 3 | submenu "Ubuntu 20.04 (Focal) netboot -->" { 4 | 5 | server=pl.archive.ubuntu.com 6 | bootoptions="" 7 | linux_path="/ubuntu/dists/focal/main/installer-amd64/current/legacy-images/netboot/ubuntu-installer/amd64/linux" 8 | initrd_path="/ubuntu/dists/focal/main/installer-amd64/current/legacy-images/netboot/ubuntu-installer/amd64/initrd.gz" 9 | 10 | menuentry "Install" { 11 | echo Downloading kernel... 12 | linux (http,${server})${linux_path} ${bootoptions} --- quiet 13 | echo Downloading initrd... 14 | initrd (http,${server})${initrd_path} 15 | } 16 | menuentry "Command-line install" { 17 | echo Downloading kernel... 18 | linux (http,${server})${linux_path} ${bootoptions} tasks=standard pkgsel/language-pack-patterns= pkgsel/install-language-support=false --- quiet 19 | echo Downloading initrd... 20 | initrd (http,${server})${initrd_path} 21 | } 22 | menuentry "Expert install" { 23 | echo Downloading kernel... 24 | linux (http,${server})${linux_path} ${bootoptions} priority=low --- 25 | echo Downloading initrd... 26 | initrd (http,${server})${initrd_path} 27 | } 28 | menuentry "Command-line expert install" { 29 | echo Downloading kernel... 30 | linux (http,${server})${linux_path} ${bootoptions} tasks=standard pkgsel/language-pack-patterns= pkgsel/install-language-support=false priority=low --- 31 | echo Downloading initrd... 32 | initrd (http,${server})${initrd_path} 33 | } 34 | menuentry "Rescue mode" { 35 | echo Downloading kernel... 36 | linux (http,${server})${linux_path} ${bootoptions} rescue/enable=true --- quiet 37 | echo Downloading initrd... 38 | initrd (http,${server})${initrd_path} 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /config/hbcd/Winpeshl.ini: -------------------------------------------------------------------------------- 1 | [LaunchApps] 2 | mountiso.exe 3 | -------------------------------------------------------------------------------- /config/hbcd/hbcd_wimboot.cfg: -------------------------------------------------------------------------------- 1 | # Hiren's BootCD PE 2 | # https://www.hirensbootcd.org 3 | 4 | iso_pattern="HBCD_PE_x64*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | if [ "${grub_platform}" == "efi" ]; then 11 | menuentry "$isoname" "$isofile" --class=windows { 12 | terminal_output console 13 | echo Loading boot.wim... This may take some time 14 | iso_path="$2" 15 | save_env iso_path 16 | LOOPBACK "$iso_path" 17 | linux /MultiOS-USB/tools/wimboot-*/wimboot.x86_64 quiet 18 | initrd newc:boot.wim:(loop)/sources/boot.wim \ 19 | newc:mountIso.exe:/MultiOS-USB/tools/mountiso/mountiso64.exe \ 20 | newc:grubenv:($dev,1)/grub/grubenv \ 21 | newc:Winpeshl.ini:/MultiOS-USB/config/hbcd/Winpeshl.ini 22 | echo Loading boot.wim complete, booting... 23 | } 24 | fi 25 | fi 26 | done 27 | -------------------------------------------------------------------------------- /config/kaspersky/krd.cfg: -------------------------------------------------------------------------------- 1 | # Kaspersky Rescue Disk 2 | # https://rescuedisk.s.kaspersky-labs.com/updatable/2018/krd.iso 3 | # Kaspersky requires a non-standard directory with an ISO image. 4 | # Save the "krd.iso" image in the "data" folder on the MultiOS-USB drive. 5 | 6 | iso_pattern="krd.iso" 7 | 8 | for isofile in /data/$iso_pattern; do 9 | if [ -e "$isofile" ]; then 10 | regexp --set=isoname "/data/(.*)" "$isofile" 11 | 12 | submenu "Kaspersky Rescue Disk ($isoname) ->" "$isofile" "$isoname" { 13 | iso_path="$2" 14 | LOOPBACK "$iso_path" 15 | isocfg="isoloop=$3" 16 | bootoptions="net.ifnames=0 lang=en" 17 | linux_path="(loop)/boot/grub/k-x86_64" 18 | initrd_path="(loop)/boot/grub/initrd.xz" 19 | 20 | menuentry "Kaspersky Rescue Disk. Graphic mode" { 21 | echo Loading kernel... 22 | linux $linux_path $isocfg $bootoptions dostartx 23 | echo Loading initrd... 24 | initrd $initrd_path 25 | } 26 | menuentry "Kaspersky Rescue Disk. Limited graphic mode" { 27 | echo Loading kernel... 28 | linux $linux_path $isocfg $bootoptions nomodeset xforcevesa dostartx 29 | echo Loading initrd... 30 | initrd $initrd_path 31 | } 32 | menuentry "Hardware Info" { 33 | echo Loading kernel... 34 | linux $linux_path $isocfg $bootoptions docache loadsrm=000-core.srm,003-kl.srm nox hwinfo docheck 35 | echo Loading initrd... 36 | initrd $initrd_path 37 | } 38 | } 39 | fi 40 | done 41 | -------------------------------------------------------------------------------- /config/lwRescue/lwRescue.cfg: -------------------------------------------------------------------------------- 1 | # For LinuxWelt Rettungs-DVD (64 Bit) 2 | 3 | iso_pattern="lwRescue*.iso" 4 | 5 | for isofile in $iso_dir/$iso_pattern; do 6 | if [ -e "$isofile" ]; then 7 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 8 | 9 | submenu "$isoname ->" "$isofile" { 10 | iso_path="$2" 11 | LOOPBACK "$iso_path" 12 | isocfg="isoloop=$iso_path scandelay=1" 13 | bootoptions="setkmap=de" 14 | linux_path="(loop)/isolinux/rescue64" 15 | initrd_path="(loop)/isolinux/initram.igz" 16 | 17 | menuentry "Rettungs-DVD (64bit, Standard-Boot-Optionen)" { 18 | echo Loading kernel... 19 | linux $linux_path $isocfg $bootoptions dostartx 20 | echo Loading initrd... 21 | initrd $initrd_path 22 | } 23 | menuentry "Rettungs-DVD (64bit, Cache im RAM)" { 24 | echo Loading kernel... 25 | linux $linux_path $isocfg $bootoptions docache 26 | echo Loading initrd... 27 | initrd $initrd_path 28 | } 29 | menuentry "Rettungs-DVD (64bit, Kernel-Mode-Settings abschalten)" { 30 | echo Loading kernel... 31 | linux $linux_path $isocfg $bootoptions nomodeset 32 | echo Loading initrd... 33 | initrd $initrd_path 34 | } 35 | menuentry "Rettungs-DVD (64bit, nur Console)" { 36 | echo Loading kernel... 37 | linux $linux_path $isocfg $bootoptions 38 | echo Loading initrd... 39 | initrd $initrd_path 40 | } 41 | menuentry "Installiertes Linux von der Festplatte starten (64-Bit-Kernel)" { 42 | echo Loading kernel... 43 | linux $linux_path $isocfg $bootoptions root=auto 44 | echo Loading initrd... 45 | initrd $initrd_path 46 | } 47 | } 48 | fi 49 | done 50 | -------------------------------------------------------------------------------- /config/mx/MX-19.cfg: -------------------------------------------------------------------------------- 1 | # MX Linux 19 2 | # https://mxlinux.org 3 | 4 | iso_pattern="MX-19.*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="from=hd,usb fromiso=$iso_path" 14 | bootoptions="quiet splasht nosplash" 15 | linux_path="(loop)/antiX/vmlinuz" 16 | initrd_path="(loop)/antiX/initrd.gz" 17 | 18 | menuentry "Start MX" { 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | menuentry "MX Customize Boot (text menus)" { 25 | echo Loading kernel... 26 | linux $linux_path $isocfg $bootoptions menus 27 | echo Loading initrd... 28 | initrd $initrd_path 29 | } 30 | menuentry "MX Failsafe" { 31 | echo Loading kernel... 32 | linux $linux_path $isocfg $bootoptions nomodeset failsafe 33 | echo Loading initrd... 34 | initrd $initrd_path 35 | } 36 | menuentry "Memory Test (64-bit UEFI)" { 37 | chainloader (loop)/boot/uefi-mt/mtest-64.efi 38 | } 39 | } 40 | fi 41 | done 42 | -------------------------------------------------------------------------------- /config/openSUSE/openSUSE-DVD.cfg: -------------------------------------------------------------------------------- 1 | # openSUSE Tumbleweed DVD, openSUSE Leap DVD 2 | # https://www.opensuse.org 3 | 4 | iso_pattern="openSUSE-*-DVD-*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="install=hd:$iso_path" 14 | bootoptions="splash=silent" 15 | linux_path="(loop)/boot/x86_64/loader/linux" 16 | initrd_path="(loop)/boot/x86_64/loader/initrd" 17 | 18 | menuentry "Installation - openSUSE" { 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | menuentry "Upgrade - openSUSE" { 25 | echo Loading kernel... 26 | linux $linux_path $isocfg $bootoptions upgrade=1 27 | echo Loading initrd... 28 | initrd $initrd_path 29 | } 30 | menuentry "Rescue System - openSUSE" { 31 | echo Loading kernel... 32 | linux $linux_path $isocfg $bootoptions rescue=1 33 | echo Loading initrd... 34 | initrd $initrd_path 35 | } 36 | menuentry "Boot Linux System - openSUSE" { 37 | echo Loading kernel... 38 | linux $linux_path $isocfg $bootoptions systemboot=1 39 | echo Loading initrd... 40 | initrd $initrd_path 41 | } 42 | menuentry "Check Installation Media - openSUSE" { 43 | echo Loading kernel... 44 | linux $linux_path $isocfg $bootoptions mediacheck=1 45 | echo Loading initrd... 46 | initrd $initrd_path 47 | } 48 | } 49 | fi 50 | done 51 | -------------------------------------------------------------------------------- /config/openSUSE/openSUSE-NET.cfg: -------------------------------------------------------------------------------- 1 | # openSUSE Tumbleweed NET, openSUSE Leap NET 2 | # https://www.opensuse.org 3 | 4 | iso_pattern="openSUSE-*-NET-*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="" 14 | bootoptions="splash=silent" 15 | linux_path="(loop)/boot/x86_64/loader/linux" 16 | initrd_path="(loop)/boot/x86_64/loader/initrd" 17 | 18 | menuentry "Installation - openSUSE" { 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | menuentry "Upgrade - openSUSE" { 25 | echo Loading kernel... 26 | linux $linux_path $isocfg $bootoptions upgrade=1 27 | echo Loading initrd... 28 | initrd $initrd_path 29 | } 30 | menuentry "Rescue System - openSUSE" { 31 | echo Loading kernel... 32 | linux $linux_path $isocfg $bootoptions rescue=1 33 | echo Loading initrd... 34 | initrd $initrd_path 35 | } 36 | menuentry "Boot Linux System - openSUSE" { 37 | echo Loading kernel... 38 | linux $linux_path $isocfg $bootoptions systemboot=1 39 | echo Loading initrd... 40 | initrd $initrd_path 41 | } 42 | menuentry "Check Installation Media - openSUSE" { 43 | echo Loading kernel... 44 | linux $linux_path $isocfg $bootoptions mediacheck=1 45 | echo Loading initrd... 46 | initrd $initrd_path 47 | } 48 | } 49 | fi 50 | done 51 | -------------------------------------------------------------------------------- /config/oracleLinux/OracleLinux.cfg: -------------------------------------------------------------------------------- 1 | # Oracle Linux 2 | # https://www.oracle.com/linux 3 | 4 | iso_pattern="OracleLinux-*-x86_64-*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | probe --label --set=cd_label (loop) 14 | isocfg="iso-scan/filename=$iso_path" 15 | bootoptions="inst.stage2=hd:LABEL=$cd_label" 16 | linux_path="(loop)/images/pxeboot/vmlinuz" 17 | initrd_path="(loop)/images/pxeboot/initrd.img" 18 | 19 | menuentry "Install Oracle Linux" { 20 | echo Loading kernel... 21 | linux $linux_path $isocfg $bootoptions quiet 22 | echo Loading initrd... 23 | initrd $initrd_path 24 | } 25 | menuentry "Test this media & install Oracle Linux" { 26 | echo Loading kernel... 27 | linux $linux_path $isocfg $bootoptions rd.live.check quiet 28 | echo Loading initrd... 29 | initrd $initrd_path 30 | } 31 | menuentry "Install Oracle Linux in text mode" { 32 | echo Loading kernel... 33 | linux $linux_path $isocfg $bootoptions inst.text quiet 34 | echo Loading initrd... 35 | initrd $initrd_path 36 | } 37 | menuentry "Rescue a Oracle Linux system" { 38 | echo Loading kernel... 39 | linux $linux_path $isocfg $bootoptions inst.rescue quiet 40 | echo Loading initrd... 41 | initrd $initrd_path 42 | } 43 | } 44 | fi 45 | done 46 | -------------------------------------------------------------------------------- /config/pclinuxos/pclinuxos.cfg: -------------------------------------------------------------------------------- 1 | # For PCLinuxOS 2 | # https://www.pclinuxos.com 3 | 4 | iso_pattern="pclinuxos64-*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="bootfromiso=$iso_path root=(loop)" 14 | bootoptions="livecd=livecd vga=788 keyb=us" 15 | linux_path="(loop)/isolinux/vmlinuz" 16 | initrd_path="(loop)/isolinux/initrd.gz" 17 | 18 | menuentry "Start PCLinuxOS Live" { 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions quiet splash=silent 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | menuentry "Start PCLinuxOS Live (No Boot Splash)" { 25 | echo Loading kernel... 26 | linux $linux_path $isocfg $bootoptions quiet splash=verbose 27 | echo Loading initrd... 28 | initrd $initrd_path 29 | } 30 | menuentry "Start PCLinuxOS Live (Safe Mode)" { 31 | echo Loading kernel... 32 | linux $linux_path $isocfg $bootoptions acpi=off noapic nolapic nopinit xdriver=vesa 33 | echo Loading initrd... 34 | initrd $initrd_path 35 | } 36 | menuentry "Start PCLinuxOS Live (Copy to RAM)" { 37 | echo Loading kernel... 38 | linux $linux_path $isocfg $bootoptions copy2ram quiet splash=verbose 39 | echo Loading initrd... 40 | initrd $initrd_path 41 | } 42 | menuentry "Install PCLinuxOS" { 43 | echo Loading kernel... 44 | linux $linux_path $isocfg $bootoptions quiet splash=silent install 45 | echo Loading initrd... 46 | initrd $initrd_path 47 | } 48 | } 49 | fi 50 | done 51 | 52 | -------------------------------------------------------------------------------- /config/ploplinux/ploplinux.cfg: -------------------------------------------------------------------------------- 1 | # Plop Linux 2 | # https://www.plop.at 3 | 4 | iso_pattern="ploplinux-*-x86_64.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | root=(loop) 14 | isocfg="iso_filename=$iso_path" 15 | bootoptions="" 16 | linux_path="/syslinux/kernel/bzImage" 17 | initrd_path="/syslinux/kernel/initramfs.gz" 18 | 19 | menuentry "Plop Linux" { 20 | echo Loading kernel... 21 | linux $linux_path $isocfg $bootoptions 22 | echo Loading initrd... 23 | initrd $initrd_path 24 | } 25 | menuentry "Plop Linux text mode" { 26 | echo Loading kernel... 27 | linux $linux_path $isocfg $bootoptions nomodeset 28 | echo Loading initrd... 29 | initrd $initrd_path 30 | } 31 | menuentry "Plop Linux + copy to ram" { 32 | echo Loading kernel... 33 | linux $linux_path $isocfg $bootoptions copy2ram 34 | echo Loading initrd... 35 | initrd $initrd_path 36 | } 37 | menuentry "Plop Linux text mode + copy to ram" { 38 | echo Loading kernel... 39 | linux $linux_path $isocfg $bootoptions nomodeset copy2ram 40 | echo Loading initrd... 41 | initrd $initrd_path 42 | } 43 | menuentry "PlopKexec (Boot Manager)" { 44 | echo Loading PlopKexec... 45 | linux /syslinux/plop/plopkexec64 46 | } 47 | 48 | if [ "${grub_platform}" == "pc" ]; then 49 | 50 | menuentry "Plop Boot Manager 5" { 51 | echo Loading plpbt... 52 | linux16 /syslinux/plop/plpbt.bin 53 | } 54 | menuentry "Plop Boot Manager 5 with pcmcia" { 55 | echo Loading plpbt... 56 | linux16 /syslinux/plop/pcmcia/plpbt.bin 57 | } 58 | menuentry "Plop Boot Manager 6" { 59 | echo Loading pbm6... 60 | linux /syslinux/plop/pbm6 61 | } 62 | fi 63 | } 64 | fi 65 | done 66 | -------------------------------------------------------------------------------- /config/pmagic/pmagic.cfg: -------------------------------------------------------------------------------- 1 | # Parted Magic 2 | # https://partedmagic.com/ 3 | 4 | iso_pattern="pmagic_*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="uuid=$rootuuid iso_filename=$iso_path" 14 | bootoptions="" 15 | linux_path="(loop)/pmagic/bzImage" 16 | initrd_path="(loop)/pmagic/initrd.img (loop)/pmagic/fu.img (loop)/pmagic/m.img" 17 | export isocfg linux_path initrd_path 18 | 19 | menuentry "1. Default settings (Runs from RAM 4GB+)" { 20 | echo Loading kernel... 21 | linux $linux_path $isocfg $bootoptions 22 | echo Loading initrd... 23 | initrd $initrd_path 24 | } 25 | menuentry "1a. Default settings with 4K Monitor" { 26 | echo Loading kernel... 27 | linux $linux_path $isocfg $bootoptions m4k=yes 28 | echo Loading initrd... 29 | initrd $initrd_path 30 | } 31 | menuentry "1b. Default settings + language menu" { 32 | echo Loading kernel... 33 | linux $linux_path $isocfg $bootoptions lang=yes 34 | echo Loading initrd... 35 | initrd $initrd_path 36 | } 37 | menuentry "2. Live with default settings (2GB+ RAM)" { 38 | echo Loading kernel... 39 | linux $linux_path $isocfg $bootoptions boot=live eject=no 40 | echo Loading initrd... 41 | initrd $initrd_path 42 | } 43 | menuentry "2a. Live with default settings + language menu" { 44 | echo Loading kernel... 45 | linux $linux_path $isocfg $bootoptions boot=live eject=no lang=yes 46 | echo Loading initrd... 47 | initrd $initrd_path 48 | } 49 | menuentry "3. Black/Blank Screen workaround" { 50 | echo Loading kernel... 51 | linux $linux_path $isocfg $bootoptions nomodeset 52 | echo Loading initrd... 53 | initrd $initrd_path 54 | } 55 | menuentry "4. No official NVIDIA driver - Use Nouveau NVIDIA driver instead." { 56 | echo Loading kernel... 57 | linux $linux_path $isocfg $bootoptions modprobe="nouveau" 58 | echo Loading initrd... 59 | initrd $initrd_path 60 | } 61 | menuentry "5. *** Hyper-V ***" { 62 | echo Loading kernel... 63 | linux $linux_path $isocfg $bootoptions fbdev=yes 64 | echo Loading initrd... 65 | initrd $initrd_path 66 | } 67 | if [ "${grub_platform}" == "efi" ]; then 68 | menuentry "6. Memtest86+" { 69 | echo Loading efi... 70 | chainloader (loop)/boot/memtest/BOOTX64.EFI 71 | } 72 | menuentry "7. EFI Shell" { 73 | terminal_output console 74 | echo Loading efi... 75 | chainloader (loop)/boot/edk2/Shell.efi 76 | } 77 | else 78 | menuentry "6. Memtest86+" { 79 | echo Loading... 80 | linux16 (loop)/boot/memtest/MEMTEST 81 | } 82 | menuentry "7. IPXE Network Boot+" { 83 | echo Loading... 84 | linux16 (loop)/boot/ipxe/ipxe.krn 85 | } 86 | menuentry "8. Plop Boot Manager+" { 87 | echo Loading... 88 | linux16 (loop)/boot/plpbt/plpbt.bin 89 | } 90 | menuentry "9. Hardware Detection Tool (HDT)" { 91 | echo Loading... 92 | linux16 (loop)/boot/syslinux/memdisk 93 | initrd16 (loop)/boot/syslinux/hdt.gz 94 | } 95 | menuentry "10. Super Grub Disk" { 96 | echo Loading... 97 | linux16 (loop)/boot/syslinux/memdisk 98 | initrd16 (loop)/boot/sgd/sgd.gz 99 | } 100 | menuentry "11. Super Grub2 Disk" { 101 | echo Loading... 102 | linux16 (loop)/boot/syslinux/memdisk iso raw 103 | initrd16 (loop)/boot/sgd/sgd2.gz 104 | } 105 | menuentry "12. MHDD" { 106 | echo Loading... 107 | linux16 (loop)/boot/syslinux/memdisk 108 | initrd16 (loop)/boot/mhdd/mhdd.gz 109 | } 110 | fi 111 | submenu "Extras Menu ->" { 112 | 113 | if [ "${grub_platform}" == "efi" ]; then 114 | menuentry "1. Super Grub2 Disk EFI" { 115 | echo Loading efi... 116 | chainloader (loop)/boot/supergrub2disk/super_grub2_disk_standalone_x86_64_efi_2.04s1.EFI 117 | } 118 | fi 119 | menuentry "2. Clonezilla" { 120 | echo Loading kernel... 121 | linux $linux_path $isocfg $bootoptions clonezilla=yes 122 | echo Loading initrd... 123 | initrd $initrd_path 124 | } 125 | menuentry "3. Nwipe" { 126 | echo Loading kernel... 127 | linux $linux_path $isocfg $bootoptions nwipe=yes 128 | echo Loading initrd... 129 | initrd $initrd_path 130 | } 131 | menuentry "4. Load iSCSI Kernel Modules" { 132 | echo Loading kernel... 133 | linux $linux_path $isocfg $bootoptions iscsi=yes 134 | echo Loading initrd... 135 | initrd $initrd_path 136 | } 137 | menuentry "5. Load config for xf86-video-qxl module" { 138 | echo Loading kernel... 139 | linux $linux_path $isocfg $bootoptions qxl=yes 140 | echo Loading initrd... 141 | initrd $initrd_path 142 | } 143 | if [ "${grub_platform}" == "efi" ]; then 144 | menuentry "6. Refind" { 145 | echo Loading efi... 146 | chainloader (loop)/boot/refind/refind/refind_x64.efi 147 | } 148 | fi 149 | } 150 | submenu "Failsafe Menu ->" { 151 | 152 | menuentry "1. No ACPI (Advanced Configuration and Power Interface)" { 153 | echo Loading kernel... 154 | linux $linux_path $isocfg $bootoptions acpi=off 155 | echo Loading initrd... 156 | initrd $initrd_path 157 | } 158 | menuentry "2. Do not eject CD" { 159 | echo Loading kernel... 160 | linux $linux_path $isocfg $bootoptions eject=no 161 | echo Loading initrd... 162 | initrd $initrd_path 163 | } 164 | menuentry "3. Emulator compatibility" { 165 | echo Loading kernel... 166 | linux $linux_path $isocfg $bootoptions boot=live eject=no noreplace-paravirt 167 | echo Loading initrd... 168 | initrd $initrd_path 169 | } 170 | menuentry "4. Console (boots to the shell)" { 171 | echo Loading kernel... 172 | linux $linux_path $isocfg $bootoptions consoleboot=yes 173 | echo Loading initrd... 174 | initrd $initrd_path 175 | } 176 | menuentry "5. Initrd.img (boot to initrd.img shell)" { 177 | echo Loading kernel... 178 | linux $linux_path $isocfg $bootoptions initrd_shell=yes 179 | echo Loading initrd... 180 | initrd $initrd_path 181 | } 182 | menuentry "6. Radeon no modeset" { 183 | echo Loading kernel... 184 | linux $linux_path $isocfg $bootoptions blacklist=radeon 185 | echo Loading initrd... 186 | initrd $initrd_path 187 | } 188 | menuentry "7. No / force CPU Frequency Scaling" { 189 | echo Loading kernel... 190 | linux $linux_path $isocfg $bootoptions cpufreq=no 191 | echo Loading initrd... 192 | initrd $initrd_path 193 | } 194 | menuentry "8. Force vesa workaround" { 195 | echo Loading kernel... 196 | linux $linux_path $isocfg $bootoptions xconfig=forcevesa 197 | echo Loading initrd... 198 | initrd $initrd_path 199 | } 200 | menuentry "9. Force refresh rate" { 201 | echo Loading kernel... 202 | linux $linux_path $isocfg $bootoptions xconfig=forcerefresh nomodeset 203 | echo Loading initrd... 204 | initrd $initrd_path 205 | } 206 | menuentry "10. Disable accelerated 3D graphics (DRI)" { 207 | echo Loading kernel... 208 | linux $linux_path $isocfg $bootoptions nodri=yes 209 | echo Loading initrd... 210 | initrd $initrd_path 211 | } 212 | menuentry "11. Missing Mouse Pointer" { 213 | echo Loading kernel... 214 | linux $linux_path $isocfg $bootoptions xmouse=yes 215 | echo Loading initrd... 216 | initrd $initrd_path 217 | } 218 | if [ "${grub_platform}" == "efi" ]; then 219 | menuentry "12. Macbook Pro 8,x Dual Graphics Workaround" { 220 | echo Loading kernel... 221 | linux $linux_path $isocfg $bootoptions 222 | outb 0x728 1 # Switch select 223 | outb 0x710 2 # Switch display 224 | outb 0x740 2 # Switch DDC 225 | outb 0x750 0 # Power down discrete graphics 226 | echo Loading initrd... 227 | initrd $initrd_path 228 | } 229 | fi 230 | menuentry "13. Libata noncq - Drive will not unlock" { 231 | echo Loading kernel... 232 | linux $linux_path $isocfg $bootoptions libata.force=1.0:noncq 233 | echo Loading initrd... 234 | initrd $initrd_path 235 | } 236 | menuentry "14. No IPV6 - Stop Network Manager from disconnecting." { 237 | echo Loading kernel... 238 | linux $linux_path $isocfg $bootoptions blacklist=ipv6 239 | echo Loading initrd... 240 | initrd $initrd_path 241 | } 242 | } 243 | } 244 | fi 245 | done 246 | -------------------------------------------------------------------------------- /config/qubes-os/qubes-os.cfg: -------------------------------------------------------------------------------- 1 | # Qubes OS 2 | # https://www.qubes-os.org 3 | 4 | iso_pattern="Qubes-*-x86_64.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | probe --label --set=cd_label (loop) 14 | isocfg="iso-scan/filename=$iso_path" 15 | bootoptions="inst.repo=hd:LABEL=$cd_label" 16 | xen_path="(loop)/images/pxeboot/xen.gz" 17 | linux_path="(loop)/images/pxeboot/vmlinuz" 18 | initrd_path="(loop)/images/pxeboot/initrd.img" 19 | 20 | menuentry "Install Qubes OS" { 21 | echo Loading xen... 22 | multiboot2 $xen_path console=none 23 | echo Loading kernel... 24 | module2 $linux_path $isocfg $bootoptions plymouth.ignore-serial-consoles quiet 25 | echo Loading initrd... 26 | module2 $initrd_path 27 | } 28 | menuentry "Test media and install Qubes" { 29 | echo Loading xen... 30 | multiboot2 $xen_path console=none 31 | echo Loading kernel... 32 | module2 $linux_path $isocfg $bootoptions plymouth.ignore-serial-consoles rd.live.check quiet 33 | echo Loading initrd... 34 | module2 $initrd_path 35 | } 36 | menuentry "Troubleshooting - verbose boot and Install Qubes OS" { 37 | echo Loading xen... 38 | multiboot2 $xen_path loglvl=all 39 | echo Loading kernel... 40 | module2 $linux_path $isocfg $bootoptions 41 | echo Loading initrd... 42 | module2 $initrd_path 43 | } 44 | menuentry "Rescue a Qubes OS system" { 45 | echo Loading xen... 46 | multiboot2 $xen_path console=none 47 | echo Loading kernel... 48 | module2 $linux_path $isocfg $bootoptions inst.rescue quiet 49 | echo Loading initrd... 50 | module2 $initrd_path 51 | } 52 | menuentry "Install Qubes OS using kernel-latest" { 53 | echo Loading xen... 54 | multiboot2 $xen_path console=none 55 | echo Loading kernel... 56 | module2 (loop)/images/pxeboot/vmlinuz-latest $isocfg $bootoptions plymouth.ignore-serial-consoles quiet 57 | echo Loading initrd... 58 | module2 (loop)/images/pxeboot/initrd-latest.img 59 | } 60 | } 61 | fi 62 | done 63 | -------------------------------------------------------------------------------- /config/rescuezilla/rescuezilla.cfg: -------------------------------------------------------------------------------- 1 | # Rescuezilla 2 | # https://rescuezilla.com 3 | 4 | iso_pattern="rescuezilla-*-64bit.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="iso-scan/filename=${iso_path}" 14 | bootoptions="boot=casper noprompt locale=en_US bootkbd=us console-setup/layoutcode=en" 15 | linux_path="(loop)/casper/vmlinuz" 16 | initrd_path="(loop)/casper/initrd.lz" 17 | 18 | menuentry "Start Rescuezilla" { 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions quiet splash fastboot fsck.mode=skip -- 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | menuentry "Graphical fallback mode" { 25 | echo Loading kernel... 26 | linux $linux_path $isocfg $bootoptions xforcevesa nomodeset vga=791 fsck.mode=skip -- 27 | echo Loading initrd... 28 | initrd $initrd_path 29 | } 30 | menuentry "Load USB into RAM" { 31 | echo Loading kernel... 32 | linux $linux_path $isocfg $bootoptions quiet splash fastboot toram fsck.mode=skip -- 33 | echo Loading initrd... 34 | initrd $initrd_path 35 | } 36 | menuentry "Check USB for defects" { 37 | echo Loading kernel... 38 | linux $linux_path $isocfg $bootoptions quiet splash fastboot -- 39 | echo Loading initrd... 40 | initrd $initrd_path 41 | } 42 | } 43 | fi 44 | done 45 | -------------------------------------------------------------------------------- /config/rocky/Rocky.cfg: -------------------------------------------------------------------------------- 1 | # Rocky Linux 2 | # https://rockylinux.org 3 | 4 | iso_pattern="Rocky-*-x86_64-*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | probe --label --set=cd_label (loop) 14 | isocfg="iso-scan/filename=$iso_path" 15 | bootoptions="inst.stage2=hd:LABEL=$cd_label" 16 | linux_path="(loop)/images/pxeboot/vmlinuz" 17 | initrd_path="(loop)/images/pxeboot/initrd.img" 18 | 19 | menuentry "Install Rocky Linux" { 20 | echo Loading kernel... 21 | linux $linux_path $isocfg $bootoptions quiet 22 | echo Loading initrd... 23 | initrd $initrd_path 24 | } 25 | menuentry "Test this media & install Rocky Linux" { 26 | echo Loading kernel... 27 | linux $linux_path $isocfg $bootoptions rd.live.check quiet 28 | echo Loading initrd... 29 | initrd $initrd_path 30 | } 31 | menuentry "Install Rocky Linux in text mode" { 32 | echo Loading kernel... 33 | linux $linux_path $isocfg $bootoptions inst.text quiet 34 | echo Loading initrd... 35 | initrd $initrd_path 36 | } 37 | menuentry "Rescue a Rocky Linux system" { 38 | echo Loading kernel... 39 | linux $linux_path $isocfg $bootoptions inst.rescue quiet 40 | echo Loading initrd... 41 | initrd $initrd_path 42 | } 43 | } 44 | fi 45 | done 46 | -------------------------------------------------------------------------------- /config/salientos/salientos.cfg: -------------------------------------------------------------------------------- 1 | # Salient OS 2 | # https://salientos.github.io 3 | 4 | iso_pattern="salientos-*-x86_64.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | root=(loop) 14 | probe --label --set=cd_label (loop) 15 | isocfg="img_dev=$imgdevpath img_loop=$iso_path" 16 | bootoptions="archisobasedir=arch archisolabel=$cd_label splash cow_spacesize=4G" 17 | linux_path="/arch/boot/x86_64/vmlinuz-linux" 18 | initrd_path="/arch/boot/x86_64/initramfs-linux.img /arch/boot/amd-ucode.img /arch/boot/intel-ucode.img" 19 | 20 | menuentry "Boot Salient OS" { 21 | 22 | echo Loading kernel... 23 | linux $linux_path $isocfg $bootoptions 24 | echo Loading initrd... 25 | initrd $initrd_path 26 | } 27 | 28 | menuentry "Boot Salient OS (nomodeset)" { 29 | 30 | echo Loading kernel... 31 | linux $linux_path $isocfg $bootoptions nomodeset 32 | echo Loading initrd... 33 | initrd $initrd_path 34 | } 35 | 36 | menuentry "Boot Salient OS (amdgpu)" { 37 | 38 | echo Loading kernel... 39 | linux $linux_path $isocfg $bootoptions nvidia-drm.modeset=0 amdgpu.modeset=1 i915.modeset=0 radeon.modeset=0 40 | echo Loading initrd... 41 | initrd $initrd_path 42 | } 43 | 44 | menuentry "Boot Salient OS (radeon)" { 45 | 46 | echo Loading kernel... 47 | linux $linux_path $isocfg $bootoptions nvidia-drm.modeset=0 amdgpu.modeset=0 i915.modeset=0 radeon.modeset=1 48 | echo Loading initrd... 49 | initrd $initrd_path 50 | } 51 | } 52 | fi 53 | done 54 | -------------------------------------------------------------------------------- /config/salientos/salientos.txt: -------------------------------------------------------------------------------- 1 | # Salient OS 2 | # https://salientos.github.io 3 | 4 | 5 | # Tested images: Boot from exFAT: Full loopback support: Secure boot support: 6 | salientos-kde-v21.05-x86_64.iso yes no no 7 | salientos-xfce-v2021.05-x86_64.iso yes no no 8 | -------------------------------------------------------------------------------- /config/shredos/shredos.cfg: -------------------------------------------------------------------------------- 1 | # shredos 2 | # https://github.com/PartialVolume/shredos.x86_64 3 | 4 | iso_pattern="shredos-*_x86-64_*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname (grub.cfg) ->" "$isofile" { 11 | LOOPBACK "$2" 12 | root=(loop) 13 | configfile /boot/grub/grub.cfg 14 | } 15 | fi 16 | done 17 | -------------------------------------------------------------------------------- /config/slackware/slackware_install.cfg: -------------------------------------------------------------------------------- 1 | # For Slackware64-current: mini and DVD 2 | 3 | iso_pattern1="slackware64-current-mini-install.iso" 4 | iso_pattern2="slackware64-current-install-dvd.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern1 $iso_dir/$iso_pattern2; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="" 14 | bootoptions="vga=normal load_ramdisk=1 prompt_ramdisk=0 ro printk.time=0 SLACK_KERNEL=huge.s" 15 | linux_path="(loop)/kernels/huge.s/bzImage" 16 | initrd_path="(loop)/isolinux/initrd.img" 17 | 18 | menuentry "Slackware huge.s kernel" { 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions nomodeset 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | menuentry "Slackware huge.s kernel (use KMS console)" { 25 | echo Loading kernel... 26 | linux $linux_path $isocfg $bootoptions 27 | echo Loading initrd... 28 | initrd $initrd_path 29 | } 30 | menuentry "Detect/boot any installed operating system" { 31 | configfile "(loop)/EFI/BOOT/osdetect.cfg" 32 | } 33 | } 34 | fi 35 | done 36 | -------------------------------------------------------------------------------- /config/slackware/slackware_live.cfg: -------------------------------------------------------------------------------- 1 | # For Slackware64-current Live 2 | 3 | iso_pattern="slackware64-live-current.iso" 4 | 5 | for isofile in $iso_dir/$iso_pattern; do 6 | if [ -e "$isofile" ]; then 7 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 8 | 9 | submenu "$isoname ->" "$isofile" { 10 | iso_path="$2" 11 | LOOPBACK "$iso_path" 12 | isocfg="livemedia=$imgdevpath:$iso_path" 13 | bootoptions="load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 kbd=uk tz=Europe/London locale=en_GB.utf8" 14 | linux_path="(loop)/boot/generic" 15 | initrd_path="(loop)/boot/initrd.img" 16 | 17 | menuentry "Start Slackware64 current Live" { 18 | echo Loading kernel... 19 | linux $linux_path $isocfg $bootoptions 20 | echo Loading initrd... 21 | initrd $initrd_path 22 | } 23 | menuentry "Help on boot parameters" { 24 | cat (loop)/EFI/BOOT/help.txt 25 | } 26 | } 27 | fi 28 | done 29 | -------------------------------------------------------------------------------- /config/slax/slax.cfg: -------------------------------------------------------------------------------- 1 | # Slax 2 | # https://www.slax.org 3 | 4 | iso_pattern="slax-64bit-*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="from=$iso_path" 14 | bootoptions="vga=normal load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 consoleblank=0" 15 | linux_path="(loop)/slax/boot/vmlinuz" 16 | initrd_path="(loop)/slax/boot/initrfs.img" 17 | 18 | menuentry "Run Slax (Resume previous session)" { 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions perchdir=resume automount 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | menuentry "Run Slax (Start a new session)" { 25 | echo Loading kernel... 26 | linux $linux_path $isocfg $bootoptions automount perchdir=new 27 | echo Loading initrd... 28 | initrd $initrd_path 29 | } 30 | menuentry "Run Slax (Choose session during startup)" { 31 | echo Loading kernel... 32 | linux $linux_path $isocfg $bootoptions perchdir=ask 33 | echo Loading initrd... 34 | initrd $initrd_path 35 | } 36 | menuentry "Run Slax from RAM (copy to RAM)" { 37 | echo Loading kernel... 38 | linux $linux_path $isocfg $bootoptions toram 39 | echo Loading initrd... 40 | initrd $initrd_path 41 | } 42 | } 43 | fi 44 | done 45 | -------------------------------------------------------------------------------- /config/solus/Solus.cfg: -------------------------------------------------------------------------------- 1 | # Solus 2 | # https://getsol.us 3 | 4 | iso_pattern="Solus-*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | probe --label --set=cd_label (loop) 14 | isocfg="iso-scan/filename=$iso_path" 15 | bootoptions="root=live:CDLABEL=$cd_label ro rd.luks=0 rd.md=0 rd.live.overlay.overlayfs=1" 16 | linux_path="(loop)/boot/kernel" 17 | initrd_path="(loop)/boot/initrd.img" 18 | 19 | menuentry "Start Solus" { 20 | echo Loading kernel... 21 | linux $linux_path $isocfg $bootoptions quiet splash 22 | echo Loading initrd... 23 | initrd $initrd_path 24 | } 25 | menuentry "Start Solus (nomodeset -- NVIDIA compatibility mode)" { 26 | echo Loading kernel... 27 | linux $linux_path $isocfg $bootoptions quiet splash nomodeset 28 | echo Loading initrd... 29 | initrd $initrd_path 30 | } 31 | menuentry "Start Solus (verbose debugging mode)" { 32 | echo Loading kernel... 33 | linux $linux_path $isocfg $bootoptions rd.debug rd.live.debug systemd.log_level=debug 34 | echo Loading initrd... 35 | initrd $initrd_path 36 | } 37 | } 38 | fi 39 | done 40 | -------------------------------------------------------------------------------- /config/tails/tails.cfg: -------------------------------------------------------------------------------- 1 | # Tails 2 | # https://tails.net 3 | 4 | iso_pattern="tails-amd64-*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="findiso=$iso_path" 14 | bootoptions="boot=live config nopersistence noprompt timezone=Etc/UTC splash noautologin module=Tails slab_nomerge slub_debug=FZ mce=0 vsyscall=none init_on_free=1 mds=full,nosmt page_alloc.shuffle=1 randomize_kstack_offset=on" 15 | linux_path="(loop)/live/vmlinuz" 16 | initrd_path="(loop)/live/initrd.img" 17 | 18 | menuentry "Tails" { 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions quiet 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | menuentry "Tails (Troubleshooting Mode)" { 25 | echo Loading kernel... 26 | linux $linux_path $isocfg $bootoptions noapic noapm nodma nomce nolapic nosmp 27 | echo Loading initrd... 28 | initrd $initrd_path 29 | } 30 | } 31 | fi 32 | done 33 | -------------------------------------------------------------------------------- /config/ubuntu/ubuntu_mini.cfg: -------------------------------------------------------------------------------- 1 | # Ubuntu Mini ISO Daily Build 2 | # https://cdimage.ubuntu.com/ubuntu-mini-iso/daily-live/current 3 | 4 | iso_pattern="*-mini-iso-amd64.iso" 5 | grub_configfile="grub.cfg" 6 | 7 | for isofile in $iso_dir/$iso_pattern; do 8 | if [ -e "$isofile" ]; then 9 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 10 | 11 | menuentry "$isoname ($grub_configfile) ->" "$isofile" "$grub_configfile" { 12 | iso_path="$2" 13 | export iso_path 14 | LOOPBACK "$iso_path" 15 | root=(loop) 16 | configfile /boot/grub/$3 17 | loopback --delete loop 18 | } 19 | fi 20 | done 21 | -------------------------------------------------------------------------------- /config/ubuntu/ubuntu_netboot_x64.cfg: -------------------------------------------------------------------------------- 1 | # Ubuntu Netboot For 64-bit Intel/AMD (x86_64) 2 | # Download: http://cdimage.ubuntu.com/netboot/ 3 | # Download and rename 'mini.iso' to 'ubuntu-*-mini-amd64.iso' (* = version); example: ubuntu-20.04-mini-amd64.iso 4 | 5 | iso_pattern="ubuntu-*-mini-amd64.iso" 6 | grub_configfile="grub.cfg" 7 | 8 | for isofile in $iso_dir/$iso_pattern; do 9 | if [ -e "$isofile" ]; then 10 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 11 | 12 | menuentry "$isoname ($grub_configfile) ->" "$isofile" "$grub_configfile" { 13 | iso_path="$2" 14 | export iso_path 15 | LOOPBACK "$iso_path" 16 | root=(loop) 17 | configfile /boot/grub/$3 18 | loopback --delete loop 19 | } 20 | fi 21 | done 22 | -------------------------------------------------------------------------------- /config/void-linux/void-linux.cfg: -------------------------------------------------------------------------------- 1 | # Void Linux 2 | # https://voidlinux.org 3 | 4 | iso_pattern="void-live-x86_64-*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | probe --label --set=cd_label (loop) 14 | isocfg="iso-scan/filename=${iso_path}" 15 | bootoptions="root=live:CDLABEL=$cd_label ro init=/sbin/init rd.luks=0 rd.md=0 rd.dm=0 loglevel=4 gpt add_efi_memmap vconsole.unicode=1 vconsole.keymap=us locale.LANG=en_US.UTF-8 rd.live.overlay.overlayfs=1" 16 | linux_path="(loop)/boot/vmlinuz" 17 | initrd_path="(loop)/boot/initrd" 18 | 19 | menuentry "Void Linux" { 20 | echo Loading kernel... 21 | linux $linux_path $isocfg $bootoptions 22 | echo Loading initrd... 23 | initrd $initrd_path 24 | } 25 | menuentry "Void Linux (RAM)" { 26 | echo Loading kernel... 27 | linux $linux_path $isocfg $bootoptions rd.live.ram 28 | echo Loading initrd... 29 | initrd $initrd_path 30 | } 31 | menuentry "Void Linux with speech" { 32 | echo Loading kernel... 33 | linux $linux_path $isocfg $bootoptions live.accessibility live.autologin 34 | echo Loading initrd... 35 | initrd $initrd_path 36 | } 37 | menuentry "Void Linux with speech (RAM)" { 38 | echo Loading kernel... 39 | linux $linux_path $isocfg $bootoptions live.accessibility live.autologin rd.live.ram 40 | echo Loading initrd... 41 | initrd $initrd_path 42 | } 43 | } 44 | fi 45 | done 46 | -------------------------------------------------------------------------------- /config/windows/Winpeshl.ini: -------------------------------------------------------------------------------- 1 | [LaunchApps] 2 | mountiso.exe 3 | x:\setup.exe 4 | -------------------------------------------------------------------------------- /config/windows/info.txt: -------------------------------------------------------------------------------- 1 | UEFI: Secure Boot must be disabled during installation: 2 | https://git.savannah.gnu.org/cgit/grub.git/commit/?id=6425c12cd77ad51ad24be84c092aefacf0875089 3 | After the installation, enable Secure Boot. 4 | 5 | Windows ISO images are larger than 4GB, please use exFAT instead of fat32 when installing MultiOS-USB. 6 | 7 | If you want to install Windows 11 on unsupported hardware, you can manually apply the attached registry 8 | entries before starting the installation. On the welcome screen (language selection), press Shift+F10. 9 | In the command prompt, type: 10 | 11 | regedit c:\MultiOS-USB\config\windows\windows11-bypass.reg 12 | 13 | and confirm adding the file to the registry (if necessary, change the drive letter from c: to d:, e:, etc.). 14 | Return to the welcome screen and continue with the installation. 15 | 16 | Instead of the regedit command, you can launch 17 | 18 | notepad 19 | 20 | and add the reg file to the registry from the graphical interface. 21 | Remember to enable showing all files in Notepad! 22 | -------------------------------------------------------------------------------- /config/windows/wim_file.cfg: -------------------------------------------------------------------------------- 1 | # Boot directly from bootable *.wim file 2 | # Automatically detects wim files in default directory with iso images 3 | 4 | wim_pattern="*.wim" 5 | 6 | for wimfile in $iso_dir/$wim_pattern; do 7 | if [ -e "$wimfile" ]; then 8 | regexp --set=wimname "$iso_dir/(.*)" "$wimfile" 9 | 10 | submenu "$wimname -->" "$wimname" "$wimfile" { 11 | for wimindex in 1 2; do 12 | menuentry "$2 (image $wimindex)" "$3" "$wimindex" --class=windows { 13 | echo Loading $2... This may take some time 14 | $wimboot_kernel /MultiOS-USB/tools/wimboot-*/wimboot.x86_64 quiet index=$3 15 | $wimboot_initrd newc:boot.wim:$2 16 | echo Loading complete, booting... 17 | } 18 | done 19 | } 20 | fi 21 | done 22 | -------------------------------------------------------------------------------- /config/windows/windows11-bypass.reg: -------------------------------------------------------------------------------- 1 | Windows Registry Editor Version 5.00 2 | 3 | [HKEY_LOCAL_MACHINE\SYSTEM\Setup\LabConfig] 4 | "BypassTPMCheck"=dword:00000001 5 | "BypassSecureBootCheck"=dword:00000001 6 | "BypassRAMCheck"=dword:00000001 7 | "BypassStorageCheck"=dword:00000001 8 | "BypassCPUCheck"=dword:00000001 9 | -------------------------------------------------------------------------------- /config/windows/windows_iso.cfg: -------------------------------------------------------------------------------- 1 | # Windows 10, Windows 11 2 | # https://www.microsoft.com/software-download/ 3 | 4 | iso_pattern="Win1*_*_x64*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | menuentry "$isoname" "$isofile" --class=windows { 11 | if [ "${grub_platform}" != "efi" ]; then 12 | rmmod iso9660 13 | drivemap -s (hd0) (hd1) 14 | fi 15 | echo Loading boot.wim... This may take some time 16 | iso_path="$2" 17 | save_env iso_path 18 | LOOPBACK "$iso_path" 19 | $wimboot_kernel /MultiOS-USB/tools/wimboot-*/wimboot.x86_64 quiet 20 | $wimboot_initrd newc:boot.wim:(loop)/sources/boot.wim \ 21 | newc:mountIso.exe:/MultiOS-USB/tools/mountiso/mountiso64.exe \ 22 | newc:grubenv:($dev,1)/grub/grubenv \ 23 | newc:Winpeshl.ini:/MultiOS-USB/config/windows/Winpeshl.ini 24 | echo Loading boot.wim complete, booting... 25 | } 26 | fi 27 | done 28 | -------------------------------------------------------------------------------- /config_priv/README.md: -------------------------------------------------------------------------------- 1 | You can save your own configurations in this directory. They will not be deleted during the automatic MultiOS-USB update. 2 | 3 | You do not need to create configurations from scratch. 4 | Just copy the one you want from the `/MultiOS-USB/config` directory, paste it into this directory and update it according to your needs. 5 | The updated configuration will be detected automatically. 6 | 7 | Once you have created a new configuration or updated an old one, you can upload the changes to the repository and share the code here: 8 | https://github.com/Mexit/MultiOS-USB/issues 9 | 10 | To use the example configuration file remove `-example` from `/MultiOS-USB/config_priv/example/lmde.cfg-example` 11 | You can also create new directories to organize your configuration files. 12 | -------------------------------------------------------------------------------- /config_priv/examples/lmde.cfg-example: -------------------------------------------------------------------------------- 1 | # LMDE - Linux Mint Debian Edition 2 | # https://www.linuxmint.com 3 | 4 | iso_pattern="lmde-*-64bit.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname [config_priv] ->" "$isofile" { 11 | iso_path="$2" 12 | LOOPBACK "$iso_path" 13 | isocfg="findiso=$iso_path" 14 | bootoptions="boot=live live-config live-media-path=/casper" 15 | linux_path="(loop)/casper/vmlinuz" 16 | initrd_path="(loop)/casper/initrd.lz" 17 | 18 | menuentry "Start LMDE 64-bit" --class linuxmint { 19 | echo Loading kernel... 20 | linux $linux_path $isocfg $bootoptions quiet splash -- 21 | echo Loading initrd... 22 | initrd $initrd_path 23 | } 24 | menuentry "Start LMDE 64-bit (compatibility mode)" --class linuxmint { 25 | echo Loading kernel... 26 | linux $linux_path $isocfg $bootoptions ramdisk_size=1048576 root=/dev/ram rw xforcevesa noapic noacpi nosplash irqpoll -- 27 | echo Loading initrd... 28 | initrd $initrd_path 29 | } 30 | } 31 | fi 32 | done 33 | -------------------------------------------------------------------------------- /config_priv/examples/shredos.cfg-example: -------------------------------------------------------------------------------- 1 | # shredos 2 | # https://github.com/PartialVolume/shredos.x86_64 3 | 4 | iso_pattern="shredos-*_x86-64_*.iso" 5 | 6 | for isofile in $iso_dir/$iso_pattern; do 7 | if [ -e "$isofile" ]; then 8 | regexp --set=isoname "$iso_dir/(.*)" "$isofile" 9 | 10 | submenu "$isoname [config_priv] ->" "$isofile" { 11 | LOOPBACK "$2" 12 | root=(loop) 13 | 14 | menuentry "ShredOS - custom config [edit to add more options]" { 15 | linux /boot/bzImage console=tty3 loglevel=3 # add here more options - see homepage 16 | } 17 | } 18 | fi 19 | done 20 | -------------------------------------------------------------------------------- /docs/Enroll_key.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/docs/Enroll_key.png -------------------------------------------------------------------------------- /docs/README_image: -------------------------------------------------------------------------------- 1 | Installation instructions for Windows (experimental) 2 | ---------------------------------------------------- 3 | 4 | In order to install MultiOS-USB on a disk, additional image writing software is required, for example: 5 | - Rufus https://rufus.ie/ 6 | - etcher https://www.balena.io/etcher/ 7 | 8 | Installation steps 9 | 1) Write 'image.img' to disk using software mentioned above 10 | 2) Use Windows+R to open Run, type diskmgmt.msc and press Enter 11 | 3) Right click on the unallocated space on your USB and select New Simple Volume 12 | - select size: as you wish, maximum? 13 | - Filesystem: fat32 14 | - Volume label: MultiOS-USB 15 | 4) Unpack 'files.zip' to the newly created disk 16 | 5) Copy your ISO files, and boot computer from USB 17 | 18 | Have fun! 19 | -------------------------------------------------------------------------------- /docs/Security_Volation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/docs/Security_Volation.png -------------------------------------------------------------------------------- /docs/Supported_OS.md: -------------------------------------------------------------------------------- 1 | ## List of tested ISO images (in the process of updating) 2 | Note: MultiOS-USB automatically reads the configuration and allows you to run your distribution from all compatible ISO images (loopback.cfg support = yes). This configuration is located in the ISO image in the /boot/grub/loopback.cfg file. 3 | 4 | Below is just a list of tested and working systems. The actual number of supported systems is much larger. I can't test them all. 5 | 6 | | Distro | ISO | Boot from exFAT | loopback.cfg support | Secure Boot support | SB from | 7 | |---|---|:---:|:---:|:---:|---| 8 | | [Arch Linux](https://archlinux.org) | [archlinux-2024.03.01-x86_64.iso](https://archlinux.mirrors.ovh.net/archlinux/iso/latest/archlinux-2024.03.01-x86_64.iso) | yes | yes | no | - | 9 | | [ArcoLinux](https://www.arcolinux.info) | [arcolinuxl-v24.03.01-x86_64.iso](https://downloads.sourceforge.net/arcolinux/arcolinuxl-v24.03.01-x86_64.iso) | yes | yes | no | - | 10 | | [Athena OS](https://athenaos.org) | [athena-rolling-x86_64.iso](https://sourceforge.net/projects/athena-iso/files/v23.11/athena-rolling-x86_64.iso) | yes | [no](../config/athenaos) | no | - | 11 | | [CachyOS](https://cachyos.org) | [cachyos-kde-linux-240313.iso](https://cdn.cachyos.org/ISO/kde/240313/cachyos-kde-linux-240313.iso) | yes | yes | no | - | 12 | | [Clonezilla](https://clonezilla.org) | [clonezilla-live-3.1.3-11-amd64.iso](https://downloads.sourceforge.net/clonezilla/clonezilla-live-3.1.3-11-amd64.iso) | yes | [no](../config/clonezilla) | yes | Debian | 13 | | [Damn Small Linux](https://damnsmalllinux.org) | [dsl-2024.rc1.iso](https://damnsmalllinux.org/download/dsl-2024.rc1.iso) | yes | [no](../config/damnsmalllinux) | no | - | 14 | | [Debian](https://www.debian.org) | [debian-live-12.5.0-amd64-standard.iso](https://cdimage.debian.org/debian-cd/current-live/amd64/iso-hybrid/debian-live-12.5.0-amd64-standard.iso) | no | yes | yes | Debian | 15 | | | [mini.iso](https://cdimage.debian.org/debian/dists/stable/main/installer-amd64/current/images/netboot/mini.iso) | no | [no](../config/debian) | yes | Debian | 16 | | [Debian (trixie testing)](https://cdimage.debian.org/cdimage/weekly-live-builds/amd64/iso-hybrid/) | [debian-live-testing-amd64-xfce.iso](https://cdimage.debian.org/cdimage/weekly-live-builds/amd64/iso-hybrid/debian-live-testing-amd64-xfce.iso) | yes | yes | yes | Debian | 17 | | [Devuan](https://www.devuan.org) | devuan_daedalus_5.0.0_amd64_desktop-live.iso | no | [no](../config/devuan) | yes | Debian | 18 | | | devuan_daedalus_5.0.0_amd64_minimal-live.iso | no | [no](../config/devuan) | yes | Debian | 19 | | [Dr.Parted Live](https://dr-parted-live.sourceforge.io) | [Dr.Parted-Live24.03.1-amd64.iso](https://sourceforge.net/projects/dr-parted-live/files/Download/Dr.Parted-Live24.03.1-amd64.iso) | no | [no](../config/dr-parted-live) | yes | Debian | 20 | | [EndeavourOS](https://endeavouros.com) | [EndeavourOS_Gemini-2024.04.20.iso](https://mirror.alpix.eu/endeavouros/iso/EndeavourOS_Gemini-2024.04.20.iso) | yes | [no](../config/endeavourOS) | no | - | 21 | | [EuroLinux](https://euro-linux.com) | [ELD-9.3-x86_64-20240223-eld-live.iso](https://dn.euro-linux.com/ELD-9.3-x86_64-20240223-eld-live.iso) | yes | [no](../config/euroLinux) | yes | RedHat | 22 | | | [EL-9.3-x86_64-20231113-minimal.iso](https://dn.euro-linux.com/EL-9.3-x86_64-20231113-minimal.iso) | yes | [no](../config/euroLinux) | no | - | 23 | | | [EL-9.3-x86_64-20231113-appstream.iso](https://dn.euro-linux.com/EL-9.3-x86_64-20231113-appstream.iso) | yes | [no](../config/euroLinux) | no | - | 24 | | | [EL-8.9-x86_64-20231116-minimal.iso](https://dn.euro-linux.com/EL-8.9-x86_64-20231116-minimal.iso) | yes | [no](../config/euroLinux) | no | - | 25 | | [Fedora](https://fedoraproject.org) | [Fedora-Design_suite-Live-x86_64-39-1.5.iso](https://download.fedoraproject.org/pub/alt/releases/39/Labs/x86_64/iso/Fedora-Design_suite-Live-x86_64-39-1.5.iso) | yes | [no](../config/fedora) | yes | Fedora | 26 | | | [Fedora-Workstation-Live-x86_64-39-1.5.iso](https://download.fedoraproject.org/pub/fedora/linux/releases/39/Workstation/x86_64/iso/Fedora-Workstation-Live-x86_64-39-1.5.iso) | yes | [no](../config/fedora) | yes | Fedora | 27 | | | [Fedora-Xfce-Live-x86_64-39-1.5.iso](https://download.fedoraproject.org/pub/fedora/linux/releases/39/Spins/x86_64/iso/Fedora-Xfce-Live-x86_64-39-1.5.iso) | yes | [no](../config/fedora) | yes | Fedora | 28 | | | [Fedora-Server-netinst-x86_64-39-1.5.iso](https://download.fedoraproject.org/pub/fedora/linux/releases/39/Server/x86_64/iso/Fedora-Server-netinst-x86_64-39-1.5.iso) | yes | [no](../config/fedora) | yes | Fedora | 29 | | | [Fedora-Server-dvd-x86_64-39-1.5.iso](https://download.fedoraproject.org/pub/fedora/linux/releases/39/Server/x86_64/iso/Fedora-Server-dvd-x86_64-39-1.5.iso) | yes | [no](../config/fedora) | yes | Fedora | 30 | | | [Fedora-Everything-netinst-x86_64-39-1.5.iso](https://download.fedoraproject.org/pub/fedora/linux/releases/39/Everything/x86_64/iso/Fedora-Everything-netinst-x86_64-39-1.5.iso) | yes | [no](../config/fedora) | yes | Fedora | 31 | | | [Fedora-IoT-ostree-x86_64-39-20231103.1.iso](https://download.fedoraproject.org/pub/alt/iot/39/IoT/x86_64/iso/Fedora-IoT-ostree-x86_64-39-20231103.1.iso) | yes | [no](../config/fedora) | yes | Fedora | 32 | | | [Fedora-Silverblue-ostree-x86_64-39-1.5.iso](https://download.fedoraproject.org/pub/fedora/linux/releases/39/Silverblue/x86_64/iso/Fedora-Silverblue-ostree-x86_64-39-1.5.iso) | yes | [no](../config/fedora) | yes | Fedora | 33 | | | [Fedora-Kinoite-ostree-x86_64-39-1.5.iso](https://download.fedoraproject.org/pub/fedora/linux/releases/39/Kinoite/x86_64/iso/Fedora-Kinoite-ostree-x86_64-39-1.5.iso) | yes | [no](../config/fedora) | yes | Fedora | 34 | | | [Fedora-Sericea-ostree-x86_64-39-1.5-respin2.iso](https://download.fedoraproject.org/pub/alt/releases/39/respins/Sericea/x86_64/Fedora-Sericea-ostree-x86_64-39-1.5-respin2.iso) | yes | [no](../config/fedora) | yes | Fedora | 35 | | | [Fedora-Onyx-ostree-x86_64-39-1.5-respin.iso](https://download.fedoraproject.org/pub/alt/releases/39/respins/Onyx/x86_64/Fedora-Onyx-ostree-x86_64-39-1.5-respin.iso) | yes | [no](../config/fedora) | yes | Fedora | 36 | | | [Fedora-Workstation-Live-x86_64-40-1.14.iso](https://download.fedoraproject.org/pub/fedora/linux/releases/40/Workstation/x86_64/iso/Fedora-Workstation-Live-x86_64-40-1.14.iso) | yes | [no](../config/fedora) | yes | Fedora | 37 | | [Finnix](https://www.finnix.org) | [finnix-125.iso](https://www.finnix.org/releases/125/finnix-125.iso) | no | yes | yes | Debian | 38 | | | [finnix-126.iso](https://www.finnix.org/releases/126/finnix-126.iso) | yes | yes | yes | Debian | 39 | | [Gentoo](https://www.gentoo.org) | [install-amd64-minimal-20241124T163746Z.iso](https://distfiles.gentoo.org/releases/amd64/autobuilds/20241124T163746Z/install-amd64-minimal-20241124T163746Z.iso) | yes | [no](../config/gentoo) | no | - | 40 | | | [admincd-amd64-20241124T163746Z.iso](https://distfiles.gentoo.org/releases/amd64/autobuilds/20241124T163746Z/admincd-amd64-20241124T163746Z.iso) | yes | [no](../config/gentoo) | no | - | 41 | | | [livegui-amd64-20241124T163746Z.iso](https://distfiles.gentoo.org/releases/amd64/autobuilds/20241124T163746Z/livegui-amd64-20241124T163746Z.iso) | yes | [no](../config/gentoo) | no | - | 42 | | [GParted Live](https://gparted.org/livecd.php) | [gparted-live-1.6.0-1-amd64.iso](https://downloads.sourceforge.net/gparted/gparted-live-1.6.0-1-amd64.iso) | no | [no](../config/gparted) | yes | Debian | 43 | | | [gparted-live-1.6.0-10-amd64.iso](https://downloads.sourceforge.net/gparted/gparted-live-1.6.0-10-amd64.iso) | yes | [no](../config/gparted) | yes | Debian | 44 | | [Grml](https://www.grml.org) | [grml64-full_2024.02.iso](https://download.grml.org/grml64-full_2024.02.iso) | no | yes | yes | Debian | 45 | | | [grml64-small_2024.02.iso](https://download.grml.org/grml64-small_2024.02.iso) | no | yes | yes | Debian | 46 | | [Hiren's BootCD PE](https://www.hirensbootcd.org/) | [HBCD_PE_x64.iso](https://www.hirensbootcd.org/files/HBCD_PE_x64.iso) | yes | [no](../config/hbcd) | no | Microsoft | 47 | | [Kali Linux](https://www.kali.org/) | [kali-linux-2024.3-live-amd64.iso](https://cdimage.kali.org/kali-2024.3/kali-linux-2024.3-live-amd64.iso) | yes | yes | no | - | 48 | | [Kaspersky Rescue Disk](https://support.kaspersky.com/krd18) | [krd.iso](https://rescuedisk.s.kaspersky-labs.com/updatable/2018/krd.iso) | no | [no](../config/kaspersky) | no | - | 49 | | [KDE neon](https://neon.kde.org) | [neon-user-20240229-0716.iso](https://files.kde.org/neon/images/user/20240229-0716/neon-user-20240229-0716.iso) | no | [no](../config/KDE_neon) | yes | Canonical | 50 | | [Kubuntu](https://kubuntu.org) | [kubuntu-24.04-desktop-amd64.iso](https://cdimage.ubuntu.com/kubuntu/releases/24.04/release/kubuntu-24.04-desktop-amd64.iso) | no | yes | yes | Canonical | 51 | | [Linux Lite](https://www.linuxliteos.com) | [linux-lite-6.6-64bit.iso](https://mirror.alpix.eu/linuxliteos/isos/6.6/linux-lite-6.6-64bit.iso) | no | yes | yes | Canonical | 52 | | [Linux Mint](https://linuxmint.com) | [linuxmint-21.3-cinnamon-64bit-edge.iso](https://mirror.rackspace.com/linuxmint/iso/stable/21.3/linuxmint-21.3-cinnamon-64bit-edge.iso) | no | yes | yes | Canonical | 53 | | [Mabox Linux](https://maboxlinux.org) | [mabox-linux-24.03-Istredd-240313-linux66.iso](https://sourceforge.net/projects/mabox-linux/files/24.03/mabox-linux-24.03-Istredd-240313-linux66.iso) | yes | yes | no | - | 54 | | [Manjaro](https://manjaro.org) | [manjaro-xfce-23.1.3-240113-linux66.iso](https://download.manjaro.org/xfce/23.1.3/manjaro-xfce-23.1.3-240113-linux66.iso) | yes | yes | no | - | 55 | | [MX Linux](https://mxlinux.org) | [MX-23.4_x64.iso](https://downloads.sourceforge.net/mx-linux/MX-23.4_x64.iso) | yes | yes | yes | Debian | 56 | | | [MX-23.4_KDE_x64.iso](https://downloads.sourceforge.net/mx-linux/MX-23.4_KDE_x64.iso) | yes | yes | yes | Debian | 57 | | [NixOS](https://nixos.org) | [nixos-gnome-23.11.5353.878ef7d9721b-x86_64-linux.iso](https://releases.nixos.org/nixos/23.11/nixos-23.11.5353.878ef7d9721b/nixos-gnome-23.11.5353.878ef7d9721b-x86_64-linux.iso) | no | yes | no | - | 58 | | [openSUSE](https://www.opensuse.org) | [openSUSE-Leap-15.5-GNOME-Live-x86_64-Build13.15-Media.iso](https://download.opensuse.org/distribution/leap/15.5/appliances/iso/openSUSE-Leap-15.5-GNOME-Live-x86_64-Build13.15-Media.iso) | yes | yes | yes | SLES | 59 | | [Oracle Linux](https://www.oracle.com/linux) | [OracleLinux-R9-U3-x86_64-boot.iso](https://yum.oracle.com/ISOS/OracleLinux/OL9/u3/x86_64/OracleLinux-R9-U3-x86_64-boot.iso) | yes | [no](../config/oracleLinux) | yes | Oracle | 60 | | [peppermintOS](https://peppermintos.com) | [PeppermintOS-Debian-64.iso](https://sourceforge.net/projects/peppermintos/files/isos/XFCE/PeppermintOS-Debian-64.iso) | no | yes | yes | Debian | 61 | | [Plop Linux](https://www.plop.at/en/ploplinux/index.html) | [ploplinux-24.2-x86_64.iso](https://download.plop.at/ploplinux/24.2/live/ploplinux-24.2-x86_64.iso) | yes | [no](../config/ploplinux) | no | - | 62 | | [Qubes OS](https://www.qubes-os.org) | [Qubes-R4.2.1-rc1-x86_64.iso](https://ftp.qubes-os.org/iso/Qubes-R4.2.1-rc1-x86_64.iso) | yes | [no](../config/qubes-os) | no | - | 63 | | [Rocky Linux](https://rockylinux.org) | [Rocky-9.3-x86_64-boot.iso](https://download.rockylinux.org/pub/rocky/9/isos/x86_64/Rocky-9.3-x86_64-boot.iso) | yes | [no](../config/rocky) | yes | Rocky | 64 | | | [Rocky-9.3-x86_64-minimal.iso](https://download.rockylinux.org/pub/rocky/9/isos/x86_64/Rocky-9.3-x86_64-minimal.iso) | yes | [no](../config/rocky) | yes | Rocky | 65 | | [ShredOS](https://github.com/PartialVolume/shredos.x86_64) | [shredos-2024.11_27_x86-64_0.38_20250125_vanilla.iso](https://github.com/PartialVolume/shredos.x86_64/releases/download/v2024.11_27_x86-64_0.38/shredos-2024.11_27_x86-64_0.38_20250125_vanilla.iso) | yes | [no](../config/shredos) | no | - | 66 | | [Slax](https://www.slax.org) | [slax-64bit-debian-12.2.0.iso](https://ftp.sh.cvut.cz/slax/Slax-12.x/slax-64bit-debian-12.2.0.iso) | no | [no](../config/slax) | no | - | 67 | | | [slax-64bit-slackware-15.0.4.iso](https://ftp.sh.cvut.cz/slax/Slax-15.x/slax-64bit-slackware-15.0.4.iso) | no | [no](../config/slax) | no | - | 68 | | [Solus](https://getsol.us) | [Solus-4.5-Budgie.iso](https://downloads.getsol.us/isos/4.5/Solus-4.5-Budgie.iso) | yes | [no](../config/solus) | yes | Solus | 69 | | | [Solus-4.5-GNOME.iso](https://downloads.getsol.us/isos/4.5/Solus-4.5-GNOME.iso) | yes | [no](../config/solus) | yes | Solus | 70 | | | [Solus-4.5-Plasma.iso](https://downloads.getsol.us/isos/4.5/Solus-4.5-Plasma.iso) | yes | [no](../config/solus) | yes | Solus | 71 | | | [Solus-4.5-XFCE-Beta.iso](https://downloads.getsol.us/isos/4.5/Solus-4.5-XFCE-Beta.iso) | yes | [no](../config/solus) | yes | Solus | 72 | | [SparkyLinux](https://sparkylinux.org) | [sparkylinux-7.3-x86_64-lxqt.iso](https://downloads.sourceforge.net/sparkylinux/sparkylinux-7.3-x86_64-lxqt.iso) | no | yes | yes | Debian | 73 | | [SystemRescue](https://www.system-rescue.org) | [systemrescue-11.00-amd64.iso](https://downloads.sourceforge.net/systemrescuecd/systemrescue-11.00-amd64.iso) | yes | yes | no | - | 74 | | [Tails](https://tails.net) | [tails-amd64-6.0.iso](https://download.tails.net/tails/stable/tails-amd64-6.0/tails-amd64-6.0.iso) | no | [no](../config/tails) | yes | Debian | 75 | | [TUXEDO OS](https://os.tuxedocomputers.com) | [TUXEDO-OS-2-202402220947.iso](https://os.tuxedocomputers.com/TUXEDO-OS-2-202402220947.iso) | yes | yes | yes | TUXEDO | 76 | | [Ubuntu](https://ubuntu.com) | [ubuntu-23.10.1-desktop-amd64.iso](https://releases.ubuntu.com/23.10.1/ubuntu-23.10.1-desktop-amd64.iso) | no | yes | yes | Canonical | 77 | | | [ubuntu-24.04-desktop-amd64.iso](https://releases.ubuntu.com/24.04/ubuntu-24.04-desktop-amd64.iso) | no | yes | yes | Canonical | 78 | | [Void Linux](https://voidlinux.org) | [void-live-x86_64-20240314-xfce.iso](https://repo-default.voidlinux.org/live/current/void-live-x86_64-20240314-xfce.iso) | yes | [no](../config/void-linux) | no | - | 79 | | | [void-live-x86_64-20240314-base.iso](https://repo-default.voidlinux.org/live/current/void-live-x86_64-20240314-base.iso) | yes | [no](../config/void-linux) | no | - | 80 | | [VOYAGER](https://voyagerlive.org) | [Voyager-12.5-debian-amd64.iso](https://downloads.sourceforge.net/voyagerlive/Voyager-12.5-debian-amd64.iso) | no | yes | yes | Debian | 81 | | [Windows](https://www.microsoft.com/software-download) | Win10_22H2_English_x64v1.iso | yes | [no](../config/windows) | no | Microsoft | 82 | | | Win11_23H2_English_x64v2.iso | yes | [no](../config/windows) | no | Microsoft | 83 | | [Xubuntu](https://xubuntu.org) | [xubuntu-24.04-desktop-amd64.iso](https://cdimage.ubuntu.com/xubuntu/releases/24.04/release/xubuntu-24.04-desktop-amd64.iso) | no | yes | yes | Canonical | 84 | | [Zentyal](https://zentyal.com) | [zentyal-8.0-development-amd64.iso](http://download.zentyal.com/zentyal-8.0-development-amd64.iso) | no | yes | yes | Canonical | 85 | | [Zorin OS](https://zorinos.com) | [Zorin-OS-17.1-Core-64-bit.iso](https://mirrors.edge.kernel.org/zorinos-isos/17/Zorin-OS-17.1-Core-64-bit.iso) | no | yes | yes | Canonical | 86 | 87 | Where: 88 | **Boot from exFAT** - Tells whether the OS supports booting from exFAT 89 | **loopback.cfg support** - Tells whether the ISO supports booting from a [loopback.cfg](https://www.supergrubdisk.org/wiki/Loopback.cfg) file 90 | -------------------------------------------------------------------------------- /docs/main_menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/docs/main_menu.png -------------------------------------------------------------------------------- /multios-usb.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # MultiOS-USB © 2020-2025 MexIT 4 | # https://gitlab.com/MultiOS-USB 5 | # https://github.com/Mexit/MultiOS-USB 6 | # Read LICENSE file for details 7 | # 8 | 9 | set -eo pipefail 10 | 11 | # Defaults 12 | scriptname=$(basename "$0") 13 | fs_type="fat32" 14 | data_size="" 15 | efi_size="25M" 16 | data_label="MultiOS-USB" 17 | updateOnly="no" 18 | log_file=$(mktemp) 19 | 20 | # shellcheck disable=SC2154 21 | trap '{ 22 | status=$? 23 | if [ $status -ne 0 ]; then 24 | echo -e "\e[1;31m" 25 | echo "==================================================================" 26 | echo "Installation error!" 27 | echo "Below are the details that may be helpful when reporting the issue" 28 | echo "==================================================================" 29 | echo "Exit code: $status" 30 | cat $log_file 31 | rm -f $log_file 32 | echo -e "==================================================================\e[0m" 33 | fi 34 | }' EXIT 35 | 36 | cd "$(dirname "$(readlink -f "$0")")" 37 | echo "Arguments: $*" > $log_file 38 | 39 | showUsage() { 40 | cat <<- EOF 41 | 42 | MultiOS-USB installer 43 | 44 | Usage: sudo $scriptname [options] device [data_size] 45 | 46 | -f, --fs_type Filesystem type for the data partition [ext2|ext3|ext4|fat32|exfat|ntfs] (default: "$fs_type") 47 | -l, --devices List available USB devices 48 | -h, --help Display this message 49 | -u, --update Update existing installation 50 | --allrwdevices List all writable devices (For advanced users only!!!) 51 | device Device to install (e.g. /dev/sdb) 52 | data_size Data partition size (e.g. 5G, 2048M) 53 | 54 | EOF 55 | } 56 | 57 | listDevices() { 58 | echo "Detected USB devices:" 59 | echo ------------------------------------------------------------- 60 | lsblk -p -d -o NAME,MODEL,SIZE,TRAN | grep 'usb' | sed 's/usb$//' || true 61 | echo ------------------------------------------------------------- 62 | } 63 | 64 | listAllRwDevices() { 65 | echo "Detected writable devices:" 66 | echo ------------------------------------------------------------- 67 | lsblk -p -d -o NAME,MODEL,SIZE,TRAN,RO | grep '0$' | sed 's/0$//' || true 68 | echo ------------------------------------------------------------- 69 | } 70 | 71 | [ $# -eq 0 ] && showUsage && exit 0 72 | 73 | while [ "$#" -gt 0 ]; do 74 | case "$1" in 75 | # Show help 76 | -h|--help) 77 | showUsage 78 | exit 0 79 | ;; 80 | -l|--devices) 81 | listDevices 82 | exit 0 83 | ;; 84 | --allrwdevices) 85 | listAllRwDevices 86 | exit 0 87 | ;; 88 | -u|--update) 89 | updateOnly=yes 90 | ;; 91 | /dev/*) 92 | if [[ -b "$1" ]]; then 93 | dev="$1" 94 | else 95 | echo "Error! $1 is not a valid device." 96 | exit 1 97 | fi 98 | ;; 99 | -f|--fs_type) 100 | shift && fs_type="$1" 101 | [[ -n $fs_type ]] || { echo "Error! Please specify file system"; exit 1; } 102 | ;; 103 | [0-9]*) 104 | if [[ $1 =~ ^[0-9]+[MG]$ ]]; then 105 | data_size="+$1" 106 | else 107 | echo "Error! Incorrect partition size. Example: 500M, 5G" 108 | exit 1 109 | fi 110 | ;; 111 | *) 112 | echo "Error! $1 is not a valid argument." 113 | exit 1 114 | ;; 115 | esac 116 | shift 117 | done 118 | 119 | # Check for required argument 120 | if [[ ! -b "$dev" ]]; then 121 | echo "Error! No device was provided." 122 | exit 1 123 | fi 124 | 125 | if [[ $dev == /dev/loop* || $dev == /dev/nbd* || $dev == /dev/mmcblk* || $dev == /dev/nvme* ]]; then 126 | devp="${dev}p" 127 | elif [[ $dev == /dev/sd* || $dev == /dev/vd* ]]; then 128 | devp="${dev}" 129 | else 130 | echo "Unsupported device!" 131 | exit 1 132 | fi 133 | 134 | if [[ $updateOnly == yes ]]; then 135 | manMounted=false 136 | 137 | umount_partitions () { 138 | if [ "$manMounted" = true ]; then 139 | sudo umount "$part_data" 140 | rm -rf ${tmpdir} 141 | fi 142 | } 143 | 144 | update_config () { 145 | echo -e "\n\e[1;41m++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\e[0m" 146 | echo -e "\e[1;41m++ Are you sure you want to update config files? ++\e[0m" 147 | echo -e "\e[1;41m++ All modified files in "config" directory will be removed! ++\e[0m" 148 | echo -e "\e[1;41m++ If you have modified any files, please copy them NOW to the "config_priv" directory. ++\e[0m" 149 | echo -e "\e[1;41m++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\e[0m" 150 | echo -e "\nYour config files version: $currVer" 151 | echo -e "New config files version: $newVer" 152 | echo -en "\nType 'YeS' to continue: " 153 | read -r yN 154 | 155 | case $yN in 156 | [Y][e][S]) 157 | true 158 | ;; 159 | *) 160 | echo -e '\nAnswer not "YeS". Exiting...' 161 | exit 0 162 | ;; 163 | esac 164 | 165 | echo "Updating..." 166 | rm -rf ${part_data}/MultiOS-USB/config 167 | cp -r config ${part_data}/MultiOS-USB 168 | } 169 | 170 | echo -e "\nMultiOS-USB updater" 171 | part_data=$(findmnt -no TARGET ${devp}2) || true 172 | if [ -z "$part_data" ]; then 173 | manMounted=true 174 | tmpdir=$(mktemp -d) 175 | part_data="${tmpdir}/part_data" 176 | mkdir -p "$part_data" 177 | echo -e "\nMounting partition ${devp}2..." 178 | sudo mount -o umask=0000 "${devp}2" "$part_data" 179 | fi 180 | 181 | if [ -f "${part_data}/MultiOS-USB/config/config.version" ]; then 182 | currVer=$(cat "${part_data}/MultiOS-USB/config/config.version") 183 | else 184 | echo -e "\n\e[1;41mError: MultiOS-USB is not installed on this device!\e[0m\n" 185 | umount_partitions 186 | exit 1 187 | fi 188 | 189 | if [ -f "config/config.version" ]; then 190 | newVer=$(cat "config/config.version") 191 | else 192 | echo -e "\nError: Unable to detect new version, file does not exist!" 193 | umount_partitions 194 | exit 1 195 | fi 196 | 197 | if [[ "${currVer}" == "${newVer}" ]]; then 198 | echo -e "\nConfig files version: $newVer" 199 | else 200 | OLDIFS=$IFS 201 | IFS=. v1=($newVer) v2=($currVer) 202 | IFS=$OLDIFS 203 | 204 | for pos in 0 1 2; do 205 | if [[ ${v1[pos]} -gt ${v2[pos]} ]]; then 206 | update_config 207 | break 208 | elif [[ ${v1[pos]} -lt ${v2[pos]} ]]; then 209 | echo -e "\nError: installed version ($currVer) is newer than downloaded ($newVer)" 210 | echo "Please download fresh version: https://github.com/Mexit/MultiOS-USB/archive/master.zip" 211 | umount_partitions 212 | exit 1 213 | fi 214 | done 215 | fi 216 | 217 | umount_partitions 218 | echo -e "\n\e[0;42mConfiguration is up to date\e[0m\n" 219 | exit 0 220 | fi 221 | 222 | # Set data partition information 223 | case "$fs_type" in 224 | ext2|ext3|ext4) 225 | part_code="8300" 226 | part_name="Linux filesystem" 227 | ;; 228 | fat32|exfat|ntfs) 229 | part_code="0700" 230 | part_name="Microsoft basic data" 231 | ;; 232 | *) 233 | echo "$scriptname: $fs_type is an invalid filesystem type." 234 | exit 1 235 | ;; 236 | esac 237 | 238 | # Check for required software 239 | missing_soft="0" 240 | command -v dd &> /dev/null || { echo "dd is required but not installed."; missing_soft="1"; } 241 | command -v tar &> /dev/null || { echo "tar is required but not installed."; missing_soft="1"; } 242 | command -v xz &> /dev/null || { echo "xz is required but not installed."; missing_soft="1"; } 243 | command -v sgdisk &> /dev/null || { echo "sgdisk (gdisk) is required but not installed."; missing_soft="1"; } 244 | command -v wipefs &> /dev/null || { echo "wipefs is required but not installed."; missing_soft="1"; } 245 | if [ "$fs_type" = "fat32" ]; then fs_prog="mkfs.fat"; else fs_prog="mkfs.$fs_type"; fi 246 | command -v $fs_prog &> /dev/null || { echo "$fs_prog is required but not installed."; missing_soft="1"; } 247 | 248 | if [ "$missing_soft" -ne 0 ]; then 249 | echo -e "\n\e[0;41mNot all required programs are installed. Exiting...\e[0m\n" 250 | exit 1 251 | fi 252 | 253 | # Check for root 254 | if [ "$(id -u)" -ne 0 ]; then 255 | echo "Please run the script with administrator privileges." 256 | exit 1 257 | fi 258 | 259 | echo -e "\n\e[1;41m++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\e[0m" 260 | echo -e "\e[1;41m++ Are you absolutely sure you want to use the selected device? ++\e[0m" 261 | echo -e "\e[1;41m++ THIS WILL DELETE ALL DATA ON THE DEVICE ++\e[0m" 262 | echo -e "\e[1;41m++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\e[0m" 263 | echo -en "\nAre you sure? Type 'YeS' to install MultiOS-USB on \e[0;41m${dev}\e[0m: " 264 | read -r yN 265 | 266 | case $yN in 267 | [Y][e][S]) 268 | true 269 | ;; 270 | *) 271 | echo 'Answer not "YeS". Exiting...' 272 | exit 0 273 | ;; 274 | esac 275 | 276 | umount -f "${devp}"* &> /dev/null || true 277 | 278 | echo "Creating partitions..." 279 | sgdisk -Z "$dev" &>> $log_file 280 | sgdisk -n 1::"+${efi_size}" -t 1:0700 -c 1:"EFI System" -A 1:set:0 -A 1:set:62 -A 1:set:63 "$dev" &>> $log_file 281 | sgdisk -n 2::"${data_size}" -t 2:"$part_code" -c 2:"$part_name" "$dev" &>> $log_file 282 | 283 | wipefs -af "${devp}1" &>> $log_file 284 | wipefs -af "${devp}2" &>> $log_file 285 | 286 | echo "Formating partitions..." 287 | mkfs.fat -F 16 -n "MultiOS-EFI" "${devp}1" &>> $log_file 288 | 289 | case "$fs_type" in 290 | ext2|ext3|ext4) 291 | mkfs.${fs_type} -L "$data_label" "${devp}2" &>> $log_file 292 | ;; 293 | fat32) 294 | mkfs.fat -F 32 -n "$data_label" "${devp}2" &>> $log_file 295 | ;; 296 | exfat) 297 | mkfs.exfat -n "$data_label" "${devp}2" &>> $log_file 298 | ;; 299 | ntfs) 300 | mkfs.ntfs --fast -L "$data_label" "${devp}2" &>> $log_file 301 | ;; 302 | *) 303 | echo "Error! $fs_type is an invalid filesystem type." 304 | exit 1 305 | ;; 306 | esac 307 | 308 | tmpdir=$(mktemp -d) 309 | part_data="${tmpdir}/part_data" 310 | part_efi="${tmpdir}/part_efi" 311 | mkdir "$part_data" "$part_efi" 312 | 313 | mount ${devp}1 $part_efi 314 | mount ${devp}2 $part_data 315 | 316 | echo "Copying files..." 317 | mkdir -p $part_data/{MultiOS-USB/tools,ISOs} $part_efi/{EFI/BOOT,grub/fonts} 318 | cp -r config config_priv themes LICENSE README.md MultiOS-USB.version $part_data/MultiOS-USB 319 | cp -r binaries/{syslinux-*,mt86plus_*,efitools-*,wimboot-*,mountiso} $part_data/MultiOS-USB/tools 320 | 321 | echo "Installing bootloader..." 322 | tar -xf binaries/grub-*/i386-pc.tar.xz -C $part_efi/grub 323 | 324 | cat > $part_efi/grub/grub.cfg << EOF 325 | search -f /MultiOS-USB/config/grub.config --no-floppy --set=root 326 | source /MultiOS-USB/config/grub.config 327 | EOF 328 | 329 | cp binaries/grub-*/grubenv $part_efi/grub 330 | cp -r binaries/grub-*/unicode.pf2 $part_efi/grub/fonts 331 | cp -r binaries/shim-signed_*/*.efi $part_efi/EFI/BOOT 332 | cp binaries/grub-*/grubx64.efi $part_efi/EFI/BOOT 333 | cp -r cert/ $part_efi/EFI/ 334 | 335 | dd conv=fsync status=none if="$part_efi/grub/i386-pc/boot.img" of="${dev}" bs=1 count=446 336 | dd conv=fsync status=none if="$part_efi/grub/i386-pc/core.img" of="${dev}" bs=512 count=2014 seek=34 337 | 338 | mv "$log_file" $part_data/MultiOS-USB/install.log 339 | 340 | sync 341 | umount $part_efi 342 | umount $part_data 343 | rm -rf ${tmpdir} 344 | echo -e "\n\e[0;42mMultiOS-USB has been successfully installed.\e[0m\n" 345 | -------------------------------------------------------------------------------- /themes/MultiOS-USB/DejaVuSans-Bold14.pf2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/themes/MultiOS-USB/DejaVuSans-Bold14.pf2 -------------------------------------------------------------------------------- /themes/MultiOS-USB/DejaVuSans10.pf2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/themes/MultiOS-USB/DejaVuSans10.pf2 -------------------------------------------------------------------------------- /themes/MultiOS-USB/DejaVuSans12.pf2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/themes/MultiOS-USB/DejaVuSans12.pf2 -------------------------------------------------------------------------------- /themes/MultiOS-USB/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/themes/MultiOS-USB/background.png -------------------------------------------------------------------------------- /themes/MultiOS-USB/highlight_c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/themes/MultiOS-USB/highlight_c.png -------------------------------------------------------------------------------- /themes/MultiOS-USB/slider_c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/themes/MultiOS-USB/slider_c.png -------------------------------------------------------------------------------- /themes/MultiOS-USB/slider_n.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/themes/MultiOS-USB/slider_n.png -------------------------------------------------------------------------------- /themes/MultiOS-USB/slider_s.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mexit/MultiOS-USB/43064e5da878312fd805c6730b1a66db975a5dde/themes/MultiOS-USB/slider_s.png -------------------------------------------------------------------------------- /themes/MultiOS-USB/theme.txt: -------------------------------------------------------------------------------- 1 | desktop-color: "#000000" 2 | desktop-image: "background.png" 3 | 4 | title-text: "MultiOS-USB" 5 | title-color: "#fff" 6 | title-font: "DejaVu Sans Bold 14" 7 | 8 | # terminal-left: "0" 9 | # terminal-top: "0" 10 | # terminal-width: "100%" 11 | # terminal-height: "100%" 12 | 13 | terminal-font: "Gnu Unifont Mono Regular 16" 14 | 15 | + boot_menu { 16 | left = 15% 17 | width = 70% 18 | top = 25% 19 | height = 60% 20 | 21 | item_font = "DejaVu Sans Regular 12" 22 | item_color = "#fff" 23 | item_height = 32 24 | item_spacing = 2 25 | 26 | selected_item_font = "DejaVu Sans Bold 14" 27 | selected_item_color= "#ffffff" 28 | selected_item_pixmap_style = "highlight_*.png" 29 | 30 | icon_height = 0 31 | icon_width = 0 32 | 33 | scrollbar = true 34 | scrollbar_width = 20 35 | scrollbar_thumb = "slider_*.png" 36 | } 37 | 38 | + progress_bar { 39 | id = "__timeout__" 40 | 41 | left = 18% 42 | width = 64% 43 | top = 33%-32 44 | height = 32 45 | 46 | font = "DejaVu Sans Bold 14" 47 | 48 | text_color = "#fff" 49 | fg_color = "#0D202F" 50 | 51 | bg_color = "#0D202F" 52 | border_color = "#0D202F" 53 | 54 | text = "@TIMEOUT_NOTIFICATION_SHORT@" 55 | } 56 | 57 | + hbox { 58 | top = 100%-35 59 | left = 20 60 | + label {text = "C: Command Line E: Edit Entry ESC: back" font = "DejaVu Sans Bold 14" color = "#ffffff" align = "left"} 61 | } 62 | 63 | --------------------------------------------------------------------------------