""" * Author: "PeppermintOS Team(peppermintosteam@proton.me) * * License: SPDX-License-Identifier: GPL-3.0-or-later * * This config file is the master configs used to build ISOs or arch * and desktop as the need to scale the builds arises, you can add more * settings to meet the need. """ import paths import inflate_bubble import finish_cleanup import copy_folders import copy_files_specified ######################################### # Sepecify the build to use, for exmaple # # bookworm, trixie etc... # ######################################### debian_codename ='bookworm' devuan_codename ='daedalus' ########################## # Functions to be ran ########################## # inflate_bubble sets the configs files # infra copies the needed configs shared_setup_cmds = ('inflate_bubble.set_fusato_structure', 'inflate_bubble.set_fusato_installer_structure', 'inflate_bubble.set_general_shared', 'inflate_bubble.set_grub_shared', 'inflate_bubble.set_binary_shared', 'inflate_bubble.set_lightdm', 'infra.shared_folders', 'infra.icons_themes', 'infra.shared_files', 'infra.set_symlinks', 'infra.boostrap_shared', 'infra.add_web_profile' ) shared_setup_loaded_cmds = ('inflate_bubble.set_fusato_structure', 'inflate_bubble.set_fusato_installer_structure', 'inflate_bubble.set_general_shared', 'inflate_bubble.set_grub_shared', 'inflate_bubble.set_binary_shared', 'inflate_bubble.set_lightdm', 'infra.shared_folders', 'infra.icons_themes', 'infra.shared_files', 'infra.set_symlinks', 'infra.boostrap_shared' ) shared_setup_server_cmds = ('inflate_bubble.set_fusato_server_installer_structure', 'inflate_bubble.set_fusato_server_structure', 'infra.shared_server_files', ) shared_setup_mini_cmds = ('inflate_bubble.set_fusato_mini_installer_structure', 'inflate_bubble.set_binary_shared', 'infra.mini_shared_installer_files' ) flag_specific_setup_32_cmds = ( 'inflate_bubble.set_specific_32_packages',) # Setup Desktop configs # Add mor as needed setup_xfce_cmds = ('inflate_bubble.set_xfce', 'infra.xfce_configs', ) setup_gfb_cmds = ('inflate_bubble.set_gfb', 'infra.gnome_flahsbak_configs', ) setup_opb_cmds = ('inflate_bubble.set_opb', 'infra.open_box_configs', ) setup_kde_cmds =('inflate_bubble.set_kde', 'infra.kde_configs', ) setup_loaded_cmds = ('inflate_bubble.set_loaded', 'infra.loaded_configs', 'infra.loaded_folders', ) setup_server_cmds = ('inflate_bubble.set_server', 'infra.server_configs', ) setup_mini_cmds = ('inflate_bubble.set_mini',) # Setup grub chroot setup_chroot_grub_64 = ('inflate_bubble.set_chroot_grub_64',) setup_chroot_grub_arm = ('inflate_bubble.set_chroot_grub_arm',) setup_chroot_grub_32 = ('inflate_bubble.set_chroot_grub_32',) # Setup grub binary setup_binary_grub_64 = ('inflate_bubble.set_binary_64',) setup_binary_grub_arm = ('inflate_bubble.set_binary_arm',) setup_binary_grub_32 = ('inflate_bubble.set_binary_32',) # Setup Firmware setup_fw_64_32 = ('inflate_bubble.set_firmware',) setup_fw_arm = ('inflate_bubble.set_firmware_arm',) # Combined tuples for building # Add more as the need arises Per Desktop build64_xfce_build = (shared_setup_cmds + setup_xfce_cmds + setup_chroot_grub_64 + setup_binary_grub_64 + setup_fw_64_32 ) build32_xfce_build = (shared_setup_cmds + setup_xfce_cmds + setup_chroot_grub_32 + setup_binary_grub_32 + setup_fw_64_32 + flag_specific_setup_32_cmds ) buildarm_xfce_build = (shared_setup_cmds + setup_xfce_cmds + setup_chroot_grub_arm + setup_binary_grub_arm + setup_fw_arm ) # KDE build_64_kde_build = () # Gnome_FlashBack build64_gfb_build = (shared_setup_cmds + setup_gfb_cmds + setup_chroot_grub_64 + setup_binary_grub_64 + setup_fw_64_32 ) build32_gfb_build = (shared_setup_cmds + setup_gfb_cmds + setup_chroot_grub_32 + setup_binary_grub_32 + setup_fw_64_32 + flag_specific_setup_32_cmds ) buildarm_gfb_build = (shared_setup_cmds + setup_gfb_cmds + setup_chroot_grub_arm + setup_binary_grub_arm + setup_fw_arm ) #Open_box build64_opb_build = (shared_setup_cmds + setup_opb_cmds + setup_chroot_grub_64 + setup_binary_grub_64 + setup_fw_64_32 ) build32_opb_build = (shared_setup_cmds + setup_opb_cmds + setup_chroot_grub_32 + setup_binary_grub_32 + setup_fw_64_32 + flag_specific_setup_32_cmds ) buildarm_opb_build = (shared_setup_cmds + setup_opb_cmds + setup_chroot_grub_arm + setup_binary_grub_arm + setup_fw_arm ) #Kde build64_kde_build = (shared_setup_cmds + setup_kde_cmds + setup_chroot_grub_64 + setup_binary_grub_64 + setup_fw_64_32 ) build32_kde_build = (shared_setup_cmds + setup_kde_cmds + setup_chroot_grub_32 + setup_binary_grub_32 + setup_fw_64_32 + flag_specific_setup_32_cmds ) buildarm_kde_build = (shared_setup_cmds + setup_opb_cmds + setup_chroot_grub_arm + setup_binary_grub_arm + setup_fw_arm ) #Xfce_loaded build64_loaded_build = (shared_setup_loaded_cmds + setup_loaded_cmds + setup_chroot_grub_64 + setup_binary_grub_64 + setup_fw_64_32 ) build32_loaded_build = (shared_setup_loaded_cmds + setup_loaded_cmds + setup_chroot_grub_32 + setup_binary_grub_32 + setup_fw_64_32 ) #Server build64_server_build = (shared_setup_server_cmds + setup_server_cmds + setup_fw_64_32 ) #Mini build64_mini_build = (shared_setup_mini_cmds + setup_mini_cmds + setup_binary_grub_64 + setup_fw_64_32 ) build32_mini_build = (shared_setup_mini_cmds + setup_mini_cmds + setup_binary_grub_32 + setup_fw_64_32 ) ### Inflate bubble section # Packages that are to be installed as needed per Desktop # Add more Desktops as the need arises XFCE_LIST = ('apt-xapian-index\n' 'mousepad\n' 'mugshot\n' 'menulibre\n' 'plank\n' 'python3-xapian\n' 'thunar-archive-plugin\n' 'thunar-volman\n' 'xfce4\n' 'xfce4-battery-plugin\n' 'xfce4-clipman-plugin\n' 'xfce4-power-manager\n' 'xfce4-taskmanager\n' 'xfce4-terminal\n' 'xfce4-screenshooter\n' 'xfce4-whiskermenu-plugin\n' 'xfce4-panel-profiles\n' 'xarchiver\n' ) GNOME_FLASHBACK_LIST = ('alacarte\n' 'eog\n' 'evince\n' 'file-roller\n' 'gedit\n' 'gnome-calculator\n' 'gnome-control-center\n' 'gnome-tweaks\n' 'gnome-screenshot\n' 'gnome-session-flashback\n' 'gnome-terminal\n' 'nautilus\n' 'yelp\n' ) OPENBOX_LIST = ('openbox\n' 'tint2\n' 'thunar\n' 'thunar-archive-plugin\n' 'mousepad\n' 'lxpolkit\n' 'pnmixer\n' 'gmrun\n' 'nitrogen\n' 'compton\n' 'compton-conf\n' 'compton-conf-l10n\n' 'xarchiver\n' 'lxsession-logout\n' 'xfce4-screenshooter\n' 'xfce4-settings\n' 'xfce4-terminal\n' 'marwaita-peppermint-gtk-theme\n' 'tela-icon-theme\n' 'openbox-theme-collection\n' 'xdg-user-dirs-gtk\n' 'gnome-screensaver\n' 'cbatticon\n' 'dunst\n' 'xfce4-clipman\n' 'xfce4-power-manager\n' 'plank\n' 'obmenu-generator\n' 'qt5-style-plugins \n' 'qt5ct\n' 'jgmenu\n' ) LOADED_LIST = ('xfce4\n' 'xfce4-goodies\n' 'xorg\n' 'xserver-xorg\n' 'xserver-xorg-input-synaptics\n' 'xserver-xorg-input-all\n' 'xserver-xorg-video-vmware\n' 'xserver-xorg-video-all\n' 'apt-config-auto-update\n' 'gnome-system-tools\n' 'gvfs-backends\n' 'blueman\n' 'bluez-cups\n' 'bluez-alsa-utils\n' 'gufw\n' 'plank\n' 'tela-icon-theme\n' 'system-config-printer\n' 'menulibre\n' 'xscreensaver\n' 'xscreensaver-data\n' 'xscreensaver-data-extra\n' 'xscreensaver-gl\n' 'xscreensaver-gl-extra\n' 'gnome-calculator\n' 'accountsservice\n' 'catfish\n' 'timeshift\n' 'pepinstall\n' 'sticky\n' 'mintstick\n' 'peplocale\n' 'bleachbit\n' 'gimp\n' 'gimp-data-extras\n' 'inkscape\n' 'atril\n' 'transmission-gtk\n' 'thunderbird\n' 'thunderbird-l10n-all\n' 'libreoffice\n' 'libreoffice-gtk3\n' 'libreoffice-l10n*\n' 'printer-driver-cups-pdf\n' 'gnome-2048\n' 'gnome-chess\n' 'gnome-mahjongg\n' 'gnome-sudoku\n' 'cheese\n' 'parole \n' 'qt5-style-plugins\n' 'qt5ct\n' 'xfsdump\n' 'tumbler\n' 'tumbler-plugins-extra\n' 'ffmpegthumbnailer\n' 'baobab\n' 'xdg-user-dirs-gtk\n' 'squashfs-tools\n' 'flatpak\n' 'gir1.2-flatpak-1.0\n' 'ntpsec-ntpdate\n' 'ntpsec\n' 'mugshot\n' ) SERVER_LIST = ('zonefstoolspep\n' 'dmzonedtoolspep\n' 'libzbdpep1\n' 'sudo\n' 'task-ssh-server\n' 'dialog\n' 'sshguard\n' 'whois\n' 'rkhunter\n' 'debsecan\n' 'net-tools\n' 'nfs-common\n' 'firewalld\n' 'openssl\n' 'cups\n' 'git\n' 'grub-pc\n' 'wget\n' 'curl\n' ) MINI_LIST = ('nano\n' ) KDE_LIST = ('kde-full' ) # The Light DM Login Settings LIGHT_DM_LIST = ('lightdm\n' 'lightdm-gtk-greeter\n' 'lightdm-gtk-greeter-settings\n' ) # General Shared packages to be installed. GENERAL_SHARED_LIST = ('alsa-utils\n' 'bluez\n' 'btop\n' 'calamares\n' 'calamares-settings-debian\n' 'console-setup\n' 'cups\n' 'curl\n' 'dconf-editor\n' 'dkms\n' 'dbus-x11\n' 'desktop-base\n' 'fonts-cantarell\n' 'fonts-liberation\n' 'f2fs-tools\n' 'gdebi\n' 'gir1.2-webkit2-4.0\n' 'git\n' 'gnome-disk-utility\n' 'gnome-system-tools\n' 'gparted\n' 'gvfs-backends\n' 'inputattach\n' 'inxi\n' 'locales\n' 'libgtk2.0-0\n' 'libgtk2.0-common\n' 'nala\n' 'network-manager-gnome\n' 'ntp\n' 'pulseaudio-module-bluetooth\n' 'python3-pip\n' 'python3-tk\n' 'python3-pil.imagetk\n' 'synaptic\n' 'system-config-printer\n' 'simple-scan\n' 'smartmontools\n' 'smbclient\n' 'spice-vdagent\n' 'sqlite3\n' 'wireless-tools\n' 'wget\n' 'xfsprogs\n' ) # Grub things shared by all GRUB_LIST_SHARED = ('efibootmgr\n' 'grub-common\n' 'grub2-common\n' 'grub-efi\n' 'libefiboot1\n' 'libefivar1\n' 'mokutil\n' 'os-prober\n' 'shim-signed\n' 'shim-signed-common\n' 'shim-unsigned\n' 'libglib2.0\n' ) # Grub things shared by 64bit GRUB_LIST_64 = ('grub-efi-amd64\n' 'grub-efi-amd64-bin\n' 'grub-efi-amd64-signed\n' 'shim-helpers-amd64-signed\n' 'grub-efi-ia32-bin\n' ) # Grub things shared by ARM GRUB_LIST_ARM64 = ('grub-efi-arm64\n' 'grub-efi-arm64-bin\n' 'grub-efi-arm64-signed\n' 'shim-helpers-arm64-signed\n' ) # Grub things shared by 32bit GRUB_LIST_32 = ('efibootmgr\n' 'grub-common\n' 'grub2-common\n' 'grub-efi\n' 'grub-efi-ia32\n' 'grub-efi-ia32-bin\n' 'grub-efi-ia32-signed\n' 'grub-efi-ia32-bin\n' 'os-prober\n' 'shim-helpers-i386-signed\n' ) # Packages for ONLY 32bit builds for the flagship FLAG_SPECIFIC_LIST_32=('luakit\n') # Firmware packages shared by 32 adn 64 bit FIRMWARE_LIST_32_64 = ('atmel-firmware\n' 'bluez-firmware\n' 'firmware-atheros\n' 'firmware-amd-graphics\n' 'firmware-bnx2\n' 'firmware-bnx2x\n' 'firmware-brcm80211\n' 'firmware-cavium\n' 'firmware-intel-sound\n' 'firmware-iwlwifi\n' 'firmware-libertas\n' 'firmware-linux\n' 'firmware-linux-free\n' 'firmware-linux-nonfree\n' 'firmware-misc-nonfree\n' 'firmware-myricom\n' 'firmware-netronome\n' 'firmware-netxen\n' 'firmware-qcom-media\n' 'firmware-qcom-soc\n' 'firmware-qlogic\n' 'firmware-realtek\n' 'firmware-samsung\n' 'firmware-siano\n' 'firmware-sof-signed\n' 'midisport-firmware\n' ) ### Inflate bubble section import paths src_paths = [paths.src_deb64_osrelease, paths.src_deb64_osrelease, paths.src_deb64_slpash, paths.src_deb64_isolinux, paths.src_deb64_multi, paths.src_deb_grub_theme, paths.src_deb64_modules, paths.src_deb_splash_image, paths.src_deb_splash_image, paths.src_deb_live_theme ] des_paths =[paths.des_osrelease, paths.des_osrelease_opt, paths.des_splash, paths.des_isolinux, paths.des_archives, paths.des_grub_theme, paths.des_modules, paths.des_splash_image_isolinux, paths.des_splash_image_grub, paths.des_live_theme ] # Debian 64 def list cmd_deb64_q = [lbinit(), inflate_bubble.set_fusato_structure(), inflate_bubble.set_desktop_environment(), inflate_bubble.set_extra_packages(), inflate_bubble.set_general_packages(), inflate_bubble.set_system_packages(), inflate_bubble.set_system_packages_64(), #inflate_bubble.set_artwork_packages(), inflate_bubble.set_python_packages(), inflate_bubble.set_calamares_packages(), inflate_bubble.set_firmware_packages(), inflate_bubble.set_binary_packages_64(), copy_folders.copy_folders_files(), copy_files_specified.copy_specific_files(), copy_files_specified.set_symlinks(), copy_deb64_specific(), run_build(), finish_cleanup.make_check_sum(), finish_cleanup.copy_iso_file_nightly_deb64(), finish_cleanup.copy_iso_file_prod_deb64(), finish_cleanup.kill_old_iso() ] ### Inflate bubble section env_list =('xfce4') desktop_list = ('mousepad\n' 'xfce4-battery-plugin\n' 'xfce4-clipman-plugin\n' 'xfce4-power-manager\n' 'xfce4-taskmanager\n' 'xfce4-terminal\n' 'xfce4-screenshooter\n' 'xfce4-whiskermenu-plugin\n' 'xfce4-panel-profiles\n' # Orage should be a user decision #'orage\n' 'thunar-archive-plugin\n' 'thunar-volman\n' 'xarchiver\n' 'lightdm\n' 'lightdm-gtk-greeter\n' 'lightdm-gtk-greeter-settings\n' 'plank\n' #'marwaita-for-xfwm' ) general_list = ('dconf-editor\n' 'gnome-disk-utility\n' 'menulibre\n' 'synaptic\n' 'system-config-printer\n' 'gnome-system-tools\n' 'simple-scan\n' 'mugshot\n' #Not needed should be left to the user #'xterm\n' #Taken out for the moment to verify should not be there. # 'libreoffice-core\n' # 'libreoffice-gtk3\n' 'spice-vdagent' ) system_list = ('cups\n' 'curl\n' 'dkms\n' 'dbus-x11\n' 'nala\n' 'fonts-cantarell\n' 'fonts-liberation\n' 'gdebi\n' 'gir1.2-webkit2-4.0\n' 'git\n' 'gvfs-backends\n' 'inputattach\n' 'inxi\n' 'locales\n' 'neofetch\n' 'network-manager-gnome\n' 'ntp\n' 'pulseaudio-module-bluetooth\n' 'simple-scan\n' 'smartmontools\n' 'smbclient\n' 'sqlite3\n' 'wireless-tools\n' 'wget\n' 'f2fs-tools\n' 'xfsprogs\n' 'alsa-utils\n' 'bluez\n' 'console-setup\n' 'gparted\n' 'libglib2.0' ) system_list_64_32 = ('\n' # Place Holder for 32 bit ) system_list_64 = ('\n' 'efibootmgr\n' 'grub-common\n' 'grub2-common\n' 'grub-efi\n' 'grub-efi-amd64\n' 'grub-efi-amd64-bin\n' 'grub-efi-amd64-signed\n' 'libefiboot1\n' 'libefivar1\n' 'mokutil\n' 'os-prober\n' 'shim-helpers-amd64-signed\n' 'shim-signed\n' 'shim-signed-common\n' 'shim-unsigned\n' 'grub-efi-ia32-bin\n' 'libglib2.0' ) system_list_arm64 = ('\n' 'efibootmgr\n' 'grub-common\n' 'grub2-common\n' 'grub-efi\n' 'grub-efi-arm64\n' 'grub-efi-arm64-bin\n' 'grub-efi-arm64-signed\n' 'libefiboot1\n' 'libefivar1\n' 'mokutil\n' 'os-prober\n' 'shim-helpers-arm64-signed\n' 'shim-signed\n' 'shim-signed-common\n' 'shim-unsigned\n' 'libglib2.0' ) system_list_32 = ('\n' 'efibootmgr\n' 'grub-common\n' 'grub2-common\n' 'grub-efi\n' 'grub-efi-ia32\n' 'grub-efi-ia32-bin\n' 'grub-efi-ia32-signed\n' 'grub-efi-ia32-bin\n' 'libefiboot1\n' 'libefivar1\n' 'mokutil\n' 'os-prober\n' 'shim-helpers-i386-signed\n' 'shim-signed\n' 'shim-signed-common\n' 'shim-unsigned\n' ) artwork_list = ( 'pepermint-wallpapers' ) python_list = ('python3-pip\n' 'python3-tk\n' 'python3-pil.imagetk\n' ) calamares_list = ('calamares\n' 'calamares-settings-debian' ) firmware_list = ('atmel-firmware\n' 'bluez-firmware\n' 'firmware-linux-free\n' 'firmware-atheros\n' 'midisport-firmware\n' 'firmware-misc-nonfree\n' 'firmware-amd-graphics\n' 'firmware-bnx2\n' 'firmware-bnx2x\n' 'firmware-brcm80211\n' 'firmware-cavium\n' 'firmware-intel-sound\n' 'firmware-iwlwifi\n' 'firmware-libertas\n' 'firmware-linux\n' 'firmware-linux-nonfree\n' 'firmware-misc-nonfree\n' 'firmware-myricom\n' 'firmware-netronome\n' 'firmware-netxen\n' 'firmware-qcom-media\n' 'firmware-qcom-soc\n' 'firmware-qlogic\n' 'firmware-realtek\n' 'firmware-samsung\n' 'firmware-siano\n' #'firmware-ti-connectivity\n' 'firmware-sof-signed\n' #This Driver is not available in Devuan 'firmware-zd1211' ) firmware_list_arm = ('firmware-linux\n' 'firmware-linux-nonfree\n' 'firmware-misc-nonfree\n' 'firmware-realtek\n' 'firmware-atheros\n' 'firmware-bnx2\n' 'firmware-bnx2x\n' 'firmware-brcm80211\n' 'firmware-iwlwifi\n' 'firmware-linux\n' 'firmware-linux-nonfree\n' 'firmware-libertas\n' 'firmware-misc-nonfree\n' 'firmware-netxen\n' 'firmware-realtek\n' 'firmware-ralink\n' 'firmware-zd1211\n' ) # Binary packages shared by all BINARY_LIST_SHARED = ('efibootmgr\n' 'grub-common\n' 'grub2-common\n' 'grub-efi\n' 'libefiboot1\n' 'libefivar1\n' 'mokutil\n' 'os-prober\n' 'shim-signed\n' 'shim-signed-common\n' 'shim-unsigned\n' ) # Binary packages shared by 64bit BINARY_LIST_64 = ('grub-efi-amd64\n' 'grub-efi-amd64-bin\n' 'grub-efi-amd64-signed\n' 'shim-helpers-amd64-signed\n' 'grub-efi-ia32-bin\n' ) # Binary packages shared by 64bit BINARY_LIST_64SRV = ('grub-efi-amd64\n' 'grub-efi-amd64-bin\n' 'grub-efi-amd64-signed\n' 'shim-helpers-amd64-signed\n' 'grub-efi-ia32-bin\n' ) # Binary packages shared by ARM BINARY_LIST_ARM = ('grub-efi-arm64\n' 'grub-efi-arm64-bin\n' 'grub-efi-arm64-signed\n' 'shim-helpers-arm64-signed\n' ) # Binary packages shared by 32bit BINARY_LIST_32 = ('grub-efi-ia32\n' 'grub-efi-ia32-bin\n' 'grub-efi-ia32-signed\n' 'grub-efi-ia32-bin\n' 'shim-helpers-i386-signed\n' ) binary_list_64 = ('efibootmgr\n' 'grub-common\n' 'grub2-common\n' 'grub-efi\n' 'grub-efi-amd64\n' 'grub-efi-amd64-bin\n' 'grub-efi-amd64-signed\n' 'libefiboot1\n' 'libefivar1\n' 'mokutil\n' 'os-prober\n' 'shim-helpers-amd64-signed\n' 'shim-signed\n' 'shim-signed-common\n' 'shim-unsigned\n' 'grub-efi-ia32-bin' ) binary_list_arm = ('efibootmgr\n' 'grub-common\n' 'grub2-common\n' 'grub-efi\n' 'grub-efi-arm64\n' 'grub-efi-arm64-bin\n' 'grub-efi-arm64-signed\n' 'libefiboot1\n' 'libefivar1\n' 'mokutil\n' 'os-prober\n' 'shim-helpers-arm64-signed\n' 'shim-signed\n' 'shim-signed-common\n' 'shim-unsigned' ) binary_list_32 = ('efibootmgr\n' 'grub-common\n' 'grub2-common\n' 'grub-efi\n' 'grub-efi-ia32\n' 'grub-efi-ia32-bin\n' 'grub-efi-ia32-signed\n' 'grub-efi-ia32-bin\n' 'libefiboot1\n' 'libefivar1\n' 'mokutil\n' 'os-prober\n' 'shim-helpers-i386-signed\n' 'shim-signed\n' 'shim-signed-common\n' 'shim-unsigned\n' ) ### END Inflate # Set the LB configs # Shared by all LBSET_MAIN_SHARED = ( 'lb config noauto' ' --archive-areas "main contrib non-free non-free-firmware"' ' --apt-recommends true --backports false' ' --binary-images iso-hybrid --cache true' ' --checksums sha512 --clean --color' ' --firmware-binary true --firmware-chroot false' ' --iso-application "PeppermintOS"' ' --iso-preparer "PeppermintOS-https://peppermintos.com/"' ' --iso-publisher "Peppermint OS Team"' ' --iso-volume "PeppermintOS" --mode debian --quiet' ' --security true --zsync false' ' --updates true --win32-loader false' ) # Shared by architecture LBSET_SHARED_32 = (' --architectures i386 --linux-flavours 686-pae' ' --uefi-secure-boot enable') LBSET_SHARED_64 = (' --architectures amd64 --linux-flavours amd64') LBSET_SHARED_ARM = (' --architectures arm64 --linux-flavours arm64' ' --bootstrap-qemu-arch arm64 --bootloaders grub-efi' ' --bootstrap-qemu-static /usr/sbin/qemu-debootstrap' ) # Shared By Debian LBSET_DEBIAN_SHARED = ( f' --distribution {debian_codename}' ' --mirror-bootstrap https://deb.debian.org/debian' ' --parent-mirror-bootstrap https://deb.debian.org/debian' ' --parent-mirror-chroot https://deb.debian.org/debian' ' --parent-mirror-chroot-security https://security.debian.org/debian-security' ' --parent-mirror-binary https://deb.debian.org/debian' ' --parent-mirror-binary-security https://security.debian.org/debian-security' ' --mirror-chroot https://deb.debian.org/debian' ' --mirror-chroot-security https://security.debian.org/debian-security' ) # Shared By Devuan LBSET_DEVUAN_SHARED = ( f' --distribution {devuan_codename}' ' --initsystem sysvinit' ' --debootstrap-options --include=ca-certificates' ' --mirror-bootstrap http://deb.devuan.org/merged' ' --parent-mirror-bootstrap http://deb.devuan.org/merged' ' --parent-mirror-chroot http://deb.devuan.org/merged' ' --parent-mirror-chroot-security http://deb.devuan.org/merged' ' --parent-mirror-binary http://deb.devuan.org/merged' ' --parent-mirror-binary-security http://deb.devuan.org/merged' ' --mirror-chroot http://deb.devuan.org/merged' ' --mirror-chroot-security http://deb.devuan.org/merged' ) # Private by ISO build not shared LBSET_PRIVATE_DEB32 = (' --image-name "PeppermintOS-Debian-32"') LBSET_PRIVATE_DEB64 = (' --image-name "PeppermintOS-Debian-64"') LBSET_PRIVATE_DEV32 = (' --image-name "PeppermintOS-Devuan-32"') LBSET_PRIVATE_DEV64 = (' --image-name "PeppermintOS-Devuan-64"') LBSET_PRIVATE_DEBARM = (' --image-name "PeppermintOS-Debian-ARM"') LBSET_PRIVATE_DEVARM = (' --debootstrap-options "--merged-usr"' ' --image-name "PeppermintOS-Devuan-ARM"') LBSET_PRIVATE_LOADED_DEB64 = ( ' --image-name "PeppermintOS-Loaded-Debian-64"') LBSET_PRIVATE_LOADED_DEV64 = ( ' --image-name "PeppermintOS-Loaded-Devuan-64"') LBSET_PRIVATE_LOADED_DEB32 = ( ' --image-name "PeppermintOS-Loaded-Debian-32"') LBSET_PRIVATE_LOADED_DEV32 = ( ' --image-name "PeppermintOS-Loaded-Devuan-32"') # Share to deb server and mini builds LBSET_SHARED_INSTALLER_DEB = ( f' --debian-installer-distribution "{debian_codename}"' ' --debian-installer-gui true' ) LBSET_SHARED_INSTALLER_DEV = ( f' --debian-installer-distribution "{devuan_codename}"' ' --debian-installer-gui true' ' --parent-mirror-debian-installer http://deb.devuan.org/devuan' ) LBSET_SHARED_INSTALLER_MINI = ( ' --debootstrap-options --include=zstd,locales,dialog,krb5-locales' ' --debian-installer cdrom' ) # Private to deb server and mini builds LBSET_PRIVATE_SERVER_DEB64 = ( ' --image-name "PeppermintOS-server-Debian-64"' ' --debian-installer live' ) LBSET_PRIVATE_SERVER_DEV64 = ( ' --image-name "PeppermintOS-server-Devuan-64"' ' --debian-installer live' ) LBSET_PRIVATE_MINI_DEB64 = ( ' --image-name "PeppermintOS-mini-Debian-64"') LBSET_PRIVATE_MINI_DEV64 = ( ' --image-name "PeppermintOS-mini-Devuan-64"') LBSET_PRIVATE_MINI_DEB32 = ( ' --image-name "PeppermintOS-mini-Debian-32"') LBSET_PRIVATE_MINI_DEV32 = ( ' --image-name "PeppermintOS-mini-Devuan-32"') # These are the correct order combined LB commands for the builds by ISO # name these are used during the pipeline building process. LBSET_DEB32 = (LBSET_MAIN_SHARED + LBSET_SHARED_32 + LBSET_DEBIAN_SHARED + LBSET_PRIVATE_DEB32 ) LBSET_DEB64 = (LBSET_MAIN_SHARED + LBSET_SHARED_64 + LBSET_DEBIAN_SHARED + LBSET_PRIVATE_DEB64 ) LBSET_DEV32 = (LBSET_MAIN_SHARED + LBSET_SHARED_32 + LBSET_DEVUAN_SHARED + LBSET_PRIVATE_DEV32 ) LBSET_DEV64 = (LBSET_MAIN_SHARED + LBSET_SHARED_64 + LBSET_DEVUAN_SHARED + LBSET_PRIVATE_DEV64 ) LBSET_DEVarm =(LBSET_MAIN_SHARED + LBSET_SHARED_ARM + LBSET_DEVUAN_SHARED + LBSET_PRIVATE_DEVARM ) LBSET_DEBarm =(LBSET_MAIN_SHARED + LBSET_SHARED_ARM + LBSET_DEBIAN_SHARED + LBSET_PRIVATE_DEBARM ) LBSET_DEBLD64 = (LBSET_MAIN_SHARED + LBSET_SHARED_64 + LBSET_DEBIAN_SHARED + LBSET_PRIVATE_LOADED_DEB64 ) LBSET_DEVLD64 = (LBSET_MAIN_SHARED + LBSET_SHARED_64 + LBSET_DEVUAN_SHARED + LBSET_PRIVATE_LOADED_DEV64 ) LBSET_DEBLD32 = (LBSET_MAIN_SHARED + LBSET_SHARED_32 + LBSET_DEBIAN_SHARED + LBSET_PRIVATE_LOADED_DEB32 ) LBSET_DEVLD32 = (LBSET_MAIN_SHARED + LBSET_SHARED_32 + LBSET_DEVUAN_SHARED + LBSET_PRIVATE_LOADED_DEV32 ) LBSET_DEBSRV64 = (LBSET_MAIN_SHARED + LBSET_SHARED_64 + LBSET_DEBIAN_SHARED + LBSET_PRIVATE_SERVER_DEB64 + LBSET_SHARED_INSTALLER_DEB ) LBSET_DEVSRV64 = (LBSET_MAIN_SHARED + LBSET_SHARED_64 + LBSET_DEVUAN_SHARED + LBSET_PRIVATE_SERVER_DEV64 + LBSET_SHARED_INSTALLER_DEV ) LBSET_DEBMIN64 = (LBSET_MAIN_SHARED + LBSET_SHARED_64 + LBSET_DEBIAN_SHARED + LBSET_PRIVATE_MINI_DEB64 + LBSET_SHARED_INSTALLER_DEB + LBSET_SHARED_INSTALLER_MINI ) LBSET_DEVMIN64 = (LBSET_MAIN_SHARED + LBSET_SHARED_64 + LBSET_DEVUAN_SHARED + LBSET_PRIVATE_MINI_DEB64 + LBSET_SHARED_INSTALLER_DEV + LBSET_SHARED_INSTALLER_MINI ) LBSET_DEBMIN32 = (LBSET_MAIN_SHARED + LBSET_SHARED_32 + LBSET_DEBIAN_SHARED + LBSET_PRIVATE_MINI_DEB32 + LBSET_SHARED_INSTALLER_DEB + LBSET_SHARED_INSTALLER_MINI ) LBSET_DEVMIN32 = (LBSET_MAIN_SHARED + LBSET_SHARED_32 + LBSET_DEVUAN_SHARED + LBSET_PRIVATE_MINI_DEB32 + LBSET_SHARED_INSTALLER_DEV + LBSET_SHARED_INSTALLER_MINI ) # General Shared commands shell_copy_folders = 'cp -r ' ### Start Arch Specific # Set the LB configs lbset_deb32 = ('lb config --mode debian --distribution bookworm' ' --archive-areas "main contrib non-free"' ' --architectures i386 --linux-flavours 686-pae' ' --apt-recommends true --binary-images iso-hybrid' ' --firmware-binary true --firmware-chroot false --security false' ' --updates false --backports false ' ' --image-name "PeppermintOS-Debian-32"' ' --iso-application "PeppermintOS"' ' --iso-preparer "PeppermintOS-https://peppermintos.com/"' ' --iso-publisher "Peppermint OS Team"' ' --iso-volume "PeppermintOS" --win32-loader false' ' --checksums sha512 --cache true --clean --color --quiet' ' --zsync false ' ) lbset_deb64 = ('lb config --mode debian --distribution bookworm' ' --archive-areas "main contrib non-free non-free-firmware"' ' --architectures amd64 --linux-flavours amd64' ' --apt-recommends true --binary-images iso-hybrid' ' --security true' ' --updates true --backports false' ' --image-name "PeppermintOS-Debian-64"' ' --iso-application "PeppermintOS"' ' --iso-preparer "PeppermintOS-https://peppermintos.com/"' ' --iso-publisher "Peppermint OS Team"' ' --iso-volume "PeppermintOS" --win32-loader false' ' --checksums sha512 --cache true' ' --zsync false ' ' --mirror-bootstrap https://deb.debian.org/debian' ' --parent-mirror-bootstrap https://deb.debian.org/debian' ' --parent-mirror-chroot https://deb.debian.org/debian' ' --parent-mirror-chroot-security https://security.debian.org/debian-security' ' --parent-mirror-binary https://deb.debian.org/debian' ' --parent-mirror-binary-security https://security.debian.org/debian-security' ' --mirror-chroot https://deb.debian.org/debian' ' --mirror-chroot-security https://security.debian.org/debian-security' ) lbset_dev32 = ('lb config noauto --clean --color --quiet' ' --archive-areas "main contrib non-free" --architectures i386' ' --linux-flavours 686-pae --apt-recommends true' ' --binary-images iso-hybrid --cache true --mode debian' ' --distribution daedalus --initsystem sysvinit' ' --mirror-bootstrap http://deb.devuan.org/merged' ' --parent-mirror-bootstrap http://deb.devuan.org/merged' ' --parent-mirror-chroot http://deb.devuan.org/merged' ' --parent-mirror-chroot-security http://deb.devuan.org/merged' ' --parent-mirror-binary http://deb.devuan.org/merged' ' --parent-mirror-binary-security http://deb.devuan.org/merged' ' --mirror-chroot http://deb.devuan.org/merged' ' --mirror-chroot-security http://deb.devuan.org/merged' ' --firmware-binary true --firmware-chroot true' ' --uefi-secure-boot enable --iso-application "PeppermintOS"' ' --iso-preparer "PeppermintOS-https://peppermintos.com/"' ' --iso-publisher "Peppermint OS Team"' ' --iso-volume "PeppermintOS"' ' --image-name "PeppermintOS-Devuan-32"' ' --security false --updates false --backports false' ' --win32-loader false --checksums sha512 --zsync false' ) lbset_dev64 = ('lb config noauto --clean --color --quiet' ' --archive-areas "main contrib non-free"' ' --architectures amd64 --linux-flavours amd64' ' --apt-recommends true' ' --binary-images iso-hybrid --cache true --mode debian' ' --distribution daedalus --initsystem sysvinit' ' --mirror-bootstrap http://deb.devuan.org/merged' ' --parent-mirror-bootstrap http://deb.devuan.org/merged' ' --parent-mirror-chroot http://deb.devuan.org/merged' ' --parent-mirror-chroot-security http://deb.devuan.org/merged' ' --parent-mirror-binary http://deb.devuan.org/merged' ' --parent-mirror-binary-security http://deb.devuan.org/merged' ' --mirror-chroot http://deb.devuan.org/merged' ' --mirror-chroot-security http://deb.devuan.org/merged' ' --firmware-binary true --firmware-chroot false' ' --uefi-secure-boot enable --iso-application "PeppermintOS"' ' --iso-preparer "PeppermintOS-https://peppermintos.com/"' ' --iso-publisher "Peppermint OS Team"' ' --iso-volume "PeppermintOS"' '--image-name "PeppermintOS-Devuan-64"' ' --security false --updates false --backports false' ' --win32-loader false --checksums sha512 --zsync false' ) lbset_devarm = ('lb config no auto --clean --color --quiet' ' --archive-areas "main contrib non-free non-free-firmware"' ' --architectures arm64 --apt-recommends true' ' --binary-images iso-hybrid --bootstrap-qemu-arch arm64' ' --bootloaders grub-efi' ' --bootstrap-qemu-static /usr/sbin/qemu-debootstrap' ' --cache true --mode debian --distribution daedalus' ' --debootstrap-options "--merged-usr" --initsystem sysvinit' ' --mirror-bootstrap http://deb.devuan.org/merged' ' --parent-mirror-bootstrap http://deb.devuan.org/merged' ' --parent-mirror-chroot http://deb.devuan.org/merged' ' --parent-mirror-chroot-security http://deb.devuan.org/merged' ' --parent-mirror-binary http://deb.devuan.org/merged' ' --parent-mirror-binary-security http://deb.devuan.org/merged' ' --mirror-chroot http://deb.devuan.org/merged' ' --mirror-chroot-security http://deb.devuan.org/merged' ' --firmware-binary true --firmware-chroot true' ' --uefi-secure-boot enable --iso-application "PeppermintOS"' ' --iso-preparer "PeppermintOS-https://peppermintos.com/"' ' --iso-publisher "Peppermint OS Team"' ' --iso-volume "PeppermintOS"' ' --image-name "PeppermintOS-Devuan-ARM"' ' --linux-flavours arm64 --security false' ' --updates false --backports false --win32-loader false' ' --checksums sha512 --zsync false' ) lbset_debarm = ('lb config noauto --clean --color --quiet' ' --archive-areas "main contrib non-free non-free-firmware"' ' --architectures arm64 --apt-recommends true' ' --binary-images iso-hybrid --bootstrap-qemu-arch arm64' ' --bootloaders grub-efi' ' --bootstrap-qemu-static /usr/sbin/qemu-debootstrap' ' --cache true --mode debian --distribution bookworm' ' --firmware-binary true --firmware-chroot true' ' --uefi-secure-boot enable --iso-application "PeppermintOS"' ' --iso-preparer "PeppermintOS-https://peppermintos.com/"' ' --iso-publisher "Peppermint OS Team"' ' --iso-volume "PeppermintOS"' ' --image-name "PeppermintOS-Debian-ARM"' ' --linux-flavours arm64 --security false --updates false' ' --backports false --win32-loader false --checksums sha512' )