438 lines
17 KiB
Python
438 lines
17 KiB
Python
"""
|
|
* Author: "PeppermintOS Team(peppermintosteam@proton.me)
|
|
*
|
|
* License: SPDX-License-Identifier: GPL-3.0-or-later
|
|
*
|
|
* Config files used to manage bubbles
|
|
"""
|
|
|
|
##########################
|
|
# Commands to be run
|
|
##########################
|
|
# Run Deb 64 Commands
|
|
# inflate_bubble sets the confgs files
|
|
# infra copies the needed configs
|
|
shared_setup_cmds = ('inflate_bubble.set_fusato_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.fusato_configs',
|
|
'infra.set_symlinks',
|
|
'infra.boostrap_shared'
|
|
)
|
|
|
|
|
|
# Setup Desktop
|
|
setup_xfce_cmds = ('inflate_bubble.set_xfce',
|
|
'infra.xfce_configs'
|
|
)
|
|
|
|
setup_gfb_cmds = ('inflate_bubble.set_gfb',
|
|
'infra.gnome_flahsbak_configs'
|
|
)
|
|
|
|
|
|
# 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',)
|
|
|
|
# Deb 64 combined tuples for building
|
|
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
|
|
)
|
|
|
|
buildarm_xfce_build = (shared_setup_cmds + setup_xfce_cmds +
|
|
setup_chroot_grub_arm + setup_binary_grub_arm +
|
|
setup_fw_arm
|
|
)
|
|
|
|
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
|
|
)
|
|
|
|
buildarm_gfb_build = (shared_setup_cmds + setup_gfb_cmds +
|
|
setup_chroot_grub_arm + setup_binary_grub_arm +
|
|
setup_fw_arm
|
|
)
|
|
|
|
|
|
### Inflate bubble section
|
|
|
|
XFCE_LIST = ('xfce4\n'
|
|
'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'
|
|
'thunar-archive-plugin\n'
|
|
'thunar-volman\n'
|
|
'xarchiver\n'
|
|
'plank\n'
|
|
'mugshot\n'
|
|
'menulibre\n'
|
|
#'marwaita-for-xfwm'
|
|
)
|
|
|
|
|
|
GNOME_FLASHBACK_LIST = ('alacarte\n'
|
|
'eog\n'
|
|
'evince\n'
|
|
'file-roller\n'
|
|
'gdm3\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'
|
|
)
|
|
|
|
|
|
LIGHT_DM_LIST = ('lightdm\n'
|
|
'lightdm-gtk-greeter\n'
|
|
'lightdm-gtk-greeter-settings\n'
|
|
)
|
|
|
|
|
|
GENERAL_SHARED_LIST = ('alsa-utils\n'
|
|
'bluez\n'
|
|
'calamares\n'
|
|
'calamares-settings-debian\n'
|
|
'console-setup\n'
|
|
'cups\n'
|
|
'curl\n'
|
|
'dconf-editor\n'
|
|
'dkms\n'
|
|
'dbus-x11\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'
|
|
'nala\n'
|
|
'neofetch\n'
|
|
'network-manager-gnome\n'
|
|
'ntp\n'
|
|
#'pepermint-wallpapers\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_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_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_LIST_ARM64 = ('grub-efi-arm64\n'
|
|
'grub-efi-arm64-bin\n'
|
|
'grub-efi-arm64-signed\n'
|
|
'shim-helpers-arm64-signed\n'
|
|
)
|
|
|
|
|
|
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'
|
|
)
|
|
|
|
|
|
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'
|
|
)
|
|
|
|
|
|
FIRMWARE_LIST_ARM = ('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_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_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_LIST_ARM = ('grub-efi-arm64\n'
|
|
'grub-efi-arm64-bin\n'
|
|
'grub-efi-arm64-signed\n'
|
|
'shim-helpers-arm64-signed\n'
|
|
)
|
|
|
|
|
|
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'
|
|
)
|
|
|
|
### END Inflate
|
|
|
|
### Start Arch Specific
|
|
# Set the LB configs
|
|
LBSET_DEB32 = ('lb config --mode debian --distribution bookworm'
|
|
' --archive-areas "main contrib non-free non-free-firmware"'
|
|
' --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 non-free-firmware" --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 non-free-firmware"'
|
|
' --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'
|
|
)
|