From nobody Mon Feb 06 19:26:04 2023 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4P9bpN3V3Lz3n5Pg; Mon, 6 Feb 2023 19:26:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4P9bpN34vpz3lNL; Mon, 6 Feb 2023 19:26:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1675711564; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=66dogxbDq/m1A1819WVdmqOSX605/GZYn1GdOHglBxc=; b=ZWjhOdQioB3qMyEL2D4VsV867I5V23bSJrAGhUKlpRkgOr7R03fYlfaHvgEy0IVV7BRUh0 A0Kf62SxFi2Ms81KAxnj1OxrA0IHT06ysIsBwLwlNVN4Kf1tTymm1jgvSOrdmpCXAvoMxC TRB1z3iFDx3y53sLN9B2s+iGgAcWvl7zoAKzOGzJEWXQE1ts37sQuF4aAEWJJmhhjCkLkP hYdahaZeuzThX9O2tSNIT5GQIcsYhMWgS3s6e5TSh/f/ML1+dv3Cc33RmbZepMNG7ZvpH/ cjk9HpgKKwm8gG1Slta29YGcFv6bM/MFUhgSMPS4YoBVjJimcF6lf2IOHGl/LQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1675711564; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=66dogxbDq/m1A1819WVdmqOSX605/GZYn1GdOHglBxc=; b=Ez/kuQKt8upPj0HGDyM0kN0WZImhbIMKaX7k6s4hP28cY5G8mtsS6GzoO9mnVIMn57Um+E Z/+t6ku/FpGxP0k6hyIzizpkaN5tl0aY2mqFu0aOI20ddyNYbxz9kZSJsBalMKLwd4y8Dt 2o9o/vUCwu26GQb6rVanpVqvxxrF5HegOu0XqlV7yFwRHySY5Gjy5KgzDN2E1/zO4i+FuA FEQTlQWdG/iEqxkIBVP1/Czy/o3a0DBUG+hRW7NFj23F1RLVMVKVWLOWtoDUg35oZQd1YM 5Y9NypbX4wA2kahogAxnQYdV0FoEKmnzvXA/0laXTqNDvjsuq119+MDq2b3JMA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1675711564; a=rsa-sha256; cv=none; b=JjGMuS6s1YIIEF+nY7zcgzJCVf730o1CafK4tweUpoLF8UdeaqITPqXrQ3Fr2GIAIzK9wJ HATeztN6jrfa0kqlL6jlnKUDRUmASDn5hSVqszrWf1+yOeScmRj3Eus8y1GoPg8QtBh7Z/ ybzbt0qR9qSBG5E50XBDwdjJh2XvZN0ME6CiecVAGVr1uYkD/tyVuQSRTA6uxF2RsS1hlS 4skwto0YHxYSINxTHZs9+Xvkw9kwS1cKmDwfSrrDX3g6pgYtIzl0BrCGZiLb6C2USw0ZC8 sySTZOgiXO2+g5pZahRw1/BahaRllhf+2fwWdznJkIsMPSyI8enUP+JrJbYrFg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4P9bpN2BRqzms6; Mon, 6 Feb 2023 19:26:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 316JQ4ZC006022; Mon, 6 Feb 2023 19:26:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 316JQ4s7006021; Mon, 6 Feb 2023 19:26:04 GMT (envelope-from git) Date: Mon, 6 Feb 2023 19:26:04 GMT Message-Id: <202302061926.316JQ4s7006021@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Jan Beich Subject: git: 16ce45fc2070 - main - x11/waylock: add new port List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-main@freebsd.org X-BeenThere: dev-commits-ports-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jbeich X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 16ce45fc2070b7333d7c4f7d0040c14426f37748 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jbeich: URL: https://cgit.FreeBSD.org/ports/commit/?id=16ce45fc2070b7333d7c4f7d0040c14426f37748 commit 16ce45fc2070b7333d7c4f7d0040c14426f37748 Author: Jan Beich AuthorDate: 2023-02-06 19:04:21 +0000 Commit: Jan Beich CommitDate: 2023-02-06 19:25:58 +0000 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 PR: 269320 Tested by: Oleh Vinichenko --- x11/Makefile | 1 + x11/waylock/Makefile | 54 +++++++++++++++++++++++++++++++++++ x11/waylock/distinfo | 7 +++++ x11/waylock/files/patch-pam.d_waylock | 11 +++++++ x11/waylock/pkg-descr | 5 ++++ 5 files changed, 78 insertions(+) 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..055a9769ae0e --- /dev/null +++ b/x11/waylock/Makefile @@ -0,0 +1,54 @@ +PORTNAME= waylock +DISTVERSIONPREFIX= v +DISTVERSION= 0.6.2 +CATEGORIES= x11 wayland + +MAINTAINER= jbeich@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 +RUN_DEPENDS= unix-selfauth-helper>0:security/unix-selfauth-helper + +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 + +post-patch: +# Respect LOCALBASE for unix-selfauth-helper + @${REINPLACE_CMD} -e 's,/usr/local,${LOCALBASE},' \ + ${WRKSRC}/pam.d/${PORTNAME} + +do-build: + @(cd ${WRKSRC} && ${MAKE_ENV} zig build ${CONFIGURE_ARGS}) + +do-test: + @(cd ${WRKSRC} && ${TEST_ENV} zig build test ${CONFIGURE_ARGS}) + +.include diff --git a/x11/waylock/distinfo b/x11/waylock/distinfo new file mode 100644 index 000000000000..22fd6660b452 --- /dev/null +++ b/x11/waylock/distinfo @@ -0,0 +1,7 @@ +TIMESTAMP = 1675710261 +SHA256 (ifreund-waylock-v0.6.2_GH0.tar.gz) = b39e62241be0607339a531c0572805f7545f05292addd4708f99e836a6b14f59 +SIZE (ifreund-waylock-v0.6.2_GH0.tar.gz) = 18391 +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 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/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.