update to xscreensaver-6.03, based on a diff from Ariel Popper.
This moves the setuid root from the main screensaver process to a smaller auth process (it uses getpwnam_shadow for user db access, there is no driver for bsd-auth). I've tried it with setgid _shadow instead of setuid root but unlock is broken in that case. This is better than it was previously, but still not ideal. I suggest the ports version of slock (not upstream's; we had to add bsd-auth support back in via a patch after upstream removed it again) or xlock. Add some notes to the Makefile describing the current situation in case somebody wants to improve it (it should be possible to add a bsd-auth driver to this instead).
This commit is contained in:
parent
cae0bb368c
commit
35395000af
@ -1,6 +1,14 @@
|
||||
COMMENT= screen saver and locker for the X Window System
|
||||
|
||||
DISTNAME= xscreensaver-5.45
|
||||
# No driver for BSD Authentication so xscreensaver-auth uses the
|
||||
# driver/passwd-pwent.c backend using getpwnam_shadow() which is using
|
||||
# setuid root for access to the shadow password db. For some reason
|
||||
# unlock fails to ask for a password with just setgid _shadow - maybe
|
||||
# related to setgroups() failing, maybe something else.
|
||||
#
|
||||
# Ideally this wants a bsdauth driver to be written, change to being
|
||||
# installed setgid auth, and figure out any issues resulting.
|
||||
DISTNAME= xscreensaver-6.03
|
||||
|
||||
CATEGORIES= x11
|
||||
|
||||
@ -9,9 +17,9 @@ HOMEPAGE= https://www.jwz.org/xscreensaver/
|
||||
# BSD
|
||||
PERMIT_PACKAGE= Yes
|
||||
|
||||
WANTLIB += GL GLU ICE SM X11 Xcomposite Xcursor Xdamage Xext Xfixes
|
||||
WANTLIB += Xft Xi Xinerama Xmu Xrandr Xrender Xt Xxf86vm atk-1.0
|
||||
WANTLIB += c cairo fontconfig freetype gdk-x11-2.0 gdk_pixbuf-2.0
|
||||
WANTLIB = EGL GL GLU ICE SM X11 Xcomposite Xcursor Xdamage Xext Xfixes
|
||||
WANTLIB += Xft Xi Xinerama Xrandr Xrender Xt Xxf86vm atk-1.0 c cairo
|
||||
WANTLIB += fontconfig freetype gdk-x11-2.0 gdk_pixbuf-2.0
|
||||
WANTLIB += gdk_pixbuf_xlib-2.0 gio-2.0 gle glib-2.0 gmodule-2.0
|
||||
WANTLIB += gobject-2.0 gtk-x11-2.0 harfbuzz intl jpeg m pango-1.0
|
||||
WANTLIB += pangocairo-1.0 pangoft2-1.0 pthread util xml2 z
|
||||
@ -39,8 +47,7 @@ USE_GMAKE= Yes
|
||||
NO_TEST= Yes
|
||||
|
||||
CONFIGURE_STYLE= gnu
|
||||
CONFIGURE_ARGS= --with-hackdir="${PREFIX}/libexec/xscreensaver" \
|
||||
--with-x-app-defaults="${PREFIX}/lib/X11/app-defaults" \
|
||||
CONFIGURE_ARGS= --with-app-defaults="${PREFIX}/lib/X11/app-defaults" \
|
||||
--without-pam
|
||||
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
|
||||
LDFLAGS="-L${LOCALBASE}/lib"
|
||||
|
@ -1,2 +1,2 @@
|
||||
SHA256 (xscreensaver-5.45.tar.gz) = cBbfZza6ASamjB81q89BGmlf6TvAGhjr2d9Gyan01Q0=
|
||||
SIZE (xscreensaver-5.45.tar.gz) = 27729147
|
||||
SHA256 (xscreensaver-6.03.tar.gz) = Mo1ReXNSrPWMpbq0nnb78mA058rXhfZR6hHOe0P7olo=
|
||||
SIZE (xscreensaver-6.03.tar.gz) = 25703584
|
||||
|
13
x11/xscreensaver/patches/patch-configure
Normal file
13
x11/xscreensaver/patches/patch-configure
Normal file
@ -0,0 +1,13 @@
|
||||
Permit building if security/openpam is installed.
|
||||
|
||||
Index: configure
|
||||
--- configure.orig
|
||||
+++ configure
|
||||
@@ -21135,7 +21135,6 @@ elif test "$have_pam" = no ; then
|
||||
if test -d /etc/pam.d -o -f /etc/pam.conf ; then
|
||||
warn "Your system seems to have PAM, but PAM is not being used."
|
||||
warn2 "That is probably not going to work out well."
|
||||
- CONF_STATUS=1
|
||||
fi
|
||||
fi
|
||||
|
@ -1,16 +1,16 @@
|
||||
Don't hardcode gnome-terminal, fallback to xterm
|
||||
OpenBSD doesn't have x-terminal-emulator.
|
||||
|
||||
Index: driver/XScreenSaver.ad.in
|
||||
--- driver/XScreenSaver.ad.in.orig
|
||||
+++ driver/XScreenSaver.ad.in
|
||||
@@ -101,8 +101,8 @@
|
||||
! Gnome 2.4, 2.6: (yelp can't display man pages, as of 2.6.3)
|
||||
@@ -80,8 +80,8 @@
|
||||
!
|
||||
@GNOME24@*loadURL: @WITH_BROWSER@ '%s'
|
||||
-@GNOME24@*manualCommand: gnome-terminal --title '%s manual' \
|
||||
-@GNOME24@ --command '/bin/sh -c "man %s; read foo"'
|
||||
+@GNOME24@*manualCommand: xterm -sb -fg black -bg gray75 -T '%s manual' \
|
||||
+@GNOME24@ -e /bin/sh -c 'man "%s" ; read foo'
|
||||
@GNOME24@*manualCommand: yelp man:%s || \
|
||||
-@GNOME24@ x-terminal-emulator -t '%s manual' \
|
||||
-@GNOME24@ -e /bin/sh -c "man %s; read foo"
|
||||
+@GNOME24@ xterm -sb -fg black -bg gray75 -T '%s manual' \
|
||||
+@GNOME24@ -e /bin/sh -c 'man "%s" ; read foo'
|
||||
|
||||
!
|
||||
! Gnome 2.2:
|
||||
!
|
||||
|
@ -1,7 +1,7 @@
|
||||
Index: driver/passwd-pwent.c
|
||||
--- driver/passwd-pwent.c.orig
|
||||
+++ driver/passwd-pwent.c
|
||||
@@ -133,7 +133,7 @@ user_name (void)
|
||||
@@ -121,7 +121,7 @@ user_name (void)
|
||||
still work. Right?) */
|
||||
if (!u || !*u)
|
||||
{
|
||||
@ -10,12 +10,12 @@ Index: driver/passwd-pwent.c
|
||||
u = (p ? p->pw_name : 0);
|
||||
}
|
||||
|
||||
@@ -177,7 +177,7 @@ get_encrypted_passwd(const char *user)
|
||||
@@ -158,7 +158,7 @@ get_encrypted_passwd (const char *user)
|
||||
|
||||
if (user && *user && !result)
|
||||
{ /* Check non-shadow passwords too. */
|
||||
- struct passwd *p = getpwnam(user);
|
||||
+ struct passwd *p = getpwnam_shadow(user);
|
||||
if (p && passwd_known_p (p->pw_passwd))
|
||||
result = strdup(p->pw_passwd);
|
||||
result = strdup(p->pw_passwd);
|
||||
}
|
||||
|
@ -1,13 +0,0 @@
|
||||
Index: hacks/glx/crumbler.c
|
||||
--- hacks/glx/crumbler.c.orig
|
||||
+++ hacks/glx/crumbler.c
|
||||
@@ -676,6 +676,9 @@ init_crumbler (ModeInfo *mi)
|
||||
# undef R
|
||||
}
|
||||
|
||||
+# ifdef __OpenBSD__
|
||||
+ density *= 0.5;
|
||||
+#endif
|
||||
# ifdef HAVE_MOBILE
|
||||
# ifdef HAVE_IPHONE
|
||||
density *= 0.5; /* iPhone 6s runs out of memory at 4500 nverts. */
|
@ -5,16 +5,11 @@
|
||||
@pkgpath x11/xscreensaver,no_gle
|
||||
@pkgpath x11/xscreensaver,-main
|
||||
@pkgpath x11/xscreensaver,-data
|
||||
@mode 4755
|
||||
@bin bin/xscreensaver
|
||||
@mode
|
||||
@bin bin/xscreensaver-command
|
||||
@bin bin/xscreensaver-demo
|
||||
@bin bin/xscreensaver-getimage
|
||||
bin/xscreensaver-getimage-file
|
||||
bin/xscreensaver-getimage-video
|
||||
@bin bin/xscreensaver-gl-helper
|
||||
bin/xscreensaver-text
|
||||
bin/xscreensaver-demo
|
||||
@bin bin/xscreensaver-settings
|
||||
lib/X11/app-defaults/XScreenSaver
|
||||
libexec/xscreensaver/
|
||||
@bin libexec/xscreensaver/abstractile
|
||||
@bin libexec/xscreensaver/anemone
|
||||
@ -29,6 +24,7 @@ libexec/xscreensaver/
|
||||
@bin libexec/xscreensaver/atunnel
|
||||
@bin libexec/xscreensaver/barcode
|
||||
@bin libexec/xscreensaver/beats
|
||||
@bin libexec/xscreensaver/binaryhorizon
|
||||
@bin libexec/xscreensaver/binaryring
|
||||
@bin libexec/xscreensaver/blaster
|
||||
@bin libexec/xscreensaver/blinkbox
|
||||
@ -149,10 +145,12 @@ libexec/xscreensaver/
|
||||
@bin libexec/xscreensaver/lament
|
||||
@bin libexec/xscreensaver/lavalite
|
||||
@bin libexec/xscreensaver/lcdscrub
|
||||
libexec/xscreensaver/ljlatest
|
||||
@bin libexec/xscreensaver/lockward
|
||||
@bin libexec/xscreensaver/loop
|
||||
@bin libexec/xscreensaver/m6502
|
||||
@bin libexec/xscreensaver/mapscroller
|
||||
libexec/xscreensaver/mapscroller.pl
|
||||
@bin libexec/xscreensaver/marbling
|
||||
@bin libexec/xscreensaver/maze
|
||||
@bin libexec/xscreensaver/maze3d
|
||||
@bin libexec/xscreensaver/memscroller
|
||||
@ -195,7 +193,7 @@ libexec/xscreensaver/ljlatest
|
||||
@bin libexec/xscreensaver/queens
|
||||
@bin libexec/xscreensaver/raverhoop
|
||||
@bin libexec/xscreensaver/razzledazzle
|
||||
@bin libexec/xscreensaver/rd-bomb
|
||||
@bin libexec/xscreensaver/rdbomb
|
||||
@bin libexec/xscreensaver/ripples
|
||||
@bin libexec/xscreensaver/rocks
|
||||
@bin libexec/xscreensaver/romanboy
|
||||
@ -220,6 +218,7 @@ libexec/xscreensaver/ljlatest
|
||||
@bin libexec/xscreensaver/spotlight
|
||||
@bin libexec/xscreensaver/sproingies
|
||||
@bin libexec/xscreensaver/squiral
|
||||
@bin libexec/xscreensaver/squirtorus
|
||||
@bin libexec/xscreensaver/stairs
|
||||
@bin libexec/xscreensaver/starfish
|
||||
@bin libexec/xscreensaver/starwars
|
||||
@ -257,15 +256,20 @@ libexec/xscreensaver/webcollage
|
||||
@bin libexec/xscreensaver/xlyap
|
||||
@bin libexec/xscreensaver/xmatrix
|
||||
@bin libexec/xscreensaver/xrayswarm
|
||||
@mode 4755
|
||||
@bin libexec/xscreensaver/xscreensaver-auth
|
||||
@mode
|
||||
@bin libexec/xscreensaver/xscreensaver-getimage
|
||||
libexec/xscreensaver/xscreensaver-getimage-file
|
||||
libexec/xscreensaver/xscreensaver-getimage-video
|
||||
@bin libexec/xscreensaver/xscreensaver-gfx
|
||||
@bin libexec/xscreensaver/xscreensaver-gl-visual
|
||||
libexec/xscreensaver/xscreensaver-text
|
||||
@bin libexec/xscreensaver/xspirograph
|
||||
@bin libexec/xscreensaver/zoom
|
||||
@man man/man1/xscreensaver-command.1
|
||||
@man man/man1/xscreensaver-demo.1
|
||||
@man man/man1/xscreensaver-getimage-file.1
|
||||
@man man/man1/xscreensaver-getimage-video.1
|
||||
@man man/man1/xscreensaver-getimage.1
|
||||
@man man/man1/xscreensaver-systemd.1
|
||||
@man man/man1/xscreensaver-text.1
|
||||
@man man/man1/xscreensaver-settings.1
|
||||
@man man/man1/xscreensaver.1
|
||||
@man man/man6/abstractile.6
|
||||
@man man/man6/anemone.6
|
||||
@ -280,6 +284,7 @@ libexec/xscreensaver/webcollage
|
||||
@man man/man6/atunnel.6
|
||||
@man man/man6/barcode.6
|
||||
@man man/man6/beats.6
|
||||
@man man/man6/binaryhorizon.6
|
||||
@man man/man6/binaryring.6
|
||||
@man man/man6/blaster.6
|
||||
@man man/man6/blinkbox.6
|
||||
@ -398,9 +403,10 @@ libexec/xscreensaver/webcollage
|
||||
@man man/man6/lament.6
|
||||
@man man/man6/lavalite.6
|
||||
@man man/man6/lcdscrub.6
|
||||
@man man/man6/ljlatest.6
|
||||
@man man/man6/lockward.6
|
||||
@man man/man6/loop.6
|
||||
@man man/man6/mapscroller.6
|
||||
@man man/man6/marbling.6
|
||||
@man man/man6/maze.6
|
||||
@man man/man6/maze3d.6
|
||||
@man man/man6/memscroller.6
|
||||
@ -442,7 +448,7 @@ libexec/xscreensaver/webcollage
|
||||
@man man/man6/queens.6
|
||||
@man man/man6/raverhoop.6
|
||||
@man man/man6/razzledazzle.6
|
||||
@man man/man6/rd-bomb.6
|
||||
@man man/man6/rdbomb.6
|
||||
@man man/man6/ripples.6
|
||||
@man man/man6/rocks.6
|
||||
@man man/man6/romanboy.6
|
||||
@ -467,6 +473,7 @@ libexec/xscreensaver/webcollage
|
||||
@man man/man6/spotlight.6
|
||||
@man man/man6/sproingies.6
|
||||
@man man/man6/squiral.6
|
||||
@man man/man6/squirtorus.6
|
||||
@man man/man6/stairs.6
|
||||
@man man/man6/starfish.6
|
||||
@man man/man6/starwars.6
|
||||
@ -503,9 +510,16 @@ libexec/xscreensaver/webcollage
|
||||
@man man/man6/xlyap.6
|
||||
@man man/man6/xmatrix.6
|
||||
@man man/man6/xrayswarm.6
|
||||
@man man/man6/xscreensaver-auth.6
|
||||
@man man/man6/xscreensaver-circuit.6
|
||||
@man man/man6/xscreensaver-deco.6
|
||||
@man man/man6/xscreensaver-gl-helper.6
|
||||
@man man/man6/xscreensaver-getimage-file.6
|
||||
@man man/man6/xscreensaver-getimage-video.6
|
||||
@man man/man6/xscreensaver-getimage.6
|
||||
@man man/man6/xscreensaver-gfx.6
|
||||
@man man/man6/xscreensaver-gl-visual.6
|
||||
@man man/man6/xscreensaver-systemd.6
|
||||
@man man/man6/xscreensaver-text.6
|
||||
@man man/man6/xspirograph.6
|
||||
@man man/man6/zoom.6
|
||||
share/applications/screensavers/
|
||||
@ -523,6 +537,7 @@ share/applications/screensavers/attraction.desktop
|
||||
share/applications/screensavers/atunnel.desktop
|
||||
share/applications/screensavers/barcode.desktop
|
||||
share/applications/screensavers/beats.desktop
|
||||
share/applications/screensavers/binaryhorizon.desktop
|
||||
share/applications/screensavers/binaryring.desktop
|
||||
share/applications/screensavers/blaster.desktop
|
||||
share/applications/screensavers/blinkbox.desktop
|
||||
@ -661,6 +676,8 @@ share/applications/screensavers/lmorph.desktop
|
||||
share/applications/screensavers/lockward.desktop
|
||||
share/applications/screensavers/loop.desktop
|
||||
share/applications/screensavers/m6502.desktop
|
||||
share/applications/screensavers/mapscroller.desktop
|
||||
share/applications/screensavers/marbling.desktop
|
||||
share/applications/screensavers/maze.desktop
|
||||
share/applications/screensavers/maze3d.desktop
|
||||
share/applications/screensavers/memscroller.desktop
|
||||
@ -704,7 +721,6 @@ share/applications/screensavers/quasicrystal.desktop
|
||||
share/applications/screensavers/queens.desktop
|
||||
share/applications/screensavers/raverhoop.desktop
|
||||
share/applications/screensavers/razzledazzle.desktop
|
||||
share/applications/screensavers/rd-bomb.desktop
|
||||
share/applications/screensavers/rdbomb.desktop
|
||||
share/applications/screensavers/ripples.desktop
|
||||
share/applications/screensavers/rocks.desktop
|
||||
@ -733,6 +749,7 @@ share/applications/screensavers/splodesic.desktop
|
||||
share/applications/screensavers/spotlight.desktop
|
||||
share/applications/screensavers/sproingies.desktop
|
||||
share/applications/screensavers/squiral.desktop
|
||||
share/applications/screensavers/squirtorus.desktop
|
||||
share/applications/screensavers/stairs.desktop
|
||||
share/applications/screensavers/starfish.desktop
|
||||
share/applications/screensavers/starwars.desktop
|
||||
@ -777,28 +794,13 @@ share/applications/screensavers/xrayswarm.desktop
|
||||
share/applications/screensavers/xspirograph.desktop
|
||||
share/applications/screensavers/zoom.desktop
|
||||
share/applications/xscreensaver-properties.desktop
|
||||
share/locale/da/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/de/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/es/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/et/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/fi/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/fr/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/hu/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/it/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/ja/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/ko/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/nb/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/nl/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/pl/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/pt/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/pt_BR/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/ru/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/sk/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/sv/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/vi/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/wa/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/zh_CN/LC_MESSAGES/xscreensaver.mo
|
||||
share/locale/zh_TW/LC_MESSAGES/xscreensaver.mo
|
||||
share/fonts/
|
||||
@fontdir share/fonts/xscreensaver/
|
||||
share/fonts/xscreensaver/OCRAStd.otf
|
||||
share/fonts/xscreensaver/SpecialElite.ttf
|
||||
share/fonts/xscreensaver/clacon.ttf
|
||||
share/fonts/xscreensaver/gallant12x22.ttf
|
||||
share/fonts/xscreensaver/luximr.ttf
|
||||
share/pixmaps/
|
||||
share/pixmaps/xscreensaver.xpm
|
||||
share/xscreensaver/
|
||||
@ -817,6 +819,7 @@ share/xscreensaver/config/attraction.xml
|
||||
share/xscreensaver/config/atunnel.xml
|
||||
share/xscreensaver/config/barcode.xml
|
||||
share/xscreensaver/config/beats.xml
|
||||
share/xscreensaver/config/binaryhorizon.xml
|
||||
share/xscreensaver/config/binaryring.xml
|
||||
share/xscreensaver/config/blaster.xml
|
||||
share/xscreensaver/config/blinkbox.xml
|
||||
@ -940,6 +943,8 @@ share/xscreensaver/config/lcdscrub.xml
|
||||
share/xscreensaver/config/lockward.xml
|
||||
share/xscreensaver/config/loop.xml
|
||||
share/xscreensaver/config/m6502.xml
|
||||
share/xscreensaver/config/mapscroller.xml
|
||||
share/xscreensaver/config/marbling.xml
|
||||
share/xscreensaver/config/maze.xml
|
||||
share/xscreensaver/config/maze3d.xml
|
||||
share/xscreensaver/config/memscroller.xml
|
||||
@ -982,7 +987,7 @@ share/xscreensaver/config/quasicrystal.xml
|
||||
share/xscreensaver/config/queens.xml
|
||||
share/xscreensaver/config/raverhoop.xml
|
||||
share/xscreensaver/config/razzledazzle.xml
|
||||
share/xscreensaver/config/rd-bomb.xml
|
||||
share/xscreensaver/config/rdbomb.xml
|
||||
share/xscreensaver/config/ripples.xml
|
||||
share/xscreensaver/config/rocks.xml
|
||||
share/xscreensaver/config/romanboy.xml
|
||||
@ -1007,6 +1012,7 @@ share/xscreensaver/config/splodesic.xml
|
||||
share/xscreensaver/config/spotlight.xml
|
||||
share/xscreensaver/config/sproingies.xml
|
||||
share/xscreensaver/config/squiral.xml
|
||||
share/xscreensaver/config/squirtorus.xml
|
||||
share/xscreensaver/config/stairs.xml
|
||||
share/xscreensaver/config/starfish.xml
|
||||
share/xscreensaver/config/starwars.xml
|
||||
@ -1052,5 +1058,5 @@ share/xscreensaver/ui/screensaver-diagnostic.png
|
||||
share/xscreensaver/ui/screensaver-locking.png
|
||||
share/xscreensaver/ui/screensaver-power.png
|
||||
share/xscreensaver/ui/screensaver-snap.png
|
||||
share/xscreensaver/ui/xscreensaver-demo.ui
|
||||
share/xscreensaver/ui/xscreensaver.ui
|
||||
@tag update-desktop-database
|
||||
|
Loading…
Reference in New Issue
Block a user