forked from pool/xinit
Compare commits
7 Commits
Author | SHA256 | Date | |
---|---|---|---|
5b57007e6f | |||
15f27176ad | |||
9da6cee488 | |||
32e9d3dd09 | |||
a3b14a19da | |||
64801441cd | |||
20e7a1ab7d |
BIN
xinit-1.4.2.tar.xz
(Stored with Git LFS)
BIN
xinit-1.4.2.tar.xz
(Stored with Git LFS)
Binary file not shown.
3
xinit-1.4.4.tar.xz
Normal file
3
xinit-1.4.4.tar.xz
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:40a47c7a164c7f981ce3787b4b37f7e411fb43231dcde543d70094075dacfef9
|
||||||
|
size 162496
|
@@ -1,8 +1,8 @@
|
|||||||
Index: xinit-1.3.4/xinit.c
|
Index: xinit-1.4.3/xinit.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- xinit-1.3.4.orig/xinit.c
|
--- xinit-1.4.3.orig/xinit.c
|
||||||
+++ xinit-1.3.4/xinit.c
|
+++ xinit-1.4.3/xinit.c
|
||||||
@@ -89,6 +89,7 @@ char xserverrcbuf[256];
|
@@ -90,6 +90,7 @@ static char xserverrcbuf[256];
|
||||||
|
|
||||||
#define TRUE 1
|
#define TRUE 1
|
||||||
#define FALSE 0
|
#define FALSE 0
|
||||||
@@ -10,7 +10,7 @@ Index: xinit-1.3.4/xinit.c
|
|||||||
|
|
||||||
static char *default_server = "X";
|
static char *default_server = "X";
|
||||||
static char *default_display = ":0"; /* choose most efficient */
|
static char *default_display = ":0"; /* choose most efficient */
|
||||||
@@ -560,6 +561,8 @@ startClient(char *client_argv[])
|
@@ -570,6 +571,8 @@ startClient(char *client_argv[])
|
||||||
{
|
{
|
||||||
clientpid = fork();
|
clientpid = fork();
|
||||||
if (clientpid == 0) {
|
if (clientpid == 0) {
|
||||||
@@ -19,7 +19,7 @@ Index: xinit-1.3.4/xinit.c
|
|||||||
set_environment();
|
set_environment();
|
||||||
setWindowPath();
|
setWindowPath();
|
||||||
|
|
||||||
@@ -567,7 +570,17 @@ startClient(char *client_argv[])
|
@@ -577,7 +580,17 @@ startClient(char *client_argv[])
|
||||||
Error("cannot change uid");
|
Error("cannot change uid");
|
||||||
_exit(EXIT_FAILURE);
|
_exit(EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
|
130
xinit-suse.patch
130
xinit-suse.patch
@@ -1,16 +1,12 @@
|
|||||||
Index: xinit-1.4.0/startx.cpp
|
--- xinit-1.4.4/startx.before_patch2 2025-03-09 23:08:33.597781034 +0100
|
||||||
===================================================================
|
+++ xinit-1.4.4/startx 2025-03-09 23:27:30.128779830 +0100
|
||||||
--- xinit-1.4.0.orig/startx.cpp 2018-03-10 02:46:03.000000000 +0100
|
@@ -61,6 +61,93 @@
|
||||||
+++ xinit-1.4.0/startx.cpp 2018-07-11 13:16:21.864694488 +0200
|
|
||||||
@@ -50,11 +50,103 @@
|
|
||||||
[ -f "${XINITRC}" ] && userclientrc="${XINITRC}"
|
[ -f "${XINITRC}" ] && userclientrc="${XINITRC}"
|
||||||
sysclientrc=XINITDIR/xinitrc
|
sysclientrc="/usr/libexec/xinit/xinitrc"
|
||||||
|
|
||||||
+XCOMM
|
+#
|
||||||
+XCOMM check for installed servers
|
+# check for installed servers
|
||||||
+XCOMM
|
+#
|
||||||
+
|
|
||||||
+#ifdef linux
|
|
||||||
+
|
+
|
||||||
+INSTALLED_SERVERS=`ls -1 /usr/bin/Xorg /usr/X11R6/bin/XFree86 /usr/X11R6/bin/Xorg* 2>/dev/null`
|
+INSTALLED_SERVERS=`ls -1 /usr/bin/Xorg /usr/X11R6/bin/XFree86 /usr/X11R6/bin/Xorg* 2>/dev/null`
|
||||||
+
|
+
|
||||||
@@ -25,28 +21,28 @@ Index: xinit-1.4.0/startx.cpp
|
|||||||
+fi
|
+fi
|
||||||
+
|
+
|
||||||
+
|
+
|
||||||
+XCOMM
|
+#
|
||||||
+XCOMM perhaps a windowmanager is specified?
|
+# perhaps a windowmanager is specified?
|
||||||
+XCOMM
|
+#
|
||||||
+XCOMM
|
+#
|
||||||
+XCOMM find wmlist utility, else take twm as default (always there :-))
|
+# find wmlist utility, else take twm as default (always there :-))
|
||||||
+XCOMM
|
+#
|
||||||
+type wmlist >/dev/null 2>&1 && WMLIST="`for i in $(wmlist); do echo $i; done | sort`"
|
+type wmlist >/dev/null 2>&1 && WMLIST="`for i in $(wmlist); do echo $i; done | sort`"
|
||||||
+test -z "$WMLIST" && WMLIST="twm"
|
+test -z "$WMLIST" && WMLIST="twm"
|
||||||
+
|
+
|
||||||
+test "$1" = "--" || { test -n "$1" && WANTEDWM=`basename "$1"` ; }
|
+test "$1" = "--" || { test -n "$1" && WANTEDWM=`basename "$1"` ; }
|
||||||
+
|
+
|
||||||
+XCOMM
|
+#
|
||||||
+XCOMM User could have set a list of window manager in WINDOWMANAGERLIST.
|
+# User could have set a list of window manager in WINDOWMANAGERLIST.
|
||||||
+XCOMM go through wms and check if user specified a reachable one.
|
+# go through wms and check if user specified a reachable one.
|
||||||
+XCOMM
|
+#
|
||||||
+
|
+
|
||||||
+for WM in $WMLIST $WINDOWMANAGERLIST
|
+for WM in $WMLIST $WINDOWMANAGERLIST
|
||||||
+do
|
+do
|
||||||
+ test "$WM" = "$WANTEDWM" && {
|
+ test "$WM" = "$WANTEDWM" && {
|
||||||
+XCOMM
|
+#
|
||||||
+XCOMM is it reachable via $PATH?
|
+# is it reachable via $PATH?
|
||||||
+XCOMM
|
+#
|
||||||
+ type $WM >/dev/null 2>&1 || {
|
+ type $WM >/dev/null 2>&1 || {
|
||||||
+
|
+
|
||||||
+ echo "`basename $0`: error: the requested window manager '$1' could not be found!"
|
+ echo "`basename $0`: error: the requested window manager '$1' could not be found!"
|
||||||
@@ -54,9 +50,9 @@ Index: xinit-1.4.0/startx.cpp
|
|||||||
+ for i in $WMLIST; do echo $i; done
|
+ for i in $WMLIST; do echo $i; done
|
||||||
+ exit 1
|
+ exit 1
|
||||||
+ }
|
+ }
|
||||||
+XCOMM
|
+#
|
||||||
+XCOMM OK, we got it, this will be the override for WINDOWMANAGER
|
+# OK, we got it, this will be the override for WINDOWMANAGER
|
||||||
+XCOMM
|
+#
|
||||||
+ export WINDOWMANAGER=$WM
|
+ export WINDOWMANAGER=$WM
|
||||||
+ shift 1
|
+ shift 1
|
||||||
+ break
|
+ break
|
||||||
@@ -65,9 +61,9 @@ Index: xinit-1.4.0/startx.cpp
|
|||||||
+
|
+
|
||||||
+unset WINDOWMANAGERLIST WMLIST WANTEDWM WM
|
+unset WINDOWMANAGERLIST WMLIST WANTEDWM WM
|
||||||
+
|
+
|
||||||
+XCOMM
|
+#
|
||||||
+XCOMM check symlink
|
+# check symlink
|
||||||
+XCOMM
|
+#
|
||||||
+
|
+
|
||||||
+if [ ! -L /usr/bin/X ]; then
|
+if [ ! -L /usr/bin/X ]; then
|
||||||
+
|
+
|
||||||
@@ -78,9 +74,9 @@ Index: xinit-1.4.0/startx.cpp
|
|||||||
+ exit 1
|
+ exit 1
|
||||||
+fi
|
+fi
|
||||||
+
|
+
|
||||||
+XCOMM
|
+#
|
||||||
+XCOMM check if the Xorg file is an executable or an accidentally copied script or similar things
|
+# check if the Xorg file is an executable or an accidentally copied script or similar things
|
||||||
+XCOMM
|
+#
|
||||||
+
|
+
|
||||||
+if [ ! -x /usr/bin/X ]; then
|
+if [ ! -x /usr/bin/X ]; then
|
||||||
+
|
+
|
||||||
@@ -91,58 +87,48 @@ Index: xinit-1.4.0/startx.cpp
|
|||||||
+ exit 1
|
+ exit 1
|
||||||
+fi
|
+fi
|
||||||
+
|
+
|
||||||
+#endif /* linux */
|
+# set $DISPLAYMANAGER_XSERVER $DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN
|
||||||
+
|
|
||||||
+XCOMM set $DISPLAYMANAGER_XSERVER $DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN
|
|
||||||
+. /etc/sysconfig/displaymanager
|
+. /etc/sysconfig/displaymanager
|
||||||
+
|
+
|
||||||
userserverrc=$HOME/.xserverrc
|
+
|
||||||
[ -f "${XSERVERRC}" ] && userclientrc="${XSERVERRC}"
|
userserverrc="$HOME/.xserverrc"
|
||||||
sysserverrc=XINITDIR/xserverrc
|
[ -f "${XSERVERRC}" ] && userserverrc="${XSERVERRC}"
|
||||||
defaultclient=XTERM
|
sysserverrc="$xinitdir/xserverrc"
|
||||||
+XCOMM set X Server accordingly (Xorg/Xgl)
|
@@ -319,6 +406,10 @@
|
||||||
defaultserver=XSERVER
|
|
||||||
+test -n "$DISPLAYMANAGER_XSERVER" && defaultserver=/usr/bin/$DISPLAYMANAGER_XSERVER
|
|
||||||
defaultclientargs=""
|
|
||||||
defaultserverargs=""
|
|
||||||
defaultdisplay=""
|
|
||||||
@@ -312,6 +404,9 @@
|
|
||||||
fi
|
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
+XCOMM handle TCP port 6000
|
|
||||||
|
+# handle TCP port 6000
|
||||||
+test "$DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN" != "yes" && \
|
+test "$DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN" != "yes" && \
|
||||||
+ serverargs="$serverargs -nolisten tcp"
|
+ serverargs="$serverargs -nolisten tcp"
|
||||||
|
+
|
||||||
#if defined(__APPLE__) || defined(__CYGWIN__)
|
case "$(uname -s)" in
|
||||||
eval XINIT \"$client\" $clientargs -- \"$server\" $display $serverargs
|
CYGWIN_NT*|Darwin)
|
||||||
@@ -320,6 +415,12 @@
|
eval "$xinit" \"$client\" $clientargs -- \"$server\" $display $serverargs
|
||||||
#endif
|
@@ -329,6 +420,12 @@
|
||||||
|
esac
|
||||||
retval=$?
|
retval=$?
|
||||||
|
|
||||||
+if [ "$retval" != 0 -a ! -u "/usr/bin/Xorg" ]; then
|
+if [ "$retval" != 0 -a ! -u "/usr/bin/Xorg" ]; then
|
||||||
+ echo "-------------------------------------------------------------------------------------------"
|
+ echo "-------------------------------------------------------------------------------------------"
|
||||||
+ echo "xinit failed. /usr/bin/Xorg is not setuid, maybe that's the reason?"
|
+ echo "xinit failed. /usr/bin/Xorg is not setuid, maybe that's the reason?"
|
||||||
+ echo "If so either use a display manager (strongly recommended) or adjust /etc/permissions.local and run \"chkstat --system --set\" afterwards"
|
+ echo "If so either use a display manager (strongly recommended) or adjust /etc/permissions.local and run \"chkstat --system --set\" afterwards"
|
||||||
+fi
|
+fi
|
||||||
+
|
+
|
||||||
if [ x"$enable_xauth" = x1 ] ; then
|
if [ "$enable_xauth" = 1 ] ; then
|
||||||
if [ x"$removelist" != x ]; then
|
if [ "$removelist" != "" ]; then
|
||||||
XAUTH remove $removelist
|
"$xauth" remove $removelist
|
||||||
Index: xinit-1.4.0/xinitrc.cpp
|
--- xinit-1.4.4/xinitrc.before_patch2 2025-03-09 23:08:33.601781115 +0100
|
||||||
===================================================================
|
+++ xinit-1.4.4/xinitrc 2025-03-09 23:31:04.025108190 +0100
|
||||||
--- xinit-1.4.0.orig/xinitrc.cpp 2018-03-10 02:46:03.000000000 +0100
|
@@ -50,7 +50,10 @@
|
||||||
+++ xinit-1.4.0/xinitrc.cpp 2018-07-11 13:13:23.808686361 +0200
|
|
||||||
@@ -48,8 +48,10 @@
|
|
||||||
unset f
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
-TWM &
|
"$twm" &
|
||||||
+if [ -x /usr/X11R6/bin/fvwm -o -x /usr/bin/fvwm]; then
|
+if [ -x /usr/X11R6/bin/fvwm -o -x /usr/bin/fvwm]; then
|
||||||
+ exec fvwm
|
+ exec fvwm
|
||||||
+fi
|
+fi
|
||||||
XCLOCK -geometry 50x50-1+1 &
|
"$xclock" -geometry 50x50-1+1 &
|
||||||
XTERM -geometry 80x50+494+51 &
|
"$xterm" -geometry 80x50+494+51 &
|
||||||
XTERM -geometry 80x20+494-0 &
|
"$xterm" -geometry 80x20+494-0 &
|
||||||
-exec XTERM -geometry 80x66+0+0 -name login
|
-exec "$xterm" -geometry 80x66+0+0 -name login
|
||||||
+exec TWM
|
+exec $twm
|
||||||
|
@@ -1,12 +1,12 @@
|
|||||||
Index: xinit-1.3.4/startx.cpp
|
Index: xinit-1.4.3/startx
|
||||||
===================================================================
|
===================================================================
|
||||||
--- xinit-1.3.4.orig/startx.cpp
|
--- xinit-1.4.3.orig/startx
|
||||||
+++ xinit-1.3.4/startx.cpp
|
+++ xinit-1.4.3/startx
|
||||||
@@ -407,6 +407,7 @@ fi
|
@@ -412,6 +412,7 @@ fi
|
||||||
XCOMM handle TCP port 6000
|
XCOMM handle TCP port 6000
|
||||||
test "$DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN" != "yes" && \
|
test "$DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN" != "yes" && \
|
||||||
serverargs="$serverargs -nolisten tcp"
|
serverargs="$serverargs -nolisten tcp"
|
||||||
+export XAUTHLOCALHOSTNAME=`hostname`
|
+export XAUTHLOCALHOSTNAME=`hostname`
|
||||||
|
|
||||||
#if defined(__APPLE__) || defined(__CYGWIN__)
|
case "$(uname -s)" in
|
||||||
eval XINIT \"$client\" $clientargs -- \"$server\" $display $serverargs
|
CYGWIN_NT*|Darwin)
|
||||||
|
@@ -1,3 +1,44 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Mar 9 21:35:21 UTC 2025 - Stefan Dirsch <sndirsch@suse.com>
|
||||||
|
|
||||||
|
- Update to version 1.4.4
|
||||||
|
This release fixes regresssions introduced by the shell script modernization
|
||||||
|
in the 1.4.3 release, primarily seen on systems without the "mcookie" helper
|
||||||
|
program to make xauth cookies, and thus using openssl or /dev/urandom to
|
||||||
|
make cookies instead. Thanks to Peter Tribble of the Tribblix illumos distro
|
||||||
|
for reporting the issue and testing the fixes.
|
||||||
|
- adjusted xinit-suse.patch, xinit-tolerant-hostname-changes.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Mar 1 09:57:47 UTC 2025 - Jan Engelhardt <jengelh@inai.de>
|
||||||
|
|
||||||
|
- Make build recipe compatible with POSIX sh
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Jan 5 21:33:42 UTC 2025 - Stefan Dirsch <sndirsch@suse.com>
|
||||||
|
|
||||||
|
- Update to version 1.4.3
|
||||||
|
* Reindent startx after !6
|
||||||
|
* Remove Xdmx from suggested Xserver list
|
||||||
|
* Mark global variables as static since there's only one source file
|
||||||
|
* Clear -Wunused-parameter warnings from clang
|
||||||
|
* Use ptrdiff_t to store results of pointer subtraction
|
||||||
|
* Use asprintf() if available
|
||||||
|
* Don't exit with failure on SIGTERM regardless.
|
||||||
|
* darwin: Remove bashism from 10-tmpdirs script
|
||||||
|
* Modernized shell scripts
|
||||||
|
* startx: Assign XSERVERRC to correct userserverrc
|
||||||
|
* add closing quote to /dev/random mcookie hex
|
||||||
|
- adjusted xinit-suse.patch
|
||||||
|
- refreshed xinit-client-session.patch
|
||||||
|
- refreshed xinit-tolerant-hostname-changes.patch
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Dec 23 16:55:44 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
|
||||||
|
|
||||||
|
- Properly comment %patch 5 out: '#' still expands the macro, which
|
||||||
|
makes build fail with rpm 4.20. Use %dnl instead.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Jul 4 12:02:51 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
|
Thu Jul 4 12:02:51 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
|
||||||
|
|
||||||
|
19
xinit.spec
19
xinit.spec
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package xinit
|
# spec file for package xinit
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
%define UsrEtcMove 1
|
%define UsrEtcMove 1
|
||||||
%endif
|
%endif
|
||||||
Name: xinit
|
Name: xinit
|
||||||
Version: 1.4.2
|
Version: 1.4.4
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: X Window System initializer
|
Summary: X Window System initializer
|
||||||
License: MIT
|
License: MIT
|
||||||
@@ -69,10 +69,10 @@ sed -i 's+%{_sysconfdir}/X11+%{_libexecdir}+' %{PATCH0}
|
|||||||
%endif
|
%endif
|
||||||
%patch -P 0
|
%patch -P 0
|
||||||
%patch -P 1 -p1
|
%patch -P 1 -p1
|
||||||
%patch -P 2 -p1
|
### patches are applied later in %install section
|
||||||
%patch -P 3 -p1
|
#patch -P 2 -p1
|
||||||
### patch is applied later in %install section
|
#patch -P 3 -p1
|
||||||
#%patch -P 5 -p0
|
#patch -P 5 -p0
|
||||||
# needed for patch0
|
# needed for patch0
|
||||||
autoreconf -fi
|
autoreconf -fi
|
||||||
|
|
||||||
@@ -86,11 +86,13 @@ autoreconf -fi
|
|||||||
gcc %{optflags} -o keygen %{SOURCE2}
|
gcc %{optflags} -o keygen %{SOURCE2}
|
||||||
|
|
||||||
%install
|
%install
|
||||||
|
patch -p1 < %{PATCH2}
|
||||||
|
patch -p1 < %{PATCH3}
|
||||||
%make_install
|
%make_install
|
||||||
install -m 0644 %{SOURCE3} %{buildroot}%{_mandir}/man1
|
install -m 0644 %{SOURCE3} %{buildroot}%{_mandir}/man1
|
||||||
install -m 0711 keygen %{buildroot}%{_bindir}/keygen
|
install -m 0711 keygen %{buildroot}%{_bindir}/keygen
|
||||||
pushd %{buildroot}
|
cd %{buildroot}
|
||||||
tar xf %{SOURCE1}
|
tar -xf %{SOURCE1}
|
||||||
%if 0%{?UsrEtcMove}
|
%if 0%{?UsrEtcMove}
|
||||||
patch -p0 < %{PATCH5}
|
patch -p0 < %{PATCH5}
|
||||||
mkdir -p %{buildroot}%{_libexecdir}/xinit
|
mkdir -p %{buildroot}%{_libexecdir}/xinit
|
||||||
@@ -102,7 +104,6 @@ mv etc/X11/xinit/xinitrc.common usr%{_sysconfdir}/X11/xinit
|
|||||||
ln -s %{_prefix}%{_sysconfdir}/X11/xinit/xinitrc.common etc/X11/xinit/xinitrc.common
|
ln -s %{_prefix}%{_sysconfdir}/X11/xinit/xinitrc.common etc/X11/xinit/xinitrc.common
|
||||||
rmdir etc/X11/xinit/xinitrc.d
|
rmdir etc/X11/xinit/xinitrc.d
|
||||||
%endif
|
%endif
|
||||||
popd
|
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%license COPYING
|
%license COPYING
|
||||||
|
Reference in New Issue
Block a user