From adb0057618fce7732dfc4ce2cd150792a790744f Mon Sep 17 00:00:00 2001 From: manuel Date: Sat, 21 Sep 2024 21:27:04 +0000 Subject: [PATCH] =?UTF-8?q?=1B[A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- iso_configs/hooks/live/0030-user-setup | 101 ++++ iso_configs/hooks/live/0040-set-plymouth | 9 + .../hooks/live/0050-set-misc-permissions | 6 + .../hooks/live/0060-set-other-settings | 6 + .../hooks/normal/0520-removeapps.hook.chroot | 12 + .../hooks/normal/0540-misc.hook.chroot | 49 ++ .../0560-calamares-packages.hook.chroot | 10 + .../hooks/normal/0600-OS-symlinks.hook.chroot | 37 ++ .../normal/0610-set-permissions.hook.chroot | 54 +++ .../normal/0900-devuan-essentials.hook.chroot | 31 ++ .../normal/0950-final-cleanup.hook.chroot | 39 ++ .../normal/6050-rename-kernel.hook.binary | 7 + python_modules/conf.py | 455 +++++++++++++++++- python_modules/copy_files_specified.py | 49 ++ python_modules/copy_folders.py | 162 +++++++ python_modules/deb_32.py | 170 +++++++ python_modules/deb_64.py | 90 ++++ python_modules/deb_arm.py | 169 +++++++ python_modules/dev_32.py | 171 +++++++ python_modules/dev_64.py | 171 +++++++ python_modules/dev_arm.py | 169 +++++++ python_modules/finish_cleanup.py | 214 ++++++++ python_modules/fresh_bubble.py | 12 + python_modules/inflate_bubble.py | 118 +++++ python_modules/paths.py | 340 +++++++++++++ 25 files changed, 2650 insertions(+), 1 deletion(-) create mode 100755 iso_configs/hooks/live/0030-user-setup create mode 100755 iso_configs/hooks/live/0040-set-plymouth create mode 100755 iso_configs/hooks/live/0050-set-misc-permissions create mode 100644 iso_configs/hooks/live/0060-set-other-settings create mode 100755 iso_configs/hooks/normal/0520-removeapps.hook.chroot create mode 100755 iso_configs/hooks/normal/0540-misc.hook.chroot create mode 100755 iso_configs/hooks/normal/0560-calamares-packages.hook.chroot create mode 100755 iso_configs/hooks/normal/0600-OS-symlinks.hook.chroot create mode 100755 iso_configs/hooks/normal/0610-set-permissions.hook.chroot create mode 100755 iso_configs/hooks/normal/0900-devuan-essentials.hook.chroot create mode 100755 iso_configs/hooks/normal/0950-final-cleanup.hook.chroot create mode 100644 iso_configs/hooks/normal/6050-rename-kernel.hook.binary create mode 100644 python_modules/copy_files_specified.py create mode 100644 python_modules/copy_folders.py create mode 100644 python_modules/deb_32.py create mode 100644 python_modules/deb_64.py create mode 100644 python_modules/deb_arm.py create mode 100644 python_modules/dev_32.py create mode 100644 python_modules/dev_64.py create mode 100644 python_modules/dev_arm.py create mode 100644 python_modules/paths.py diff --git a/iso_configs/hooks/live/0030-user-setup b/iso_configs/hooks/live/0030-user-setup new file mode 100755 index 00000000..141ab326 --- /dev/null +++ b/iso_configs/hooks/live/0030-user-setup @@ -0,0 +1,101 @@ +#!/bin/sh + +. /lib/live/config.sh + +## live-config(7) - System Configuration Components +## Copyright (C) 2016-2020 The Debian Live team +## Copyright (C) 2006-2015 Daniel Baumann +## +## This program comes with ABSOLUTELY NO WARRANTY; for details see COPYING. +## This is free software, and you are welcome to redistribute it +## under certain conditions; see COPYING for details. + + +#set -e + +Cmdline () +{ + # Reading kernel command line + for _PARAMETER in ${LIVE_CONFIG_CMDLINE} + do + case "${_PARAMETER}" in + live-config.user-default-groups=*|user-default-groups=*) + LIVE_USER_DEFAULT_GROUPS="${_PARAMETER#*user-default-groups=}" + ;; + + live-config.user-fullname=*|user-fullname=*) + LIVE_USER_FULLNAME="${_PARAMETER#*user-fullname=}" + ;; + + live-config.username=*|username=*) + LIVE_USERNAME="${_PARAMETER#*username=}" + ;; + esac + done +} + +Init () +{ + # Checking if package is installed or already configured + if ! pkg_is_installed "user-setup" || \ + component_was_executed "user-setup" + then + exit 0 + fi + + echo -n " user-setup" +} + +Config () +{ + # Checking if package is already configured differently + if grep -q "^${LIVE_USERNAME}:" /etc/passwd + then + exit 0 + fi + + # Adjust formating of groups + if [ -n "${LIVE_USER_DEFAULT_GROUPS}" ] + then + LIVE_USER_DEFAULT_GROUPS="$(echo ${LIVE_USER_DEFAULT_GROUPS} | sed -e 's|,| |g')" + fi + + # Make sure user is not in sudo group if sudo is disabled + case "${LIVE_CONFIG_NOROOT}" in + true) + LIVE_USER_DEFAULT_GROUPS="$(echo ${LIVE_USER_DEFAULT_GROUPS} | sed -e 's|sudo||')" + ;; + esac + + # Default password is: live + # passwords can be generated with 'echo "live" | mkpasswd -s', + # a blank password is 'U6aMy0wojraho'. +# _PASSWORD="8Ab05sVQ4LLps" + _PASSWORD="U6aMy0wojraho" + +cat > /tmp/live-config.cfg << EOF +user-setup passwd/make-user boolean true +user-setup passwd/root-password-crypted string * +user-setup passwd/user-password-crypted string ${_PASSWORD} +user-setup passwd/user-default-groups string ${LIVE_USER_DEFAULT_GROUPS} +user-setup passwd/user-fullname string ${LIVE_USER_FULLNAME} +user-setup passwd/username string ${LIVE_USERNAME} +user-setup passwd/user-uid string 1000 +EOF + + debconf-set-selections < /tmp/live-config.cfg + rm -f /tmp/live-config.cfg + + # Workaround for bug in shadow + set +e + /usr/lib/user-setup/user-setup-apply 2>&1 \ + | grep -v "Shadow passwords are now on" + set -e + + # Creating state file + touch /var/lib/live/config/user-setup +} + +Cmdline +Init +Config diff --git a/iso_configs/hooks/live/0040-set-plymouth b/iso_configs/hooks/live/0040-set-plymouth new file mode 100755 index 00000000..90a811dc --- /dev/null +++ b/iso_configs/hooks/live/0040-set-plymouth @@ -0,0 +1,9 @@ +#!/bin/sh +# set the plymouth on boot +plymouth-set-default-theme -R lines + +#Remove it first +rm -f /etc/alternatives/desktop-theme + +# Then re-add it +ln -s /usr/share/desktop-base/lines-theme /etc/alternatives/desktop-theme diff --git a/iso_configs/hooks/live/0050-set-misc-permissions b/iso_configs/hooks/live/0050-set-misc-permissions new file mode 100755 index 00000000..816e7b80 --- /dev/null +++ b/iso_configs/hooks/live/0050-set-misc-permissions @@ -0,0 +1,6 @@ +#!/bin/sh +# set installer permissions +chmod 755 /usr/bin/install-peppermint +chmod 755 /usr/share/applications/Install-peppermint.desktop +f=Install-peppermint.desktop ; gio set -t string $f metadata::xfce-exe-checksum "$(sha256sum $f | awk '{print $1}')" +chmod 755 -R /boot/grub/themes diff --git a/iso_configs/hooks/live/0060-set-other-settings b/iso_configs/hooks/live/0060-set-other-settings new file mode 100644 index 00000000..529ba6bd --- /dev/null +++ b/iso_configs/hooks/live/0060-set-other-settings @@ -0,0 +1,6 @@ +#!/bin/sh + +# Remove the grub symlink for the background +rm -f /etc/alternatives/desktop-grub +# Then recreate it with the Pep Background +ln -s /usr/share/desktop-base/active-theme/grub/pep-grub-16x9.png /etc/alternatives/desktop-grub diff --git a/iso_configs/hooks/normal/0520-removeapps.hook.chroot b/iso_configs/hooks/normal/0520-removeapps.hook.chroot new file mode 100755 index 00000000..79f0fede --- /dev/null +++ b/iso_configs/hooks/normal/0520-removeapps.hook.chroot @@ -0,0 +1,12 @@ +#!/bin/bash + +### Error checking added to "lint-trap" section. +### Missing files no longer cause builds to fail. + +# Remove software +# apt remove -y firefox-esr +# apt remove -y termit +apt --purge --yes autoremove gnome-keyring nvidia-tesla-470-alternative systemsettings imagemagick + + + diff --git a/iso_configs/hooks/normal/0540-misc.hook.chroot b/iso_configs/hooks/normal/0540-misc.hook.chroot new file mode 100755 index 00000000..9415b13c --- /dev/null +++ b/iso_configs/hooks/normal/0540-misc.hook.chroot @@ -0,0 +1,49 @@ +#!/bin/bash + +#git is needed for the git repos +apt install git --yes +#install pip3, needed for additional python modules +apt install --yes python3-pip +apt install --yes python3.11-venv +# Install the Luakit browser (used for pep tools) +apt install --yes luakit + +# Install Plank +apt install --yes plank +# set the plymouth on boot +plymouth-set-default-theme -R lines + +# Set the desktop base theme +# Remove it first +rm -f /etc/alternatives/desktop-theme + +# Then re-add it +ln -s /usr/share/desktop-base/lines-theme /etc/alternatives/desktop-theme +# Remove the grub symlink for the background +rm -f /etc/alternatives/desktop-grub +# Then recreate it with the Pep Background +ln -s /usr/share/desktop-base/active-theme/grub/pep-grub-16x9.png /etc/alternatives/desktop-grub + + +# This will install hblock - a local ad-blocker utility +# https://github.com/hectorm/hblock +# This does not enable it. The user has the choice to turn it on +# by enabling it in PepHub or by typing 'hblock -S builtin' in terminal +curl https://raw.githubusercontent.com/hectorm/hblock/master/hblock --output /tmp/hblock +[ "$(sha256sum /tmp/hblock)" == "4031d86cd04fd7c6cb1b7e9acb1ffdbe9a3f84f693bfb287c68e1f1fa2c14c3b" ] +mv /tmp/hblock /usr/local/bin/hblock +chown 0:0 /usr/local/bin/hblock +chmod 755 /usr/local/bin/hblock +hblock -S none -D none exit 0 + +# check to see if this is the main line if it is then +# take care of raspi +if [ -e /usr/share/peppermint/pep_id ] +then + apt remove raspi-firmware -y + apt purge raspi-firmware -y + apt autoremove -y +else + echo "not there" +fi + diff --git a/iso_configs/hooks/normal/0560-calamares-packages.hook.chroot b/iso_configs/hooks/normal/0560-calamares-packages.hook.chroot new file mode 100755 index 00000000..5546735d --- /dev/null +++ b/iso_configs/hooks/normal/0560-calamares-packages.hook.chroot @@ -0,0 +1,10 @@ +#!/bin/bash + +#[ -e /usr/local/bin/MakePackageLists.sh ] || exit 0 + +#cd /etc/calamares + +#/usr/local/bin/MakePackageLists.sh + +#rm /usr/local/bin/MakePackageLists.sh + diff --git a/iso_configs/hooks/normal/0600-OS-symlinks.hook.chroot b/iso_configs/hooks/normal/0600-OS-symlinks.hook.chroot new file mode 100755 index 00000000..29870c0f --- /dev/null +++ b/iso_configs/hooks/normal/0600-OS-symlinks.hook.chroot @@ -0,0 +1,37 @@ +#!/bin/bash + +# Installing symlinks in the chroot +# We might be changing directories with each symlink. +# Don't assume each instance will be from ~/ for the root user. + +# Workaround for using snapd on debian. Thank You - @stevesveryown. +[ ! -e /etc/skel/.local/share ] && mkdir -p /etc/skel/.local/share +#[ ! -e /var/lib/snapd/desktop/applications ] && +#mkdir -p /var/lib/snapd/desktop/applications && +#chmod 777 /var/lib/snapd/desktop/applications +#ln -s /var/lib/snapd/desktop/applications /etc/skel/.local/share/applications +ln -s snap /usr/bin/snap-store + +# This fixes the 'Right-Click doesn't open terminal in nemo' issue. +ln -s xfce4-terminal /usr/bin/gnome-terminal + +# This work-around lets ICE find Chromium (cromium-browser) in /usr/bin . +# No similar work-arounds were needed for FF, FF-ESR, Chrome or Vivaldi . +ln -s chromium /usr/bin/chromium-browser + + +# These are for the 3 installer scripts - icons.sh, themes.sh & walls.sh +# In 0610- we set the permissions to 777 on the DIRECTORY, not the contents. +ln -s icons /usr/share/pepicons +ln -s themes /usr/share/pepthemes +ln -s backgrounds /usr/share/pepwallpaper + +# A better version of vi and vim than vim-tiny +rm /etc/alternatives/vi +ln -s ../../etc/alternatives/vim /usr/bin/vim +ln -s ../../usr/bin/vim.tiny /etc/alternatives/vim +ln -s ../../usr/bin/busybox /etc/alternatives/vi + +# Put a .png at ~/.face from within /etc/skel +#ln -s /usr/share/pixmaps/logo.png /etc/skel/.face + diff --git a/iso_configs/hooks/normal/0610-set-permissions.hook.chroot b/iso_configs/hooks/normal/0610-set-permissions.hook.chroot new file mode 100755 index 00000000..be56048f --- /dev/null +++ b/iso_configs/hooks/normal/0610-set-permissions.hook.chroot @@ -0,0 +1,54 @@ +#!/bin/bash + +# As we progress, we may find additional files REQUIRING special permissions. +# Set write permissions for these files and directories in the chroot here. + +# This allows write access to the Welcome Screen database to users in the "cdrom" group. +# IF this a system wide file, one user can disable or turn it off for *ALL* accounts. +# If this is meant to be on a per user basis, put the .db in ${HOME}/.config . +# Or rewrite welcome.py to write to the .db WHICH user requested to disable this feature. +# Set Permissions on desktop files +# Desktop links +chmod 755 /usr/share/applications/Pephub.desktop +chmod 755 /usr/share/applications/Welcome.desktop +chmod 755 /usr/share/applications/plank.desktop +chmod 755 /usr/share/applications/kumo.desktop +chmod 755 /usr/share/applications/Install-peppermint.desktop +# Executables +chmod 755 /usr/local/bin/hub +chmod 755 /usr/local/bin/xDaily +chmod 755 /usr/local/bin/kumo +chmod 755 /usr/local/bin/welcome +chmod 755 /usr/bin/install-peppermint +# Set permissions on the Python libs +chmod 755 -R /usr/lib/python3/dist-packages/tendo +chmod 755 -R /usr/lib/python3/dist-packages/tendo-0.3.0.dist-info +chmod 755 -R /usr/lib/python3/dist-packages/ttkbootstrap +chmod 755 -R /usr/lib/python3/dist-packages/ttkbootstrap-1.10.1.dist-info +chmod 755 -R /usr/lib/python3/dist-packages/ttkcreator +# Set permissions on the lines theme +chmod 755 -R /usr/share/desktop-base/lines-theme +# Set Grub Themes Permission +chmod 755 -R /boot/grub/themes +# Set the Calamares Permissions] +chmod 755 -R /etc/calamares + +### After installation, additional groups to add new users to. +grep -B99 "#EXTRA_GROUPS=" /etc/adduser.conf > /etc/adduser.conf.new +grep "#EXTRA_GROUPS=" /etc/adduser.conf | cut -c2- >> /etc/adduser.conf.new +grep -B3 "#ADD_EXTRA_GROUPS=" /etc/adduser.conf >> /etc/adduser.conf.new +grep "#ADD_EXTRA_GROUPS=" /etc/adduser.conf | cut -c2- >> /etc/adduser.conf.new +grep -B3 "#NAME_REGEX=" /etc/adduser.conf >> /etc/adduser.conf.new + + +# These are for the 3 installer scripts - icons.sh, themes.sh & walls.sh +# In 0600- we created symlinks to these directories. This makes them writable. +chmod 755 -R /usr/share/icons +chmod 755 -R /usr/share/themes +chmod 755 -R /usr/share/backgrounds +chmod 755 -R /usr/share/pixmaps + +# Quick patch from https://www.zdnet.com/article/major-linux-policykit-security-vulnerability-uncovered-pwnkit/ +#chmod 0755 /usr/bin/pkexec # Their patch didn't work "pkexec must be setuid root" + + diff --git a/iso_configs/hooks/normal/0900-devuan-essentials.hook.chroot b/iso_configs/hooks/normal/0900-devuan-essentials.hook.chroot new file mode 100755 index 00000000..5095720a --- /dev/null +++ b/iso_configs/hooks/normal/0900-devuan-essentials.hook.chroot @@ -0,0 +1,31 @@ +#!/bin/bash + +### Check for building a Devuan system +if [ -e /etc/devuan_version ] + then _plymouthcfg="/usr/share/initramfs-tools/scripts/init-premount/plymouth" + grep -B100 "mkdir -m 0755" ${_plymouthcfg} > ${_plymouthcfg}.new + echo -e "\tudevadm trigger -s graphics" >> ${_plymouthcfg}.new + echo -e "\t udevadm settle" >> ${_plymouthcfg}.new + echo -e '\t[ "$quiet" = "y" ] && reset' >> ${_plymouthcfg}.new + echo -e '\techo "Starting PeppermintOS Devuan"' >> ${_plymouthcfg}.new + grep -A10 "/usr/sbin/plymouthd" ${_plymouthcfg} >> ${_plymouthcfg}.new + echo -e "" >> ${_plymouthcfg}.new + mv ${_plymouthcfg}.new ${_plymouthcfg} + chmod +x ${_plymouthcfg} +# plymouth-set-default-theme futureprototype --rebuild-initrd + +### Fixes "No OffLine Installs" in Devuan versions. + sed s/bullseye/chimaera/ /usr/sbin/sources-media > /tmp/sources-media + chmod +x /tmp/sources-media && mv /tmp/sources-media /usr/sbin/sources-media + +### Some Gnome-ish software only looks for machine-id in /etc/ + [ ! -e /etc/machine-id ] && ln -s /var/lib/dbus/machine-id /etc/machine-id + +### Differentiate the Devuan slides from the Debian slides. + mv /etc/calamares/branding/peppermint/slides/devuan/s*.png /etc/calamares/branding/peppermint/ + rm -rf /etc/calamares/branding/peppermint/slides/ + +else mv /etc/calamares/branding/peppermint/slides/debian/s*.png /etc/calamares/branding/peppermint/ + rm -rf /etc/calamares/branding/peppermint/slides/ +fi + diff --git a/iso_configs/hooks/normal/0950-final-cleanup.hook.chroot b/iso_configs/hooks/normal/0950-final-cleanup.hook.chroot new file mode 100755 index 00000000..877fb9a3 --- /dev/null +++ b/iso_configs/hooks/normal/0950-final-cleanup.hook.chroot @@ -0,0 +1,39 @@ +#!/bin/bash + +### Error checking added to "lint-trap" section. +### Missing files no longer cause builds to fail. + +### Do NOT remove these files. +# /usr/share/lightdm/lightdm.conf.d/01_debian.conf + +## This section is the "lint-trap" to remove files and/or +## directories not associated with or required by PepOS. +## Followed by \ , add files to be removed, one per line. + +for i in \ +/usr/bin/install-debian \ +/usr/share/applications/install-debian.desktop \ +/usr/share/applications/xfburn.desktop \ +/usr/share/applications/luakit.desktop \ +/root/.cache/pip \ + + do [ -e $i ] && + rm -rf ${i} || + echo " The path ${i} was not found and couldn't be removed." + done + + +### This might be better in an OS-tweaks hook script. +# Lowers the footprint in RAM by 200 MB at the small expense of added size to the ISO. +update-icon-caches /usr/share/icons/* + +### Setting --apt-recommends and --apt-suggests defaults to '0' +echo -e "# Changing these values to \"1\" may quickly fill up a small partition" > /etc/apt/apt.conf.d/99No-Recommends +echo -e "APT::Install-Recommends \"0\";\nAPT::Install-Suggests \"0\";" >> /etc/apt/apt.conf.d/99No-Recommends + +### Fixes the "Not installing grub for UEFI Secure Boot" in all versions , after the default was changed. +#sed s/keyutils/"keyutils --install-recommends"/ /usr/sbin/bootloader-config > /tmp/bootloader-config +echo -e "$(grep -A1 -B20 "Installing grub-efi (uefi)..." /usr/sbin/bootloader-config) --install-recommends" > /tmp/bootloader-config +echo -e "$(grep -A2 "else" /usr/sbin/bootloader-config) --install-recommends\nfi" >> /tmp/bootloader-config +chmod +x /tmp/bootloader-config && mv /tmp/bootloader-config /usr/sbin/bootloader-config + diff --git a/iso_configs/hooks/normal/6050-rename-kernel.hook.binary b/iso_configs/hooks/normal/6050-rename-kernel.hook.binary new file mode 100644 index 00000000..f3e592aa --- /dev/null +++ b/iso_configs/hooks/normal/6050-rename-kernel.hook.binary @@ -0,0 +1,7 @@ +#!/bin/bash +#John's note: this will not harm the other architectures. +rm live/initrd.img +rm live/vmlinuz + +cp live/initrd.img-* live/initrd.img +cp live/vmlinuz-* live/vmlinuz \ No newline at end of file diff --git a/python_modules/conf.py b/python_modules/conf.py index 11517dec..01c5a03b 100644 --- a/python_modules/conf.py +++ b/python_modules/conf.py @@ -1,3 +1,4 @@ +<<<<<<< HEAD """ * Author: "PeppermintOS Team(peppermintosteam@proton.me) * @@ -7,6 +8,13 @@ * 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 +>>>>>>> 6dd24574 (Updated) ######################################### # Sepcify the build to use, for exmaple # @@ -501,6 +509,253 @@ FIRMWARE_LIST_32_64 = ('atmel-firmware\n' # Frimware packages used by ARM FIRMWARE_LIST_ARM = ('firmware-atheros\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' @@ -558,10 +813,69 @@ BINARY_LIST_32 = ('grub-efi-ia32\n' 'grub-efi-ia32-signed\n' 'grub-efi-ia32-bin\n' 'shim-helpers-i386-signed\n' + 'firmware-libertas\n' + 'firmware-netxen\n' + 'firmware-zd1211\n' + 'firmware-ralink' + ) + + +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 = ( @@ -726,3 +1040,142 @@ LBSET_DEVMIN32 = (LBSET_MAIN_SHARED + LBSET_SHARED_32 + 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' + ) + diff --git a/python_modules/copy_files_specified.py b/python_modules/copy_files_specified.py new file mode 100644 index 00000000..4c82483b --- /dev/null +++ b/python_modules/copy_files_specified.py @@ -0,0 +1,49 @@ +""" +* Author: "PeppermintOS Team(peppermintosteam@proton.me) +* +* License: SPDX-License-Identifier: GPL-3.0-or-later +* +* Move and copy files as needed +""" +import os +import shutil +from pathlib import Path +import paths + + +# If you need to add additional files you can do that as needed. +# you are not limited to what is currently listed. + +BSTRING = paths.bstring_iso_configs +home_folder = Path( BSTRING ).expanduser() + + +def copy_specific_files(): + """Copy specific files""" + # Back to bubble + os.chdir(home_folder) + wp_chroot = paths.WPCHROOT + # Set the current working folder + cur_dir = os.getcwd().replace('/', '/') + shutil.copy(cur_dir + paths.src_alias, wp_chroot + paths.des_alias) + shutil.copy(cur_dir + paths.src_xdaily, wp_chroot + paths.des_xdaily) + shutil.copy(cur_dir + paths.src_hub, wp_chroot + paths.des_hub) + shutil.copy(cur_dir + paths.src_welcome, wp_chroot + paths.des_welcome) + shutil.copy(cur_dir + paths.src_kumo, wp_chroot + paths.des_kumo) + shutil.copy(cur_dir + paths.src_icon, wp_chroot + paths.des_icon) + # Took out as its an option, leaving here in case wanted later + #shutil.copy(cur_dir + paths.src_plank, wp_chroot + paths.des_plank) + shutil.copy(cur_dir + paths.src_lightdm, wp_chroot + paths.des_lightdm) + shutil.copy(cur_dir + paths.src_ply, cur_dir + paths.des_ply) + shutil.copy(cur_dir + paths.src_lightdm_greeter, + cur_dir + paths.des_lightdm_greeter + ) + + +def set_symlinks(): + """ Set any symlinks that are needed """ + wp_chroot = paths.WPCHROOT + cur_dir = os.getcwd().replace('/', '/') + os.symlink('Debian.info', cur_dir + '/' + wp_chroot + paths.pep_info) + os.symlink('Debian.mirrors', cur_dir + '/' + wp_chroot + paths.pep_mirror) + os.symlink("debian.csv", cur_dir + '/' + wp_chroot + paths.pep_csv ) diff --git a/python_modules/copy_folders.py b/python_modules/copy_folders.py new file mode 100644 index 00000000..5d6b7083 --- /dev/null +++ b/python_modules/copy_folders.py @@ -0,0 +1,162 @@ +""" +* Author: "PeppermintOS Team(peppermintosteam@proton.me) +* +* License: SPDX-License-Identifier: GPL-3.0-or-later +* +* Move and copy files as needed +""" +import os +import shutil +from pathlib import Path +import paths +import conf + +# If you need to add additional paths you can do that as needed. +# you are not limited to what is currently listed. + +BSTRING = paths.bstring_iso_configs +home_folder = Path(BSTRING).expanduser() + + +def copy_folders_files(): + """" Copy all files and folders """ + # Back to bubbles + os.chdir(home_folder) + # Set the working path + wp_chroot = paths.WPCHROOT + # Set the current working folder + cur_dir = os.getcwd().replace('/', '/') + + shutil.copytree(cur_dir + paths.src_apps, + wp_chroot + paths.des_apps, + dirs_exist_ok=True + ) + #Temp Stop cantrell font + #shutil.copytree(cur_dir + paths.src_font, + # wp_chroot + paths.des_font, + # dirs_exist_ok=True + # ) + shutil.copytree(cur_dir + paths.src_hooks_live, + wp_chroot + paths.des_hooks_live, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_hooks_normal, + cur_dir + paths.des_hooks_normal, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_issue, + cur_dir + paths.des_issue, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_issue, + wp_chroot + paths.des_issue_etc, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_issue, + wp_chroot + paths.des_issues_opt, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_polkit, + wp_chroot + paths.des_polkit, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_database, + wp_chroot + paths.des_database, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_wallpaper, + wp_chroot + paths.des_wallpaper, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_user_configs, + wp_chroot + paths.des_user_configs, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_pixmaps, + wp_chroot + paths.des_pixmaps, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_menu, + wp_chroot + paths.des_menu, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_xfce, + wp_chroot + paths.des_xfce, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_face, + wp_chroot + paths.des_face, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_neo_fetch, + wp_chroot + paths.des_neo_fetch, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_thunar, + wp_chroot + paths.des_thunar, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_pmostools, + wp_chroot + paths.des_pmostools, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_auto_start, + wp_chroot + paths.des_auto_start, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_pylibs, + wp_chroot + paths.des_pylibs, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_ply_lines, + wp_chroot + paths.des_ply_lines, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dbase_grub, + wp_chroot + paths.des_dbase_grub, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dbase_lockscreen, + wp_chroot + paths.des_dbase_lockscreen, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dbase_login, + wp_chroot + paths.des_dbase_login, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dbase_wallpaper, + wp_chroot + paths.des_dbase_wallpaper, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_brand, + wp_chroot + paths.des_brand, + dirs_exist_ok=True + ) + + blthcmd = conf.shell_copy_folders + BSTRING + paths.src_debian + BSTRING + paths.des_themes + grthcmd = conf.shell_copy_folders + BSTRING + paths.src_manjaro + BSTRING + paths.des_themes + rdthcmd = conf.shell_copy_folders + BSTRING + paths.src_peppermint + BSTRING + paths.des_themes + blthcmd_dark = conf.shell_copy_folders + BSTRING + paths.src_debian_dark + BSTRING + paths.des_themes + grthcmd_dark = conf.shell_copy_folders + BSTRING + paths.src_manjaro_dark + BSTRING + paths.des_themes + rdthcmd_dark = conf.shell_copy_folders + BSTRING + paths.src_peppermint_dark + BSTRING + paths.des_themes + os.system(blthcmd) + os.system(grthcmd) + os.system(rdthcmd) + os.system(blthcmd_dark) + os.system(grthcmd_dark) + os.system(rdthcmd_dark) + + blicocmd = conf.shell_copy_folders + BSTRING + paths.src_tela_blue_dark + BSTRING + paths.des_icons + gricocmd = conf.shell_copy_folders + BSTRING + paths.src_tela_green_dark + BSTRING + paths.des_icons + rdicocmd = conf.shell_copy_folders + BSTRING + paths.src_tela_red_dark + BSTRING + paths.des_icons + base_blicocmd = conf.shell_copy_folders + BSTRING + paths.src_tela_blue_base + BSTRING + paths.des_icons + base_gricocmd = conf.shell_copy_folders + BSTRING + paths.src_tela_green_base + BSTRING + paths.des_icons + base_rdicocmd = conf.shell_copy_folders + BSTRING + paths.src_tela_red_base + BSTRING + paths.des_icons + nmicocmd = conf.shell_copy_folders + BSTRING + paths.src_tela + BSTRING + paths.des_icons + os.system(blicocmd) + os.system(gricocmd) + os.system(rdicocmd) + os.system(base_blicocmd) + os.system(base_gricocmd) + os.system(base_rdicocmd) + os.system(nmicocmd) diff --git a/python_modules/deb_32.py b/python_modules/deb_32.py new file mode 100644 index 00000000..46d738e9 --- /dev/null +++ b/python_modules/deb_32.py @@ -0,0 +1,170 @@ +""" +* Author: "PeppermintOS Team(peppermintosteam@proton.me) +* +* License: SPDX-License-Identifier: GPL-3.0-or-later +* +* Move and copy files as needed +""" +import os +import shutil +from pathlib import Path +import conf +import paths +import inflate_bubble +import finish_cleanup +import copy_folders +import copy_files_specified + + +# Set the home path used regardless the user logged in +BSTRING = paths.bstring_iso_configs +home_folder = Path(BSTRING).expanduser() + +# Move to iso_configs +os.chdir(home_folder) + +# Set the working path +WP_CHROOT = paths.WPCHROOT + +# Set the current working folder +cur_dir = os.getcwd().replace('/', '/') + + +def lbinit(): + """ runs the lb config command for the iso build""" + current_dir = os.getcwd().replace('/', '/') + os.chdir(current_dir + '/fusato') + lbsetup = (conf.lbset_deb32) + os.system(lbsetup) + + +def copy_deb32_specific(): + """" Debian 32 copy jobs""" + shutil.copytree(cur_dir + paths.src_deb32_osrelease, + WP_CHROOT + paths.des_osrelease, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_deb32_osrelease, + WP_CHROOT + paths.des_osrelease_opt, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_deb32_slpash, + cur_dir + paths.des_splash, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_deb32_isolinux, + cur_dir + paths.des_isolinux, + dirs_exist_ok=True + ) + #shutil.copytree(cur_dir + paths.src_deb32_multi, + # cur_dir + paths.des_archives, + # dirs_exist_ok=True + # ) + shutil.copytree(cur_dir + paths.src_deb_grub_theme, + WP_CHROOT + paths.des_grub_theme, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_deb32_modules, + WP_CHROOT + paths.des_modules, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_deb_splash_image, + cur_dir + paths.des_splash_image_isolinux, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_deb_splash_image, + cur_dir + paths.des_splash_image_grub, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_deb_live_theme, + cur_dir + paths.des_live_theme, + dirs_exist_ok=True + ) + shutil.copy(cur_dir + paths.src_deb32_grub_etc, + WP_CHROOT + paths.des_grub_etc + ) + shutil.copy(cur_dir + paths.src_deb32_settings, + WP_CHROOT + paths.des_setttings + ) + shutil.copy(cur_dir + paths.src_deb32_installer, + WP_CHROOT + paths.des_installer + ) + #shutil.copy(cur_dir + paths.src_deb32_sourcesfinal, + # WP_CHROOT + paths.des_sourcesfinal + # ) + shutil.copy(cur_dir + paths.src_deb32_bootloader, + WP_CHROOT + paths.des_bootloader + ) + shutil.copy(cur_dir + paths.src_deb32_netinstall, + WP_CHROOT + paths.des_netinstall + ) + shutil.copy(cur_dir + paths.src_deb32_sourcelist, + WP_CHROOT + paths.des_sourcelist + ) + + +def run_build(): + """ Run and start the build""" + run_cmd = 'sudo lb build' + os.chdir(home_folder) + os.chdir('fusato') + os.system(run_cmd) + + +def readybuild(): + """ Ready the bld structure""" + if os.path.exists('fusato'): + rm_cmd = "sudo rm -r -f fusato" + os.system(rm_cmd) + os.makedirs('fusato') + # Run lb config to begin the setup + lbinit() + # Prep the folders + inflate_bubble.set_fusato_structure() + # Packages + 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_32() + # 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_32() + copy_folders.copy_folders_files() + copy_files_specified.copy_specific_files() + copy_files_specified.set_symlinks() + copy_deb32_specific() + run_build() + finish_cleanup.make_check_sum() + finish_cleanup.copy_iso_file_nightly_deb32() + finish_cleanup.kill_old_iso() + else: + os.makedirs('fusato') + # Run lb config to begin the setup + lbinit() + # Prep the folders + inflate_bubble.set_fusato_structure() + # Packages + 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_32() + # 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_32() + copy_folders.copy_folders_files() + copy_files_specified.copy_specific_files() + copy_files_specified.set_symlinks() + copy_deb32_specific() + run_build() + finish_cleanup.make_check_sum() + finish_cleanup.copy_iso_file_nightly_deb32() + finish_cleanup.kill_old_iso() + + +readybuild() diff --git a/python_modules/deb_64.py b/python_modules/deb_64.py new file mode 100644 index 00000000..b3533398 --- /dev/null +++ b/python_modules/deb_64.py @@ -0,0 +1,90 @@ +""" +* Author: "PeppermintOS Team(peppermintosteam@proton.me) +* +* License: SPDX-License-Identifier: GPL-3.0-or-later +* +* Move and copy files as needed +""" +import os +import shutil +from pathlib import Path +import conf +import paths +import inflate_bubble +import finish_cleanup +import copy_folders +import copy_files_specified +import collections + +# Set the home path used regardless the user logged in +BSTRING = paths.bstring_iso_configs +home_folder = Path(BSTRING).expanduser() + +# Move to iso_configs +os.chdir(home_folder) + +# Set the working path +WP_CHROOT = paths.WPCHROOT + +# Set the current working folder +cur_dir = os.getcwd().replace('/', '/') + + +def lbinit(): + """ runs the lb config command for the iso build""" + current_dir = os.getcwd().replace('/', '/') + os.chdir(current_dir + '/fusato') + lbsetup = (conf.lbset_deb64) + os.system(lbsetup) + + +def copy_deb64_specific(): + """" Debian 64 copy jobs + First we copy all the folder trees + Then we copy specific files. + The inputs are stored in the conf.py file + """ + source_q = collections.deque(conf.src_paths_deb64) + destination_q = collections.deque(conf.des_paths_deb64) + src_size_q = len(source_q) + for p in range(src_size_q): + x = source_q.popleft() + y = destination_q.popleft() + shutil.copytree(cur_dir + x, + WP_CHROOT + y, + dirs_exist_ok=True + ) + source_f = collections.deque(conf.src_files_deb64) + destination_f = collections.deque(conf.des_files_deb64) + src_size_f = len(source_f) + for j in range(src_size_f): + w = source_f.popleft() + e = destination_f.popleft() + shutil.copy(cur_dir + w, + WP_CHROOT + e + ) + + +def run_build(): + """ Run and start the build""" + run_cmd = 'sudo lb build' + os.chdir(home_folder) + os.chdir('fusato') + os.system(run_cmd) + +def readybuild(): + """" Ready the bld structure""" + if os.path.exists('fusato'): + rm_cmd = "sudo rm -r -f fusato" + os.system(rm_cmd) + os.makedirs('fusato') + cmd_q = collections.deque(conf.cmd_deb64_q) + cmd_q.popleft() + else: + os.makedirs('fusato') + cmd_q.popleft() + + + + +readybuild() diff --git a/python_modules/deb_arm.py b/python_modules/deb_arm.py new file mode 100644 index 00000000..c0b4ab74 --- /dev/null +++ b/python_modules/deb_arm.py @@ -0,0 +1,169 @@ +""" +* Author: "PeppermintOS Team(peppermintosteam@proton.me) +* +* License: SPDX-License-Identifier: GPL-3.0-or-later +* +* Move and copy files as needed +""" +import os +import shutil +from pathlib import Path +import conf +import paths +import inflate_bubble +import finish_cleanup +import copy_folders +import copy_files_specified + +# Set the home path used regardless the user logged in +BSTRING = paths.bstring_iso_configs +home_folder = Path(BSTRING).expanduser() + +# Move to iso_configs +os.chdir(home_folder) + +# Set the working path +WP_CHROOT = paths.WPCHROOT + +# Set the current working folder +cur_dir = os.getcwd().replace('/', '/') + +def lbinit(): + """ runs the lb config command for the iso build""" + current_dir = os.getcwd().replace('/', '/') + os.chdir(current_dir + '/fusato') + lbsetup = (conf.lbset_debarm) + os.system(lbsetup) + + + +def copy_debarm_specific(): + """" Debian arm64 copy jobs""" + shutil.copytree(cur_dir + paths.src_debarm_osrelease, + WP_CHROOT + paths.des_osrelease, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_debarm_osrelease, + WP_CHROOT + paths.des_osrelease_opt, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_debarm_slpash, + cur_dir + paths.des_splash, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_debarm_isolinux, + cur_dir + paths.des_isolinux, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_debarm_multi, + cur_dir + paths.des_archives, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_deb_grub_theme, + WP_CHROOT + paths.des_grub_theme, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_debarm_modules, + WP_CHROOT + paths.des_modules, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_deb_splash_image, + cur_dir + paths.des_splash_image_isolinux, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_deb_splash_image, + cur_dir + paths.des_splash_image_grub, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_deb_live_theme, + cur_dir + paths.des_live_theme, + dirs_exist_ok=True + ) + + shutil.copy(cur_dir + paths.src_debarm_grub_etc, + WP_CHROOT + paths.des_grub_etc + ) + shutil.copy(cur_dir + paths.src_debarm_settings, + WP_CHROOT + paths.des_setttings + ) + shutil.copy(cur_dir + paths.src_debarm_installer, + WP_CHROOT + paths.des_installer + ) + shutil.copy(cur_dir + paths.src_debarm_sourcesfinal, + WP_CHROOT + paths.des_sourcesfinal + ) + shutil.copy(cur_dir + paths.src_debarm_bootloader, + WP_CHROOT + paths.des_bootloader + ) + shutil.copy(cur_dir + paths.src_debarm_netinstall, + WP_CHROOT + paths.des_netinstall + ) + shutil.copy(cur_dir + paths.src_debarm_sourcelist, + WP_CHROOT + paths.des_sourcelist + ) + + +def run_build(): + run_cmd = 'sudo lb build' + os.chdir(home_folder) + os.chdir('fusato') + os.system(run_cmd) + + +def readybuild(): + """" Ready the bld structure""" + if os.path.exists('fusato'): + rm_cmd = "sudo rm -r -f fusato" + os.system(rm_cmd) + os.makedirs('fusato') + # Run lb config to begin the setup + lbinit() + # Prep the folders + inflate_bubble.set_fusato_structure() + # Packages + inflate_bubble.set_desktop_environment() + inflate_bubble.set_extra_packages() + inflate_bubble.set_general_packages() + inflate_bubble.set_system_packages() + inflate_bubble.set_artwork_packages() + inflate_bubble.set_python_packages() + inflate_bubble.set_calamares_packages() + inflate_bubble.set_firmware_packages_arm() + inflate_bubble.set_binary_packages_arm64() + inflate_bubble.set_system_packages_arm() + copy_folders.copy_folders_files() + copy_files_specified.copy_specific_files() + copy_files_specified.set_symlinks() + copy_debarm_specific() + run_build() + finish_cleanup.make_check_sum() + finish_cleanup.copy_iso_file_nightly_debarm() + finish_cleanup.kill_old_iso() + else: + os.makedirs('fusato') + # Run lb config to begin the setup + lbinit() + # Prep the folders + inflate_bubble.set_fusato_structure() + # Packages + inflate_bubble.set_desktop_environment() + inflate_bubble.set_extra_packages() + inflate_bubble.set_general_packages() + inflate_bubble.set_system_packages() + inflate_bubble.set_artwork_packages() + inflate_bubble.set_python_packages() + inflate_bubble.set_calamares_packages() + inflate_bubble.set_firmware_packages_arm() + inflate_bubble.set_binary_packages_arm64() + inflate_bubble.set_system_packages_arm() + copy_folders.copy_folders_files() + copy_files_specified.copy_specific_files() + copy_files_specified.set_symlinks() + copy_debarm_specific() + run_build() + finish_cleanup.make_check_sum() + finish_cleanup.copy_iso_file_nightly_debarm() + finish_cleanup.kill_old_iso() + + +readybuild() diff --git a/python_modules/dev_32.py b/python_modules/dev_32.py new file mode 100644 index 00000000..383e23bc --- /dev/null +++ b/python_modules/dev_32.py @@ -0,0 +1,171 @@ +""" +* Author: "PeppermintOS Team(peppermintosteam@proton.me) +* +* License: SPDX-License-Identifier: GPL-3.0-or-later +* +* Move and copy files as needed +""" +import os +import shutil +from pathlib import Path +import conf +import paths +import inflate_bubble +import finish_cleanup +import copy_folders +import copy_files_specified + + +# Set the home path used regardless the user logged in +BSTRING = paths.bstring_iso_configs +home_folder = Path(BSTRING).expanduser() + +# Move to iso_configs +os.chdir(home_folder) + +# Set the working path +WP_CHROOT = paths.WPCHROOT + +# Set the current working folder +cur_dir = os.getcwd().replace('/', '/') + + +def lbinit(): + """ runs the lb config command for the iso build""" + current_dir = os.getcwd().replace('/', '/') + os.chdir(current_dir + '/fusato') + lbsetup = (conf.lbset_dev32) + os.system(lbsetup) + + +def copy_dev32_specific(): + """" Devuan 32 copy jobs""" + shutil.copytree(cur_dir + paths.src_dev32_osrelease, + WP_CHROOT + paths.des_osrelease, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev32_osrelease, + WP_CHROOT + paths.des_osrelease_opt, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev32_slpash, + cur_dir + paths.des_splash, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev32_isolinux, + cur_dir + paths.des_isolinux, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev32_multi, + cur_dir + paths.des_archives, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev_grub_theme, + WP_CHROOT + paths.des_grub_theme, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev32_modules, + WP_CHROOT + paths.des_modules, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev_splash_image, + cur_dir + paths.des_splash_image_isolinux, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev_splash_image, + cur_dir + paths.des_splash_image_grub, + dirs_exist_ok=True + ) + + shutil.copytree(cur_dir + paths.src_dev_live_theme, + cur_dir + paths.des_live_theme, + dirs_exist_ok=True + ) + shutil.copy(cur_dir + paths.src_dev32_grub_etc, + WP_CHROOT + paths.des_grub_etc + ) + shutil.copy(cur_dir + paths.src_dev32_settings, + WP_CHROOT + paths.des_setttings + ) + shutil.copy(cur_dir + paths.src_dev32_installer, + WP_CHROOT + paths.des_installer + ) + shutil.copy(cur_dir + paths.src_dev32_sourcesfinal, + WP_CHROOT + paths.des_sourcesfinal + ) + shutil.copy(cur_dir + paths.src_dev32_bootloader, + WP_CHROOT + paths.des_bootloader + ) + shutil.copy(cur_dir + paths.src_dev32_netinstall, + WP_CHROOT + paths.des_netinstall + ) + shutil.copy(cur_dir + paths.src_dev32_sourcelist, + WP_CHROOT + paths.des_sourcelist + ) + + +def run_build(): + """ Run and start the build""" + run_cmd = 'sudo lb build' + os.chdir(home_folder) + os.chdir('fusato') + os.system(run_cmd) + + +def readybuild(): + """ Ready the bld structure""" + if os.path.exists('fusato'): + rm_cmd = "sudo rm -r -f fusato" + os.system(rm_cmd) + os.makedirs('fusato') + # Run lb config to begin the setup + lbinit() + # Prep the folders + inflate_bubble.set_fusato_structure() + # Packages + 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_32() + # 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_32() + copy_folders.copy_folders_files() + copy_files_specified.copy_specific_files() + copy_files_specified.set_symlinks() + copy_dev32_specific() + run_build() + finish_cleanup.make_check_sum() + finish_cleanup.copy_iso_file_nightly_dev32() + finish_cleanup.kill_old_iso() + else: + os.makedirs('fusato') + # Run lb config to begin the setup + lbinit() + # Prep the folders + inflate_bubble.set_fusato_structure() + # Packages + 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_32() + # 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_32() + copy_folders.copy_folders_files() + copy_files_specified.copy_specific_files() + copy_files_specified.set_symlinks() + copy_dev32_specific() + run_build() + finish_cleanup.make_check_sum() + finish_cleanup.copy_iso_file_nightly_dev32() + finish_cleanup.kill_old_iso() + + +readybuild() diff --git a/python_modules/dev_64.py b/python_modules/dev_64.py new file mode 100644 index 00000000..0e467993 --- /dev/null +++ b/python_modules/dev_64.py @@ -0,0 +1,171 @@ +""" +* Author: "PeppermintOS Team(peppermintosteam@proton.me) +* +* License: SPDX-License-Identifier: GPL-3.0-or-later +* +* Move and copy files as needed +""" +import os +import shutil +from pathlib import Path +import conf +import paths +import inflate_bubble +import finish_cleanup +import copy_folders +import copy_files_specified + + +# Set the home path used regardless the user logged in +BSTRING = paths.bstring_iso_configs +home_folder = Path(BSTRING).expanduser() + +# Move to iso_configs +os.chdir(home_folder) + +# Set the working path +WP_CHROOT = paths.WPCHROOT + +# Set the current working folder +cur_dir = os.getcwd().replace('/', '/') + + +def lbinit(): + """ runs the lb config command for the iso build""" + current_dir = os.getcwd().replace('/', '/') + os.chdir(current_dir + '/fusato') + lbsetup = (conf.lbset_dev64) + os.system(lbsetup) + + +def copy_dev64_specific(): + """" Devuan 64 copy jobs""" + shutil.copytree(cur_dir + paths.src_dev64_osrelease, + WP_CHROOT + paths.des_osrelease, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev64_osrelease, + WP_CHROOT + paths.des_osrelease_opt, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev64_slpash, + cur_dir + paths.des_splash, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev64_isolinux, + cur_dir + paths.des_isolinux, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev64_multi, + cur_dir + paths.des_archives, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev_grub_theme, + WP_CHROOT + paths.des_grub_theme, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev64_modules, + WP_CHROOT + paths.des_modules, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev_splash_image, + cur_dir + paths.des_splash_image_isolinux, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev_splash_image, + cur_dir + paths.des_splash_image_grub, + dirs_exist_ok=True + ) + + shutil.copytree(cur_dir + paths.src_dev_live_theme, + cur_dir + paths.des_live_theme, + dirs_exist_ok=True + ) + shutil.copy(cur_dir + paths.src_dev64_grub_etc, + WP_CHROOT + paths.des_grub_etc + ) + shutil.copy(cur_dir + paths.src_dev64_settings, + WP_CHROOT + paths.des_setttings + ) + shutil.copy(cur_dir + paths.src_dev64_installer, + WP_CHROOT + paths.des_installer + ) + shutil.copy(cur_dir + paths.src_dev64_sourcesfinal, + WP_CHROOT + paths.des_sourcesfinal + ) + shutil.copy(cur_dir + paths.src_dev64_bootloader, + WP_CHROOT + paths.des_bootloader + ) + shutil.copy(cur_dir + paths.src_dev64_netinstall, + WP_CHROOT + paths.des_netinstall + ) + shutil.copy(cur_dir + paths.src_dev64_sourcelist, + WP_CHROOT + paths.des_sourcelist + ) + + +def run_build(): + """ Run and start the build""" + run_cmd = 'sudo lb build' + os.chdir(home_folder) + os.chdir('fusato') + os.system(run_cmd) + + +def readybuild(): + """" Ready the bld structure""" + if os.path.exists('fusato'): + rm_cmd = "sudo rm -r -f fusato" + os.system(rm_cmd) + os.makedirs('fusato') + # Run lb config to begin the setup + lbinit() + # Prep the folders + inflate_bubble.set_fusato_structure() + # Packages + 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_dev64_specific() + run_build() + finish_cleanup.make_check_sum() + finish_cleanup.copy_iso_file_nightly_dev64() + finish_cleanup.kill_old_iso() + else: + os.makedirs('fusato') + # Run lb config to begin the setup + lbinit() + # Prep the folders + inflate_bubble.set_fusato_structure() + # Packages + 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_dev64_specific() + run_build() + finish_cleanup.make_check_sum() + finish_cleanup.copy_iso_file_nightly_dev64() + finish_cleanup.kill_old_iso() + + +readybuild() diff --git a/python_modules/dev_arm.py b/python_modules/dev_arm.py new file mode 100644 index 00000000..3b852e0b --- /dev/null +++ b/python_modules/dev_arm.py @@ -0,0 +1,169 @@ +""" +* Author: "PeppermintOS Team(peppermintosteam@proton.me) +* +* License: SPDX-License-Identifier: GPL-3.0-or-later +* +* Move and copy files as needed +""" +import os +import shutil +from pathlib import Path +import conf +import paths +import inflate_bubble +import finish_cleanup +import copy_folders +import copy_files_specified + +# Set the home path used regardless the user logged in +BSTRING = paths.bstring_iso_configs +home_folder = Path(BSTRING).expanduser() + +# Move to iso_configs +os.chdir(home_folder) + +# Set the working path +WP_CHROOT = paths.WPCHROOT + +# Set the current working folder +cur_dir = os.getcwd().replace('/', '/') + +def lbinit(): + """ runs the lb config command for the iso build""" + current_dir = os.getcwd().replace('/', '/') + os.chdir(current_dir + '/fusato') + lbsetup = (conf.lbset_devarm) + os.system(lbsetup) + + + +def copy_devarm_specific(): + """" Devuan arm64 copy jobs""" + shutil.copytree(cur_dir + paths.src_devarm_osrelease, + WP_CHROOT + paths.des_osrelease, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_devarm_osrelease, + WP_CHROOT + paths.des_osrelease_opt, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_devarm_slpash, + cur_dir + paths.des_splash, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_devarm_isolinux, + cur_dir + paths.des_isolinux, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_devarm_multi, + cur_dir + paths.des_archives, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev_grub_theme, + WP_CHROOT + paths.des_grub_theme, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_devarm_modules, + WP_CHROOT + paths.des_modules, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev_splash_image, + cur_dir + paths.des_splash_image_isolinux, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev_splash_image, + cur_dir + paths.des_splash_image_grub, + dirs_exist_ok=True + ) + shutil.copytree(cur_dir + paths.src_dev_live_theme, + cur_dir + paths.des_live_theme, + dirs_exist_ok=True + ) + + shutil.copy(cur_dir + paths.src_devarm_grub_etc, + WP_CHROOT + paths.des_grub_etc + ) + shutil.copy(cur_dir + paths.src_devarm_settings, + WP_CHROOT + paths.des_setttings + ) + shutil.copy(cur_dir + paths.src_devarm_installer, + WP_CHROOT + paths.des_installer + ) + shutil.copy(cur_dir + paths.src_devarm_sourcesfinal, + WP_CHROOT + paths.des_sourcesfinal + ) + shutil.copy(cur_dir + paths.src_devarm_bootloader, + WP_CHROOT + paths.des_bootloader + ) + shutil.copy(cur_dir + paths.src_devarm_netinstall, + WP_CHROOT + paths.des_netinstall + ) + shutil.copy(cur_dir + paths.src_devarm_sourcelist, + WP_CHROOT + paths.des_sourcelist + ) + + +def run_build(): + run_cmd = 'sudo lb build' + os.chdir(home_folder) + os.chdir('fusato') + os.system(run_cmd) + + +def readybuild(): + """" Ready the bld structure""" + if os.path.exists('fusato'): + rm_cmd = "sudo rm -r -f fusato" + os.system(rm_cmd) + os.makedirs('fusato') + # Run lb config to begin the setup + lbinit() + # Prep the folders + inflate_bubble.set_fusato_structure() + # Packages + inflate_bubble.set_desktop_environment() + inflate_bubble.set_extra_packages() + inflate_bubble.set_general_packages() + inflate_bubble.set_system_packages() + inflate_bubble.set_artwork_packages() + inflate_bubble.set_python_packages() + inflate_bubble.set_calamares_packages() + inflate_bubble.set_firmware_packages_arm() + inflate_bubble.set_binary_packages_arm64() + inflate_bubble.set_system_packages_arm() + copy_folders.copy_folders_files() + copy_files_specified.copy_specific_files() + copy_files_specified.set_symlinks() + copy_devarm_specific() + run_build() + finish_cleanup.make_check_sum() + finish_cleanup.copy_iso_file_nightly_devarm() + finish_cleanup.kill_old_iso() + else: + os.makedirs('fusato') + # Run lb config to begin the setup + lbinit() + # Prep the folders + inflate_bubble.set_fusato_structure() + # Packages + inflate_bubble.set_desktop_environment() + inflate_bubble.set_extra_packages() + inflate_bubble.set_general_packages() + inflate_bubble.set_system_packages() + inflate_bubble.set_artwork_packages() + inflate_bubble.set_python_packages() + inflate_bubble.set_calamares_packages() + inflate_bubble.set_firmware_packages_arm() + inflate_bubble.set_binary_packages_arm64() + inflate_bubble.set_system_packages_arm() + copy_folders.copy_folders_files() + copy_files_specified.copy_specific_files() + copy_files_specified.set_symlinks() + copy_devarm_specific() + run_build() + finish_cleanup.make_check_sum() + finish_cleanup.copy_iso_file_nightly_devarm() + finish_cleanup.kill_old_iso() + + +readybuild() diff --git a/python_modules/finish_cleanup.py b/python_modules/finish_cleanup.py index e3b4fae3..0a4e3802 100644 --- a/python_modules/finish_cleanup.py +++ b/python_modules/finish_cleanup.py @@ -10,6 +10,7 @@ import os import shutil from pathlib import Path from datetime import date +<<<<<<< HEAD import time # Set the home path used regardless the user logged in @@ -22,13 +23,28 @@ BASE_DESTINATION = '/var/www/html/nightly' # Set the base ISO Name BASE_NAME = 'PeppermintOS' +======= +import paths +import time + + +# Set the home path used regardless the user logged in +bstring = '~/bubbles/iso_configs/fusato' +home_folder = Path( bstring ).expanduser() +string_home = str(home_folder) +>>>>>>> cc1e91f1 (Updated) def make_check_sum(): """ Generate the check sum files """ +<<<<<<< HEAD os.chdir(HOME_FOLDER + FUSATO_ROOT) current_working_directory = os.getcwd().replace('/', '/') for _, _, files in os.walk(current_working_directory): +======= + current_dir = os.getcwd().replace('/', '/') + for root, dirs, files in os.walk(current_dir): +>>>>>>> cc1e91f1 (Updated) for fiso in files: if fiso.endswith('.iso'): sha = "sha512sum " @@ -37,6 +53,7 @@ def make_check_sum(): os.system(gen_sum) +<<<<<<< HEAD def process_iso(base, arch, desktop): """ Process the ISO for a given base, architecture, and desktop. @@ -110,10 +127,193 @@ def check_build_type(): check_build() +======= +def copy_iso_file_nightly_deb32(): + """ Copy the new ISO to the Nightly folder""" + # Set the home path used regardless the user logged in + bstring = '/home/pepadmin/bubbles/iso_configs/fusato' + home_folder = Path( bstring ).expanduser() + string_home = str(home_folder) + today = str(date.today()) + os.chdir(home_folder) + for root, dirs, files in os.walk(home_folder): + for fiso in files: + if fiso.endswith('.iso'): + src_iso = string_home + '/' + fiso + rdes = string_home + '/PeppermintOS-Debian_32_' + today + '.iso' + des_iso = '/var/www/html/nightly/deb32' + os.rename(src_iso, rdes) + shutil.copy(rdes, des_iso) + for fsum in files: + if fsum.endswith('.checksum'): + src_sum = string_home + '/' + fsum + rdes_sum = string_home + '/PeppermintOS-Debian_32-sha512.checksum' + des_sum = '/var/www/html/nightly/deb32' + os.rename(src_sum, rdes_sum) + shutil.copy(rdes_sum, des_sum) + + +def copy_iso_file_nightly_deb64(): + """ Copy the new ISO to the Nightly folder""" + # Set the home path used regardless the user logged in + bstring = '/home/pepadmin/bubbles/iso_configs/fusato' + home_folder = Path( bstring ).expanduser() + string_home = str(home_folder) + today = str(date.today()) + os.chdir(home_folder) + for root, dirs, files in os.walk(home_folder): + for fiso in files: + if fiso.endswith('.iso'): + src_iso = string_home + '/' + fiso + rdes = string_home + '/PeppermintOS-Debian_64_' + today + '.iso' + des_iso = '/var/www/html/nightly/deb64' + os.rename(src_iso, rdes) + shutil.copy(rdes, des_iso) + for fsum in files: + if fsum.endswith('.checksum'): + src_sum = string_home + '/' + fsum + rdes_sum = string_home + '/PeppermintOS-Debian_64-sha512.checksum' + des_sum = '/var/www/html/nightly/deb64' + os.rename(src_sum, rdes_sum) + shutil.copy(rdes_sum, des_sum) + + +def copy_iso_file_nightly_dev32(): + """ Copy the new ISO to the Nightly folder""" + # Set the home path used regardless the user logged in + bstring = '/home/pepadmin/bubbles/iso_configs/fusato' + home_folder = Path( bstring ).expanduser() + string_home = str(home_folder) + today = str(date.today()) + os.chdir(home_folder) + for root, dirs, files in os.walk(home_folder): + for fiso in files: + if fiso.endswith('.iso'): + src_iso = string_home + '/' + fiso + rdes = string_home + '/PeppermintOS-Devuan_32_' + today + '.iso' + des_iso = '/var/www/html/nightly/dev32' + os.rename(src_iso, rdes) + shutil.copy(rdes, des_iso) + for fsum in files: + if fsum.endswith('.checksum'): + src_sum = string_home + '/' + fsum + rdes_sum = string_home + '/PeppermintOS-Devuan_32-sha512.checksum' + des_sum = '/var/www/html/nightly/dev32' + os.rename(src_sum, rdes_sum) + shutil.copy(rdes_sum, des_sum) + + +def copy_iso_file_nightly_dev64(): + """ Copy the new ISO to the Nightly folder""" + # Set the home path used regardless the user logged in + bstring = '/home/pepadmin/bubbles/iso_configs/fusato' + home_folder = Path( bstring ).expanduser() + string_home = str(home_folder) + today = str(date.today()) + os.chdir(home_folder) + for root, dirs, files in os.walk(home_folder): + for fiso in files: + if fiso.endswith('.iso'): + src_iso = string_home + '/' + fiso + rdes = string_home + '/PeppermintOS-Devuan_64_' + today + '.iso' + des_iso = '/var/www/html/nightly/dev64' + os.rename(src_iso, rdes) + shutil.copy(rdes, des_iso) + for fsum in files: + if fsum.endswith('.checksum'): + src_sum = string_home + '/' + fsum + rdes_sum = string_home + '/PeppermintOS-Devuan_64-sha512.checksum' + des_sum = '/var/www/html/nightly/dev64' + os.rename(src_sum, rdes_sum) + shutil.copy(rdes_sum, des_sum) + +def copy_iso_file_prod_deb64(): + """ Copy the pro nightly and prep it for production push""" + today = str(date.today()) + nstring = '/var/www/html/nightly/deb64' + nightly_folder = Path( nstring ).expanduser() + string_nightly = str(nightly_folder) + pstring= '/var/www/html/prod' + production_folder = Path( pstring ).expanduser() + string_production = str(production_folder) + + src_iso = string_nightly + '/PeppermintOS-Debian_64_' + today + '.iso' + src_checksum = string_nightly + '/PeppermintOS-Debian_64-sha512.checksum' + rdes = string_nightly + '/PeppermintOS-Debian-64.iso' + des_iso = pstring + + os.rename(src_iso, rdes) + shutil.copy(rdes, des_iso) + shutil.copy(src_checksum, des_iso) + os.remove(rdes) + os.remove(src_checksum) + + +def copy_iso_file_nightly_debarm(): + """ Copy the new ISO to the Nightly folder""" + # Set the home path used regardless the user logged in + bstring = '/home/pepadmin/bubbles/iso_configs/fusato' + home_folder = Path( bstring ).expanduser() + string_home = str(home_folder) + today = str(date.today()) + os.chdir(home_folder) + for root, dirs, files in os.walk(home_folder): + for fiso in files: + if fiso.endswith('.iso'): + src_iso = string_home + '/' + fiso + rdes = string_home + '/PeppermintOS-Debian_arm_' + today + '.iso' + des_iso = '/var/www/html/nightly/debarm' + os.rename(src_iso, rdes) + shutil.copy(rdes, des_iso) + for fsum in files: + if fsum.endswith('.checksum'): + src_sum = string_home + '/' + fsum + rdes_sum = string_home + '/PeppermintOS-Debian_arm-sha512.checksum' + des_sum = '/var/www/html/nightly/debarm' + os.rename(src_sum, rdes_sum) + shutil.copy(rdes_sum, des_sum) + + +def copy_iso_file_nightly_devarm(): + """ Copy the new ISO to the Nightly folder""" + # Set the home path used regardless the user logged in + bstring = '/home/pepadmin/bubbles/iso_configs/fusato' + home_folder = Path( bstring ).expanduser() + string_home = str(home_folder) + today = str(date.today()) + os.chdir(home_folder) + for root, dirs, files in os.walk(home_folder): + for fiso in files: + if fiso.endswith('.iso'): + src_iso = string_home + '/' + fiso + rdes = string_home + '/PeppermintOS-Devuan_arm_' + today + '.iso' + des_iso = '/var/www/html/nightly/devarm' + os.rename(src_iso, rdes) + shutil.copy(rdes, des_iso) + for fsum in files: + if fsum.endswith('.checksum'): + src_sum = string_home + '/' + fsum + rdes_sum = string_home + '/PeppermintOS-Devuan_arm-sha512.checksum' + des_sum = '/var/www/html/nightly/devarm' + os.rename(src_sum, rdes_sum) + shutil.copy(rdes_sum, des_sum) + + +def kill_fusato(): + """ Delete the fusato folder as it is no longer needed""" + icstring ='~/bubbles/iso_configs/' + ic_root = Path( icstring ).expanduser() + os.chdir(ic_root) + current_dir = os.getcwd().replace('/', '/') + del_fldr = "fusato" + del_path = os.path.join(current_dir, del_fldr) + os.rmdir(del_path) +>>>>>>> cc1e91f1 (Updated) def kill_old_iso(): """ Delete older ISOs""" +<<<<<<< HEAD base_path = BASE_DESTINATION arch_list = ['/deb32/', '/deb64/', '/debarm/', '/dev32/', '/dev64/', '/devarm/'] de_list = ['gfb', 'opb', 'xfce', 'loaded', 'server', 'mini', 'kde'] @@ -133,3 +333,17 @@ def kill_old_iso(): if file_time < current_time - day*N: print(f" Delete : {fls}") os.remove(file_location) +======= + for p in paths.nightly_paths: + N = 1 + os.chdir(os.path.join(os.getcwd(), p)) + list_of_files = os.listdir() + current_time = time.time() + day = 86400 + for fls in list_of_files: + file_location = os.path.join(os.getcwd(), fls) + file_time = os.stat(file_location).st_mtime + if file_time < current_time - day*N: + print(f" Delete : {fls}") + os.remove(file_location) +>>>>>>> cc1e91f1 (Updated) diff --git a/python_modules/fresh_bubble.py b/python_modules/fresh_bubble.py index e69356d9..f03829ac 100644 --- a/python_modules/fresh_bubble.py +++ b/python_modules/fresh_bubble.py @@ -23,6 +23,7 @@ def set_config_structure(): # you can add additional, folders to the array as needed, you can also # remove a folder if you do not deem it necessary to be used folders = ["aliases", "xfce", "wallpaper", "user_config", "theme", +<<<<<<< HEAD "sources", "icons", "profile", "polkit", "plymouth", "osrelease", "multimedia", "menu", "splash", "lightdm", "issue", "info", "hooks", "grub", "font", @@ -30,6 +31,13 @@ def set_config_structure(): "application", "PepProPixMaps", "PepProTools", "packages", "loaded-application", "loaded-hooks", "loaded-wallpaper", "loaded-xfce", "id_files", "server-hooks,", "server-installer", "server-firewall", "server-scripts" +======= + "sources", "icons", "gksudo", "profile", "polkit", + "plymouth", "osrelease", "multimedia", "menu", "splash", + "lightdm", "issue", "info", "hooks", "grub", "font", + "desktop_base", "database", "calamares_settings", + "application", "PepProPixMaps", "PepProTools", "packages" +>>>>>>> cc1e91f1 (Updated) ] for f in folders: if os.path.exists(f): @@ -39,4 +47,8 @@ def set_config_structure(): else: os.makedirs(f) +<<<<<<< HEAD set_config_structure() +======= +set_config_structure() +>>>>>>> cc1e91f1 (Updated) diff --git a/python_modules/inflate_bubble.py b/python_modules/inflate_bubble.py index a2666819..869dbded 100644 --- a/python_modules/inflate_bubble.py +++ b/python_modules/inflate_bubble.py @@ -9,6 +9,7 @@ import os from pathlib import Path +<<<<<<< HEAD import conf # Set the home path used regardless the user logged in @@ -381,3 +382,120 @@ def set_firmware_arm(): conf.FIRMWARE_LIST_ARM, mode='x' ) +======= +import paths +import conf + +# Set the home path used regardless the user logged in +BSTRING = paths.bstring_iso_conifgs_fusato +home_folder = Path(BSTRING).expanduser() + + +def set_desktop_environment(): + """ Create the list for the desktop environment""" + # Start in iso_configs/fusato + os.chdir(home_folder) + # set current directory + current_dir = os.getcwd().replace('/', '/') + # change to package-lists + os.chdir(current_dir + paths.de_path) + with open('desktop.list.chroot', 'x', encoding='UTF-8') as de_file: + de_file.write(conf.env_list) + + +def set_extra_packages(): + """ Create the list for the desktop environment extras goodies""" + with open( + 'extra-desktop.list.chroot', 'x', encoding='UTF-8' + ) as extra_file: + extra_file.write(conf.desktop_list) + + +def set_general_packages(): + """ Create the list for standard install packages""" + with open('packages.list.chroot', 'x', encoding='UTF-8') as general_file: + general_file.write(conf.general_list) + + +def set_system_packages(): + """ Create the list for system management packages""" + with open('system.list.chroot', 'x', encoding='UTF-8') as system_file: + system_file.write(conf.system_list) + + +def set_system_packages_32(): + """ Create the list for system management packages""" + with open('system.list.chroot', 'a', encoding='UTF-8') as system_file: + system_file.write(conf.system_list_32) + + +def set_system_packages_64(): + """ Create the list for system management packages""" + with open('system.list.chroot', 'a', encoding='UTF-8') as system_file: + system_file.write(conf.system_list_64) + + +def set_system_packages_arm(): + """ Create the list for system management packages""" + with open('system.list.chroot', 'a', encoding='UTF-8') as system_file: + system_file.write(conf.system_list_arm64) + + +def set_artwork_packages(): + """ Create the list for icons, wallpaper and themes""" + with open('artwork.list.chroot', 'x', encoding='UTF-8') as artwork_file: + artwork_file.write(conf.artwork_list) + + +def set_python_packages(): + """ Create the list for python related needs""" + with open('python.list.chroot', 'x', encoding='UTF-8') as python_file: + python_file.write(conf.python_list) + + +def set_calamares_packages(): + """ Create the list for the calamares installer""" + with open( + 'installer.list.chroot', 'x', encoding='UTF-8' + ) as calamares_file: + calamares_file.write(conf.calamares_list) + + +def set_firmware_packages(): + """ Create the list for the firmware support for genral ISOs""" + with open('firmware.list.chroot', 'x', encoding='UTF-8') as firmware_file: + firmware_file.write(conf.firmware_list) + + +def set_firmware_packages_arm(): + """ Create the list for the firmware support for arm ISOs""" + with open('firmware.list.chroot', 'x', encoding='UTF-8') as firmware_file: + firmware_file.write(conf.firmware_list_arm) + + +def set_binary_packages_64(): + """ Create the list for grub binary packages for 64 bit""" + with open('installer.list.binary', 'x', encoding='UTF-8') as binary_file: + binary_file.write(conf.binary_list_64) + + +def set_binary_packages_arm64(): + """ Create the list for grub binary packages for 64 bit""" + with open('installer.list.binary', 'x', encoding='UTF-8') as binary_file: + binary_file.write(conf.binary_list_arm) + + +def set_binary_packages_32(): + """ Create the list for grub binary packages for 32 bit""" + with open('installer.list.binary', 'x', encoding='UTF-8') as binary_file: + binary_file.write(conf.binary_list_32) + + +def set_fusato_structure(): + """ Make some needed folders for the fustao build process.""" + working_path = os.getcwd().replace('/', '/') + make_fldrs = paths.make_folders + # make needed folders + for f in make_fldrs: + os.makedirs(working_path + f) +>>>>>>> cc1e91f1 (Updated) diff --git a/python_modules/paths.py b/python_modules/paths.py new file mode 100644 index 00000000..965945eb --- /dev/null +++ b/python_modules/paths.py @@ -0,0 +1,340 @@ + +#### SHARED PATHS +## bstring paths - Public +bstring_iso_configs = '~/bubbles/iso_configs' +bstring_iso_conifgs_fusato = '~/bubbles/iso_configs/fusato' +# CHROOT +WPCHROOT = "fusato/config/includes.chroot" + +########################################## +## Associated to inflate_bubble.py paths +# Desktop Environments + +de_path = '/config/package-lists/' + +# fusato folders to create +make_folders = [ + '/config/includes.chroot/usr/share/distro-info/', + '/config/includes.chroot/usr/share/python-apt/templates/', + '/config/includes.chroot/usr/share/icons/default', + '/config/includes.chroot/usr/share/peppermint/', + '/config/includes.chroot/usr/share/themes/', + '/config/includes.chroot/usr/local/bin/', + '/config/includes.chroot/usr/bin/', + '/config/includes.chroot/usr/sbin', + '/config/includes.chroot/etc/lightdm', + '/config/includes.bootstrap/etc/apt', + '/config/includes.chroot/etc/default', + '/config/includes.chroot/etc/apt', + '/config/includes.chroot/etc/apt/preferences.d', + '/config/includes.chroot/etc/apt/sources.list.d', + '/config/includes.chroot/etc/skel/Desktop', + '/config/includes.chroot/etc/skel/.local/share', + '/config/includes.chroot/etc/skel/.config/autostart/' + ] +# End Inflate Bubble Paths + +# Nightly paths + +nightly_paths = [ + '/var/www/html/nightly/deb32', + '/var/www/html/nightly/dev32', + '/var/www/html/nightly/deb64', + '/var/www/html/nightly/dev64', + '/var/www/html/nightly/devarm', + '/var/www/html/nightly/debarm' + ] + + +######################################### +### Associated to copy_files_specified.py +## Specified Files +#Alias things +src_alias = '/aliases/bash_aliases' +des_alias = '/etc/skel/.bash_aliases' + +# Xdaily things +src_xdaily = '/PepProTools/xDaily' +des_xdaily = '/usr/local/bin/xDaily' + +# Hub things +src_hub = '/PepProTools/hub' +des_hub = '/usr/local/bin/hub' + +# Welcome things +src_welcome = '/PepProTools/welcome' +des_welcome = '/usr/local/bin/welcome' + +# Kumo things +src_kumo = '/PepProTools/kumo' +des_kumo = '/usr/local/bin/kumo' + +# Lightdm things +src_lightdm = '/lightdm/lightdm.conf' +des_lightdm = '/etc/lightdm/lightdm.conf' +src_lightdm_greeter = '/lightdm/lightdm-gtk-greeter.conf' +des_lightdm_greeter = '/fusato/config/includes.chroot/etc/lightdm/lightdm-gtk-greeter.conf' + +# Plymouth things +src_ply = '/plymouth/plymouthd.conf' +des_ply = '/fusato/config/includes.chroot/usr/share/plymouthd.conf' + +# Desktop-base things +src_dbase_grub = '/desktop_base/lines-theme/grub' +src_dbase_lockscreen = '/desktop_base/lines-theme/lockscreen' +src_dbase_login = '/desktop_base/lines-theme/login' +src_dbase_wallpaper = '/desktop_base/lines-theme/wallpaper' +des_dbase_grub = '/usr/share/desktop-base/lines-theme/grub' +des_dbase_lockscreen = '/usr/share/desktop-base/lines-theme/lockscreen' +des_dbase_login = '/usr/share/desktop-base/lines-theme/login' +des_dbase_wallpaper = '/usr/share/desktop-base/lines-theme/wallpaper' + + +# Symlinks +pep_info = '/usr/share/python-apt/templates/Peppermint.info' +pep_mirror = '/usr/share/python-apt/templates/Peppermint.mirrors' +pep_csv = '/usr/share/distro-info/peppermint.csv' + +# Plank things +src_plank = '/application/plank.desktop' +des_plank = '/etc/skel/.config/autostart/plank.desktop' + +### End of copy_file_specified.py + + +############################################ +### Associated to copy_folders.py +## copy_folder_files + +# Plymouth Things +src_ply_lines = '/plymouth/lines' +des_ply_lines = '/usr/share/plymouth/themes/lines' + +# Application things +src_apps = '/application' +des_apps = '/usr/share/applications' + +# Font things +src_font = '/font' +des_font = '/usr/share/fonts/pepconf' + +# hooks things +src_hooks_live = '/hooks/live' +des_hooks_live = '/usr/lib/live/config' + +src_hooks_normal = '/hooks/normal' +des_hooks_normal = '/fusato/config/hooks/normal' + + +# Issue things +src_issue = '/issue' +des_issue = '/fusato/config/includes.bootstrap/etc' +des_issue_etc = '/etc' +des_issues_opt = '/opt/pepconf' + +# Polkit things +src_polkit = '/polkit' +des_polkit = '/usr/share/polkit-1/actions' + +# Database things +src_database = '/database' +des_database = '/opt/pypep/dbpep' + +# User Config things +src_user_configs = '/user_config' +des_user_configs = '/etc/live/config.conf.d' + +# Pixmaps things +src_pixmaps = '/PepProPixMaps' +des_pixmaps = '/usr/share/pixmaps' + +# Wallpaper things +src_wallpaper = '/wallpaper' +des_wallpaper = '/usr/share/backgrounds' + +# Menu things +src_menu = '/menu/menus' +des_menu = '/etc/skel/.config/menus' + +# Xfce4 things +src_xfce = '/xfce/xfce4' +des_xfce = '/etc/skel/.config/xfce4' + +# user face profile things +src_face = '/face' +des_face = '/etc/skel/' + +# neofecth things +src_neo_fetch = '/neofetch/neofetch' +des_neo_fetch = '/etc/skel/.config/neofetch' + +# Thunar things +src_thunar = '/xfce/Thunar' +des_thunar = '/etc/skel/.config/Thunar' + +# Pep Tools things +src_pmostools = '/pmostools' +des_pmostools = '/etc/skel/.local/share/pmostools' + +# Autostart Things +src_auto_start = '/autostart' +des_auto_start ='/etc/skel/.config/autostart' + +# Python Libs +src_pylibs = '/pylibraries' +des_pylibs = '/usr/lib/python3/dist-packages' + +#Theme things +src_debian_dark = '/theme/Marwaita?Dark?Debian ' +src_manjaro_dark = '/theme/Marwaita?Dark?Manjaro ' +src_peppermint_dark = '/theme/Marwaita?Dark?Peppermint ' +src_debian = '/theme/Marwaita?Debian ' +src_manjaro = '/theme/Marwaita?Manjaro ' +src_peppermint = '/theme/Marwaita?Peppermint ' +des_themes = '/fusato/config/includes.chroot/usr/share/themes' + +# icon things +src_tela_blue_dark = '/icons/Tela-circle-blue-dark ' +src_tela_green_dark = '/icons/Tela-circle-green-dark ' +src_tela_red_dark = '/icons/Tela-circle-red-dark ' +src_tela_blue_base = '/icons/Tela-circle-blue ' +src_tela_green_base = '/icons/Tela-circle-green ' +src_tela_red_base = '/icons/Tela-circle-red ' +src_tela = '/icons/Tela-circle ' +des_icons = '/fusato/config/includes.chroot/usr/share/icons' +### End Copy Folders + +########################################################## +### Arch Specific Paths. +# Folder + +# OS Release Things +src_deb32_osrelease = '/osrelease/deb_32' +src_dev32_osrelease = '/osrelease/dev_32' +src_deb64_osrelease = '/osrelease/deb_64' +src_dev64_osrelease = '/osrelease/dev_64' +src_debarm_osrelease = '/osrelease/deb_arm' +src_devarm_osrelease = '/osrelease/dev_arm' +des_osrelease = '/usr/lib' +des_osrelease_opt = '/opt/pepconf' + +# Boot Splash things +src_deb32_slpash = '/splash/deb_32/boot' +src_dev32_slpash = '/splash/dev_32/boot' +src_deb64_slpash = '/splash/deb_64/boot' +src_dev64_slpash = '/splash/dev_64/boot' +src_debarm_slpash = '/splash/deb_arm/boot' +src_devarm_slpash = '/splash/dev_arm/boot' +des_splash = '/fusato/config/includes.binary/boot' + + +src_deb32_isolinux = '/splash/deb_32/isolinux' +src_dev32_isolinux = '/splash/dev_32/isolinux' +src_deb64_isolinux = '/splash/deb_64/isolinux' +src_dev64_isolinux = '/splash/dev_32/isolinux' +src_debarm_isolinux = '/splash/deb_arm/isolinux' +src_devarm_isolinux = '/splash/dev_arm/isolinux' +des_isolinux = '/fusato/config/includes.binary/isolinux' + +# The actual Splash images +src_deb_splash_image = '/splash/deb_splash' +src_dev_splash_image = '/splash/dev_splash' +des_splash_image_isolinux = '/fusato/config/includes.binary/isolinux' +des_splash_image_grub = '/fusato/config/includes.binary/boot/grub' + +# Live Boot Theme +src_deb_live_theme = '/splash/deb_live-theme' +src_dev_live_theme = '/splash/deb_live-theme' +des_live_theme = '/fusato/config/includes.binary/boot/grub' + +# MultiMedia things +src_deb32_multi = '/multimedia/deb_32' +src_dev32_multi = '/multimedia/dev_32' +src_deb64_multi = '/multimedia/deb_64' +src_dev64_multi = '/multimedia/dev_64' +src_debarm_multi = '/multimedia/deb_arm' +src_devarm_multi = '/multimedia/dev_arm' +des_archives = '/fusato/config/archives' + +# Grub things +src_deb_grub_theme = '/grub/deb_themes' +src_dev_grub_theme = '/grub/dev_themes' +des_grub_theme = '/boot/grub/themes' + +src_deb32_grub_etc = '/grub/deb_64/grub' +src_dev32_grub_etc = '/grub/dev_32/grub' +src_deb64_grub_etc = '/grub/deb_64/grub' +src_dev64_grub_etc = '/grub/dev_64/grub' +src_debarm_grub_etc = '/grub/deb_arm/grub' +src_devarm_grub_etc = '/grub/dev_arm/grub' +des_grub_etc = '/etc/default/grub' + +# Calamares things +src_brand = '/calamares_settings/branding/peppermint' +des_brand = '/etc/calamares/branding/peppermint' + +src_deb32_modules = '/calamares_settings/deb_32/calamares/modules' +src_dev32_modules = '/calamares_settings/dev_32/calamares/modules' +src_deb64_modules = '/calamares_settings/deb_64/calamares/modules' +src_dev64_modules = '/calamares_settings/dev_64/calamares/modules' +src_debarm_modules = '/calamares_settings/deb_arm/calamares/modules' +src_devarm_modules = '/calamares_settings/dev_arm/calamares/modules' +des_modules = '/etc/calamares/modules' + +# Files +# Calamares Files +src_deb32_settings = '/calamares_settings/deb_32/calamares/settings.conf' +src_dev32_settings = '/calamares_settings/dev_32/calamares/settings.conf' +src_deb64_settings = '/calamares_settings/deb_64/calamares/settings.conf' +src_dev64_settings = '/calamares_settings/dev_64/calamares/settings.conf' +src_debarm_settings = '/calamares_settings/deb_arm/calamares/settings.conf' +src_devarm_settings = '/calamares_settings/dev_arm/calamares/settings.conf' +des_setttings = '/etc/calamares/settings.conf' + +src_deb32_installer = '/calamares_settings/deb_32/install-peppermint' +src_dev32_installer = '/calamares_settings/dev_32/install-peppermint' +src_deb64_installer = '/calamares_settings/deb_64/install-peppermint' +src_dev64_installer = '/calamares_settings/dev_64/install-peppermint' +src_debarm_installer = '/calamares_settings/deb_arm/install-peppermint' +src_devarm_installer = '/calamares_settings/dev_arm/install-peppermint' +des_installer = '/usr/bin/install-peppermint' + +src_deb32_sourcesfinal = '/calamares_settings/deb_32/sources-final' +src_dev32_sourcesfinal = '/calamares_settings/dev_32/sources-final' +src_deb64_sourcesfinal = '/calamares_settings/deb_64/sources-final' +src_dev64_sourcesfinal = '/calamares_settings/dev_64/sources-final' +src_debarm_sourcesfinal = '/calamares_settings/deb_arm/sources-final' +src_devarm_sourcesfinal = '/calamares_settings/dev_arm/sources-final' +des_sourcesfinal = '/usr/sbin/sources-final' + +src_deb32_bootloader = '/calamares_settings/deb_32/bootloader-config' +src_dev32_bootloader = '/calamares_settings/dev_32/bootloader-config' +src_deb64_bootloader = '/calamares_settings/deb_64/bootloader-config' +src_dev64_bootloader = '/calamares_settings/dev_64/bootloader-config' +src_debarm_bootloader = '/calamares_settings/deb_arm/bootloader-config' +src_devarm_bootloader = '/calamares_settings/dev_arm/bootloader-config' +des_bootloader = '/usr/sbin/bootloader-config' + +src_deb32_netinstall ='/calamares_settings/deb_32/calamares/netinstall-packages' +src_dev32_netinstall ='/calamares_settings/dev_32/calamares/netinstall-packages' +src_deb64_netinstall ='/calamares_settings/deb_64/calamares/netinstall-packages' +src_dev64_netinstall ='/calamares_settings/dev_64/calamares/netinstall-packages' +src_debarm_netinstall ='/calamares_settings/deb_arm/calamares/netinstall-packages' +src_devarm_netinstall ='/calamares_settings/dev_arm/calamares/netinstall-packages' +des_netinstall = '/etc/calamares/netinstall-packages' + +src_icon = '/calamares_settings/adddesktopicon/add-calamares-desktop-icon' +des_icon = '/usr/bin/add-calamares-desktop-icon' + +# Source things +src_deb32_sourcelist = '/sources/deb_32/sources.list' +src_dev32_sourcelist = '/sources/dev_32/sources.list' +src_deb64_sourcelist = '/sources/deb_64/sources.list' +src_dev64_sourcelist = '/sources/dev_64/sources.list' +src_debarm_sourcelist = '/sources/deb_arm/sources.list' +src_devarm_sourcelist = '/sources/dev_arm/sources.list' +des_sourcelist = '/opt/pepconf/sources.list' + +# Main line ID File +src_main_line_pep_id = '/id_files/pep_id' +des_main_line_pep_id = '/usr/share/peppermint/pep_id'