From 5673aff4cc3f17c45635b181ae78fe00c107fdc3 Mon Sep 17 00:00:00 2001 From: Ben Woods Date: Sun, 22 Aug 2021 10:08:41 +0800 Subject: [PATCH] x11/slick-greeter: Fix dependencies and prefix issues Summary: - Add dependencies harfbuzz, numlockx, python, dconf, pygobject3 - Fix slick-greeter-check-hidpi and slick-greeter-set-keyboard-layout commands by adding python dependency, fixing shebang paths, and installing under correct ${PREFIX} location - Patch numerous other /usr and /etc prefix issues - Add more detail to pkg-descr to support users choosing a greeter Differential Revision: https://reviews.freebsd.org/D31631 --- x11/slick-greeter/Makefile | 35 +++++++++++++------ .../files/patch-src_settings.vala | 11 ------ x11/slick-greeter/pkg-descr | 16 +++++++++ x11/slick-greeter/pkg-plist | 4 +-- 4 files changed, 42 insertions(+), 24 deletions(-) delete mode 100644 x11/slick-greeter/files/patch-src_settings.vala diff --git a/x11/slick-greeter/Makefile b/x11/slick-greeter/Makefile index 368dcf26c8024..f3f33ebb97cd8 100644 --- a/x11/slick-greeter/Makefile +++ b/x11/slick-greeter/Makefile @@ -3,6 +3,7 @@ PORTNAME= slick-greeter PORTVERSION= 1.5.3 CATEGORIES= x11 +PORTREVISION= 1 MAINTAINER= ericbsd@FreeBSD.org COMMENT= Slick-looking LightDM greeter @@ -10,14 +11,16 @@ COMMENT= Slick-looking LightDM greeter LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING -LIB_DEPENDS= liblightdm-gobject-1.so:x11/lightdm \ - libcanberra-gtk3.so:audio/libcanberra-gtk3 \ +LIB_DEPENDS= libcanberra-gtk3.so:audio/libcanberra-gtk3 \ libcanberra.so:audio/libcanberra \ - libfreetype.so:print/freetype2 + libfreetype.so:print/freetype2 \ + libharfbuzz.so:print/harfbuzz \ + liblightdm-gobject-1.so:x11/lightdm BUILD_DEPENDS= valac:lang/vala +RUN_DEPENDS= numlockx>=0:x11/numlockx -USES= autoreconf gettext gmake gnome localbase pkgconfig xorg -USE_GNOME= cairo gdkpixbuf2 gtk30 intltool +USES= autoreconf gettext gmake gnome localbase pkgconfig python:run shebangfix xorg +USE_GNOME= cairo dconf gdkpixbuf2 gtk30 intltool pygobject3 USE_XORG= pixman x11 xext @@ -26,15 +29,25 @@ GH_ACCOUNT= linuxmint GNU_CONFIGURE= yes INSTALLS_ICONS= yes +SHEBANG_FILES= files/usr/bin/slick-greeter-check-hidpi \ + files/usr/bin/slick-greeter-set-keyboard-layout \ + makepot +bash_OLD_CMD= /usr/bin/bash +bash_CMD= /bin/sh GLIB_SCHEMAS= x.dm.slick-greeter.gschema.xml post-patch: - @${REINPLACE_CMD} -e "s#/usr/share#${PREFIX}/share#g" \ - ${WRKSRC}/src/session-list.vala - -post-install: - @${MV} ${STAGEDIR}/usr/share/${PORTNAME}/badges ${STAGEDIR}${DATADIR} - @${RMDIR} ${STAGEDIR}/usr/share/${PORTNAME}/ + @${REINPLACE_CMD} -e 's|"/usr|"${PREFIX}|g' \ + -e 's|"/etc|"${PREFIX}/etc|g' \ + ${WRKSRC}/files/usr/bin/slick-greeter-set-keyboard-layout \ + ${WRKSRC}/src/session-list.vala \ + ${WRKSRC}/src/settings.vala \ + ${WRKSRC}/src/slick-greeter.vala \ + ${WRKSRC}/src/user-list.vala + @${RM} ${WRKSRC}/files/usr/bin/slick-greeter-set-keyboard-layout.bak + @${MKDIR} ${WRKSRC}/files/${PREFIX} + @${MV} ${WRKSRC}/files/usr/bin ${WRKSRC}/files/${PREFIX}/bin + @${MV} ${WRKSRC}/files/usr/share ${WRKSRC}/files/${PREFIX}/share .include diff --git a/x11/slick-greeter/files/patch-src_settings.vala b/x11/slick-greeter/files/patch-src_settings.vala deleted file mode 100644 index 29d73c76a36ce..0000000000000 --- a/x11/slick-greeter/files/patch-src_settings.vala +++ /dev/null @@ -1,11 +0,0 @@ ---- src/settings.vala.orig 2019-08-21 08:46:54.280564000 -0300 -+++ src/settings.vala 2019-08-21 08:47:45.224462000 -0300 -@@ -107,7 +107,7 @@ - public static void apply_conf_settings () - { - try { -- var path = "/etc/lightdm/slick-greeter.conf"; -+ var path = "/usr/local/etc/lightdm/slick-greeter.conf"; - var gsettings = new Settings (SCHEMA); - var keyfile = new KeyFile (); - diff --git a/x11/slick-greeter/pkg-descr b/x11/slick-greeter/pkg-descr index 286fb07b06395..688bb67086021 100644 --- a/x11/slick-greeter/pkg-descr +++ b/x11/slick-greeter/pkg-descr @@ -1,3 +1,19 @@ A slick-looking LightDM greeter. +Features: +- Slick-Greeter is cross-distribution and should work pretty much anywhere. +- All panel applets are embedded. No external indicators are launched or loaded + by the greeter. +- No settings daemon are launched or loaded by the greeter. +- This greeter supports HiDPI. +- Sessions are validated. If a default/chosen session isn't present on the + system, the greeter scans for known sessions in /usr/share/xsessions and + replaces the invalid session choice with a valid session. +- You can take a screenshot by pressing PrintScrn. The screenshot is saved in + /var/lib/lightdm/Screenshot.png. +- The default configuration is stored in dconf under the schema + x.dm.slick-greeter. +- Users can create and modify /etc/lightdm/slick-greeter.conf, settings in this + files take priority and overwrite dconf settings. + WWW: https://github.com/linuxmint/slick-greeter diff --git a/x11/slick-greeter/pkg-plist b/x11/slick-greeter/pkg-plist index 956426cf73805..23d5adbbd7276 100644 --- a/x11/slick-greeter/pkg-plist +++ b/x11/slick-greeter/pkg-plist @@ -1,5 +1,5 @@ -/usr/bin/slick-greeter-check-hidpi -/usr/bin/slick-greeter-set-keyboard-layout +bin/slick-greeter-check-hidpi +bin/slick-greeter-set-keyboard-layout man/man1/slick-greeter-check-hidpi.1.gz man/man1/slick-greeter-set-keyboard-layout.1.gz man/man8/slick-greeter.8.gz