From 7435acef185a265328d6718f7c4a1bc974976c20 Mon Sep 17 00:00:00 2001
From: importbot <releng@rockylinux.org>
Date: Fri, 20 Dec 2024 20:18:32 +0000
Subject: [PATCH] import gnome-kiosk-47.0-6.el10

---
 ...y-and-run-the-script-from-XDG_RUNTIM.patch | 56 +++++++++++++++++++
 SPECS/gnome-kiosk.spec                        |  7 ++-
 2 files changed, 62 insertions(+), 1 deletion(-)
 create mode 100644 SOURCES/0001-kiosk-script-Copy-and-run-the-script-from-XDG_RUNTIM.patch

diff --git a/SOURCES/0001-kiosk-script-Copy-and-run-the-script-from-XDG_RUNTIM.patch b/SOURCES/0001-kiosk-script-Copy-and-run-the-script-from-XDG_RUNTIM.patch
new file mode 100644
index 0000000..e15afb0
--- /dev/null
+++ b/SOURCES/0001-kiosk-script-Copy-and-run-the-script-from-XDG_RUNTIM.patch
@@ -0,0 +1,56 @@
+From 9497651214baaae6dabe7cc1971a1799633983a6 Mon Sep 17 00:00:00 2001
+From: Olivier Fourdan <ofourdan@redhat.com>
+Date: Fri, 22 Nov 2024 17:04:09 +0100
+Subject: [PATCH] kiosk-script: Copy and run the script from XDG_RUNTIME_DIR
+
+Some setup may enforce the noexec flag on the HOME directories.
+
+That prevents any executable placed in the HOME directory from running,
+including the GNOME Kiosk script session.
+
+To work around such an issue, copy and execute the script from the
+XDG_RUNTIME_DIR instead.
+
+Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
+---
+ kiosk-script/gnome-kiosk-script | 18 +++++++++++++-----
+ 1 file changed, 13 insertions(+), 5 deletions(-)
+
+diff --git a/kiosk-script/gnome-kiosk-script b/kiosk-script/gnome-kiosk-script
+index e45438d..c4ab176 100755
+--- a/kiosk-script/gnome-kiosk-script
++++ b/kiosk-script/gnome-kiosk-script
+@@ -1,8 +1,10 @@
+ #!/usr/bin/sh
+ 
+-if [ ! -e ~/.local/bin/gnome-kiosk-script ]; then
+-    mkdir -p ~/.local/bin ~/.config
+-    cat > ~/.local/bin/gnome-kiosk-script <<- "EOF"
++EXECDIR=~/.local/bin
++
++if [ ! -e $EXECDIR/gnome-kiosk-script ]; then
++    mkdir -p $EXECDIR ~/.config
++    cat > $EXECDIR/gnome-kiosk-script <<- "EOF"
+ 	#!/bin/sh
+ 	# This script is located in ~/.local/bin.
+ 	# It's provided as an example script to show how
+@@ -16,8 +18,14 @@ if [ ! -e ~/.local/bin/gnome-kiosk-script ]; then
+ 	exec "$0" "$@"
+ EOF
+ 
+-    chmod +x ~/.local/bin/gnome-kiosk-script
++    chmod +x $EXECDIR/gnome-kiosk-script
+     touch ~/.config/gnome-initial-setup-done
+ fi
+ 
+-exec ~/.local/bin/gnome-kiosk-script "$@"
++# Copy and run the script from the XDG_RUNTIME_DIR directory if that exists
++if [ -d $XDG_RUNTIME_DIR ]; then
++    cp $EXECDIR/gnome-kiosk-script $XDG_RUNTIME_DIR/
++    EXECDIR=$XDG_RUNTIME_DIR
++fi
++
++exec $EXECDIR/gnome-kiosk-script "$@"
+-- 
+2.47.1
+
diff --git a/SPECS/gnome-kiosk.spec b/SPECS/gnome-kiosk.spec
index 414ed9f..fdd435a 100644
--- a/SPECS/gnome-kiosk.spec
+++ b/SPECS/gnome-kiosk.spec
@@ -2,7 +2,7 @@
 ## (rpmautospec version 0.7.3)
 ## RPMAUTOSPEC: autorelease, autochangelog
 %define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
-    release_number = 5;
+    release_number = 6;
     base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
     print(release_number + base_release_number - 1);
 }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}}
@@ -53,6 +53,8 @@ Requires:       gsettings-desktop-schemas%{?_isa} >= %{gsettings_desktop_schemas
 Patch0: 0001-kiosk-app-Do-not-add-the-window-in-kiosk_app_new_for.patch
 # https://issues.redhat.com/browse/RHEL-36521
 Patch1: 0001-search-app-Use-firefox-from-flatpak.patch
+# https://issues.redhat.com/browse/RHEL-71757
+Patch2: 0001-kiosk-script-Copy-and-run-the-script-from-XDG_RUNTIM.patch
 
 %description
 GNOME Kiosk provides a desktop enviroment suitable for fixed purpose, or
@@ -121,6 +123,9 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/org.gnome.Kiosk.Searc
 
 %changelog
 ## START: Generated by rpmautospec
+* Fri Dec 20 2024 Olivier Fourdan <ofourdan@redhat.com> - 47.0-6
+- Copy and run the script from XDG_RUNTIME_DIR
+
 * Thu Dec 19 2024 Olivier Fourdan <ofourdan@redhat.com> - 47.0-5
 - Add dependency on flatpak
 
-- 
GitLab