import CS gnome-session-3.28.1-21.el8
This commit is contained in:
parent
5d8dbb1529
commit
26deeecd46
@ -0,0 +1,63 @@
|
||||
From a42ccfa0e8be2e658d081c3637ff0f43e2b38d3c Mon Sep 17 00:00:00 2001
|
||||
From: Takao Fujiwara <tfujiwar@redhat.com>
|
||||
Date: Tue, 22 Oct 2019 20:44:04 +0900
|
||||
Subject: [PATCH] gnome-session: avoid setting LC_ unless LANG and region
|
||||
disagree
|
||||
|
||||
At the moment, gnome-session explicitly sets the various LC_ variables
|
||||
to the user configured region.
|
||||
|
||||
That's unnecessary, though. If the LC_ variables are unset,
|
||||
applications know to use LANG. Furthermore, setting the LC_ variables
|
||||
makes it so you can't override them with LANG anymore.
|
||||
|
||||
This commit makes sure the LC_ variables only get set when absolutely
|
||||
necesary. That is, when they are different than LANG.
|
||||
|
||||
https://gitlab.gnome.org/GNOME/gnome-session/issues/37
|
||||
---
|
||||
gnome-session/gnome-session.in | 14 +++++++++-----
|
||||
1 file changed, 9 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/gnome-session/gnome-session.in b/gnome-session/gnome-session.in
|
||||
index 7d967d34..90566f1d 100755
|
||||
--- a/gnome-session/gnome-session.in
|
||||
+++ b/gnome-session/gnome-session.in
|
||||
@@ -1,25 +1,29 @@
|
||||
#!/bin/sh
|
||||
|
||||
if [ "x$XDG_SESSION_TYPE" = "xwayland" ] &&
|
||||
[ "x$XDG_SESSION_CLASS" != "xgreeter" ] &&
|
||||
[ -n "$SHELL" ]; then
|
||||
if [ "$1" != '-l' ]; then
|
||||
exec bash -c "exec -l '$SHELL' -c '$0 -l $*'"
|
||||
else
|
||||
shift
|
||||
fi
|
||||
fi
|
||||
|
||||
SETTING=$(gsettings get org.gnome.system.locale region)
|
||||
REGION=${SETTING#\'}
|
||||
REGION=${REGION%\'}
|
||||
|
||||
if [ -n "$REGION" ]; then
|
||||
- export LC_TIME=$REGION
|
||||
- export LC_NUMERIC=$REGION
|
||||
- export LC_MONETARY=$REGION
|
||||
- export LC_MEASUREMENT=$REGION
|
||||
- export LC_PAPER=$REGION
|
||||
+ unset LC_TIME LC_NUMERIC LC_MONETARY LC_MEASUREMENT LC_PAPER
|
||||
+
|
||||
+ if [ "$LANG" != "$REGION" ] ; then
|
||||
+ export LC_TIME=$REGION
|
||||
+ export LC_NUMERIC=$REGION
|
||||
+ export LC_MONETARY=$REGION
|
||||
+ export LC_MEASUREMENT=$REGION
|
||||
+ export LC_PAPER=$REGION
|
||||
+ fi
|
||||
fi
|
||||
|
||||
exec @libexecdir@/gnome-session-binary "$@"
|
||||
--
|
||||
2.41.0.rc2
|
||||
|
38
SOURCES/50-redhat-kiosk.dconf
Normal file
38
SOURCES/50-redhat-kiosk.dconf
Normal file
@ -0,0 +1,38 @@
|
||||
[org/gnome/desktop/a11y/applications]
|
||||
screen-keyboard-enabled=true
|
||||
|
||||
[org/gnome/desktop/interface]
|
||||
gtk-im-module='ibus'
|
||||
toolkit-accessibility=true
|
||||
|
||||
[org/gnome/desktop/lockdown]
|
||||
disable-command-line=true
|
||||
disable-lock-screen=true
|
||||
disable-application-handlers=true
|
||||
disable-user-switching=true
|
||||
user-administration-disabled=true
|
||||
|
||||
[org/gnome/desktop/wm/keybindings]
|
||||
always-on-top=@as []
|
||||
begin-move=@as []
|
||||
begin-resize=@as []
|
||||
close=@as []
|
||||
lower=@as []
|
||||
maximize=@as []
|
||||
maximize-horizontally=@as []
|
||||
maximize-vertically=@as []
|
||||
minimize=@as []
|
||||
panel-main-menu=@as []
|
||||
panel-run-dialog=@as []
|
||||
raise=@as []
|
||||
raise-or-lower=@as []
|
||||
show-desktop=@as []
|
||||
toggle-fullscreen=@as []
|
||||
toggle-maximized=@as []
|
||||
unmaximize=@as []
|
||||
|
||||
[org/gnome/desktop/wm/preferences]
|
||||
num-workspaces=1
|
||||
|
||||
[org/gnome/mutter]
|
||||
dynamic-workspaces=false
|
8
SOURCES/50-redhat-kiosk.dconf.locks
Normal file
8
SOURCES/50-redhat-kiosk.dconf.locks
Normal file
@ -0,0 +1,8 @@
|
||||
/org/gnome/desktop/a11y/applications/screen-keyboard-enabled
|
||||
/org/gnome/desktop/interface/gtk-im-module
|
||||
/org/gnome/desktop/interface/toolkit-accessibility
|
||||
/org/gnome/desktop/lockdown/disable-command-line
|
||||
/org/gnome/desktop/lockdown/disable-lock-screen
|
||||
/org/gnome/desktop/lockdown/disable-application-handlers
|
||||
/org/gnome/desktop/lockdown/disable-user-switching
|
||||
/org/gnome/desktop/lockdown/user-administration-disabled
|
13
SOURCES/com.redhat.KioskWithKeyboard.WindowManager.desktop
Normal file
13
SOURCES/com.redhat.KioskWithKeyboard.WindowManager.desktop
Normal file
@ -0,0 +1,13 @@
|
||||
[Desktop Entry]
|
||||
Type=Application
|
||||
Name=GNOME Shell Kiosk Mode
|
||||
Comment=Window manager
|
||||
Exec=env DCONF_PROFILE=redhatkiosk /usr/bin/gnome-shell --mode=redhat-kiosk
|
||||
Categories=GNOME;GTK;Core;
|
||||
OnlyShowIn=GNOME;
|
||||
NoDisplay=true
|
||||
X-GNOME-Autostart-Phase=DisplayServer
|
||||
X-GNOME-Provides=windowmanager;
|
||||
X-GNOME-Autostart-Notify=true
|
||||
X-GNOME-AutoRestart=false
|
||||
X-GNOME-HiddenUnderSystemd=true
|
6
SOURCES/com.redhat.KioskWithKeyboard.desktop
Normal file
6
SOURCES/com.redhat.KioskWithKeyboard.desktop
Normal file
@ -0,0 +1,6 @@
|
||||
[Desktop Entry]
|
||||
Name=Kiosk (with on-screen keyboard)
|
||||
Comment=Kiosk mode with on-screen keyboard
|
||||
Exec=/usr/bin/env DCONF_PROFILE=redhatkiosk /usr/bin/gnome-session --session=redhat-kiosk-with-keyboard
|
||||
DesktopNames=Red-Hat-Kiosk;GNOME;
|
||||
|
@ -23,4 +23,7 @@ EOF
|
||||
touch ~/.config/gnome-initial-setup-done
|
||||
fi
|
||||
|
||||
export DCONF_PROFILE=redhatkiosk
|
||||
systemctl --user import-environment DCONF_PROFILE
|
||||
|
||||
exec ~/.local/bin/redhat-kiosk "$@"
|
||||
|
3
SOURCES/redhat-kiosk-with-keyboard.session
Normal file
3
SOURCES/redhat-kiosk-with-keyboard.session
Normal file
@ -0,0 +1,3 @@
|
||||
[GNOME Session]
|
||||
Name=Kiosk
|
||||
RequiredComponents=com.redhat.KioskWithKeyboard.WindowManager;com.redhat.Kiosk.Script;
|
5
SOURCES/redhat-kiosk.dconf.profile
Normal file
5
SOURCES/redhat-kiosk.dconf.profile
Normal file
@ -0,0 +1,5 @@
|
||||
user-db:user
|
||||
system-db:redhatkiosk
|
||||
system-db:local
|
||||
system-db:site
|
||||
system-db:distro
|
11
SOURCES/redhat-kiosk.json
Normal file
11
SOURCES/redhat-kiosk.json
Normal file
@ -0,0 +1,11 @@
|
||||
{
|
||||
"parentMode": "user",
|
||||
"hasOverview": false,
|
||||
"hasRunDialog": false,
|
||||
"allowSettings": false,
|
||||
"panel": { "left": [""],
|
||||
"center": [],
|
||||
"right": ["keyboard"]
|
||||
}
|
||||
}
|
||||
|
@ -9,7 +9,7 @@
|
||||
|
||||
Name: gnome-session
|
||||
Version: 3.28.1
|
||||
Release: 14%{?dist}
|
||||
Release: 21%{?dist}
|
||||
Summary: GNOME session manager
|
||||
|
||||
License: GPLv2+
|
||||
@ -17,12 +17,26 @@ URL: http://www.gnome.org
|
||||
Source0: http://download.gnome.org/sources/gnome-session/3.28/%{name}-%{version}.tar.xz
|
||||
Source1: gnome.desktop
|
||||
Source2: gnome-xorg.desktop
|
||||
Source3: com.redhat.Kiosk.WindowManager.desktop
|
||||
Source4: com.redhat.Kiosk.Script.desktop
|
||||
Source5: com.redhat.Kiosk.desktop
|
||||
Source6: redhat-kiosk.session
|
||||
Source7: redhat-kiosk
|
||||
Source8: 20-redhat-kiosk.conf
|
||||
|
||||
Source3: com.redhat.Kiosk.Script.desktop
|
||||
|
||||
Source4: com.redhat.Kiosk.desktop
|
||||
Source5: com.redhat.KioskWithKeyboard.desktop
|
||||
|
||||
Source6: com.redhat.Kiosk.WindowManager.desktop
|
||||
Source7: com.redhat.KioskWithKeyboard.WindowManager.desktop
|
||||
Source8: redhat-kiosk.json
|
||||
|
||||
Source9: redhat-kiosk.session
|
||||
Source10: redhat-kiosk-with-keyboard.session
|
||||
|
||||
Source11: redhat-kiosk
|
||||
|
||||
Source12: 20-redhat-kiosk.conf
|
||||
|
||||
Source13: 50-redhat-kiosk.dconf
|
||||
Source14: 50-redhat-kiosk.dconf.locks
|
||||
Source15: redhat-kiosk.dconf.profile
|
||||
|
||||
Patch0: 0001-gnome-session-don-t-validate-shell-before-using-it.patch
|
||||
|
||||
@ -42,6 +56,10 @@ Patch20001: 0001-Fedora-Set-grub-boot-flags-on-shutdown-reboot.patch
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1877997
|
||||
Patch30001: 0001-main-only-log-check-accelerated-errors-when-debuggin.patch
|
||||
|
||||
# Allow user to override language settings
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=2170474
|
||||
Patch40001: 0001-gnome-session-avoid-setting-LC_-unless-LANG-and-regi.patch
|
||||
|
||||
BuildRequires: meson
|
||||
BuildRequires: gcc
|
||||
BuildRequires: pkgconfig(egl)
|
||||
@ -133,17 +151,42 @@ cp $RPM_SOURCE_DIR/gnome.desktop $RPM_BUILD_ROOT%{_datadir}/wayland-sessions/gno
|
||||
cp $RPM_SOURCE_DIR/gnome-xorg.desktop $RPM_BUILD_ROOT%{_datadir}/xsessions
|
||||
cp $RPM_SOURCE_DIR/gnome-xorg.desktop $RPM_BUILD_ROOT%{_datadir}/xsessions/gnome.desktop
|
||||
|
||||
install -D $RPM_SOURCE_DIR/com.redhat.Kiosk.WindowManager.desktop -t $RPM_BUILD_ROOT/%{_datadir}/applications
|
||||
install -D $RPM_SOURCE_DIR/com.redhat.Kiosk.Script.desktop -t $RPM_BUILD_ROOT%{_datadir}/applications
|
||||
|
||||
install -D $RPM_SOURCE_DIR/com.redhat.Kiosk.WindowManager.desktop -t $RPM_BUILD_ROOT/%{_datadir}/applications
|
||||
install -D $RPM_SOURCE_DIR/com.redhat.KioskWithKeyboard.WindowManager.desktop -t $RPM_BUILD_ROOT/%{_datadir}/applications
|
||||
|
||||
install -D $RPM_SOURCE_DIR/com.redhat.Kiosk.desktop -t $RPM_BUILD_ROOT%{_datadir}/xsessions
|
||||
install -D $RPM_SOURCE_DIR/com.redhat.KioskWithKeyboard.desktop -t $RPM_BUILD_ROOT%{_datadir}/xsessions
|
||||
|
||||
install -D $RPM_SOURCE_DIR/redhat-kiosk.json -t $RPM_BUILD_ROOT%{_datadir}/gnome-shell/modes
|
||||
|
||||
install -D $RPM_SOURCE_DIR/redhat-kiosk.session -t $RPM_BUILD_ROOT%{_datadir}/gnome-session/sessions
|
||||
install -D $RPM_SOURCE_DIR/redhat-kiosk-with-keyboard.session -t $RPM_BUILD_ROOT%{_datadir}/gnome-session/sessions
|
||||
|
||||
install -D $RPM_SOURCE_DIR/redhat-kiosk -t $RPM_BUILD_ROOT%{_bindir}
|
||||
|
||||
install -D $RPM_SOURCE_DIR/20-redhat-kiosk.conf -t $RPM_BUILD_ROOT%{_datadir}/X11/xorg.conf.d
|
||||
|
||||
install -D $RPM_SOURCE_DIR/50-redhat-kiosk.dconf $RPM_BUILD_ROOT%{_sysconfdir}/dconf/db/redhatkiosk.d/50-redhat-kiosk
|
||||
install -D $RPM_SOURCE_DIR/50-redhat-kiosk.dconf.locks $RPM_BUILD_ROOT%{_sysconfdir}/dconf/db/redhatkiosk.d/locks/50-redhat-kiosk
|
||||
install -D $RPM_SOURCE_DIR/redhat-kiosk.dconf.profile $RPM_BUILD_ROOT%{_sysconfdir}/dconf/profile/redhatkiosk
|
||||
|
||||
install -D $RPM_SOURCE_DIR/20-redhat-kiosk.conf -t $RPM_BUILD_ROOT%{_datadir}/X11/xorg.conf.d
|
||||
|
||||
%find_lang %{po_package}
|
||||
|
||||
%ldconfig_scriptlets
|
||||
|
||||
%posttrans
|
||||
|
||||
# These files weren't packaged correctly in gnome-session-3.28.1-19.el8 so manually prune them
|
||||
rmdir %{_sysconfdir}/dconf/db/redhat-kiosk.d/locks 2> /dev/null || :
|
||||
rmdir %{_sysconfdir}/dconf/db/redhat-kiosk.d 2> /dev/null || :
|
||||
rm -f %{_sysconfdir}/dconf/db/redhat-kiosk 2> /dev/null || :
|
||||
|
||||
dconf update
|
||||
|
||||
%files xsession
|
||||
%{_datadir}/xsessions/*
|
||||
%exclude %{_datadir}/xsessions/com.redhat.Kiosk.desktop
|
||||
@ -152,10 +195,20 @@ install -D $RPM_SOURCE_DIR/20-redhat-kiosk.conf -t $RPM_BUILD_ROOT%{_datadir}/X1
|
||||
%{_datadir}/wayland-sessions/*
|
||||
|
||||
%files kiosk-session
|
||||
%{_datadir}/applications/com.redhat.Kiosk.WindowManager.desktop
|
||||
%dir %{_sysconfdir}/dconf/db/redhatkiosk.d/locks
|
||||
%dir %{_sysconfdir}/dconf/db/redhatkiosk.d
|
||||
%ghost %{_sysconfdir}/dconf/db/redhatkiosk
|
||||
%{_sysconfdir}/dconf/db/redhatkiosk.d/50-redhat-kiosk
|
||||
%{_sysconfdir}/dconf/db/redhatkiosk.d/locks/50-redhat-kiosk
|
||||
%{_sysconfdir}/dconf/profile/redhatkiosk
|
||||
%{_datadir}/applications/com.redhat.Kiosk.Script.desktop
|
||||
%{_datadir}/applications/com.redhat.Kiosk.WindowManager.desktop
|
||||
%{_datadir}/applications/com.redhat.KioskWithKeyboard.WindowManager.desktop
|
||||
%{_datadir}/gnome-shell/modes/redhat-kiosk.json
|
||||
%{_datadir}/xsessions/com.redhat.Kiosk.desktop
|
||||
%{_datadir}/xsessions/com.redhat.KioskWithKeyboard.desktop
|
||||
%{_datadir}/gnome-session/sessions/redhat-kiosk.session
|
||||
%{_datadir}/gnome-session/sessions/redhat-kiosk-with-keyboard.session
|
||||
%{_datadir}/X11/xorg.conf.d/20-redhat-kiosk.conf
|
||||
%{_bindir}/redhat-kiosk
|
||||
|
||||
@ -175,6 +228,38 @@ install -D $RPM_SOURCE_DIR/20-redhat-kiosk.conf -t $RPM_BUILD_ROOT%{_datadir}/X1
|
||||
%{_datadir}/glib-2.0/schemas/org.gnome.SessionManager.gschema.xml
|
||||
|
||||
%changelog
|
||||
* Wed May 31 2023 Ray Strode <rstrode@redhat.com> - 3.28.1-21
|
||||
- Allow users to override language settings in environment
|
||||
Resolves: #2170474
|
||||
|
||||
* Wed Mar 01 2023 Ray Strode <rstrode@redhat.com> - 3.28.1-20
|
||||
- Work around dconf log spew by renaming dconf profile
|
||||
Related: 2070976
|
||||
Resolves: #2174414
|
||||
|
||||
* Tue Feb 28 2023 Ray Strode <rstrode@redhat.com> - 3.28.1-19
|
||||
- Another fix
|
||||
Related: #2070976
|
||||
|
||||
* Tue Feb 28 2023 Ray Strode <rstrode@redhat.com> - 3.28.1-18
|
||||
- Fix issue introduced in last build
|
||||
Related: #2070976
|
||||
|
||||
* Tue Feb 28 2023 Ray Strode <rstrode@redhat.com> - 3.28.1-17
|
||||
- Don't force kiosk profile for user in non-kiosk sessions
|
||||
after the user has been used for a kiosk session once
|
||||
Related: #2070976
|
||||
|
||||
* Tue Feb 28 2023 Ray Strode <rstrode@redhat.com> - 3.28.1-16
|
||||
- Fix glitch where enabling on-screen keyboard requires initial
|
||||
reboot
|
||||
Related: #2070976
|
||||
|
||||
* Mon Feb 27 2023 Ray Strode <rstrode@redhat.com> - 3.28.1-15
|
||||
- Add new shell based variant of kiosk mode that supports
|
||||
on-screen keyboard
|
||||
Resolves: #2070976
|
||||
|
||||
* Tue Dec 21 2021 Ray Strode <rstrode@redhat.com> - 3.28.1-14
|
||||
- Make some debug spew only show up if debugging is enabled
|
||||
Resolves: #1877997
|
||||
|
Loading…
Reference in New Issue
Block a user