SHA256
1
0
forked from pool/xinit
Dominique Leuenberger 2020-10-07 12:16:25 +00:00 committed by Git OBS Bridge
commit 1c06c1fbbb
3 changed files with 174 additions and 2 deletions

107
xinit-tarball.patch Normal file
View File

@ -0,0 +1,107 @@
diff -u -r ../old/etc/X11/xinit/xinitrc ./etc/X11/xinit/xinitrc
--- ../old/etc/X11/xinit/xinitrc 2020-08-23 17:36:47.813664000 +0200
+++ ./etc/X11/xinit/xinitrc 2020-09-08 12:57:08.577438000 +0200
@@ -27,7 +27,11 @@
# Source common code shared between the
# X session and X init scripts
#
-. /etc/X11/xinit/xinitrc.common
+if [ -r /etc/X11/xinit/xinitrc.common ]; then
+ . /etc/X11/xinit/xinitrc.common
+elif [ -r /usr/etc/X11/xinit/xinitrc.common ]; then
+ . /usr/etc/X11/xinit/xinitrc.common
+fi
#
# Special for twm
diff -u -r ../old/etc/X11/xinit/xinitrc.common ./etc/X11/xinit/xinitrc.common
--- ../old/etc/X11/xinit/xinitrc.common 2020-03-24 12:39:54.076007000 +0100
+++ ./etc/X11/xinit/xinitrc.common 2020-09-08 12:56:59.193451000 +0200
@@ -1,4 +1,4 @@
-# /etc/X11/xinit/xinitrc.common
+# /usr/etc/X11/xinit/xinitrc.common
#
# Common code used in X session and X init scripts.
# File shall be sourced but not executed by the scripts.
@@ -15,6 +15,7 @@
# Some common user and system files,
#
XETCDIR=/etc/X11
+ XUSRETCDIR=/usr/etc/X11
xdefaults=$HOME/.Xdefaults
xresources=$HOME/.Xresources
xmodmap=$HOME/.Xmodmap
@@ -37,9 +38,15 @@
#
# Run user xinit scripts.
#
-for script in /etc/X11/xinit/xinitrc.d/*; do
+for script in /usr/etc/X11/xinit/xinitrc.d/* \
+ /etc/X11/xinit/xinitrc.d/*; do
test -e $script || continue
test -d $script && continue
+ # higher priority for /etc/X11/xinit/xinitrc.d ...
+ if echo $script | grep -q ^/usr; then
+ sname=$(basename $script)
+ test -e /etc/X11/xinit/xinitrc.d/$sname && continue
+ fi
case "$script" in
.*) continue ;;
*.rpm*) continue ;;
@@ -140,7 +147,11 @@
#
# Start the XIM server
#
-XIMFILE=/etc/X11/xim
+if [ -r /etc/X11/xim ]; then
+ XIMFILE=/etc/X11/xim
+elif [ -r /usr/etc/X11/xim ]; then
+ XIMFILE=/usr/etc/X11/xim
+fi
test -r $HOME/.xim && XIMFILE=$HOME/.xim
test -r $XIMFILE && source $XIMFILE
@@ -167,12 +178,16 @@
# apply system's xkb first
if test -s $XETCDIR/Xkbmap; then
test -r $XETCDIR/Xkbmap && cat $XETCDIR/Xkbmap | xkbcomp - $DISPLAY
+ elif test -s $XUSRETCDIR/Xkbmap; then
+ test -r $XUSRETCDIR/Xkbmap && cat $XUSRETCDIR/Xkbmap | xkbcomp - $DISPLAY
fi
test -r "$xkbmap" && cat "$xkbmap" | xkbcomp - $DISPLAY
elif test -s "$xmodmap"; then
test -r "$xmodmap" && xmodmap "$xmodmap"
elif test -s $XETCDIR/Xkbmap ; then
test -r $XETCDIR/Xkbmap && cat $XETCDIR/Xkbmap | xkbcomp - $DISPLAY
+elif test -s $XUSRETCDIR/Xkbmap ; then
+ test -r $XUSRETCDIR/Xkbmap && cat $XUSRETCDIR/Xkbmap | xkbcomp - $DISPLAY
fi
#
@@ -182,6 +197,9 @@
if test -r $XETCDIR/Xresources ; then
xrdb -nocpp -load -retain $XETCDIR/Xresources
xrdb -I$HOME -merge "$xdefaults"
+ elif test -r $XUSRETCDIR/Xresources ; then
+ xrdb -nocpp -load -retain $XUSRETCDIR/Xresources
+ xrdb -I$HOME -merge "$xdefaults"
else
xrdb -I$HOME -load -retain "$xdefaults"
fi
@@ -192,11 +210,16 @@
if test -r $XETCDIR/Xresources ; then
xrdb -nocpp -load -retain $XETCDIR/Xresources
xrdb -I$HOME -merge "$xresources"
+ elif test -r $XUSRETCDIR/Xresources ; then
+ xrdb -nocpp -load -retain $XUSRETCDIR/Xresources
+ xrdb -I$HOME -merge "$xresources"
else
xrdb -I$HOME -load -retain "$xresources"
fi
elif test -r $XETCDIR/Xresources ; then
xrdb -nocpp -load -retain $XETCDIR/Xresources
+elif test -r $XUSRETCDIR/Xresources ; then
+ xrdb -nocpp -load -retain $XUSRETCDIR/Xresources
fi
# prevent gnome-session from failing (boo#1163262)

View File

@ -1,3 +1,34 @@
-------------------------------------------------------------------
Sun Oct 4 09:47:55 UTC 2020 - Fabian Vogt <fabian@ritter-vogt.de>
- Properly track the compatibility symlink
-------------------------------------------------------------------
Tue Sep 8 23:09:02 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
- simplified UsrEtcMove enable/disable logic in specfile
-------------------------------------------------------------------
Tue Sep 8 11:36:36 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
- xinit-tarball.patch/xinit.spec
* reenabled move to /usr/etc/X11/xinit
* fixed remaining issues mentioned in boo#1173052, comment#6
and boo#1176212, comment#7
-------------------------------------------------------------------
Tue Sep 8 09:44:08 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
- reverted move to /usr/etc/X11/xinit for now (boo#1173052, comment#6)
-------------------------------------------------------------------
Sat Sep 5 02:48:39 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
- moved xinit files to /usr/etc/X11/xinit and removed xinitrc
skeleton (boo#1173052)
- xinit-tarball.patch
* adjust tarball contenct to /usr/etc move (boo#1173052)
-------------------------------------------------------------------
Sun Aug 23 15:38:01 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>

View File

@ -16,6 +16,10 @@
#
%if 0%{?suse_version} >= 1550
%define UsrEtcMove 1
%endif
Name: xinit
Version: 1.4.1
Release: 0
@ -32,6 +36,7 @@ Patch1: xinit-client-session.patch
Patch2: xinit-suse.patch
Patch3: xinit-tolerant-hostname-changes.patch
Patch4: xinit-nolonger-unset-dbus-session.patch
Patch5: xinit-tarball.patch
# needed for patch0
BuildRequires: gcc-c++
BuildRequires: libtool
@ -62,16 +67,25 @@ terminate.
%prep
%setup -q
%if 0%{?UsrEtcMove}
sed -i 's+/etc/X11+%{_libexecdir}+' %{PATCH0}
%endif
%patch0 -p0
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
### patch is applied later in %install section
#%patch5 -p0
# needed for patch0
autoreconf -fi
%build
%if 0%{?UsrEtcMove}
%configure --with-xinitdir=%{_libexecdir}/xinit
%else
%configure
%endif
make %{?_smp_mflags}
%{__cc} %{optflags} -o keygen %{SOURCE2}
@ -81,15 +95,35 @@ install -m 0644 %{SOURCE3} %{buildroot}%{_mandir}/man1
install -m 0711 keygen %{buildroot}%{_bindir}/keygen
pushd %{buildroot}
tar xf %{SOURCE1}
%if 0%{?UsrEtcMove}
patch -p0 < %{PATCH5}
mkdir -p %{buildroot}%{_libexecdir}/xinit
mv etc/X11/xinit/{xinitrc,xserverrc} %{buildroot}%{_libexecdir}/xinit
mkdir -p usr/etc/X11/xinit/xinitrc.d
mv etc/X11/Xresources usr/etc/X11
mv etc/X11/xinit/xinitrc.common usr/etc/X11/xinit
# Compatibility symlink for user xinitrc files
ln -s /usr/etc/X11/xinit/xinitrc.common etc/X11/xinit/xinitrc.common
rmdir etc/X11/xinit/xinitrc.d
%endif
popd
install -D %{buildroot}%{_sysconfdir}/X11/xinit/xinitrc %{buildroot}%{_sysconfdir}/skel/.xinitrc.template
%files
%defattr(-,root,root)
%doc ChangeLog COPYING README.md
%if 0%{?UsrEtcMove}
%dir %{_distconfdir}/X11
%{_distconfdir}/X11/xinit/
%{_distconfdir}/X11/Xresources
%dir %{_libexecdir}/xinit
%attr(0755,root,root) %{_libexecdir}/xinit/xinitrc
%attr(0755,root,root) %{_libexecdir}/xinit/xserverrc
%dir %{_sysconfdir}/X11/xinit/
%config %{_sysconfdir}/X11/xinit/xinitrc.common
%else
%config %{_sysconfdir}/X11/xinit/
%config %{_sysconfdir}/X11/Xresources
%config %{_sysconfdir}/skel/.xinitrc.template
%endif
%{_bindir}/keygen
%{_bindir}/startx
%{_bindir}/xinit