Name: lxqt-desktop Version: 1.0 Release: 2%{?dist} Summary: LXQt Desktop 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-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: xrdp 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: xscreensaver Requires: pipewire-utils Requires: pipewire-plugin-jack Requires: pipewire-module-x11 Requires: pipewire-media-session Requires: pipewire-alsa Requires: jack-audio-connection-kit Recommends: google-noto-cjk-fonts Recommends: google-noto-sans-cjk-sc-fonts Recommends: google-noto-sans-mono-cjk-sc-fonts Recommends: google-noto-sans-sc-fonts Recommends: google-noto-serif-cjk-sc-fonts Recommends: google-noto-serif-sc-fonts Recommends: libreoffice Recommends: mousepad Recommends: xournal Recommends: strawberry Recommends: abiword Recommends: mypaint Recommends: kvantum Recommends: materia-kde %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 for userdir in /home/*; do mkdir -p "$userdir/.vnc" cp %{_sysconfdir}/lxqt-demo/xstartup $userdir/.vnc/xstartup chown $(basename $userdir):$(basename $userdir) $userdir/.vnc/xstartup echo "Passw0rd" | vncpasswd -f > $userdir/.vnc/passwd chmod 600 $userdir/.vnc/passwd done cat < /etc/systemd/system/lqxt-desktop-tigervnc.service [Unit] Description=Remote desktop service (VNC) After=syslog.target network.target [Service] Type=forking User=ec2-user ExecStart=/usr/bin/vncserver :1 ExecStop=/usr/bin/vncserver -kill :1 PIDFile=/home/ec2-user/.vnc/%H%i.pid [Install] WantedBy=multi-user.target EOF systemctl daemon-reload systemctl enable --now lqxt-desktop-tigervnc.service %files %config(noreplace) %{_sysconfdir}/lxqt-demo/xstartup %changelog * Thu Jun 27 2024 Yonghang Wang - 1.0-1 - Initial package