diff --git a/0001-sw64-modify.patch b/0001-add-sw64-architecture.patch similarity index 32% rename from 0001-sw64-modify.patch rename to 0001-add-sw64-architecture.patch index 63d423f878fa29ab4479c8c64b9b863f3e6bb415..0cf72c247b254c93f9c55f7e1423ef7999fca57b 100644 --- a/0001-sw64-modify.patch +++ b/0001-add-sw64-architecture.patch @@ -1,71 +1,21 @@ From 14fefba9691639c7909aa748b9d29f72b0b4cf83 Mon Sep 17 00:00:00 2001 From: isoft Date: Fri, 28 Oct 2022 02:43:32 +0000 -Subject: [PATCH 1/2] sw64 modify +Subject: Patch sw64 modify ---- - .../99-generic/config_files/sw64/boot.msg | 5 + - .../99-generic/config_files/sw64/grub.conf | 13 ++ - .../config_files/sw64/grub2-efi.cfg | 40 ++++++ - .../99-generic/config_files/sw64/isolinux.cfg | 120 ++++++++++++++++ - .../live/config_files/sw64/boot.msg | 5 + - .../live/config_files/sw64/grub.conf | 13 ++ - .../live/config_files/sw64/grub2-efi.cfg | 36 +++++ - .../live/config_files/sw64/isolinux.cfg | 110 ++++++++++++++ - share/templates.d/99-generic/live/sw64.tmpl | 126 ++++++++++++++++ - share/templates.d/99-generic/sw64.tmpl | 135 ++++++++++++++++++ - src/pylorax/__init__.py | 6 +- - src/pylorax/creator.py | 13 +- - src/pylorax/mount.py | 2 +- - src/pylorax/treebuilder.py | 1 + - 14 files changed, 614 insertions(+), 11 deletions(-) - create mode 100644 share/templates.d/99-generic/config_files/sw64/boot.msg - create mode 100644 share/templates.d/99-generic/config_files/sw64/grub.conf - create mode 100644 share/templates.d/99-generic/config_files/sw64/grub2-efi.cfg - create mode 100644 share/templates.d/99-generic/config_files/sw64/isolinux.cfg - create mode 100644 share/templates.d/99-generic/live/config_files/sw64/boot.msg - create mode 100644 share/templates.d/99-generic/live/config_files/sw64/grub.conf - create mode 100644 share/templates.d/99-generic/live/config_files/sw64/grub2-efi.cfg - create mode 100644 share/templates.d/99-generic/live/config_files/sw64/isolinux.cfg - create mode 100644 share/templates.d/99-generic/live/sw64.tmpl - create mode 100644 share/templates.d/99-generic/sw64.tmpl - -diff --git a/share/templates.d/99-generic/config_files/sw64/boot.msg b/share/templates.d/99-generic/config_files/sw64/boot.msg -new file mode 100644 -index 0000000..ff54899 ---- /dev/null -+++ b/share/templates.d/99-generic/config_files/sw64/boot.msg +diff -Naru lorax-lorax-34.1-1/share/templates.d/99-generic/live/config_files/sw64/boot.msg lorax-lorax-34.1-1.bak/share/templates.d/99-generic/live/config_files/sw64/boot.msg +--- lorax-lorax-34.1-1/share/templates.d/99-generic/live/config_files/sw64/boot.msg 1970-01-01 08:00:00.000000000 +0800 ++++ lorax-lorax-34.1-1.bak/share/templates.d/99-generic/live/config_files/sw64/boot.msg 2023-05-19 13:31:05.147962280 +0800 @@ -0,0 +1,5 @@ + +splash.lss + + - Press the 0107 key to begin the installation process. + -diff --git a/share/templates.d/99-generic/config_files/sw64/grub.conf b/share/templates.d/99-generic/config_files/sw64/grub.conf -new file mode 100644 -index 0000000..4cf8ced ---- /dev/null -+++ b/share/templates.d/99-generic/config_files/sw64/grub.conf -@@ -0,0 +1,13 @@ -+#debug --graphics -+default=1 -+splashimage=@SPLASHPATH@ -+timeout 60 -+hiddenmenu -+title Install @PRODUCT@ @VERSION@ -+ findiso -+ kernel @KERNELPATH@ @ROOT@ quiet -+ initrd @INITRDPATH@ -+title Test this media & install @PRODUCT@ @VERSION@ -+ findiso -+ kernel @KERNELPATH@ @ROOT@ rd.live.check quiet -+ initrd @INITRDPATH@ -diff --git a/share/templates.d/99-generic/config_files/sw64/grub2-efi.cfg b/share/templates.d/99-generic/config_files/sw64/grub2-efi.cfg -new file mode 100644 -index 0000000..951fb54 ---- /dev/null -+++ b/share/templates.d/99-generic/config_files/sw64/grub2-efi.cfg -@@ -0,0 +1,40 @@ +diff -Naru lorax-lorax-34.1-1/share/templates.d/99-generic/live/config_files/sw64/grub2-efi.cfg lorax-lorax-34.1-1.bak/share/templates.d/99-generic/live/config_files/sw64/grub2-efi.cfg +--- lorax-lorax-34.1-1/share/templates.d/99-generic/live/config_files/sw64/grub2-efi.cfg 1970-01-01 08:00:00.000000000 +0800 ++++ lorax-lorax-34.1-1.bak/share/templates.d/99-generic/live/config_files/sw64/grub2-efi.cfg 2023-05-19 13:31:05.147962280 +0800 +@@ -0,0 +1,36 @@ +set default="1" + +function load_video { @@ -88,166 +38,23 @@ index 0000000..951fb54 +search --no-floppy --set=root -l '@ISOLABEL@' + +### BEGIN /etc/grub.d/10_linux ### -+menuentry 'Install @PRODUCT@ @VERSION@' --class fedora --class gnu-linux --class gnu --class os { -+ linuxefi @KERNELPATH@ @ROOT@ quiet ++menuentry 'Start @PRODUCT@ @VERSION@' --class fedora --class gnu-linux --class gnu --class os { ++ linuxefi @KERNELPATH@ @ROOT@ @EXTRA@ rd.live.image quiet + initrdefi @INITRDPATH@ +} -+menuentry 'Test this media & install @PRODUCT@ @VERSION@' --class fedora --class gnu-linux --class gnu --class os { -+ linuxefi @KERNELPATH@ @ROOT@ rd.live.check quiet ++menuentry 'Test this media & start @PRODUCT@ @VERSION@' --class fedora --class gnu-linux --class gnu --class os { ++ linuxefi @KERNELPATH@ @ROOT@ @EXTRA@ rd.live.image rd.live.check quiet + initrdefi @INITRDPATH@ +} +submenu 'Troubleshooting -->' { -+ menuentry 'Install @PRODUCT@ @VERSION@ in basic graphics mode' --class fedora --class gnu-linux --class gnu --class os { -+ linuxefi @KERNELPATH@ @ROOT@ nomodeset quiet -+ initrdefi @INITRDPATH@ -+ } -+ menuentry 'Rescue a @PRODUCT@ system' --class fedora --class gnu-linux --class gnu --class os { -+ linuxefi @KERNELPATH@ @ROOT@ rescue quiet ++ menuentry 'Start @PRODUCT@ @VERSION@ in basic graphics mode' --class fedora --class gnu-linux --class gnu --class os { ++ linuxefi @KERNELPATH@ @ROOT@ @EXTRA@ rd.live.image nomodeset quiet + initrdefi @INITRDPATH@ + } +} -diff --git a/share/templates.d/99-generic/config_files/sw64/isolinux.cfg b/share/templates.d/99-generic/config_files/sw64/isolinux.cfg -new file mode 100644 -index 0000000..0471f42 ---- /dev/null -+++ b/share/templates.d/99-generic/config_files/sw64/isolinux.cfg -@@ -0,0 +1,120 @@ -+default vesamenu.c32 -+timeout 600 -+ -+display boot.msg -+ -+# Clear the screen when exiting the menu, instead of leaving the menu displayed. -+# For vesamenu, this means the graphical background is still displayed without -+# the menu itself for as long as the screen remains in graphics mode. -+menu clear -+menu background splash.png -+menu title @PRODUCT@ @VERSION@ -+menu vshift 8 -+menu rows 18 -+menu margin 8 -+#menu hidden -+menu helpmsgrow 15 -+menu tabmsgrow 13 -+ -+# Border Area -+menu color border * #00000000 #00000000 none -+ -+# Selected item -+menu color sel 0 #ffffffff #00000000 none -+ -+# Title bar -+menu color title 0 #ff7ba3d0 #00000000 none -+ -+# Press [Tab] message -+menu color tabmsg 0 #ff3a6496 #00000000 none -+ -+# Unselected menu item -+menu color unsel 0 #84b8ffff #00000000 none -+ -+# Selected hotkey -+menu color hotsel 0 #84b8ffff #00000000 none -+ -+# Unselected hotkey -+menu color hotkey 0 #ffffffff #00000000 none -+ -+# Help text -+menu color help 0 #ffffffff #00000000 none -+ -+# A scrollbar of some type? Not sure. -+menu color scrollbar 0 #ffffffff #ff355594 none -+ -+# Timeout msg -+menu color timeout 0 #ffffffff #00000000 none -+menu color timeout_msg 0 #ffffffff #00000000 none -+ -+# Command prompt text -+menu color cmdmark 0 #84b8ffff #00000000 none -+menu color cmdline 0 #ffffffff #00000000 none -+ -+# Do not display the actual menu unless the user presses a key. All that is displayed is a timeout message. -+ -+menu tabmsg Press Tab for full configuration options on menu items. -+ -+menu separator # insert an empty line -+menu separator # insert an empty line -+ -+label linux -+ menu label ^Install @PRODUCT@ @VERSION@ -+ kernel vmlinuz -+ append initrd=initrd.img @ROOT@ quiet -+ -+label check -+ menu label Test this ^media & install @PRODUCT@ @VERSION@ -+ menu default -+ kernel vmlinuz -+ append initrd=initrd.img @ROOT@ rd.live.check quiet -+ -+menu separator # insert an empty line -+ -+# utilities submenu -+menu begin ^Troubleshooting -+ menu title Troubleshooting -+ -+label vesa -+ menu indent count 5 -+ menu label Install @PRODUCT@ @VERSION@ in ^basic graphics mode -+ text help -+ Try this option out if you're having trouble installing -+ @PRODUCT@ @VERSION@. -+ endtext -+ kernel vmlinuz -+ append initrd=initrd.img @ROOT@ nomodeset quiet -+ -+label rescue -+ menu indent count 5 -+ menu label ^Rescue a @PRODUCT@ system -+ text help -+ If the system will not boot, this lets you access files -+ and edit config files to try to get it booting again. -+ endtext -+ kernel vmlinuz -+ append initrd=initrd.img @ROOT@ rescue quiet -+ -+label memtest -+ menu label Run a ^memory test -+ text help -+ If your system is having issues, a problem with your -+ system's memory may be the cause. Use this utility to -+ see if the memory is working correctly. -+ endtext -+ kernel memtest -+ -+menu separator # insert an empty line -+ -+label local -+ menu label Boot from ^local drive -+ localboot 0xffff -+ -+menu separator # insert an empty line -+menu separator # insert an empty line -+ -+label returntomain -+ menu label Return to ^main menu -+ menu exit -+ -+menu end -diff --git a/share/templates.d/99-generic/live/config_files/sw64/boot.msg b/share/templates.d/99-generic/live/config_files/sw64/boot.msg -new file mode 100644 -index 0000000..ff54899 ---- /dev/null -+++ b/share/templates.d/99-generic/live/config_files/sw64/boot.msg -@@ -0,0 +1,5 @@ -+ -+splash.lss -+ -+ - Press the 0107 key to begin the installation process. -+ -diff --git a/share/templates.d/99-generic/live/config_files/sw64/grub.conf b/share/templates.d/99-generic/live/config_files/sw64/grub.conf -new file mode 100644 -index 0000000..6c4a51f ---- /dev/null -+++ b/share/templates.d/99-generic/live/config_files/sw64/grub.conf +diff -Naru lorax-lorax-34.1-1/share/templates.d/99-generic/live/config_files/sw64/grub.conf lorax-lorax-34.1-1.bak/share/templates.d/99-generic/live/config_files/sw64/grub.conf +--- lorax-lorax-34.1-1/share/templates.d/99-generic/live/config_files/sw64/grub.conf 1970-01-01 08:00:00.000000000 +0800 ++++ lorax-lorax-34.1-1.bak/share/templates.d/99-generic/live/config_files/sw64/grub.conf 2023-05-19 13:31:05.147962280 +0800 @@ -0,0 +1,13 @@ +#debug --graphics +default=1 @@ -262,53 +69,9 @@ index 0000000..6c4a51f + findiso + kernel @KERNELPATH@ @ROOT@ @EXTRA@ rd.live.image rd.live.check quiet + initrd @INITRDPATH@ -diff --git a/share/templates.d/99-generic/live/config_files/sw64/grub2-efi.cfg b/share/templates.d/99-generic/live/config_files/sw64/grub2-efi.cfg -new file mode 100644 -index 0000000..2e24b15 ---- /dev/null -+++ b/share/templates.d/99-generic/live/config_files/sw64/grub2-efi.cfg -@@ -0,0 +1,36 @@ -+set default="1" -+ -+function load_video { -+ insmod efi_gop -+ insmod efi_uga -+ insmod video_bochs -+ insmod video_cirrus -+ insmod all_video -+} -+ -+load_video -+set gfxpayload=keep -+insmod gzio -+insmod part_gpt -+insmod ext2 -+ -+set timeout=60 -+### END /etc/grub.d/00_header ### -+ -+search --no-floppy --set=root -l '@ISOLABEL@' -+ -+### BEGIN /etc/grub.d/10_linux ### -+menuentry 'Start @PRODUCT@ @VERSION@' --class fedora --class gnu-linux --class gnu --class os { -+ linuxefi @KERNELPATH@ @ROOT@ @EXTRA@ rd.live.image quiet -+ initrdefi @INITRDPATH@ -+} -+menuentry 'Test this media & start @PRODUCT@ @VERSION@' --class fedora --class gnu-linux --class gnu --class os { -+ linuxefi @KERNELPATH@ @ROOT@ @EXTRA@ rd.live.image rd.live.check quiet -+ initrdefi @INITRDPATH@ -+} -+submenu 'Troubleshooting -->' { -+ menuentry 'Start @PRODUCT@ @VERSION@ in basic graphics mode' --class fedora --class gnu-linux --class gnu --class os { -+ linuxefi @KERNELPATH@ @ROOT@ @EXTRA@ rd.live.image nomodeset quiet -+ initrdefi @INITRDPATH@ -+ } -+} -diff --git a/share/templates.d/99-generic/live/config_files/sw64/isolinux.cfg b/share/templates.d/99-generic/live/config_files/sw64/isolinux.cfg -new file mode 100644 -index 0000000..bc36bb9 ---- /dev/null -+++ b/share/templates.d/99-generic/live/config_files/sw64/isolinux.cfg +diff -Naru lorax-lorax-34.1-1/share/templates.d/99-generic/live/config_files/sw64/isolinux.cfg lorax-lorax-34.1-1.bak/share/templates.d/99-generic/live/config_files/sw64/isolinux.cfg +--- lorax-lorax-34.1-1/share/templates.d/99-generic/live/config_files/sw64/isolinux.cfg 1970-01-01 08:00:00.000000000 +0800 ++++ lorax-lorax-34.1-1.bak/share/templates.d/99-generic/live/config_files/sw64/isolinux.cfg 2023-05-19 13:31:05.147962280 +0800 @@ -0,0 +1,110 @@ +default vesamenu.c32 +timeout 600 @@ -420,159 +183,152 @@ index 0000000..bc36bb9 + menu exit + +menu end -diff --git a/share/templates.d/99-generic/live/sw64.tmpl b/share/templates.d/99-generic/live/sw64.tmpl -new file mode 100644 -index 0000000..4173c0c ---- /dev/null -+++ b/share/templates.d/99-generic/live/sw64.tmpl -@@ -0,0 +1,126 @@ -+<%page args="kernels, runtime_img, basearch, inroot, outroot, product, isolabel, extra_boot_args"/> -+<% -+configdir="tmp/config_files/sw64" -+SYSLINUXDIR="usr/share/syslinux" -+PXEBOOTDIR="pxeboot" -+BOOTDIR="isolinux" -+KERNELDIR=PXEBOOTDIR -+LIVEDIR="LiveOS" -+LORAXDIR="usr/share/lorax/" -+ -+## Don't allow spaces or escape characters in the iso label -+def valid_label(ch): -+ return ch.isalnum() or ch == '_' -+ -+isolabel = ''.join(ch if valid_label(ch) else '-' for ch in isolabel) -+ -+import os -+from os.path import basename -+from pylorax.sysutils import joinpaths -+ -+# Test the runtime_img, if it is > 4GiB we need to set -iso-level to 3 -+if os.stat(joinpaths(inroot, runtime_img)).st_size >= 4*1024**3: -+ isoargs = "-iso-level 3" -+else: -+ isoargs = "" -+%> -+ -+mkdir ${LIVEDIR} -+install ${runtime_img} ${LIVEDIR}/squashfs.img -+treeinfo stage2 mainimage ${LIVEDIR}/squashfs.img -+ -+## install bootloader and config files -+mkdir ${BOOTDIR} -+install ${SYSLINUXDIR}/isolinux.bin ${BOOTDIR} -+install ${SYSLINUXDIR}/vesamenu.c32 ${BOOTDIR} -+install ${SYSLINUXDIR}/ldlinux.c32 ${BOOTDIR} -+install ${SYSLINUXDIR}/libcom32.c32 ${BOOTDIR} -+install ${SYSLINUXDIR}/libutil.c32 ${BOOTDIR} -+install ${configdir}/isolinux.cfg ${BOOTDIR} -+install ${configdir}/boot.msg ${BOOTDIR} -+install ${configdir}/grub.conf ${BOOTDIR} -+install usr/share/anaconda/boot/syslinux-splash.png ${BOOTDIR}/splash.png -+install boot/memtest* ${BOOTDIR}/memtest -+ -+## configure bootloader -+replace @VERSION@ ${product.version} ${BOOTDIR}/grub.conf ${BOOTDIR}/isolinux.cfg ${BOOTDIR}/*.msg -+replace @PRODUCT@ '${product.name}' ${BOOTDIR}/grub.conf ${BOOTDIR}/isolinux.cfg ${BOOTDIR}/*.msg -+replace @ROOT@ 'root=live:CDLABEL=${isolabel|udev}' ${BOOTDIR}/isolinux.cfg -+replace @EXTRA@ '${extra_boot_args}' ${BOOTDIR}/isolinux.cfg -+ -+## install kernels -+mkdir ${KERNELDIR} -+%for kernel in kernels: -+ %if kernel.flavor: -+ installkernel images-xen ${kernel.path} ${KERNELDIR}/vmlinuz-${kernel.flavor} -+ installinitrd images-xen ${kernel.initrd.path} ${KERNELDIR}/initrd-${kernel.flavor}.img -+ %else: -+ installkernel images-${basearch} ${kernel.path} ${KERNELDIR}/vmlinuz -+ installinitrd images-${basearch} ${kernel.initrd.path} ${KERNELDIR}/initrd.img -+ %endif -+%endfor -+ -+hardlink ${KERNELDIR}/vmlinuz ${BOOTDIR} -+hardlink ${KERNELDIR}/initrd.img ${BOOTDIR} -+%if basearch == 'x86_64': -+ treeinfo images-xen kernel ${KERNELDIR}/vmlinuz -+ treeinfo images-xen initrd ${KERNELDIR}/initrd.img -+%endif -+ -+## WHeeeeeeee, EFI. -+<% efiargs=""; efigraft=""; efiarch32=None; efiarch64=None %> -+%if exists("boot/efi/EFI/*/gcdia32.efi"): -+ <% efiarch32 = 'IA32' %> -+%endif -+%if exists("boot/efi/EFI/*/gcdx64.efi"): -+ <% efiarch64 = 'X64' %> -+%endif -+%if (efiarch32 or efiarch64) and basearch != 'i386': -+ <% -+ efigraft="EFI/BOOT={0}/EFI/BOOT".format(outroot) -+ images = [("images/efiboot.img", "-isohybrid-gpt-basdat")] -+ if domacboot: -+ images.append(("images/macboot.img", "-isohybrid-gpt-hfsplus")) -+ %> -+ %for img, hybrid in images: -+ <% -+ efiargs += " -eltorito-alt-boot -e {0} -no-emul-boot {1}".format(img, hybrid) -+ efigraft += " {0}={1}/{0}".format(img,outroot) -+ %> -+ treeinfo images-${basearch} ${img|basename} ${img} -+ %endfor -+ <%include file="efi.tmpl" args="configdir=configdir, KERNELDIR=KERNELDIR, efiarch32=efiarch32, efiarch64=efiarch64, isolabel=isolabel, extra_boot_args=extra_boot_args"/> -+%endif -+ -+# Create optional product.img and updates.img -+<% filegraft=""; images=["product", "updates"]; compressargs=""; %> -+%if basearch == 'i386': -+ # Limit the amount of memory xz uses on i386 -+ <% compressargs="--xz -9 --memlimit-compress=3700MiB" %> -+%endif -+%for img in images: -+ %if exists("%s/%s/" % (LORAXDIR, img)): -+ installimg ${compressargs} ${LORAXDIR}/${img}/ images/${img}.img -+ treeinfo images-${basearch} ${img}.img images/${img}.img -+ <% filegraft += " images/{0}.img={1}/images/{0}.img".format(img, outroot) %> -+ %endif -+%endfor -+ -+# Add the license files -+%for f in glob("/usr/share/licenses/*-release/*"): -+ install ${f} ${f|basename} -+ <% filegraft += " {0}={1}/{0}".format(basename(f), outroot) %> -+%endfor -+ -+## make boot.iso -+runcmd xorrisofs ${isoargs} -o ${outroot}/images/boot.iso \ -+ -isohybrid-mbr /usr/share/syslinux/isohdpfx.bin \ -+ -b ${BOOTDIR}/isolinux.bin -c ${BOOTDIR}/boot.cat \ -+ -boot-load-size 4 -boot-info-table -no-emul-boot \ -+ ${efiargs} -R -J -V '${isolabel}' \ -+ -graft-points \ -+ ${BOOTDIR}=${outroot}/${BOOTDIR} \ -+ ${KERNELDIR}=${outroot}/${KERNELDIR} \ -+ ${LIVEDIR}=${outroot}/${LIVEDIR} \ -+ ${efigraft} ${filegraft} -+treeinfo images-${basearch} boot.iso images/boot.iso -diff --git a/share/templates.d/99-generic/sw64.tmpl b/share/templates.d/99-generic/sw64.tmpl -new file mode 100644 -index 0000000..193286c ---- /dev/null -+++ b/share/templates.d/99-generic/sw64.tmpl -@@ -0,0 +1,135 @@ +diff -Naru lorax-lorax-34.1-1/share/templates.d/99-generic/runtime-cleanup.tmpl lorax-lorax-34.1-1.bak/share/templates.d/99-generic/runtime-cleanup.tmpl +--- lorax-lorax-34.1-1/share/templates.d/99-generic/runtime-cleanup.tmpl 2020-09-15 05:55:20.000000000 +0800 ++++ lorax-lorax-34.1-1.bak/share/templates.d/99-generic/runtime-cleanup.tmpl 2023-05-19 13:31:46.827962280 +0800 +@@ -38,7 +38,7 @@ + removefrom initscripts /usr/sbin/* /usr/share/locale/* /usr/share/doc/* /usr/share/man/* + + ## no storage device monitoring +-removepkg device-mapper-event dmraid-events sgpio ++## removepkg device-mapper-event dmraid-events sgpio + ## logrotate isn't useful in anaconda + removepkg logrotate + remove /etc/logrotate.d +@@ -71,12 +71,18 @@ + remove /usr/share/mime/video /usr/share/mime/x-content /usr/share/mime/x-epoc + remove /var/db /var/games /var/tmp /var/yp /var/nis /var/opt /var/local + remove /var/mail /var/spool /var/preserve /var/report +-remove /var/lib/rpm/* /var/lib/yum /var/lib/dnf ++## remove /var/lib/rpm/* /var/lib/yum /var/lib/dnf + ## clean up the files created by various '> /dev/null's + remove /dev/* + + ## icons cache + remove /usr/share/icons/*/icon-theme.cache ++remove /usr/lib/fontconfig/cache/* ++remove /lib/fontconfig/cache/* ++remove /var/lib/systemd/catalog/database ++remove /var/cache/ldconfig/aux-cache ++remove /var/log/tallylog ++remove /root/lorax-packages.log rebuildfile/rootfs/root/lorax-packages.log + + ## clean up kernel modules + removekmod sound drivers/media drivers/hwmon \ +@@ -122,7 +128,7 @@ + removefrom audit-libs /etc/* /${libdir}/libauparse* + removefrom bash /etc/* /usr/bin/bashbug* /usr/share/* + removefrom bind-utils /usr/bin/host /usr/bin/nsupdate +-removefrom bitmap-fangsongti-fonts /usr/share/fonts/* ++## removefrom bitmap-fangsongti-fonts /usr/share/fonts/* + removefrom ca-certificates /etc/pki/java/* + removefrom ca-certificates /etc/pki/tls/certs/ca-bundle.trust.crt + removefrom cairo /usr/${libdir}/libcairo-script* /usr/bin/cairo-sphinx +diff -Naru lorax-lorax-34.1-1/share/templates.d/99-generic/runtime-install.tmpl lorax-lorax-34.1-1.bak/share/templates.d/99-generic/runtime-install.tmpl +--- lorax-lorax-34.1-1/share/templates.d/99-generic/runtime-install.tmpl 2023-05-19 13:42:58.557962280 +0800 ++++ lorax-lorax-34.1-1.bak/share/templates.d/99-generic/runtime-install.tmpl 2023-05-19 13:31:55.717962280 +0800 +@@ -5,7 +5,7 @@ + installpkg anaconda anaconda-widgets kexec-tools-anaconda-addon anaconda-install-env-deps + ## Other available payloads + installpkg dnf +-installpkg rpm-ostree ostree ++installpkg rpm + ## speed up compression on multicore systems + installpkg pigz + +@@ -106,7 +106,7 @@ + + ## extra storage packages + # hostname is needed for iscsi to work, see RHBZ#1593917 +-installpkg udisks2 udisks2-iscsi hostname ++installpkg udisks2 hostname + %if basearch in ("i386", "x86_64"): + installpkg fcoe-utils + %endif +@@ -140,7 +140,7 @@ + installpkg pciutils usbutils ipmitool + installpkg mt-st smartmontools + installpkg hdparm +-%if basearch not in ("aarch64", "ppc64le", "s390x"): ++%if basearch not in ("aarch64", "ppc64le", "s390x", "sw_64"): + installpkg pcmciautils + %endif + ## see bug #1483278 +@@ -154,24 +154,24 @@ + + + ## fonts & themes +-installpkg aajohan-comfortaa-fonts ++## installpkg aajohan-comfortaa-fonts + installpkg abattis-cantarell-fonts +-installpkg bitmap-fangsongti-fonts ++## installpkg bitmap-fangsongti-fonts + installpkg dejavu-sans-fonts dejavu-sans-mono-fonts + installpkg google-noto-sans-cjk-ttc-fonts +-installpkg google-noto-sans-gurmukhi-fonts +-installpkg google-noto-sans-sinhala-vf-fonts ++## installpkg google-noto-sans-gurmukhi-fonts ++## installpkg google-noto-sans-sinhala-vf-fonts + installpkg jomolhari-fonts +-installpkg khmeros-base-fonts +-installpkg lohit-assamese-fonts +-installpkg lohit-bengali-fonts +-installpkg lohit-devanagari-fonts +-installpkg lohit-gujarati-fonts +-installpkg lohit-kannada-fonts +-installpkg lohit-marathi-fonts +-installpkg lohit-odia-fonts +-installpkg lohit-tamil-fonts +-installpkg lohit-telugu-fonts ++## installpkg khmeros-base-fonts ++## installpkg lohit-assamese-fonts ++## installpkg lohit-bengali-fonts ++## installpkg lohit-devanagari-fonts ++## installpkg lohit-gujarati-fonts ++## installpkg lohit-kannada-fonts ++## installpkg lohit-marathi-fonts ++## installpkg lohit-odia-fonts ++## installpkg lohit-tamil-fonts ++## installpkg lohit-telugu-fonts + installpkg paktype-naskh-basic-fonts + installpkg sil-abyssinica-fonts + installpkg sil-padauk-fonts +@@ -181,14 +181,14 @@ + installpkg xorg-x11-fonts-misc + + ## debugging/bug reporting tools +-installpkg gdb-gdbserver +-installpkg libreport-plugin-bugzilla libreport-plugin-reportuploader ++## installpkg gdb-gdbserver ++## installpkg libreport-plugin-bugzilla libreport-plugin-reportuploader + installpkg fpaste + installpkg python3-pyatspi + + ## extra tools not required by anaconda + installpkg nano nano-default-editor +-installpkg vim-minimal strace lsof dump xz less ++installpkg vim-minimal strace lsof xz less + installpkg wget rsync bind-utils ftp mtr vconfig + installpkg icfg spice-vdagent + installpkg gdisk hexedit sg3_utils +diff -Naru lorax-lorax-34.1-1/share/templates.d/99-generic/sw64.tmpl lorax-lorax-34.1-1.bak/share/templates.d/99-generic/sw64.tmpl +--- lorax-lorax-34.1-1/share/templates.d/99-generic/sw64.tmpl 1970-01-01 08:00:00.000000000 +0800 ++++ lorax-lorax-34.1-1.bak/share/templates.d/99-generic/sw64.tmpl 2023-05-19 13:32:03.017962280 +0800 +@@ -0,0 +1,96 @@ +<%page args="kernels, runtime_img, runtime_base, basearch, inroot, outroot, product, isolabel"/> +<% +configdir="tmp/config_files/sw64" -+SYSLINUXDIR="usr/share/syslinux" -+PXEBOOTDIR="pxeboot" +STAGE2IMG="isoft/sw64/root-image.fs.sfs" -+BOOTDIR="isolinux" -+KERNELDIR=PXEBOOTDIR ++#BOOTDIR="isolinux" ++BOOTDIR="boot" ++ISOLINUXDIR="isolinux" +LORAXDIR="usr/share/lorax/" + +## Don't allow spaces or escape characters in the iso label -+def valid_label(ch): -+ return ch.isalnum() or ch == '_' ++#def valid_label(ch): ++# return ch.isalnum() or ch == '_' + -+isolabel = ''.join(ch if valid_label(ch) else '-' for ch in isolabel) ++#isolabel = ''.join(ch if valid_label(ch) else '-' for ch in isolabel) + +import os +from os.path import basename @@ -590,143 +346,75 @@ index 0000000..193286c +treeinfo stage2 mainimage isoft/sw64/${runtime_base} + +## install bootloader and config files -+mkdir ${BOOTDIR} -+install ${SYSLINUXDIR}/isolinux.bin ${BOOTDIR} -+install ${SYSLINUXDIR}/vesamenu.c32 ${BOOTDIR} -+install ${SYSLINUXDIR}/ldlinux.c32 ${BOOTDIR} -+install ${SYSLINUXDIR}/libcom32.c32 ${BOOTDIR} -+install ${SYSLINUXDIR}/libutil.c32 ${BOOTDIR} -+install ${configdir}/isolinux.cfg ${BOOTDIR} -+install ${configdir}/boot.msg ${BOOTDIR} -+install ${configdir}/grub.conf ${BOOTDIR} -+install usr/share/anaconda/boot/syslinux-splash.png ${BOOTDIR}/splash.png -+install boot/memtest* ${BOOTDIR}/memtest ++mkdir ${ISOLINUXDIR} ++install ${configdir}/isolinux.bin ${ISOLINUXDIR} ++install ${configdir}/isolinux.cfg ${ISOLINUXDIR} ++install ${configdir}/boot.msg ${ISOLINUXDIR} ++install ${configdir}/grub.conf ${ISOLINUXDIR} ++install usr/share/anaconda/boot/syslinux-splash.png ${ISOLINUXDIR}/splash.png ++install ${configdir}/isolinux/anaconda_configure_user.sh ${ISOLINUXDIR} ++install ${configdir}/isolinux/.bashrc ${ISOLINUXDIR} + +## configure bootloader -+replace @VERSION@ ${product.version} ${BOOTDIR}/grub.conf ${BOOTDIR}/isolinux.cfg ${BOOTDIR}/*.msg -+replace @PRODUCT@ '${product.name}' ${BOOTDIR}/grub.conf ${BOOTDIR}/isolinux.cfg ${BOOTDIR}/*.msg -+replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev}' ${BOOTDIR}/isolinux.cfg ++replace @VERSION@ ${product.version} ${ISOLINUXDIR}/grub.conf ${ISOLINUXDIR}/isolinux.cfg ${ISOLINUXDIR}/*.msg ++replace @PRODUCT@ '${product.name}' ${ISOLINUXDIR}/grub.conf ${ISOLINUXDIR}/isolinux.cfg ${ISOLINUXDIR}/*.msg ++replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev}' ${ISOLINUXDIR}/isolinux.cfg + +## install kernels -+mkdir ${KERNELDIR} ++mkdir ${BOOTDIR} ++mkdir ${BOOTDIR}/grub ++mkdir ${BOOTDIR}/grub/fonts ++mkdir ${BOOTDIR}/grub/locale ++install ${configdir}/boot/bootloader.bin ${BOOTDIR} ++install ${configdir}/boot/grub/grub.cfg ${BOOTDIR}/grub/ ++install ${configdir}/boot/grub/grub.efi ${BOOTDIR}/grub/ ++install ${configdir}/boot/grub/kernel.* ${BOOTDIR}/grub/ ++install ${configdir}/boot/grub/splash.xpm.gz ${BOOTDIR}/grub/ ++install ${configdir}/boot/grub/fonts/unicode.pf2 ${BOOTDIR}/grub/fonts/ ++install ${configdir}/boot/grub/locale/zh_CN.mo ${BOOTDIR}/grub/locale/ ++ +%for kernel in kernels: + %if kernel.flavor: + ## i386 PAE -+ installkernel images-xen ${kernel.path} ${KERNELDIR}/vmlinuz-${kernel.flavor} -+ installinitrd images-xen ${kernel.initrd.path} ${KERNELDIR}/initrd-${kernel.flavor}.img ++ installkernel images-xen ${kernel.path} ${BOOTDIR}/vmlinuz-${kernel.flavor} ++ installinitrd images-xen ${kernel.initrd.path} ${BOOTDIR}/initrd-${kernel.flavor}.img + %else: + ## normal i386, x86_64 -+ installkernel images-${basearch} ${kernel.path} ${KERNELDIR}/vmlinuz -+ installinitrd images-${basearch} ${kernel.initrd.path} ${KERNELDIR}/initrd.img ++ installkernel images-${basearch} ${kernel.path} ${BOOTDIR}/vmlinuz ++ installinitrd images-${basearch} ${kernel.initrd.path} ${BOOTDIR}/initrd.img + %endif +%endfor + -+hardlink ${KERNELDIR}/vmlinuz ${BOOTDIR} -+hardlink ${KERNELDIR}/initrd.img ${BOOTDIR} -+%if basearch == 'x86_64': -+ treeinfo images-xen kernel ${KERNELDIR}/vmlinuz -+ treeinfo images-xen initrd ${KERNELDIR}/initrd.img -+%endif -+ -+## WHeeeeeeee, EFI. -+<% efiargs=""; efigraft=""; efiarch32=None; efiarch64=None %> -+%if exists("boot/efi/EFI/*/gcdia32.efi"): -+ <% efiarch32 = 'IA32' %> -+%endif -+%if exists("boot/efi/EFI/*/gcdx64.efi"): -+ <% efiarch64 = 'X64' %> -+%endif -+%if (efiarch32 or efiarch64) and basearch != 'i386': -+ <% -+ efigraft="EFI/BOOT={0}/EFI/BOOT".format(outroot) -+ images = [("images/efiboot.img", "-isohybrid-gpt-basdat")] -+ if domacboot: -+ images.append(("images/macboot.img", "-isohybrid-gpt-hfsplus")) -+ %> -+ %for img, hybrid in images: -+ <% -+ efiargs += " -eltorito-alt-boot -e {0} -no-emul-boot {1}".format(img, hybrid) -+ efigraft += " {0}={1}/{0}".format(img,outroot) -+ %> -+ treeinfo images-${basearch} ${img|basename} ${img} -+ %endfor -+ <%include file="efi.tmpl" args="configdir=configdir, KERNELDIR=KERNELDIR, efiarch32=efiarch32, efiarch64=efiarch64, isolabel=isolabel"/> -+%endif -+ -+# Create optional product.img and updates.img -+<% filegraft=""; images=["product", "updates"]; compressargs=""; %> -+%if basearch == 'i386': -+ # Limit the amount of memory xz uses on i386 -+ <% compressargs="--xz -9 --memlimit-compress=3700MiB" %> -+%endif -+%for img in images: -+ %if exists("%s/%s/" % (LORAXDIR, img)): -+ installimg ${compressargs} ${LORAXDIR}/${img}/ isoft/sw64/${img}.img -+ treeinfo images-${basearch} ${img}.img isoft/sw64/${img}.img -+ <% filegraft += " images/{0}.img={1}/isoft/sw64/{0}.img".format(img, outroot) %> -+ %endif -+%endfor ++replace @VERSION@ '${product.version}' ${BOOTDIR}/grub/grub.cfg ++replace @PRODUCT@ '${product.name}' ${BOOTDIR}/grub/grub.cfg ++replace @LABEL@ '${isolabel|udev}' ${BOOTDIR}/grub/grub.cfg + -+# Inherit iso-graft/ if it exists from external templates -+<% -+ import os -+ if os.path.exists(workdir + "/iso-graft"): -+ filegraft += " " + workdir + "/iso-graft" -+%> ++install ${configdir}/efibootimg ${BOOTDIR}/../ + -+# Add the license files -+%for f in glob("/usr/share/licenses/*-release/*"): -+ install ${f} ${f|basename} -+ <% filegraft += " {0}={1}/{0}".format(basename(f), outroot) %> -+%endfor ++mkdir EFI ++mkdir EFI/BOOT ++mkdir EFI/BOOT/fonts ++mkdir EFI/BOOT/locale ++install ${configdir}/EFI/BOOT/BOOT.cfg EFI/BOOT/ ++install ${configdir}/EFI/BOOT/grub.cfg EFI/BOOT/ ++install ${configdir}/EFI/BOOT/grub.efi EFI/BOOT/ ++install ${configdir}/EFI/BOOT/kernel.* EFI/BOOT/ ++install ${configdir}/EFI/BOOT/splash.xpm.gz EFI/BOOT/ ++install ${configdir}/EFI/BOOT/fonts/unicode.pf2 EFI/BOOT/fonts/ ++install ${configdir}/EFI/BOOT/locale/zh_CN.mo EFI/BOOT/locale/ + +## make boot.iso ++mkdir images +runcmd xorrisofs ${isoargs} -o ${outroot}/images/boot.iso \ -+ -isohybrid-mbr /usr/share/syslinux/isohdpfx.bin \ -+ -b ${BOOTDIR}/isolinux.bin -c ${BOOTDIR}/boot.cat \ ++ -b ${ISOLINUXDIR}/isolinux.bin -c ${ISOLINUXDIR}/boot.cat \ + -boot-load-size 4 -boot-info-table -no-emul-boot \ -+ ${efiargs} -R -J -V '${isolabel}' \ -+ -graft-points \ -+ .discinfo=${outroot}/.discinfo \ -+ ${STAGE2IMG}=${outroot}/${STAGE2IMG} \ -+ ${BOOTDIR}=${outroot}/${BOOTDIR} \ -+ ${KERNELDIR}=${outroot}/${KERNELDIR} \ -+ ${efigraft} ${filegraft} ++ -R -J -V '${isolabel}' \ ++ ${outroot} +treeinfo images-${basearch} boot.iso images/boot.iso -diff --git a/src/pylorax/__init__.py b/src/pylorax/__init__.py -index 8700ff5..1b85052 100644 ---- a/src/pylorax/__init__.py -+++ b/src/pylorax/__init__.py -@@ -61,13 +61,13 @@ else: - DRACUT_DEFAULT = ["--xz", "--install", "/.buildstamp", "--no-early-microcode", "--add", "fips"] - - # Used for DNF conf.module_platform_id --DEFAULT_PLATFORM_ID = "platform:f32" -+DEFAULT_PLATFORM_ID = "platform:sw64" - - class ArchData(DataHolder): - lib64_arches = ("x86_64", "ppc64le", "s390x", "ia64", "aarch64") - bcj_arch = dict(i386="x86", x86_64="x86", - ppc64le="powerpc", -- arm="arm", armhfp="arm") -+ arm="arm", armhfp="arm", sw_64="sw64") - - def __init__(self, buildarch): - super(ArchData, self).__init__() -@@ -309,7 +309,7 @@ class Lorax(BaseLoraxClass): - rb.writepkgsizes(joinpaths(logdir, "final-pkgsizes.txt")) - - logger.info("creating the runtime image") -- runtime = "images/install.img" -+ runtime = "isoft/sw64/root-image.fs.sfs" - compression = self.conf.get("compression", "type") - compressargs = self.conf.get("compression", "args").split() # pylint: disable=no-member - if self.conf.getboolean("compression", "bcj"): -diff --git a/src/pylorax/creator.py b/src/pylorax/creator.py -index 7075d32..79d35fd 100644 ---- a/src/pylorax/creator.py -+++ b/src/pylorax/creator.py -@@ -51,7 +51,7 @@ from pylorax.sysutils import joinpaths, remove +diff -Naru lorax-lorax-34.1-1/src/pylorax/creator.py lorax-lorax-34.1-1.bak/src/pylorax/creator.py +--- lorax-lorax-34.1-1/src/pylorax/creator.py 2020-09-15 05:55:20.000000000 +0800 ++++ lorax-lorax-34.1-1.bak/src/pylorax/creator.py 2023-05-19 13:32:39.407962280 +0800 +@@ -51,7 +51,7 @@ DRACUT_DEFAULT = ["--xz", "--add", "livenet dmsquash-live dmsquash-live-ntfs convertfs pollcdrom qemu qemu-net", "--omit", "plymouth", "--no-hostonly", "--debug", "--no-early-microcode"] @@ -735,7 +423,7 @@ index 7075d32..79d35fd 100644 class FakeDNF(object): """ -@@ -336,7 +336,7 @@ def make_livecd(opts, mount_dir, work_dir): +@@ -332,7 +332,7 @@ :param opts: options passed to livemedia-creator :type opts: argparse options :param str mount_dir: Directory tree to compress @@ -744,7 +432,7 @@ index 7075d32..79d35fd 100644 This uses wwood's squashfs live initramfs method: * put the real / into LiveOS/rootfs.img -@@ -354,7 +354,7 @@ def make_livecd(opts, mount_dir, work_dir): +@@ -350,7 +350,7 @@ # Link /images to work_dir/images to make the templates happy if os.path.islink(joinpaths(mount_dir, "images")): os.unlink(joinpaths(mount_dir, "images")) @@ -753,7 +441,7 @@ index 7075d32..79d35fd 100644 joinpaths(mount_dir, "images")]) if rc: raise RuntimeError("Failed to symlink images from mount_dir to work_dir") -@@ -529,9 +529,8 @@ def make_live_images(opts, work_dir, disk_img): +@@ -525,9 +525,8 @@ sys_root = "" squashfs_root_dir = joinpaths(work_dir, "squashfs_root") @@ -765,7 +453,7 @@ index 7075d32..79d35fd 100644 if opts.fs_image or opts.no_virt: # Find the ostree root in the fsimage -@@ -573,7 +572,7 @@ def make_live_images(opts, work_dir, disk_img): +@@ -569,7 +568,7 @@ log.info("Packing live rootfs image") add_pxe_args = [] @@ -774,11 +462,31 @@ index 7075d32..79d35fd 100644 compression, compressargs = squashfs_args(opts) rc = mksquashfs(squashfs_root_dir, joinpaths(work_dir, live_image_name), compression, compressargs) if rc != 0: -diff --git a/src/pylorax/mount.py b/src/pylorax/mount.py -index 19e399b..a50f5a9 100644 ---- a/src/pylorax/mount.py -+++ b/src/pylorax/mount.py -@@ -67,7 +67,7 @@ class IsoMountpoint(object): +diff -Naru lorax-lorax-34.1-1/src/pylorax/__init__.py lorax-lorax-34.1-1.bak/src/pylorax/__init__.py +--- lorax-lorax-34.1-1/src/pylorax/__init__.py 2023-05-19 13:38:47.357962280 +0800 ++++ lorax-lorax-34.1-1.bak/src/pylorax/__init__.py 2023-05-19 13:32:33.807962280 +0800 +@@ -61,7 +61,7 @@ + DRACUT_DEFAULT = ["--xz", "--install", "/.buildstamp", "--no-early-microcode", "--add", "fips"] + + # Used for DNF conf.module_platform_id +-DEFAULT_PLATFORM_ID = "platform:f32" ++DEFAULT_PLATFORM_ID = "platform:sw64" + + class ArchData(DataHolder): + lib64_arches = ("x86_64", "ppc64le", "s390x", "ia64", "aarch64") +@@ -309,7 +309,7 @@ + rb.writepkgsizes(joinpaths(logdir, "final-pkgsizes.txt")) + + logger.info("creating the runtime image") +- runtime = "images/install.img" ++ runtime = "isoft/sw64/root-image.fs.sfs" + compression = self.conf.get("compression", "type") + compressargs = self.conf.get("compression", "args").split() # pylint: disable=no-member + if self.conf.getboolean("compression", "bcj"): +diff -Naru lorax-lorax-34.1-1/src/pylorax/mount.py lorax-lorax-34.1-1.bak/src/pylorax/mount.py +--- lorax-lorax-34.1-1/src/pylorax/mount.py 2020-09-15 05:55:20.000000000 +0800 ++++ lorax-lorax-34.1-1.bak/src/pylorax/mount.py 2023-05-19 13:32:55.777962280 +0800 +@@ -67,7 +67,7 @@ else: self.repo = None self.stage2 = os.path.exists(self.mount_dir+"/LiveOS/squashfs.img") or \ @@ -787,11 +495,10 @@ index 19e399b..a50f5a9 100644 try: for kernel, initrd in kernel_list: -diff --git a/src/pylorax/treebuilder.py b/src/pylorax/treebuilder.py -index cbb8872..9335735 100644 ---- a/src/pylorax/treebuilder.py -+++ b/src/pylorax/treebuilder.py -@@ -42,6 +42,7 @@ templatemap = { +diff -Naru lorax-lorax-34.1-1/src/pylorax/treebuilder.py lorax-lorax-34.1-1.bak/src/pylorax/treebuilder.py +--- lorax-lorax-34.1-1/src/pylorax/treebuilder.py 2023-05-19 13:38:47.357962280 +0800 ++++ lorax-lorax-34.1-1.bak/src/pylorax/treebuilder.py 2023-05-19 13:32:45.077962280 +0800 +@@ -42,6 +42,7 @@ 'aarch64': 'aarch64.tmpl', 'arm': 'arm.tmpl', 'armhfp': 'arm.tmpl', @@ -799,6 +506,21 @@ index cbb8872..9335735 100644 } def generate_module_info(moddir, outfile=None): --- -2.33.0 +@@ -248,7 +249,7 @@ + + # Catch problems with the rootfs being too small and clearly log them + try: +- imgutils.mkrootfsimg(self.vars.root, joinpaths(workdir, "LiveOS/rootfs.img"), ++ imgutils.mkrootfsimg(self.vars.root, joinpaths(workdir, "root-image.fs"), + "Anaconda", size=size) + except CalledProcessError as e: + if e.stdout and "No space left on device" in e.stdout: +@@ -256,7 +257,7 @@ + raise + + # squash the live rootfs and clean up workdir +- rc = imgutils.mksquashfs(workdir, outfile, compression, compressargs) ++ rc = imgutils.mksquashfs(joinpaths(workdir, "root-image.fs"), outfile, compression, compressargs) + remove(workdir) + return rc diff --git a/0001-sw64-tmpl-and-treebuild-modify.patch b/0001-sw64-tmpl-and-treebuild-modify.patch deleted file mode 100644 index ad990a1d027511bbc0de101431e87a757b3b3163..0000000000000000000000000000000000000000 --- a/0001-sw64-tmpl-and-treebuild-modify.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 068f08269167a1f03612ed5b2b14c943e165b471 Mon Sep 17 00:00:00 2001 -From: isoft -Date: Wed, 2 Nov 2022 07:51:28 +0000 -Subject: [PATCH] sw64 tmpl and treebuild modify - ---- - share/templates.d/99-generic/sw64.tmpl | 2 -- - src/pylorax/treebuilder.py | 4 ++-- - 2 files changed, 2 insertions(+), 4 deletions(-) - -diff --git a/share/templates.d/99-generic/sw64.tmpl b/share/templates.d/99-generic/sw64.tmpl -index 3830f2e..9996923 100644 ---- a/share/templates.d/99-generic/sw64.tmpl -+++ b/share/templates.d/99-generic/sw64.tmpl -@@ -54,8 +54,6 @@ install ${configdir}/boot/grub/splash.xpm.gz ${BOOTDIR}/grub/ - install ${configdir}/boot/grub/fonts/unicode.pf2 ${BOOTDIR}/grub/fonts/ - install ${configdir}/boot/grub/locale/zh_CN.mo ${BOOTDIR}/grub/locale/ - --ln -s ${BOOTDIR}/boot . -- - %for kernel in kernels: - %if kernel.flavor: - ## i386 PAE -diff --git a/src/pylorax/treebuilder.py b/src/pylorax/treebuilder.py -index 5fbb579..cead5b2 100644 ---- a/src/pylorax/treebuilder.py -+++ b/src/pylorax/treebuilder.py -@@ -246,7 +246,7 @@ class RuntimeBuilder(object): - - # Catch problems with the rootfs being too small and clearly log them - try: -- imgutils.mkrootfsimg(self.vars.root, joinpaths(workdir, "rootfs.img"), -+ imgutils.mkrootfsimg(self.vars.root, joinpaths(workdir, "root-image.fs"), - "Anaconda", size=size) - except CalledProcessError as e: - if e.stdout and "No space left on device" in e.stdout: -@@ -254,7 +254,7 @@ class RuntimeBuilder(object): - raise - - # squash the live rootfs and clean up workdir -- rc = imgutils.mksquashfs(workdir, outfile, compression, compressargs) -+ rc = imgutils.mksquashfs(joinpaths(workdir, "root-image.fs"), outfile, compression, compressargs) - remove(workdir) - return rc - --- -2.33.0 - diff --git a/0001-sw64-tmpl-label-modify.patch b/0001-sw64-tmpl-label-modify.patch deleted file mode 100644 index b901ed7ba233d24f87854130a66345d992387ec6..0000000000000000000000000000000000000000 --- a/0001-sw64-tmpl-label-modify.patch +++ /dev/null @@ -1,49 +0,0 @@ -From 1421e85651a656cdc89d206467894e748eb8f8b9 Mon Sep 17 00:00:00 2001 -From: isoft -Date: Wed, 2 Nov 2022 06:20:04 +0000 -Subject: [PATCH] sw64 tmpl label modify - ---- - .../99-generic/config_files/sw64/boot/grub/grub.cfg | 4 ++-- - share/templates.d/99-generic/sw64.tmpl | 10 ++++++---- - 2 files changed, 8 insertions(+), 6 deletions(-) - -diff --git a/share/templates.d/99-generic/sw64.tmpl b/share/templates.d/99-generic/sw64.tmpl -index cea9225..3830f2e 100644 ---- a/share/templates.d/99-generic/sw64.tmpl -+++ b/share/templates.d/99-generic/sw64.tmpl -@@ -8,10 +8,10 @@ ISOLINUXDIR="isolinux" - LORAXDIR="usr/share/lorax/" - - ## Don't allow spaces or escape characters in the iso label --def valid_label(ch): -- return ch.isalnum() or ch == '_' -+#def valid_label(ch): -+# return ch.isalnum() or ch == '_' - --isolabel = ''.join(ch if valid_label(ch) else '-' for ch in isolabel) -+#isolabel = ''.join(ch if valid_label(ch) else '-' for ch in isolabel) - - import os - from os.path import basename -@@ -54,6 +54,8 @@ install ${configdir}/boot/grub/splash.xpm.gz ${BOOTDIR}/grub/ - install ${configdir}/boot/grub/fonts/unicode.pf2 ${BOOTDIR}/grub/fonts/ - install ${configdir}/boot/grub/locale/zh_CN.mo ${BOOTDIR}/grub/locale/ - -+ln -s ${BOOTDIR}/boot . -+ - %for kernel in kernels: - %if kernel.flavor: - ## i386 PAE -@@ -68,7 +70,7 @@ install ${configdir}/boot/grub/locale/zh_CN.mo ${BOOTDIR}/grub/locale/ - - replace @VERSION@ '${product.version}' ${BOOTDIR}/grub/grub.cfg - replace @PRODUCT@ '${product.name}' ${BOOTDIR}/grub/grub.cfg --replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev}' ${BOOTDIR}/grub/grub.cfg -+replace @LABEL@ '${isolabel|udev}' ${BOOTDIR}/grub/grub.cfg - - install ${configdir}/efibootimg ${BOOTDIR}/../ - --- -2.33.0 - diff --git a/0002-sw64-modify.patch b/0002-sw64-modify.patch deleted file mode 100644 index 5cf8cf399d37da2313e3ff5603b3d97addc9977b..0000000000000000000000000000000000000000 --- a/0002-sw64-modify.patch +++ /dev/null @@ -1,204 +0,0 @@ -From e0b31ea90a4af94a73d0bb9498e12caa93d2a524 Mon Sep 17 00:00:00 2001 -From: isoft -Date: Tue, 1 Nov 2022 09:49:12 +0000 -Subject: [PATCH 2/2] sw64 modify - ---- - share/templates.d/99-generic/sw64.tmpl | 124 ++++++++---------- - src/pylorax/__init__.py | 2 +- - src/pylorax/treebuilder.py | 2 +- - -index 193286c..cea9225 100644 ---- a/share/templates.d/99-generic/sw64.tmpl -+++ b/share/templates.d/99-generic/sw64.tmpl -@@ -1,11 +1,10 @@ - <%page args="kernels, runtime_img, runtime_base, basearch, inroot, outroot, product, isolabel"/> - <% - configdir="tmp/config_files/sw64" --SYSLINUXDIR="usr/share/syslinux" --PXEBOOTDIR="pxeboot" - STAGE2IMG="isoft/sw64/root-image.fs.sfs" --BOOTDIR="isolinux" --KERNELDIR=PXEBOOTDIR -+#BOOTDIR="isolinux" -+BOOTDIR="boot" -+ISOLINUXDIR="isolinux" - LORAXDIR="usr/share/lorax/" - - ## Don't allow spaces or escape characters in the iso label -@@ -30,80 +29,68 @@ install ${runtime_img} ${STAGE2IMG} - treeinfo stage2 mainimage isoft/sw64/${runtime_base} - - ## install bootloader and config files --mkdir ${BOOTDIR} --install ${SYSLINUXDIR}/isolinux.bin ${BOOTDIR} --install ${SYSLINUXDIR}/vesamenu.c32 ${BOOTDIR} --install ${SYSLINUXDIR}/ldlinux.c32 ${BOOTDIR} --install ${SYSLINUXDIR}/libcom32.c32 ${BOOTDIR} --install ${SYSLINUXDIR}/libutil.c32 ${BOOTDIR} --install ${configdir}/isolinux.cfg ${BOOTDIR} --install ${configdir}/boot.msg ${BOOTDIR} --install ${configdir}/grub.conf ${BOOTDIR} --install usr/share/anaconda/boot/syslinux-splash.png ${BOOTDIR}/splash.png --install boot/memtest* ${BOOTDIR}/memtest -+mkdir ${ISOLINUXDIR} -+install ${configdir}/isolinux.bin ${ISOLINUXDIR} -+install ${configdir}/isolinux.cfg ${ISOLINUXDIR} -+install ${configdir}/boot.msg ${ISOLINUXDIR} -+install ${configdir}/grub.conf ${ISOLINUXDIR} -+install usr/share/anaconda/boot/syslinux-splash.png ${ISOLINUXDIR}/splash.png - - ## configure bootloader --replace @VERSION@ ${product.version} ${BOOTDIR}/grub.conf ${BOOTDIR}/isolinux.cfg ${BOOTDIR}/*.msg --replace @PRODUCT@ '${product.name}' ${BOOTDIR}/grub.conf ${BOOTDIR}/isolinux.cfg ${BOOTDIR}/*.msg --replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev}' ${BOOTDIR}/isolinux.cfg -+replace @VERSION@ ${product.version} ${ISOLINUXDIR}/grub.conf ${ISOLINUXDIR}/isolinux.cfg ${ISOLINUXDIR}/*.msg -+replace @PRODUCT@ '${product.name}' ${ISOLINUXDIR}/grub.conf ${ISOLINUXDIR}/isolinux.cfg ${ISOLINUXDIR}/*.msg -+replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev}' ${ISOLINUXDIR}/isolinux.cfg - - ## install kernels --mkdir ${KERNELDIR} -+mkdir ${BOOTDIR} -+mkdir ${BOOTDIR}/grub -+mkdir ${BOOTDIR}/grub/fonts -+mkdir ${BOOTDIR}/grub/locale -+install ${configdir}/boot/bootloader.bin ${BOOTDIR} -+install ${configdir}/boot/grub/grub.cfg ${BOOTDIR}/grub/ -+install ${configdir}/boot/grub/grub.efi ${BOOTDIR}/grub/ -+install ${configdir}/boot/grub/kernel.* ${BOOTDIR}/grub/ -+install ${configdir}/boot/grub/splash.xpm.gz ${BOOTDIR}/grub/ -+install ${configdir}/boot/grub/fonts/unicode.pf2 ${BOOTDIR}/grub/fonts/ -+install ${configdir}/boot/grub/locale/zh_CN.mo ${BOOTDIR}/grub/locale/ -+ - %for kernel in kernels: - %if kernel.flavor: - ## i386 PAE -- installkernel images-xen ${kernel.path} ${KERNELDIR}/vmlinuz-${kernel.flavor} -- installinitrd images-xen ${kernel.initrd.path} ${KERNELDIR}/initrd-${kernel.flavor}.img -+ installkernel images-xen ${kernel.path} ${BOOTDIR}/vmlinuz-${kernel.flavor} -+ installinitrd images-xen ${kernel.initrd.path} ${BOOTDIR}/initrd-${kernel.flavor}.img - %else: - ## normal i386, x86_64 -- installkernel images-${basearch} ${kernel.path} ${KERNELDIR}/vmlinuz -- installinitrd images-${basearch} ${kernel.initrd.path} ${KERNELDIR}/initrd.img -+ installkernel images-${basearch} ${kernel.path} ${BOOTDIR}/vmlinuz -+ installinitrd images-${basearch} ${kernel.initrd.path} ${BOOTDIR}/initrd.img - %endif - %endfor - --hardlink ${KERNELDIR}/vmlinuz ${BOOTDIR} --hardlink ${KERNELDIR}/initrd.img ${BOOTDIR} --%if basearch == 'x86_64': -- treeinfo images-xen kernel ${KERNELDIR}/vmlinuz -- treeinfo images-xen initrd ${KERNELDIR}/initrd.img --%endif -- --## WHeeeeeeee, EFI. --<% efiargs=""; efigraft=""; efiarch32=None; efiarch64=None %> --%if exists("boot/efi/EFI/*/gcdia32.efi"): -- <% efiarch32 = 'IA32' %> --%endif --%if exists("boot/efi/EFI/*/gcdx64.efi"): -- <% efiarch64 = 'X64' %> --%endif --%if (efiarch32 or efiarch64) and basearch != 'i386': -- <% -- efigraft="EFI/BOOT={0}/EFI/BOOT".format(outroot) -- images = [("images/efiboot.img", "-isohybrid-gpt-basdat")] -- if domacboot: -- images.append(("images/macboot.img", "-isohybrid-gpt-hfsplus")) -- %> -- %for img, hybrid in images: -- <% -- efiargs += " -eltorito-alt-boot -e {0} -no-emul-boot {1}".format(img, hybrid) -- efigraft += " {0}={1}/{0}".format(img,outroot) -- %> -- treeinfo images-${basearch} ${img|basename} ${img} -- %endfor -- <%include file="efi.tmpl" args="configdir=configdir, KERNELDIR=KERNELDIR, efiarch32=efiarch32, efiarch64=efiarch64, isolabel=isolabel"/> --%endif -+replace @VERSION@ '${product.version}' ${BOOTDIR}/grub/grub.cfg -+replace @PRODUCT@ '${product.name}' ${BOOTDIR}/grub/grub.cfg -+replace @ROOT@ 'inst.stage2=hd:LABEL=${isolabel|udev}' ${BOOTDIR}/grub/grub.cfg -+ -+install ${configdir}/efibootimg ${BOOTDIR}/../ -+ -+mkdir EFI -+mkdir EFI/BOOT -+mkdir EFI/BOOT/fonts -+mkdir EFI/BOOT/locale -+install ${configdir}/EFI/BOOT/BOOT.cfg EFI/BOOT/ -+install ${configdir}/EFI/BOOT/grub.cfg EFI/BOOT/ -+install ${configdir}/EFI/BOOT/grub.efi EFI/BOOT/ -+install ${configdir}/EFI/BOOT/kernel.* EFI/BOOT/ -+install ${configdir}/EFI/BOOT/splash.xpm.gz EFI/BOOT/ -+install ${configdir}/EFI/BOOT/fonts/unicode.pf2 EFI/BOOT/fonts/ -+install ${configdir}/EFI/BOOT/locale/zh_CN.mo EFI/BOOT/locale/ - - # Create optional product.img and updates.img --<% filegraft=""; images=["product", "updates"]; compressargs=""; %> --%if basearch == 'i386': -- # Limit the amount of memory xz uses on i386 -- <% compressargs="--xz -9 --memlimit-compress=3700MiB" %> --%endif -+<% filegraft=""; images=["product", "updates"] %> - %for img in images: - %if exists("%s/%s/" % (LORAXDIR, img)): -- installimg ${compressargs} ${LORAXDIR}/${img}/ isoft/sw64/${img}.img -- treeinfo images-${basearch} ${img}.img isoft/sw64/${img}.img -- <% filegraft += " images/{0}.img={1}/isoft/sw64/{0}.img".format(img, outroot) %> -+ installimg ${LORAXDIR}/${img}/ images/${img}.img -+ treeinfo images-${basearch} ${img}.img images/${img}.img -+ <% filegraft += " images/{0}.img={1}/images/{0}.img".format(img, outroot) %> - %endif - %endfor - -@@ -121,15 +108,10 @@ hardlink ${KERNELDIR}/initrd.img ${BOOTDIR} - %endfor - - ## make boot.iso -+mkdir images - runcmd xorrisofs ${isoargs} -o ${outroot}/images/boot.iso \ -- -isohybrid-mbr /usr/share/syslinux/isohdpfx.bin \ -- -b ${BOOTDIR}/isolinux.bin -c ${BOOTDIR}/boot.cat \ -+ -b ${ISOLINUXDIR}/isolinux.bin -c ${ISOLINUXDIR}/boot.cat \ - -boot-load-size 4 -boot-info-table -no-emul-boot \ -- ${efiargs} -R -J -V '${isolabel}' \ -- -graft-points \ -- .discinfo=${outroot}/.discinfo \ -- ${STAGE2IMG}=${outroot}/${STAGE2IMG} \ -- ${BOOTDIR}=${outroot}/${BOOTDIR} \ -- ${KERNELDIR}=${outroot}/${KERNELDIR} \ -- ${efigraft} ${filegraft} -+ -R -J -V '${isolabel}' \ -+ ${filegraft} ${outroot} - treeinfo images-${basearch} boot.iso images/boot.iso -diff --git a/src/pylorax/__init__.py b/src/pylorax/__init__.py -index 1b85052..c37c0e0 100644 ---- a/src/pylorax/__init__.py -+++ b/src/pylorax/__init__.py -@@ -67,7 +67,7 @@ class ArchData(DataHolder): - lib64_arches = ("x86_64", "ppc64le", "s390x", "ia64", "aarch64") - bcj_arch = dict(i386="x86", x86_64="x86", - ppc64le="powerpc", -- arm="arm", armhfp="arm", sw_64="sw64") -+ arm="arm", armhfp="arm") - - def __init__(self, buildarch): - super(ArchData, self).__init__() -diff --git a/src/pylorax/treebuilder.py b/src/pylorax/treebuilder.py -index 9335735..5fbb579 100644 ---- a/src/pylorax/treebuilder.py -+++ b/src/pylorax/treebuilder.py -@@ -246,7 +246,7 @@ class RuntimeBuilder(object): - - # Catch problems with the rootfs being too small and clearly log them - try: -- imgutils.mkrootfsimg(self.vars.root, joinpaths(workdir, "LiveOS/rootfs.img"), -+ imgutils.mkrootfsimg(self.vars.root, joinpaths(workdir, "rootfs.img"), - "Anaconda", size=size) - except CalledProcessError as e: - if e.stdout and "No space left on device" in e.stdout: --- -2.33.0 - diff --git a/lorax.spec b/lorax.spec index 14ff3128a424de938544b1383feea8f276a13e1a..3b23a837a11025efa4f0269d0a4400d1fdd26a0e 100644 --- a/lorax.spec +++ b/lorax.spec @@ -31,11 +31,7 @@ Patch16: add-param-name_prefix-to-make-name-used-by-register_blueprint-un Patch100: 0001-support-loongarch-for-lorax.patch %ifarch sw_64 -Patch200: 0001-sw64-modify.patch -Patch201: 0002-sw64-modify.patch -Patch202: runtime-tmpl-sw64.patch -Patch203: 0001-sw64-tmpl-label-modify.patch -Patch204: 0001-sw64-tmpl-and-treebuild-modify.patch +Patch200: 0001-add-sw64-architecture.patch %endif BuildRequires: python3-devel python3-sphinx_rtd_theme python3-magic @@ -150,10 +146,6 @@ build images, etc. from the command line. %ifarch sw_64 %patch200 -p1 -%patch201 -p1 -%patch202 -p1 -%patch203 -p1 -%patch204 -p1 %endif %build diff --git a/runtime-tmpl-sw64.patch b/runtime-tmpl-sw64.patch deleted file mode 100644 index 4fe6dd754e263bd62f290c914829a6d0bd3ca460..0000000000000000000000000000000000000000 --- a/runtime-tmpl-sw64.patch +++ /dev/null @@ -1,127 +0,0 @@ ---- ./share/templates.d/99-generic/runtime-install.tmpl.orig 2022-11-02 01:51:10.114315928 +0000 -+++ ./share/templates.d/99-generic/runtime-install.tmpl 2022-11-02 01:59:02.845221968 +0000 -@@ -5,7 +5,7 @@ - installpkg anaconda anaconda-widgets kexec-tools-anaconda-addon anaconda-install-env-deps - ## Other available payloads - installpkg dnf --installpkg rpm-ostree ostree -+installpkg rpm - ## speed up compression on multicore systems - installpkg pigz - -@@ -129,7 +129,7 @@ - installpkg pciutils usbutils ipmitool - installpkg mt-st smartmontools - installpkg hdparm --%if basearch not in ("aarch64", "ppc64le", "s390x"): -+%if basearch not in ("aarch64", "ppc64le", "s390x", "sw_64"): - installpkg pcmciautils - %endif - ## see bug #1483278 -@@ -143,24 +143,24 @@ - - - ## fonts & themes --installpkg aajohan-comfortaa-fonts -+#installpkg aajohan-comfortaa-fonts - installpkg abattis-cantarell-fonts --installpkg bitmap-fangsongti-fonts -+#installpkg bitmap-fangsongti-fonts - installpkg dejavu-sans-fonts dejavu-sans-mono-fonts - installpkg google-noto-sans-cjk-ttc-fonts --installpkg google-noto-sans-gurmukhi-fonts --installpkg google-noto-sans-sinhala-vf-fonts -+#installpkg google-noto-sans-gurmukhi-fonts -+#installpkg google-noto-sans-sinhala-vf-fonts - installpkg jomolhari-fonts --installpkg khmeros-base-fonts --installpkg lohit-assamese-fonts --installpkg lohit-bengali-fonts --installpkg lohit-devanagari-fonts --installpkg lohit-gujarati-fonts --installpkg lohit-kannada-fonts --installpkg lohit-marathi-fonts --installpkg lohit-odia-fonts --installpkg lohit-tamil-fonts --installpkg lohit-telugu-fonts -+#installpkg khmeros-base-fonts -+#installpkg lohit-assamese-fonts -+#installpkg lohit-bengali-fonts -+#installpkg lohit-devanagari-fonts -+#installpkg lohit-gujarati-fonts -+#installpkg lohit-kannada-fonts -+#installpkg lohit-marathi-fonts -+#installpkg lohit-odia-fonts -+#installpkg lohit-tamil-fonts -+#installpkg lohit-telugu-fonts - installpkg madan-fonts - installpkg paktype-naskh-basic-fonts - installpkg sil-abyssinica-fonts -@@ -171,13 +171,13 @@ - installpkg xorg-x11-fonts-misc - - ## debugging/bug reporting tools --installpkg gdb-gdbserver --installpkg libreport-plugin-bugzilla libreport-plugin-reportuploader -+#installpkg gdb-gdbserver -+#installpkg libreport-plugin-bugzilla libreport-plugin-reportuploader - installpkg fpaste - installpkg python3-pyatspi - - ## extra tools not required by anaconda --installpkg vim-minimal strace lsof dump xz less -+installpkg vim-minimal strace lsof xz less - installpkg wget rsync bind-utils ftp mtr vconfig - installpkg icfg spice-vdagent - installpkg gdisk hexedit sg3_utils ---- ./share/templates.d/99-generic/runtime-cleanup.tmpl.orig 2022-11-02 01:50:59.214295037 +0000 -+++ ./share/templates.d/99-generic/runtime-cleanup.tmpl 2022-11-02 01:53:06.014538063 +0000 -@@ -43,7 +43,7 @@ - ## Miscellanous unnecessary gpg program - removepkg pinentry - ## no storage device monitoring --removepkg device-mapper-event dmraid-events sgpio -+## removepkg device-mapper-event dmraid-events sgpio - ## logrotate isn't useful in anaconda - removepkg logrotate - remove /etc/logrotate.d -@@ -76,12 +76,18 @@ - remove /usr/share/mime/video /usr/share/mime/x-content /usr/share/mime/x-epoc - remove /var/db /var/games /var/tmp /var/yp /var/nis /var/opt /var/local - remove /var/mail /var/spool /var/preserve /var/report --remove /var/lib/rpm/* /var/lib/yum /var/lib/dnf -+## remove /var/lib/rpm/* /var/lib/yum /var/lib/dnf - ## clean up the files created by various '> /dev/null's - remove /dev/* - - ## icons cache - remove /usr/share/icons/*/icon-theme.cache -+remove /usr/lib/fontconfig/cache/* -+remove /lib/fontconfig/cache/* -+remove /var/lib/systemd/catalog/database -+remove /var/cache/ldconfig/aux-cache -+remove /var/log/tallylog -+remove /root/lorax-packages.log rebuildfile/rootfs/root/lorax-packages.log - - ## clean up kernel modules - removekmod sound drivers/media drivers/hwmon \ -@@ -132,7 +138,7 @@ - removefrom authconfig /usr/sbin/* /usr/share/* - removefrom bash /etc/* /usr/bin/bashbug* /usr/share/* - removefrom bind-utils /usr/bin/host /usr/bin/nsupdate --removefrom bitmap-fangsongti-fonts /usr/share/fonts/* -+## removefrom bitmap-fangsongti-fonts /usr/share/fonts/* - removefrom ca-certificates /etc/pki/java/* - removefrom ca-certificates /etc/pki/tls/certs/ca-bundle.trust.crt /etc/ssl/* - removefrom cairo /usr/${libdir}/libcairo-script* /usr/bin/cairo-sphinx ---- ./share/templates.d/99-generic/runtime-install.tmpl.orig 2022-11-02 02:22:32.247923239 +0000 -+++ ./share/templates.d/99-generic/runtime-install.tmpl 2022-11-02 02:22:50.307957853 +0000 -@@ -105,7 +105,7 @@ - - ## extra storage packages - # hostname is needed for iscsi to work, see RHBZ#1593917 --installpkg udisks2 udisks2-iscsi hostname -+installpkg udisks2 hostname - - ## extra libblockdev plugins - installpkg libblockdev-lvm-dbus