Name: lxqt-demo Version: 1.0 Release: 1%{?dist} Summary: LXQt Demo Package License: GPLv2+ URL: https://lxqt.org/ BuildArch: noarch Requires: glib2 >= 2.80 Requires: lxqt-session Requires: lxqt-panel Requires: lxqt-config Requires: lxqt-policykit Requires: lxqt-powermanagement Requires: lxqt-qtplugin Requires: pcmanfm-qt Requires: lximage-qt Requires: lxqt-notificationd Requires: lxqt-runner Requires: lxqt-archiver Requires: openbox Requires: sddm Requires: qterminal Requires: tigervnc-server Requires: firefox Requires: vim-X11 Requires: xcb-util Requires: xcb-util-image Requires: xcb-util-keysyms Requires: xcb-util-renderutil Requires: xcb-util-wm Requires: xcb-util-cursor Requires: pulseaudio Requires: pavucontrol Requires: google-noto-cjk-fonts Requires: google-noto-sans-cjk-sc-fonts Requires: google-noto-sans-mono-cjk-sc-fonts Requires: google-noto-sans-sc-fonts Requires: google-noto-serif-cjk-sc-fonts Requires: google-noto-serif-sc-fonts %description This package installs the LXQt desktop environment along with several essential packages, and sets up the VNC server to use LXQt with Openbox as the window manager. %prep %build %install mkdir -p %{buildroot}%{_sysconfdir}/lxqt-demo cat > %{buildroot}%{_sysconfdir}/lxqt-demo/xstartup << 'EOF' #!/bin/sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS exec openbox-session & exec startlxqt & EOF chmod +x %{buildroot}%{_sysconfdir}/lxqt-demo/xstartup %post # Copy xstartup script to existing users' .vnc directory for userdir in /home/*; do if [ -d "$userdir/.vnc" ]; then cp %{_sysconfdir}/lxqt-demo/xstartup $userdir/.vnc/xstartup chown $(basename $userdir):$(basename $userdir) $userdir/.vnc/xstartup fi done # Specifically handle ec2-user if it exists if id "ec2-user" &>/dev/null; then mkdir -p /home/ec2-user/.vnc cp %{_sysconfdir}/lxqt-demo/xstartup /home/ec2-user/.vnc/xstartup chown ec2-user:ec2-user /home/ec2-user/.vnc/xstartup fi %files %config(noreplace) %{_sysconfdir}/lxqt-demo/xstartup %changelog * Thu Jun 27 2024 Yonghang Wang - 1.0-1 - Initial package