diff --git a/0001-fix-riscv64-devstation-livecd-config-not-found.patch b/0001-fix-riscv64-devstation-livecd-config-not-found.patch new file mode 100644 index 0000000000000000000000000000000000000000..91528264bce6245b3b4fc0098a887367351046e6 --- /dev/null +++ b/0001-fix-riscv64-devstation-livecd-config-not-found.patch @@ -0,0 +1,407 @@ +From 5c682db5139bfccc8a55d9626c5831b7792c4267 Mon Sep 17 00:00:00 2001 +From: ouuleilei +Date: Fri, 7 Mar 2025 15:09:55 +0800 +Subject: [PATCH] fix riscv64 devstation livecd config not found + +--- + .../config_files/riscv64/boot.msg | 4 + + .../config_files/riscv64/grub.conf | 9 ++ + .../config_files/riscv64/grub2-efi.cfg | 38 ++++++ + .../livecd/devstation_live/riscv64.tmpl | 75 ++++++++++++ + .../livecd/devstation_livecd_riscv64.ks | 105 ++++++++++++++++ + .../config/riscv64/livecd/devstation_rpmlist | 115 ++++++++++++++++++ + 6 files changed, 346 insertions(+) + create mode 100644 isomaker/config/riscv64/livecd/devstation_live/config_files/riscv64/boot.msg + create mode 100644 isomaker/config/riscv64/livecd/devstation_live/config_files/riscv64/grub.conf + create mode 100644 isomaker/config/riscv64/livecd/devstation_live/config_files/riscv64/grub2-efi.cfg + create mode 100644 isomaker/config/riscv64/livecd/devstation_live/riscv64.tmpl + create mode 100644 isomaker/config/riscv64/livecd/devstation_livecd_riscv64.ks + create mode 100644 isomaker/config/riscv64/livecd/devstation_rpmlist + +diff --git a/isomaker/config/riscv64/livecd/devstation_live/config_files/riscv64/boot.msg b/isomaker/config/riscv64/livecd/devstation_live/config_files/riscv64/boot.msg +new file mode 100644 +index 0000000..5605477 +--- /dev/null ++++ b/isomaker/config/riscv64/livecd/devstation_live/config_files/riscv64/boot.msg +@@ -0,0 +1,4 @@ ++^L ++^Xsplash.lss ++ ++ - Press the ^O01^O07 key to begin the installation process. +diff --git a/isomaker/config/riscv64/livecd/devstation_live/config_files/riscv64/grub.conf b/isomaker/config/riscv64/livecd/devstation_live/config_files/riscv64/grub.conf +new file mode 100644 +index 0000000..ee47854 +--- /dev/null ++++ b/isomaker/config/riscv64/livecd/devstation_live/config_files/riscv64/grub.conf +@@ -0,0 +1,9 @@ ++#debug --graphics ++default=0 ++splashimage=@SPLASHPATH@ ++timeout 60 ++hiddenmenu ++title Start @PRODUCT@ @VERSION@ ++ findiso ++ kernel @KERNELPATH@ @ROOT@ quiet inst.text rd.live.ram net.ifnames=0 biosdevname=0 rd.shell=0 ++ initrd @INITRDPATH@ +\ No newline at end of file +diff --git a/isomaker/config/riscv64/livecd/devstation_live/config_files/riscv64/grub2-efi.cfg b/isomaker/config/riscv64/livecd/devstation_live/config_files/riscv64/grub2-efi.cfg +new file mode 100644 +index 0000000..aa36684 +--- /dev/null ++++ b/isomaker/config/riscv64/livecd/devstation_live/config_files/riscv64/grub2-efi.cfg +@@ -0,0 +1,38 @@ ++set default="0" ++ ++function load_video { ++ if [ x$feature_all_video_module = xy ]; then ++ insmod all_video ++ else ++ insmod efi_gop ++ insmod efi_uga ++ insmod ieee1275_fb ++ insmod vbe ++ insmod vga ++ insmod video_bochs ++ insmod video_cirrus ++ fi ++} ++ ++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@ with text mode' --class red --class gnu-linux --class gnu --class os { ++ linux @KERNELPATH@ @ROOT@ ro inst.text console=ttyS0 console=tty0 rd.live.ram net.ifnames=0 biosdevname=0 rd.shell=0 ++ initrd @INITRDPATH@ ++} ++submenu 'Troubleshooting -->' { ++ menuentry 'Rescue a @PRODUCT@ system' --class red --class gnu-linux --class gnu --class os { ++ linux @KERNELPATH@ @ROOT@ rescue console=ttyS0 console=tty0 rd.live.ram net.ifnames=0 biosdevname=0 rd.shell=0 ++ initrd @INITRDPATH@ ++ } ++} +diff --git a/isomaker/config/riscv64/livecd/devstation_live/riscv64.tmpl b/isomaker/config/riscv64/livecd/devstation_live/riscv64.tmpl +new file mode 100644 +index 0000000..9c14d3f +--- /dev/null ++++ b/isomaker/config/riscv64/livecd/devstation_live/riscv64.tmpl +@@ -0,0 +1,75 @@ ++<%page args="kernels, runtime_img, basearch, inroot, outroot, product, isolabel"/> ++<% ++configdir="tmp/config_files/riscv64" ++PXEBOOTDIR="images/pxeboot" ++KERNELDIR=PXEBOOTDIR ++LORAXDIR="usr/share/lorax/" ++LIVEDIR="LiveOS" ++ ++ ++from os.path import basename ++%> ++ ++## Test ${runtime_img} to see if udf is needed ++<% ++ import os ++ from pylorax.sysutils import joinpaths ++ if os.stat(joinpaths(inroot, runtime_img)).st_size >= 4*1024**3: ++ udfargs = "-allow-limited-size" ++ else: ++ udfargs = "" ++%> ++mkdir ${LIVEDIR} ++install ${runtime_img} ${LIVEDIR}/squashfs.img ++treeinfo stage2 mainimage ${LIVEDIR}/squashfs.img ++ ++ ++## install kernels ++mkdir ${KERNELDIR} ++%for kernel in kernels: ++ ## normal riscv64 ++ installkernel images-${basearch} ${kernel.path} ${KERNELDIR}/vmlinuz ++ installinitrd images-${basearch} ${kernel.initrd.path} ${KERNELDIR}/initrd.img ++%endfor ++ ++ ++## WHeeeeeeee, EFI. ++## We could remove the basearch restriction someday.. ++<% efiargs=""; efigraft="" %> ++%if exists("boot/efi/EFI/*/gcdriscv64.efi"): ++ <% ++ efiarch32 = None ++ efiarch64 = 'RISCV64' ++ efigraft="EFI/BOOT={0}/EFI/BOOT".format(outroot) ++ images = ["images/efiboot.img"] ++ %> ++ %for img in images: ++ <% ++ efiargs += " -eltorito-alt-boot -e {0} -no-emul-boot".format(img) ++ 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"] %> ++%for img in images: ++ %if exists("%s/%s/" % (LORAXDIR, img)): ++ 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 ++ ++%if exists("boot/efi/EFI/*/gcdriscv64.efi"): ++## make boot.iso ++runcmd mkisofs -o ${outroot}/images/boot.iso \ ++ ${efiargs} -R -J -V '${isolabel}' -T ${udfargs} \ ++ -graft-points \ ++ ${KERNELDIR}=${outroot}/${KERNELDIR} \ ++ ${LIVEDIR}=${outroot}/${LIVEDIR} \ ++ ${efigraft} ${filegraft} ++treeinfo images-${basearch} boot.iso images/boot.iso ++%endif +\ No newline at end of file +diff --git a/isomaker/config/riscv64/livecd/devstation_livecd_riscv64.ks b/isomaker/config/riscv64/livecd/devstation_livecd_riscv64.ks +new file mode 100644 +index 0000000..be247e6 +--- /dev/null ++++ b/isomaker/config/riscv64/livecd/devstation_livecd_riscv64.ks +@@ -0,0 +1,105 @@ ++# Minimal Disk Image ++# ++# Firewall configuration ++firewall --enabled ++# Use network installation ++url --url="INSTALL_REPO" ++# Root password ++rootpw --iscrypted ROOT_PWD ++ ++# Network information ++network --bootproto=dhcp --onboot=on --activate ++# System keyboard ++keyboard --xlayouts=us --vckeymap=us ++# System language ++lang en_US.UTF-8 ++# SELinux configuration ++selinux --enforcing ++# Installation logging level ++logging --level=info ++# Shutdown after installation ++shutdown ++# System timezone ++timezone Asia/Beijing ++# System bootloader configuration ++bootloader --location=mbr ++# Clear the Master Boot Record ++zerombr ++# Partition clearing information ++clearpart --all ++# Disk partitioning information ++part / --fstype="ext4" --size=15000 ++part swap --size=1000 ++%pre ++#!/bin/bash ++mkdir -p /mnt/sysimage/usr/lib64/ ++chmod 0755 /mnt/sysimage/usr/lib64/ ++cp /usr/lib64/libbep_env.so /mnt/sysimage/usr/lib64 ++%end ++%post ++echo "LANG=zh_CN.UTF-8" > /etc/locale.conf ++useradd -m devstation ++usermod -aG wheel devstation ++echo "devstation ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers ++echo "devstation" | passwd --stdin devstation ++passwd -d devstation ++passwd -d root ++ ++if ! grep -q "\[daemon\]" /etc/gdm/custom.conf; then ++ echo "[daemon]" >> /etc/gdm/custom.conf ++fi ++ ++sed -i "/\[daemon\]/a AutomaticLoginEnable=true" /etc/gdm/custom.conf ++sed -i "/\[daemon\]/a AutomaticLogin=devstation" /etc/gdm/custom.conf ++ ++echo "devstation ALL=(ALL) NOPASSWD: /usr/bin/nautilus" >> /etc/sudoers ++touch /etc/polkit-1/rules.d/50-nautilus.rules ++cat << EOR > /etc/polkit-1/rules.d/50-nautilus.rules ++polkit.addRule(function(action, subject) { ++ if (action.id == "org.freedesktop.policykit.exec" && ++ action.lookup("action_id") == "org.gnome.nautilus.file-manager" && ++ subject.isInGroup("sudo")) { ++ return polkit.Result.YES; ++ } ++}); ++EOR ++ ++cp /usr/share/applications/calamares.desktop /etc/xdg/autostart/ ++ ++systemctl enable gdm ++systemctl set-default graphical.target ++ ++systemctl enable calamares ++ ++su - devstation -c gsettings set org.gnome.desktop.input-sources sources "[(xkb, us), (ibus, libpinyin)]" ++ ++touch /etc/sysconfig/network ++ ++cat << EOF > /etc/sysconfig/network-scripts/ifcfg-eth0 ++TYPE=Ethernet ++BOOTPROTO=dhcp ++NAME=eth0 ++DEVICE=eth0 ++ONBOOT=yes ++EOF ++ ++rm -rf /etc/systemd/system/multi-user.target.wants/kbox.service ++rm -rf /etc/systemd/system/multi-user.target.wants/kdump.service ++rm -rf /usr/lib/systemd/system/kbox.service ++rm -rf /usr/lib/systemd/system/kdump.service ++rm -rf /boot/initramfs* ++ ++#fix shadows and shadows- time field ++awk 'BEGIN{FS=OFS=":"} {$3=18099; print $0 > "/etc/shadow"}' /etc/shadow; ++awk 'BEGIN{FS=OFS=":"} {$3=18099; print $0 > "/etc/shadow-"}' /etc/shadow-; ++ ++#fix /etc/pki/ca-trust/extracted/java/cacerts time field ++rm /etc/pki/ca-trust/extracted/java/cacerts ++/usr/bin/ca-legacy install ++/usr/bin/update-ca-trust ++ ++ ++%end ++ ++%packages --excludedocs ++%end +diff --git a/isomaker/config/riscv64/livecd/devstation_rpmlist b/isomaker/config/riscv64/livecd/devstation_rpmlist +new file mode 100644 +index 0000000..ba0b94e +--- /dev/null ++++ b/isomaker/config/riscv64/livecd/devstation_rpmlist +@@ -0,0 +1,115 @@ ++abattis-cantarell-fonts ++audit ++authselect ++basesystem ++bash ++bind ++bind-dnssec-utils ++boost-iostreams ++checkpolicy ++coreutils ++cronie ++cryptsetup ++CUnit ++CUnit-devel ++curl ++dejavu-fonts ++devstation-config ++dhcp ++dnf ++dnf-plugins-core ++dosfstools ++dracut-config-generic ++dracut-config-rescue ++dracut-live ++dracut-network ++e2fsprogs ++efibootmgr ++filesystem ++fipscheck ++firefox ++firewalld ++gdb ++gdm ++glibc ++gnome-menus ++gnome-session ++gnome-shell ++gnome-software ++gnome-terminal ++google-*-fonts ++grub2 ++grub2-efi ++grub2-efi-riscv64-cdboot ++grubby ++gtest ++gtest-devel ++hostname ++ibus-libpinyin ++initscripts ++ipmitool ++iproute ++iprutils ++iputils ++irqbalance ++java-21-openjdk-devel ++kbd ++kernel ++kernel-tools ++kexec-tools ++less ++libdaemon ++liberation-fonts ++libnet ++libteam ++libX11 ++linux-firmware ++lshw ++lsscsi ++lvm2 ++man-db ++nautilus ++ncurses ++net-snmp ++NetworkManager ++NetworkManager-config-server ++openssh ++openssh-clients ++openssh-server ++open-vm-tools ++open-vm-tools-desktop ++parted ++passwd ++policycoreutils ++procps-ng ++python3-decorator ++python3-ply ++python3-pytest ++python3-slip ++rdma-core ++rng-tools ++rootfiles ++rpm ++rsync ++rsyslog ++samba-client ++samba-libs ++security-tool ++selinux-policy-mls ++selinux-policy-targeted ++setup ++sg3_utils ++shadow ++sssd ++sudo ++sysfsutils ++systemd ++tuned ++unzip ++util-linux ++vim-minimal ++wget ++wqy-zenhei-fonts ++xdg-utils ++xfsprogs ++yum +-- +2.47.1 + diff --git a/oemaker.spec b/oemaker.spec index 5595e961380a82900b684c4ceb639d9e198f940c..372c944537f21ce20cb03146ea18860c52f1c439 100644 --- a/oemaker.spec +++ b/oemaker.spec @@ -15,7 +15,7 @@ Summary: a building tool for DVD ISO making and ISO cutting License: Mulan PSL v2 Group: System/Management Version: 3.3.0 -Release: 13 +Release: 14 BuildRoot: %{_tmppath}/%{name} Source: https://gitee.com/openeuler/oemaker/repository/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz @@ -45,6 +45,7 @@ Requires: xorriso Patch0001: 0001-bugfix-IABY7K.patch Patch0002: 0001-fix-livecd-grub2-efi.cfg-not-found.patch Patch0003: 0001-Fixes-boot-failure-caused-by-invalid-volume-IDs.patch +Patch0004: 0001-fix-riscv64-devstation-livecd-config-not-found.patch %description a building tool for DVD ISO making and ISO cutting @@ -152,6 +153,7 @@ install -m 700 %{name}/isomaker/config/aarch64/livecd/devstation_live/aarch64.tm %endif %ifarch riscv64 install -m 700 %{name}/isomaker/config/riscv64/livecd/live/riscv64.tmpl %{buildroot}/opt/oemaker/config/riscv64/livecd/live/riscv64.tmpl +install -m 700 %{name}/isomaker/config/riscv64/livecd/devstation_live/riscv64.tmpl %{buildroot}/opt/oemaker/config/riscv64/livecd/devstation_live/riscv64.tmpl %endif %ifarch loongarch64 install -m 700 %{name}/isomaker/config/loongarch64/livecd/live/loongarch64.tmpl %{buildroot}/opt/oemaker/config/loongarch64/livecd/live/loongarch64.tmpl @@ -234,6 +236,9 @@ rm -rf %{buildroot} rm -rf $RPM_BUILD_DIR/%{name} %changelog +* Mon Jun 16 2025 Ouuleilei - 3.3.0-14 +- remove texlive packages from exclude list and fix riscv64 devstation livecd config not found + * Wed Jun 04 2025 Shi Hongyu - 3.3.0-13 - ID:NA - SUG:NA diff --git a/rpmlist.xml b/rpmlist.xml index c5de02c2af814c17b91ecdaaf228c2c905a46958..59133e9d4e903b072365006dfa50a24b08304b84 100644 --- a/rpmlist.xml +++ b/rpmlist.xml @@ -16,22 +16,6 @@ python3-abrt-container-addon - texlive-collection-bibtexextra - texlive-collection-mathscience - texlive-collection-latexextra - texlive-collection-fontsextra - texlive-ctanupload - texlive-exceltex - texlive-latexindent - texlive-biblatex-apa - texlive-collection-binextra - texlive-collection-fontutils - texlive-includernw - texlive-oldstandard - texlive-scheme-full - texlive-scheme-gust - texlive-scheme-medium - texlive-scheme-tetex drbd drbd-bash-completion drbd-pacemaker diff --git a/rpmlist_riscv64.xml b/rpmlist_riscv64.xml index 18a772ee14f9b782a36bca1aba1d6edc0ef61559..1efc0944b9761c0f04d1589351be89d1fe1bb319 100644 --- a/rpmlist_riscv64.xml +++ b/rpmlist_riscv64.xml @@ -16,22 +16,6 @@ python3-abrt-container-addon - texlive-collection-bibtexextra - texlive-collection-mathscience - texlive-collection-latexextra - texlive-collection-fontsextra - texlive-ctanupload - texlive-exceltex - texlive-latexindent - texlive-biblatex-apa - texlive-collection-binextra - texlive-collection-fontutils - texlive-includernw - texlive-oldstandard - texlive-scheme-full - texlive-scheme-gust - texlive-scheme-medium - texlive-scheme-tetex drbd drbd-bash-completion drbd-pacemaker