Updated: Better written the GnomeFlashback algorithim

Signed-off-by: debianpepper <pdpdebdevuan@protonmail.com>
This commit is contained in:
debianpepper 2023-09-30 20:30:29 +09:00
parent 7431db937a
commit 121fb8a277
1 changed files with 97 additions and 543 deletions

View File

@ -46,31 +46,10 @@ class BuildXfce:
def __init__(self, sbase, sarch):
self.sbase = sbase
self.sarch = sarch
# Change to the root of Fusato
# then run the buils
os.chdir(HOME_FOLDER + FUSATO_ROOT)
self.build_system()
# Determine what base to build
#if sbase == "deb":
# Run the Debian Build
#self.debian_build()
#elif sbase == "dev":
# self.devuan_build()
#else:
# print("No base has been found")
def debian_build(self):
"""
Used to build the Debian base XFCE ISO
"""
if self.sarch == '_64':
self.build_system()
elif self.sarch == '_32':
self.build_deb_32()
elif self.sarch == '_arm':
self.build_deb_arm()
else:
logger.warning("No active build specified!")
def lb_helper(self):
@ -101,8 +80,8 @@ class BuildXfce:
os.system(lbsetup)
else:
lbsetup = None
def infra_helper(self):
"""
Helper for the infra classes this is shared for all builds
@ -111,8 +90,8 @@ class BuildXfce:
infra.BinaryFolders(self.sbase, self.sarch)
infra.ArchitectureFiles(self.sbase, self.sarch)
infra.Archive(self.sbase, self.sarch)
def xfce_helper(self):
"""
Helper for the xfce desktop shared for all builds
@ -125,24 +104,25 @@ class BuildXfce:
execute = i + '()'
exec(execute)
elif self.sarch[1:] == "32":
cmd_list_32 = collections.deque(conf.build32_xfce_build)
list_size_32 = len(cmd_list_32)
for _ in range(list_size_32):
i = cmd_list_32.popleft()
cmd_list = collections.deque(conf.build32_xfce_build)
list_size = len(cmd_list)
for _ in range(list_size):
i = cmd_list.popleft()
execute = i + '()'
exec(execute)
elif self.sarch[1:] == "arm":
cmd_list_arm = collections.deque(conf.buildarm_xfce_build)
list_size_arm = len(cmd_list_arm)
for _ in range(list_size_arm):
i = cmd_list_arm.popleft()
cmd_list = collections.deque(conf.buildarm_xfce_build)
list_size = len(cmd_list)
for _ in range(list_size):
i = cmd_list.popleft()
execute = i + '()'
exec(execute)
else:
cmd_list = None
def build_system(self):
""" Builds the 64bit ISO XFCE"""
""" Builds the ISO XFCE Depedning on the Arch """
current_working_directory = os.getcwd()
dir_current = "Current working directory" + current_working_directory
logger.info("Building a " + self.sbase + self.sarch[1:] + " bit ISO")
@ -166,49 +146,6 @@ class BuildXfce:
logger.info(dir_current)
os.system(run_cmd)
logger.info(BUILD_COMPLETED)
logger.info(dir_current)
finish_cleanup.make_check_sum()
finish_cleanup.copy_debian_xfce_based()
finish_cleanup.kill_old_iso()
logger.info(BUILD_COMPLETED)
def build_deb_32(self):
""" Builds the 32bit ISO XFCE"""
current_working_directory = os.getcwd()
dir_current = "Current working directory" + current_working_directory
logger.info("Building a Debian based 32 bit ISO")
logger.info(dir_current)
# Set the config tree
lbsetup = conf.LBSET_DEB32
os.system(lbsetup)
logger.info(CFG_TREE_READY)
# Start with the XFCE stuff
cmd_list_32 = collections.deque(conf.build32_xfce_build)
list_size_32 = len(cmd_list_32)
for _ in range(list_size_32):
i = cmd_list_32.popleft()
execute = i + '()'
exec(execute)
# Run the specific classes
infra.ChrootFolders("deb", "_32")
infra.BinaryFolders("deb", "_32")
infra.ArchitectureFiles("deb", "_32")
infra.Archive("deb", "_32")
# Run the Build
logger.info(CFG_READY)
logger.info(START_LIVEBUILD)
logger.info(dir_current)
lbsetup = conf.LBSET_DEB32
os.system(lbsetup)
run_cmd = 'sudo lb build'
current_working_directory = os.getcwd()
os.chdir(HOME_FOLDER + FUSATO_ROOT)
# Set the build inidcator
inflate_bubble.make_bld_xfce("deb", "32")
logger.info(dir_current)
os.system(run_cmd)
logger.info(BUILD_COMPLETED)
logger.info(dir_current)
finish_cleanup.make_check_sum()
finish_cleanup.copy_debian_xfce_based()
@ -216,196 +153,6 @@ class BuildXfce:
logger.info(BUILD_COMPLETED)
def build_deb_arm(self):
""" Builds the arm ISO XFCE"""
current_working_directory = os.getcwd()
dir_current = "Current working directory" + current_working_directory
logger.info("Building a Debian based arm bit ISO")
logger.info(dir_current)
# Set the config tree
lbsetup = conf.LBSET_DEBARM
os.system(lbsetup)
logger.info(CFG_TREE_READY)
# Start with the XFCE stuff
cmd_list_arm = collections.deque(conf.buildarm_xfce_build)
list_size_arm = len(cmd_list_arm)
for _ in range(list_size_arm):
i = cmd_list_arm.popleft()
execute = i + '()'
exec(execute)
# Run the specific classes
infra.ChrootFolders("deb", "_arm")
infra.BinaryFolders("deb", "_arm")
infra.ArchitectureFiles("deb", "_arm")
infra.Archive("deb", "_arm")
# Run the Build
logger.info(CFG_READY)
logger.info(START_LIVEBUILD)
logger.info(dir_current)
lbsetup = conf.LBSET_DEBARM
os.system(lbsetup)
run_cmd = 'sudo lb build'
current_working_directory = os.getcwd()
os.chdir(HOME_FOLDER + FUSATO_ROOT)
# Set the build inidcator
inflate_bubble.make_bld_xfce("deb", "arm")
logger.info(dir_current)
os.system(run_cmd)
logger.info(BUILD_COMPLETED)
logger.info(dir_current)
finish_cleanup.make_check_sum()
finish_cleanup.copy_debian_xfce_based()
finish_cleanup.kill_old_iso()
logger.info(BUILD_COMPLETED)
def build_dev_64(self):
""" Builds the 64bit ISO XFCE"""
current_working_directory = os.getcwd()
dir_current = "Current working directory" + current_working_directory
logger.info("Building a devuan based 64 bit ISO")
logger.info(dir_current)
# Set the config tree
lbsetup = conf.LBSET_DEV64
os.system(lbsetup)
logger.info(CFG_TREE_READY)
# Start with the XFCE stuff
cmd_list_64 = collections.deque(conf.build64_xfce_build)
list_size_64 = len(cmd_list_64)
for _ in range(list_size_64):
i = cmd_list_64.popleft()
execute = i + '()'
exec(execute)
# Run the specific classes
infra.ChrootFolders("dev", "_64")
infra.BinaryFolders("dev", "_64")
infra.ArchitectureFiles("dev", "_64")
infra.Archive("dev", "_64")
# Run the Build
logger.info(CFG_READY)
logger.info(START_LIVEBUILD)
logger.info(dir_current)
lbsetup = conf.LBSET_DEV64
os.system(lbsetup)
run_cmd = 'sudo lb build'
current_working_directory = os.getcwd()
os.chdir(HOME_FOLDER + FUSATO_ROOT)
# Set the build inidcator
inflate_bubble.make_bld_xfce("dev","64")
logger.info(dir_current)
os.system(run_cmd)
logger.info(BUILD_COMPLETED)
logger.info(dir_current)
finish_cleanup.make_check_sum()
finish_cleanup.copy_devuan_xfce_based()
finish_cleanup.kill_old_iso()
#'finish_cleanup.copy_iso_file_prod_deb64',
logger.info(BUILD_COMPLETED)
def build_dev_32(self):
""" Builds the 32bit ISO XFCE"""
current_working_directory = os.getcwd()
dir_current = "Current working directory" + current_working_directory
logger.info("Building a devuan based 32 bit ISO")
logger.info(dir_current)
# Set the config tree
lbsetup = conf.LBSET_DEV32
os.system(lbsetup)
logger.info(CFG_TREE_READY)
# Start with the XFCE stuff
cmd_list_32 = collections.deque(conf.build32_xfce_build)
list_size_32 = len(cmd_list_32)
for _ in range(list_size_32):
i = cmd_list_32.popleft()
execute = i + '()'
exec(execute)
# Run the specific classes
infra.ChrootFolders("dev", "_32")
infra.BinaryFolders("dev", "_32")
infra.ArchitectureFiles("dev", "_32")
infra.Archive("dev", "_32")
# Run the Build
logger.info(CFG_READY)
logger.info(START_LIVEBUILD)
logger.info(dir_current)
lbsetup = conf.LBSET_DEV32
os.system(lbsetup)
run_cmd = 'sudo lb build'
current_working_directory = os.getcwd()
os.chdir(HOME_FOLDER + FUSATO_ROOT)
# Set the build inidcator
inflate_bubble.make_bld_xfce("dev","32")
logger.info(dir_current)
os.system(run_cmd)
logger.info(BUILD_COMPLETED)
logger.info(dir_current)
finish_cleanup.make_check_sum()
finish_cleanup.copy_devuan_xfce_based()
finish_cleanup.kill_old_iso()
#'finish_cleanup.copy_iso_file_prod_deb32',
logger.info(BUILD_COMPLETED)
def build_dev_arm(self):
""" Builds the arm ISO XFCE"""
current_working_directory = os.getcwd()
dir_current = "Current working directory" + current_working_directory
print("INFO: Building a devuan based arm bit ISO")
logger.info(dir_current)
# Set the config tree
lbsetup = conf.LBSET_DEVARM
os.system(lbsetup)
logger.info(CFG_TREE_READY)
# Start with the XFCE stuff
cmd_list_arm = collections.deque(conf.buildarm_xfce_build)
list_size_arm = len(cmd_list_arm)
for _ in range(list_size_arm):
i = cmd_list_arm.popleft()
execute = i + '()'
exec(execute)
# Run the specific classes
infra.ChrootFolders("dev", "_arm")
infra.BinaryFolders("dev", "_arm")
infra.ArchitectureFiles("dev", "_arm")
infra.Archive("dev", "_arm")
# Run the Build
logger.info(CFG_READY)
logger.info(START_LIVEBUILD)
logger.info(dir_current)
lbsetup = conf.LBSET_DEVARM
os.system(lbsetup)
run_cmd = 'sudo lb build'
current_working_directory = os.getcwd()
os.chdir(HOME_FOLDER + FUSATO_ROOT)
# Set the build inidcator
inflate_bubble.make_bld_xfce("dev","arm")
logger.info(dir_current)
os.system(run_cmd)
logger.info(BUILD_COMPLETED)
logger.info(dir_current)
finish_cleanup.make_check_sum()
finish_cleanup.copy_devuan_xfce_based()
finish_cleanup.kill_old_iso()
logger.info(BUILD_COMPLETED)
def devuan_build(self):
"""
Used to build the devuan base XFCE ISO
"""
if self.sarch == '_64':
self.build_dev_64()
elif self.sarch == '_32':
self.build_dev_32()
elif self.sarch == '_arm':
self.build_dev_arm()
else:
print("WARNING: No active build specified")
class BuildGflashback:
"""
@ -414,50 +161,103 @@ class BuildGflashback:
def __init__(self, sbase, sarch):
self.sbase = sbase
self.sarch = sarch
# Change to the root of Fusato
# then run the buils
os.chdir(HOME_FOLDER + FUSATO_ROOT)
# Determine what base to build
if sbase == "deb":
# Run the Debian Build
self.debian_build()
elif sbase == "dev":
self.devuan_build()
self.build_system()
def lb_helper(self):
"""
Helper for the lb setup this is shared for all builds
"""
if self.sbase == "deb":
if self.sarch[1:] == "64":
lbsetup = conf.LBSET_DEB64
os.system(lbsetup)
elif self.sarch[1:] == "32":
lbsetup = conf.LBSET_DEB32
os.system(lbsetup)
elif self.sarch[1:] == "arm":
lbsetup = conf.LBSET_DEBARM
os.system(lbsetup)
else:
lbsetup = None
elif self.sbase == "dev":
if self.sarch[1:] == "64":
lbsetup = conf.LBSET_DEV64
os.system(lbsetup)
elif self.sarch[1:] == "32":
lbsetup = conf.LBSET_DEV32
os.system(lbsetup)
elif self.sarch[1:] == "arm":
lbsetup = conf.LBSET_DEVARM
os.system(lbsetup)
else:
lbsetup = None
def infra_helper(self):
"""
Helper for the infra classes this is shared for all builds
"""
infra.ChrootFolders(self.sbase, self.sarch)
infra.BinaryFolders(self.sbase, self.sarch)
infra.ArchitectureFiles(self.sbase, self.sarch)
infra.Archive(self.sbase, self.sarch)
def gfb_helper(self):
"""
Helper for the gfb desktop shared for all builds
"""
if self.sarch[1:] == "64":
cmd_list = collections.deque(conf.build64_gfb_build)
list_size = len(cmd_list)
for _ in range(list_size):
i = cmd_list.popleft()
execute = i + '()'
exec(execute)
elif self.sarch[1:] == "32":
cmd_list = collections.deque(conf.build32_gfb_build)
list_size = len(cmd_list)
for _ in range(list_size):
i = cmd_list.popleft()
execute = i + '()'
exec(execute)
elif self.sarch[1:] == "arm":
cmd_list = collections.deque(conf.buildarm_gfb_build)
list_size = len(cmd_list)
for _ in range(list_size):
i = cmd_list.popleft()
execute = i + '()'
exec(execute)
else:
print("No base has been found")
cmd_list = None
def build_deb_64(self):
""" Builds the 64bit ISO GNOME FlashBack"""
def build_system(self):
""" Builds the ISO GFB Depedning on the Arch """
current_working_directory = os.getcwd()
dir_current = "Current working directory" + current_working_directory
logger.info("Building a Debian based 64 bit ISO")
logger.info("Building a " + self.sbase + self.sarch[1:] + " bit ISO")
logger.info(dir_current)
# Set the config tree
lbsetup = conf.LBSET_DEB64
os.system(lbsetup)
logger.info(CFG_TREE_READY)
# Start with the GNOME FlashBack stuff
cmd_list_64 = collections.deque(conf.build64_gfb_build)
list_size_64 = len(cmd_list_64)
for _ in range(list_size_64):
i = cmd_list_64.popleft()
execute = i + '()'
exec(execute)
self.lb_helper()
# Start with the GFB stuff
self.gfb_helper()
# Run the specific classes
infra.ChrootFolders("deb", "_64")
infra.BinaryFolders("deb", "_64")
infra.ArchitectureFiles("deb", "_64")
infra.Archive("deb", "_64")
self.infra_helper()
# Run the Build
logger.info(CFG_READY)
logger.info(START_LIVEBUILD)
logger.info(dir_current)
lbsetup = conf.LBSET_DEB64
os.system(lbsetup)
self.lb_helper()
run_cmd = 'sudo lb build'
current_working_directory = os.getcwd()
os.chdir(HOME_FOLDER + FUSATO_ROOT)
# Set the build inidcator
inflate_bubble.make_bld_gnomeflashback("deb","64")
inflate_bubble.make_bld_gnomeflashback(self.sbase, self.sarch[1:])
logger.info(dir_current)
os.system(run_cmd)
logger.info(BUILD_COMPLETED)
@ -468,252 +268,6 @@ class BuildGflashback:
logger.info(BUILD_COMPLETED)
def build_deb_32(self):
""" Builds the 32bit ISO GNOME FlashBack"""
current_working_directory = os.getcwd()
dir_current = "Current working directory" + current_working_directory
print("INFO: Building a Debian based 32 bit ISO")
logger.info(dir_current)
# Set the config tree
lbsetup = conf.LBSET_DEB32
os.system(lbsetup)
logger.info(CFG_TREE_READY)
# Start with the GNOME FlashBack stuff
cmd_list_32 = collections.deque(conf.build32_gfb_build)
list_size_32 = len(cmd_list_32)
for _ in range(list_size_32):
i = cmd_list_32.popleft()
execute = i + '()'
exec(execute)
# Run the specific classes
infra.ChrootFolders("deb", "_32")
infra.BinaryFolders("deb", "_32")
infra.ArchitectureFiles("deb", "_32")
infra.Archive("deb", "_32")
# Run the Build
logger.info(CFG_READY)
logger.info(START_LIVEBUILD)
logger.info(dir_current)
lbsetup = conf.LBSET_DEB32
os.system(lbsetup)
run_cmd = 'sudo lb build'
current_working_directory = os.getcwd()
os.chdir(HOME_FOLDER + FUSATO_ROOT)
# Set the build inidcator
inflate_bubble.make_bld_gnomeflashback("deb","32")
logger.info(dir_current)
os.system(run_cmd)
logger.info(BUILD_COMPLETED)
logger.info(dir_current)
finish_cleanup.make_check_sum()
finish_cleanup.copy_debian_gfb_based()
finish_cleanup.kill_old_iso()
logger.info(BUILD_COMPLETED)
def build_deb_arm(self):
""" Builds the arm ISO GNOME FlashBack"""
current_working_directory = os.getcwd()
dir_current = "Current working directory" + current_working_directory
print("INFO: Building a Debian based arm bit ISO")
logger.info(dir_current)
# Set the config tree
lbsetup = conf.LBSET_DEBARM
os.system(lbsetup)
logger.info(CFG_TREE_READY)
# Start with the GNOME FlashBack stuff
cmd_list_arm = collections.deque(conf.buildarm_gfb_build)
list_size_arm = len(cmd_list_arm)
for _ in range(list_size_arm):
i = cmd_list_arm.popleft()
execute = i + '()'
exec(execute)
# Run the specific classes
infra.ChrootFolders("deb", "_arm")
infra.BinaryFolders("deb", "_arm")
infra.ArchitectureFiles("deb", "_arm")
infra.Archive("deb", "_arm")
# Run the Build
logger.info(CFG_READY)
logger.info(START_LIVEBUILD)
logger.info(dir_current)
lbsetup = conf.LBSET_DEBARM
os.system(lbsetup)
run_cmd = 'sudo lb build'
current_working_directory = os.getcwd()
os.chdir(HOME_FOLDER + FUSATO_ROOT)
# Set the build inidcator
inflate_bubble.make_bld_gnomeflashback("deb","arm")
logger.info(dir_current)
os.system(run_cmd)
logger.info(BUILD_COMPLETED)
logger.info(dir_current)
finish_cleanup.make_check_sum()
finish_cleanup.copy_debian_gfb_based()
finish_cleanup.kill_old_iso()
logger.info(BUILD_COMPLETED)
def debian_build(self):
"""
Used to build the Debian base GNOME FlashBack ISO
"""
if self.sarch == '_64':
self.build_deb_64()
elif self.sarch == '_32':
self.build_deb_32()
elif self.sarch == '_arm':
self.build_deb_arm()
else:
print("WARNING: No active build specified")
def build_dev_64(self):
""" Builds the 64bit ISO GNOME FlashBack"""
current_working_directory = os.getcwd()
dir_current = "Current working directory" + current_working_directory
print("INFO: Building a devuan based 64 bit ISO")
logger.info(dir_current)
# Set the config tree
lbsetup = conf.LBSET_DEV64
os.system(lbsetup)
logger.info(CFG_TREE_READY)
# Start with the GNOME FlashBack stuff
cmd_list_64 = collections.deque(conf.build64_gfb_build)
list_size_64 = len(cmd_list_64)
for _ in range(list_size_64):
i = cmd_list_64.popleft()
execute = i + '()'
exec(execute)
# Run the specific classes
infra.ChrootFolders("dev", "_64")
infra.BinaryFolders("dev", "_64")
infra.ArchitectureFiles("dev", "_64")
infra.Archive("dev", "_64")
# Run the Build
logger.info(CFG_READY)
logger.info(START_LIVEBUILD)
logger.info(dir_current)
lbsetup = conf.LBSET_DEV64
os.system(lbsetup)
run_cmd = 'sudo lb build'
current_working_directory = os.getcwd()
os.chdir(HOME_FOLDER + FUSATO_ROOT)
# Set the build inidcator
inflate_bubble.make_bld_gnomeflashback("dev","64")
logger.info(dir_current)
os.system(run_cmd)
logger.info(BUILD_COMPLETED)
logger.info(dir_current)
finish_cleanup.make_check_sum()
finish_cleanup.copy_devuan_gfb_based()
finish_cleanup.kill_old_iso()
#'finish_cleanup.copy_iso_file_prod_deb64',
logger.info(BUILD_COMPLETED)
def build_dev_32(self):
""" Builds the 32bit ISO GNOME FlashBack"""
current_working_directory = os.getcwd()
dir_current = "Current working directory" + current_working_directory
print("INFO: Building a devuan based 32 bit ISO")
logger.info(dir_current)
# Set the config tree
lbsetup = conf.LBSET_DEV32
os.system(lbsetup)
logger.info(CFG_TREE_READY)
# Start with the GNOME FlashBack stuff
cmd_list_32 = collections.deque(conf.build32_gfb_build)
list_size_32 = len(cmd_list_32)
for _ in range(list_size_32):
i = cmd_list_32.popleft()
execute = i + '()'
exec(execute)
# Run the specific classes
infra.ChrootFolders("dev", "_32")
infra.BinaryFolders("dev", "_32")
infra.ArchitectureFiles("dev", "_32")
infra.Archive("dev", "_32")
# Run the Build
logger.info(CFG_READY)
logger.info(START_LIVEBUILD)
logger.info(dir_current)
lbsetup = conf.LBSET_DEV32
os.system(lbsetup)
run_cmd = 'sudo lb build'
current_working_directory = os.getcwd()
os.chdir(HOME_FOLDER + FUSATO_ROOT)
# Set the build inidcator
inflate_bubble.make_bld_gnomeflashback("dev","32")
logger.info(dir_current)
os.system(run_cmd)
logger.info(BUILD_COMPLETED)
logger.info(dir_current)
finish_cleanup.make_check_sum()
finish_cleanup.copy_devuan_gfb_based()
finish_cleanup.kill_old_iso()
#'finish_cleanup.copy_iso_file_prod_deb32',
logger.info(BUILD_COMPLETED)
def build_dev_arm(self):
""" Builds the arm ISO GNOME FlashBack"""
current_working_directory = os.getcwd()
dir_current = "Current working directory" + current_working_directory
print("INFO: Building a devuan based arm bit ISO")
logger.info(dir_current)
# Set the config tree
lbsetup = conf.LBSET_DEVARM
os.system(lbsetup)
logger.info(CFG_TREE_READY)
# Start with the GNOME FlashBack stuff
cmd_list_arm = collections.deque(conf.buildarm_gfb_build)
list_size_arm = len(cmd_list_arm)
for _ in range(list_size_arm):
i = cmd_list_arm.popleft()
execute = i + '()'
exec(execute)
# Run the specific classes
infra.ChrootFolders("dev", "_arm")
infra.BinaryFolders("dev", "_arm")
infra.ArchitectureFiles("dev", "_arm")
infra.Archive("dev", "_arm")
# Run the Build
logger.info(CFG_READY)
logger.info(START_LIVEBUILD)
logger.info(dir_current)
lbsetup = conf.LBSET_DEVARM
os.system(lbsetup)
run_cmd = 'sudo lb build'
current_working_directory = os.getcwd()
os.chdir(HOME_FOLDER + FUSATO_ROOT)
# Set the build inidcator
inflate_bubble.make_bld_gnomeflashback("dev", "arm")
logger.info(dir_current)
os.system(run_cmd)
logger.info(BUILD_COMPLETED)
logger.info(dir_current)
finish_cleanup.make_check_sum()
finish_cleanup.copy_devuan_gfb_based()
finish_cleanup.kill_old_iso()
#'finish_cleanup.copy_iso_file_prod_DEBARM',
logger.info(BUILD_COMPLETED)
def devuan_build(self):
"""
Used to build the devuan base GNOME FlashBack ISO
"""
if self.sarch == '_64':
self.build_dev_64()
elif self.sarch == '_32':
self.build_dev_32()
elif self.sarch == '_arm':
self.build_dev_arm()
else:
print("WARNING: No active build specified")
def readybuild():
"""" Make Ready the bld structure If fusato exists remove it.
and recreate it, otherwise just make a new folder named