Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a4832a4aee | ||
| fba700c380 |
@ -0,0 +1,31 @@
|
||||
From d68e2443746f47c6eecab0c4009b82628918561c Mon Sep 17 00:00:00 2001
|
||||
From: Olivier Fourdan <ofourdan@redhat.com>
|
||||
Date: Tue, 10 Dec 2024 13:56:13 +0100
|
||||
Subject: [PATCH] input-selector: Add missing dependency on gio-unix-2.0
|
||||
|
||||
The build of input-selector may fail otherwise, as the generated code
|
||||
from gdbus-codegen cannot find the header file <gio/gunixfdlist.h>:
|
||||
|
||||
input-selector/org.gnome.Kiosk.c:17:12: fatal error: gio/gunixfdlist.h:
|
||||
No such file or directory
|
||||
17 | # include <gio/gunixfdlist.h>
|
||||
|
||||
Adding the dependency ensures that the path to the header file is known.
|
||||
---
|
||||
input-selector/meson.build | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/input-selector/meson.build b/input-selector/meson.build
|
||||
index 839426f..6aa90af 100644
|
||||
--- a/input-selector/meson.build
|
||||
+++ b/input-selector/meson.build
|
||||
@@ -1,5 +1,6 @@
|
||||
input_selector_dependencies = []
|
||||
input_selector_dependencies += dependency('gio-2.0')
|
||||
+input_selector_dependencies += dependency('gio-unix-2.0')
|
||||
input_selector_dependencies += dependency('glib-2.0')
|
||||
input_selector_dependencies += dependency('gobject-2.0')
|
||||
input_selector_dependencies += dependency('gtk4')
|
||||
--
|
||||
2.47.1
|
||||
|
||||
@ -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
|
||||
|
||||
64
SOURCES/0001-search-app-Add-systemd-session-files.patch
Normal file
64
SOURCES/0001-search-app-Add-systemd-session-files.patch
Normal file
@ -0,0 +1,64 @@
|
||||
From e0a8d2005c68a4b2ca1543149f50c03c3c7c0b5f Mon Sep 17 00:00:00 2001
|
||||
From: Olivier Fourdan <ofourdan@redhat.com>
|
||||
Date: Tue, 4 Mar 2025 16:21:30 +0100
|
||||
Subject: [PATCH 1/2] search-app: Add systemd session files
|
||||
|
||||
The search appliance session would fail to start as a systemd session.
|
||||
|
||||
Add the required systemd plumbing to fix the search appliance session.
|
||||
|
||||
(cherry picked from commit 5308432e1c564ec096acbb3f4fb19f940d6c2ae9)
|
||||
---
|
||||
meson.build | 12 ++++++++++++
|
||||
.../systemd/org.gnome.Kiosk.SearchApp.service.in | 8 ++++++++
|
||||
search-app/systemd/session.conf | 3 +++
|
||||
3 files changed, 23 insertions(+)
|
||||
create mode 100644 search-app/systemd/org.gnome.Kiosk.SearchApp.service.in
|
||||
create mode 100644 search-app/systemd/session.conf
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 0766f8d..e3d8ff3 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -188,3 +188,15 @@ i18n.merge_file('desktop',
|
||||
install_dir: desktop_data_dir,
|
||||
type: 'desktop'
|
||||
)
|
||||
+
|
||||
+configure_file(
|
||||
+ input: 'search-app/systemd/org.gnome.Kiosk.SearchApp.service.in',
|
||||
+ output: '@BASENAME@',
|
||||
+ configuration: systemd_service_config_data,
|
||||
+ install_dir: systemd_user_unit_dir
|
||||
+)
|
||||
+
|
||||
+kiosk_search_appliance_systemd_target_dir = join_paths(systemd_user_unit_dir, 'gnome-session@org.gnome.Kiosk.SearchApp.target.d')
|
||||
+install_data('search-app/systemd/session.conf',
|
||||
+ install_dir: kiosk_search_appliance_systemd_target_dir
|
||||
+)
|
||||
diff --git a/search-app/systemd/org.gnome.Kiosk.SearchApp.service.in b/search-app/systemd/org.gnome.Kiosk.SearchApp.service.in
|
||||
new file mode 100644
|
||||
index 0000000..29ddcd8
|
||||
--- /dev/null
|
||||
+++ b/search-app/systemd/org.gnome.Kiosk.SearchApp.service.in
|
||||
@@ -0,0 +1,8 @@
|
||||
+[Unit]
|
||||
+Description=Kiosk Search Appliance
|
||||
+BindsTo=gnome-session.target
|
||||
+After=gnome-session.target
|
||||
+
|
||||
+[Service]
|
||||
+ExecStart=@bindir@/firefox --kiosk --private-window --new-instance https://www.google.com
|
||||
+Restart=always
|
||||
diff --git a/search-app/systemd/session.conf b/search-app/systemd/session.conf
|
||||
new file mode 100644
|
||||
index 0000000..1ab41da
|
||||
--- /dev/null
|
||||
+++ b/search-app/systemd/session.conf
|
||||
@@ -0,0 +1,3 @@
|
||||
+[Unit]
|
||||
+Requires=org.gnome.Kiosk.target
|
||||
+Requires=org.gnome.Kiosk.SearchApp.service
|
||||
--
|
||||
2.48.1
|
||||
|
||||
30
SOURCES/0002-search-app-Update-desktop-file-definition.patch
Normal file
30
SOURCES/0002-search-app-Update-desktop-file-definition.patch
Normal file
@ -0,0 +1,30 @@
|
||||
From a94bce8532d6f9f9fb1fd888e54803220a733765 Mon Sep 17 00:00:00 2001
|
||||
From: Olivier Fourdan <ofourdan@redhat.com>
|
||||
Date: Wed, 5 Mar 2025 14:23:49 +0100
|
||||
Subject: [PATCH 2/2] search-app: Update desktop file definition
|
||||
|
||||
Firefox itself has nothing to do with neither Gtk or GNOME, no need to
|
||||
list those in the categories.
|
||||
|
||||
(cherry picked from commit 7f6defb5d1afd4aeee55d286256879118ba9c008)
|
||||
---
|
||||
search-app/org.gnome.Kiosk.SearchApp.desktop.in.in | 5 ++---
|
||||
1 file changed, 2 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/search-app/org.gnome.Kiosk.SearchApp.desktop.in.in b/search-app/org.gnome.Kiosk.SearchApp.desktop.in.in
|
||||
index 40a8669..7d85d56 100644
|
||||
--- a/search-app/org.gnome.Kiosk.SearchApp.desktop.in.in
|
||||
+++ b/search-app/org.gnome.Kiosk.SearchApp.desktop.in.in
|
||||
@@ -3,7 +3,6 @@ Type=Application
|
||||
Name=Search Appliance
|
||||
Comment=Sample Search Appliance Application for GNOME Kiosk
|
||||
Exec=@bindir@/firefox --kiosk --private-window --new-instance http://www.google.com
|
||||
-Categories=GNOME;GTK;Core;
|
||||
-OnlyShowIn=GNOME;
|
||||
+Categories=Core;System;
|
||||
NoDisplay=true
|
||||
-X-GNOME-AutoRestart=true
|
||||
+X-GNOME-HiddenUnderSystemd=true
|
||||
--
|
||||
2.48.1
|
||||
|
||||
@ -12,7 +12,7 @@
|
||||
|
||||
Name: gnome-kiosk
|
||||
Version: 40.0
|
||||
Release: 5%{?dist}
|
||||
Release: 8%{?dist}
|
||||
Summary: Window management and application launching for GNOME
|
||||
|
||||
License: GPLv2+
|
||||
@ -38,6 +38,8 @@ BuildRequires: meson
|
||||
|
||||
Requires: gnome-settings-daemon%{?_isa} >= %{gnome_settings_daemon_version}
|
||||
Requires: gsettings-desktop-schemas%{?_isa} >= %{gsettings_desktop_schemas_version}
|
||||
Recommends: xorg-x11-server-Xwayland
|
||||
Recommends: dbus-daemon
|
||||
|
||||
Patch10001: 0001-compositor-Support-systemd-user-sessions.patch
|
||||
Patch10002: 0002-Add-a-script-for-simplifying-kiosk-setup.patch
|
||||
@ -50,6 +52,12 @@ Patch20005: 0005-kiosk-script-Add-a-hint-about-using-firefox-to-the-k.patch
|
||||
Patch20006: 0006-kiosk-script-Send-SIGHUP-to-script-at-shutdown-time.patch
|
||||
|
||||
Patch30001: 0001-compositor-Be-more-permissive-about-what-s-considere.patch
|
||||
# https://issues.redhat.com/browse/RHEL-25536
|
||||
Patch40001: 0001-input-selector-Add-missing-dependency-on-gio-unix-2..patch
|
||||
Patch40002: 0001-kiosk-script-Copy-and-run-the-script-from-XDG_RUNTIM.patch
|
||||
# https://issues.redhat.com/browse/RHEL-84004
|
||||
Patch50001: 0001-search-app-Add-systemd-session-files.patch
|
||||
Patch50002: 0002-search-app-Update-desktop-file-definition.patch
|
||||
|
||||
%description
|
||||
GNOME Kiosk provides a desktop enviroment suitable for fixed purpose, or
|
||||
@ -110,12 +118,26 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/org.gnome.Kiosk.Searc
|
||||
%{_datadir}/xsessions/gnome-kiosk-script.desktop
|
||||
|
||||
%files -n gnome-kiosk-search-appliance
|
||||
%{_userunitdir}/gnome-session@org.gnome.Kiosk.SearchApp.target.d/session.conf
|
||||
%{_userunitdir}/org.gnome.Kiosk.SearchApp.service
|
||||
%{_datadir}/applications/org.gnome.Kiosk.SearchApp.desktop
|
||||
%{_datadir}/gnome-session/sessions/org.gnome.Kiosk.SearchApp.session
|
||||
%{_datadir}/xsessions/org.gnome.Kiosk.SearchApp.Session.desktop
|
||||
%{_datadir}/wayland-sessions/org.gnome.Kiosk.SearchApp.Session.desktop
|
||||
|
||||
%changelog
|
||||
* Tue Oct 7 2025 Olivier Fourdan <ofourdan@redhat.com> - 40.0-8
|
||||
- Add Xwayland and dbus-daemon as weak dependencies
|
||||
Resolves: https://issues.redhat.com/browse/RHEL-66572
|
||||
|
||||
* Tue Mar 18 2025 Olivier Fourdan <ofourdan@redhat.com> - 40.0-7
|
||||
- search-app: Add systemd session files
|
||||
Resolves: https://issues.redhat.com/browse/RHEL-84004
|
||||
|
||||
* Wed Dec 18 2024 Ray Strode <rstrode@redhat.com> - 40.0-6
|
||||
- Copy and run the script from XDG_RUNTIME_DIR
|
||||
Resolves: https://issues.redhat.com/browse/RHEL-25536
|
||||
|
||||
* Wed Nov 09 2022 Ray Strode <rstrode@redhat.com> - 40.0-5
|
||||
- Detect anaconda as the kiosk app better
|
||||
Resolves: #1999060
|
||||
|
||||
Loading…
Reference in New Issue
Block a user