FreeBSD Bugzilla – Attachment 239901 Details for
Bug 269320
[new port] x11/waylock
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
v0 (apply via "git am")
bug269320.diff (text/plain), 6.98 KB, created by
Jan Beich
on 2023-02-04 14:43:31 UTC
(
hide
)
Description:
v0 (apply via "git am")
Filename:
MIME Type:
Creator:
Jan Beich
Created:
2023-02-04 14:43:31 UTC
Size:
6.98 KB
patch
obsolete
>From 1dda5d37334179cc888edd52b8abe3dcbc24c758 Mon Sep 17 00:00:00 2001 >From: Jan Beich <jbeich@FreeBSD.org> >Date: Sat, 4 Feb 2023 14:32:29 +0000 >Subject: [PATCH] x11/waylock: add new port > >Waylock is a small screenlocker for Wayland compositors implementing >ext-session-lock-v1. The ext-session-lock-v1 protocol is significantly >more robust than previous client-side Wayland screen locking approaches. >Importantly, the screenlocker crashing does not cause the session to be >unlocked. > >https://github.com/ifreund/waylock >--- > x11/Makefile | 1 + > x11/waylock/Makefile | 48 +++++++++++++++++++++++ > x11/waylock/distinfo | 9 +++++ > x11/waylock/files/patch-pam.d_waylock | 11 ++++++ > x11/waylock/files/patch-zig-0.10 | 55 +++++++++++++++++++++++++++ > x11/waylock/pkg-descr | 5 +++ > 6 files changed, 129 insertions(+) > create mode 100644 x11/waylock/Makefile > create mode 100644 x11/waylock/distinfo > create mode 100644 x11/waylock/files/patch-pam.d_waylock > create mode 100644 x11/waylock/files/patch-zig-0.10 > create mode 100644 x11/waylock/pkg-descr > >diff --git a/x11/Makefile b/x11/Makefile >index 72debe1a0ad2..bfc64723b375 100644 >--- a/x11/Makefile >+++ b/x11/Makefile >@@ -407,6 +407,7 @@ > SUBDIR += way-displays > SUBDIR += waybar > SUBDIR += wayland-logout >+ SUBDIR += waylock > SUBDIR += wayout > SUBDIR += wbar > SUBDIR += wcm >diff --git a/x11/waylock/Makefile b/x11/waylock/Makefile >new file mode 100644 >index 000000000000..ce43be291924 >--- /dev/null >+++ b/x11/waylock/Makefile >@@ -0,0 +1,48 @@ >+PORTNAME= waylock >+DISTVERSIONPREFIX= v >+DISTVERSION= 0.6.0 >+CATEGORIES= x11 wayland >+ >+MAINTAINER= ports@FreeBSD.org >+COMMENT= Small screenlocker for Wayland compositors >+WWW= https://github.com/ifreund/waylock >+ >+LICENSE= ISCL >+LICENSE_FILE= ${WRKSRC}/LICENSE >+ >+BUILD_DEPENDS= wayland-protocols>0:graphics/wayland-protocols \ >+ zig>=0.10.0:lang/zig >+LIB_DEPENDS= libwayland-client.so:graphics/wayland \ >+ libxkbcommon.so:x11/libxkbcommon >+ >+USES= pkgconfig >+USE_GITHUB= yes >+GH_ACCOUNT= ifreund >+GH_TUPLE= ifreund:zig-wayland:ace6aee:zig_wayland/deps/zig-wayland \ >+ ifreund:zig-xkbcommon:bfd1f97:zig_xkbcommon/deps/zig-xkbcommon >+MAKE_ENV= DESTDIR="${STAGEDIR}" >+CONFIGURE_ARGS= --prefix "${PREFIX}" \ >+ ${WITH_DEBUG:D:U-Drelease-fast} \ >+ ${WITH_PIE:D-Dpie} \ >+ ${STRIP:C/.+/-Dstrip/} \ >+ -Dcpu=${CPUTYPE:Ubaseline} \ >+ --verbose >+NO_INSTALL= yes # strip(1) breaks runtime >+PLIST_FILES= bin/${PORTNAME} \ >+ etc/pam.d/${PORTNAME} >+ >+OPTIONS_DEFINE= MANPAGES >+OPTIONS_DEFAULT=MANPAGES >+ >+MANPAGES_BUILD_DEPENDS= scdoc:textproc/scdoc >+MANPAGES_CONFIGURE_ON= -Dman-pages=true >+MANPAGES_CONFIGURE_OFF= -Dman-pages=false >+MANPAGES_PLIST_FILES= share/man/man1/${PORTNAME}.1.gz >+ >+do-build: >+ @(cd ${WRKSRC} && ${MAKE_ENV} zig build ${CONFIGURE_ARGS}) >+ >+do-test: >+ @(cd ${WRKSRC} && ${TEST_ENV} zig build test ${CONFIGURE_ARGS}) >+ >+.include <bsd.port.mk> >diff --git a/x11/waylock/distinfo b/x11/waylock/distinfo >new file mode 100644 >index 000000000000..6880065ac29d >--- /dev/null >+++ b/x11/waylock/distinfo >@@ -0,0 +1,9 @@ >+TIMESTAMP = 1673204372 >+SHA256 (ifreund-waylock-v0.6.0_GH0.tar.gz) = 28bb2136712f175e19ba9cfde24e226c1ec982a9aa94a18c76cb48ceda499dbb >+SIZE (ifreund-waylock-v0.6.0_GH0.tar.gz) = 18258 >+SHA256 (ifreund-zig-wayland-ace6aee_GH0.tar.gz) = c6ebbf0d56db36a732d2e58deff090503b68928ceed538737de7cd4ea36681c6 >+SIZE (ifreund-zig-wayland-ace6aee_GH0.tar.gz) = 55916 >+SHA256 (ifreund-zig-xkbcommon-bfd1f97_GH0.tar.gz) = 0a5835a5eb216c1a59e20e59277270fc5ce5f440becadf6487965286ba4c1ce8 >+SIZE (ifreund-zig-xkbcommon-bfd1f97_GH0.tar.gz) = 20467 >+SHA256 (e8ba2a976fc5.patch) = 94824df6ff7a37852ad22f68a327eb38b0a2eb6493f82294bff11f5a36214432 >+SIZE (e8ba2a976fc5.patch) = 3071 >diff --git a/x11/waylock/files/patch-pam.d_waylock b/x11/waylock/files/patch-pam.d_waylock >new file mode 100644 >index 000000000000..ed32e2c01a3f >--- /dev/null >+++ b/x11/waylock/files/patch-pam.d_waylock >@@ -0,0 +1,11 @@ >+"system-auth" doesn't exist on non-Linux. >+ >+pam_unix(8) requires root priveleges to access master.passwd(5), >+so try authenticating via setuid helper first. >+ >+--- pam.d/waylock.orig 2023-01-08 18:59:32 UTC >++++ pam.d/waylock >+@@ -1 +1,2 @@ >+-auth include system-auth >++auth sufficient pam_exec.so return_prog_exit_status expose_authtok /usr/local/libexec/unix-selfauth-helper >++auth include system >diff --git a/x11/waylock/files/patch-zig-0.10 b/x11/waylock/files/patch-zig-0.10 >new file mode 100644 >index 000000000000..64d5dbbf2853 >--- /dev/null >+++ b/x11/waylock/files/patch-zig-0.10 >@@ -0,0 +1,55 @@ >+https://github.com/ifreund/waylock/commit/e8ba2a976fc5 >+ >+--- README.md.orig 2023-01-08 18:59:32 UTC >++++ README.md >+@@ -27,7 +27,7 @@ installed: >+ To compile waylock first ensure that you have the following dependencies >+ installed: >+ >+-- [zig](https://ziglang.org/download/) 0.9 >++- [zig](https://ziglang.org/download/) 0.10 >+ - wayland >+ - wayland-protocols >+ - xkbcommon >+--- build.zig.orig 2023-01-08 18:59:32 UTC >++++ build.zig >+@@ -92,7 +92,7 @@ pub fn build(b: *zbs.Builder) !void { >+ >+ waylock.addPackage(.{ >+ .name = "wayland", >+- .path = .{ .generated = &scanner.result }, >++ .source = .{ .generated = &scanner.result }, >+ }); >+ waylock.step.dependOn(&scanner.step); >+ waylock.addPackagePath("xkbcommon", "deps/zig-xkbcommon/src/xkbcommon.zig"); >+--- src/auth.zig.orig 2023-01-08 18:59:32 UTC >++++ src/auth.zig >+@@ -103,7 +103,7 @@ pub fn run(conn: Connection) noreturn { >+ >+ const end_result = pamh.end(setcred_result); >+ if (end_result != .success) { >+- log.err("PAM deinitialization failed: {s}", .{end_result}); >++ log.err("PAM deinitialization failed: {s}", .{end_result.description()}); >+ } >+ >+ os.exit(0); >+@@ -118,7 +118,7 @@ pub fn run(conn: Connection) noreturn { >+ if (auth_result == .abort) { >+ const end_result = pamh.end(auth_result); >+ if (end_result != .success) { >+- log.err("PAM deinitialization failed: {s}", .{end_result}); >++ log.err("PAM deinitialization failed: {s}", .{end_result.description()}); >+ } >+ os.exit(1); >+ } >+--- src/pam.zig.orig 2023-01-08 18:59:32 UTC >++++ src/pam.zig >+@@ -41,7 +41,7 @@ pub const Conv = extern struct { >+ }; >+ >+ pub const Conv = extern struct { >+- conv: fn ( >++ conv: *const fn ( >+ num_msg: c_int, >+ /// Note: This matches the Linux-PAM API, apparently Solaris PAM differs >+ /// in how the msg argument is used. >diff --git a/x11/waylock/pkg-descr b/x11/waylock/pkg-descr >new file mode 100644 >index 000000000000..1ac8f9906242 >--- /dev/null >+++ b/x11/waylock/pkg-descr >@@ -0,0 +1,5 @@ >+Waylock is a small screenlocker for Wayland compositors implementing >+ext-session-lock-v1. The ext-session-lock-v1 protocol is significantly >+more robust than previous client-side Wayland screen locking approaches. >+Importantly, the screenlocker crashing does not cause the session to be >+unlocked.
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 269320
:
239901
|
239902
|
239903
|
239955