From 4028c02db25c43e99a94fe7f4a1565de9cdf1dfc Mon Sep 17 00:00:00 2001 From: ouuleilei Date: Mon, 29 Sep 2025 00:37:44 +0800 Subject: [PATCH] fix riscv64 devstation livecd config not found and update 25.09 riscv64 package xml --- ...4-devstation-livecd-config-not-found.patch | 407 ++++++++++++++++++ normal_riscv64.xml | 6 +- oemaker.spec | 7 +- rpmlist_riscv64.xml | 89 ++-- 4 files changed, 459 insertions(+), 50 deletions(-) create mode 100644 0003-fix-riscv64-devstation-livecd-config-not-found.patch diff --git a/0003-fix-riscv64-devstation-livecd-config-not-found.patch b/0003-fix-riscv64-devstation-livecd-config-not-found.patch new file mode 100644 index 0000000..9152826 --- /dev/null +++ b/0003-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/normal_riscv64.xml b/normal_riscv64.xml index 1fb3da7..54f23af 100644 --- a/normal_riscv64.xml +++ b/normal_riscv64.xml @@ -367,6 +367,8 @@ pesign source-highlight systemtap + valgrind + valgrind-devel babel chrpath expect @@ -1300,6 +1302,7 @@ net-snmp-utils oddjob oddjob-mkhomedir + rear sysstat x3270-x11 @@ -1346,7 +1349,6 @@ qemu qemu-block-iscsi qemu-img - stratovirt @@ -1371,7 +1373,6 @@ freerdp tigervnc - vinagre @@ -1406,7 +1407,6 @@ spice-vdagent xorg-x11-drivers xorg-x11-server-Xorg - xorg-x11-utils xorg-x11-xauth xorg-x11-xinit xvattr diff --git a/oemaker.spec b/oemaker.spec index ea7dd87..7592066 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: 19 +Release: 20 BuildRoot: %{_tmppath}/%{name} Source: https://gitee.com/openeuler/oemaker/repository/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz @@ -46,6 +46,7 @@ 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: 0002-delete-package-xorg-x11-server-utils.patch +Patch0005: 0003-fix-riscv64-devstation-livecd-config-not-found.patch %description a building tool for DVD ISO making and ISO cutting @@ -153,6 +154,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 @@ -235,6 +237,9 @@ rm -rf %{buildroot} rm -rf $RPM_BUILD_DIR/%{name} %changelog +* Sun Sep 28 2025 Ouuleilei - 3.3.0-20 +- fix riscv64 devstation livecd config not found and update 25.09 riscv64 package xml + * Wed Sep 24 2025 Li Ping <1477412247@qq.com> - 3.3.0-19 - ID:NA - SUG:NA diff --git a/rpmlist_riscv64.xml b/rpmlist_riscv64.xml index 12d8ef3..41a5f70 100644 --- a/rpmlist_riscv64.xml +++ b/rpmlist_riscv64.xml @@ -40,7 +40,6 @@ drbd-utils gnome-boxes nodejs-grunt-contrib-watch - python3-keras-rl2 kernel-rt kernel-rt-tools kernel-rt-source @@ -57,21 +56,47 @@ haoc-kernel-tools-devel haoc-kernel-devel haoc-kernel-headers - nvwa + kernel-extra-modules + vk-kernel + vk-kernel-devel + vk-kernel-headers + vk-kernel-source + vk-kernel-tools + vk-kernel-tools-devel + gcc-toolset-14-libitm + gdal + gdal-libs + hdf-devel + gdal-devel + gdal-java + gdal-python-tools + python3-gdal + glusterfs-resource-agents + hdf + java-hdf + motif-devel + netcdf + netcdf-devel + netcdf-mpich + netcdf-mpich-devel + netcdf-openmpi + netcdf-mpich-static + netcdf-openmpi-devel + netcdf-openmpi-static + netcdf-static + python3-fiona + python3-geopandas + python3-pyogrio drbd gnome-boxes nodejs-grunt-contrib-watch - apache-commons-vfs - apache-poi - mchange-commons - metrics - typesafe-config haoc-kernel kernel-rt raspberrypi-kernel raspberrypi-kernel-rt + vk-kernel drbd-debuginfo @@ -82,38 +107,29 @@ kernel-rt-debugsource kernel-rt-tools-debuginfo haoc-kernel-debugsource + vk-kernel-debugsource edk2-aarch64 grub2-efi-aa64 - grub2-efi-aa64-modules - kae-driver + grub2-efi-aa64-modules + kae-driver kae-openssl kae-zip uadk_engine libwd shim-aa64 - librados2 - kata-containers - DCF - opengauss - oeAware-manager edk2-ovmf grub2-efi-x64 grub2-efi-x64-modules shim - librados2 - kata-containers - DCF - opengauss edk2-ovmf-riscv64 grub2-efi-riscv64 grub2-efi-riscv64-modules - oeAware-manager abattis-cantarell-fonts @@ -146,7 +162,6 @@ at at-help attr - attr-help atune atune-client atune-db @@ -365,7 +380,6 @@ findutils findutils-help fipscheck - fipscheck-help firewalld firewalld-doc firewalld-filesystem @@ -694,7 +708,7 @@ libpsl-help libpwquality libpwquality-help - librados2 + librados2 libref_array librepo libreport-filesystem @@ -783,7 +797,7 @@ libvirt-daemon-driver-storage-mpath libvirt-daemon-driver-storage-rbd libvirt-daemon-driver-storage-scsi - libvirt-daemon-kvm + libvirt-daemon-kvm libvirt-daemon-qemu libvirt-devel libvirt-docs @@ -843,7 +857,6 @@ lockdev lockdev-help logrotate - logrotate-help lshw lshw-help lsof @@ -868,7 +881,6 @@ lz4-libs lz4-devel lzo - lzo-help lzo-minilzo lzop lzop-help @@ -1148,7 +1160,7 @@ python3-librepo python3-libs python3-libselinux - python3-libvirt + python3-libvirt python3-libxml2 python3-linux-procfs python3-net-snmp @@ -1342,7 +1354,6 @@ tpm2-abrmd tpm2-abrmd-help tpm2-tools - tpm2-tools-help tpm2-tss tpm2-tss-help traceroute @@ -1426,23 +1437,13 @@ jemalloc-devel DCF opengauss + oeAware-manager grub2-efi-aa64 grub2-efi-aa64-cdboot grub2-efi-aa64-modules shim - kubernetes - kubernetes-client - kubernetes-help - kubernetes-kubeadm - kubernetes-kubelet - kubernetes-master - kubernetes-node - kubeedge-cloudcore - kubeedge-edgecore - kubeedge-edgesite - kubeedge-keadm grub2-pc @@ -1463,14 +1464,10 @@ kubernetes-kubelet kubernetes-master kubernetes-node - kubeedge-cloudcore - kubeedge-edgecore - kubeedge-edgesite - kubeedge-keadm - k3s - k3s-selinux - k3s-plugins - k3s-containerd + k3s + k3s-selinux + k3s-plugins + k3s-containerd grub2-common grub2-tools-minimal grub2-tools-extra -- Gitee