diff --git a/x11/hyprlock/Makefile b/x11/hyprlock/Makefile index cc9da13e19d6..0b652600823b 100644 --- a/x11/hyprlock/Makefile +++ b/x11/hyprlock/Makefile @@ -1,44 +1,48 @@ PORTNAME= hyprlock DISTVERSIONPREFIX= v -DISTVERSION= 0.5.0 +DISTVERSION= 0.6.0 CATEGORIES= x11 wayland +PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ +PATCHFILES+= d12b4a7fbaf5.patch:-p1 # https://github.com/hyprwm/hyprlock/pull/589 + MAINTAINER= jbeich@FreeBSD.org COMMENT= Hyprland's GPU-accelerated screen locking utility #' WWW= https://github.com/hyprwm/hyprlock LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= wayland-protocols>0:graphics/wayland-protocols LIB_DEPENDS= libhyprlang.so:devel/hyprlang \ libhyprutils.so:devel/hyprutils \ libsdbus-c++.so:devel/sdbus-cpp \ + libhyprgraphics.so:graphics/hyprgraphics \ libdrm.so:graphics/libdrm \ libwayland-client.so:graphics/wayland \ libwebp.so:graphics/webp \ libxkbcommon.so:x11/libxkbcommon RUN_DEPENDS= unix-selfauth-helper>0:security/unix-selfauth-helper USES= cmake compiler:c++11-lib gl gnome jpeg pkgconfig USE_GITHUB= yes USE_GL= egl gbm USE_GNOME= cairo pango GH_ACCOUNT= hyprwm LDFLAGS+= -Wl,--as-needed # pango deps PLIST_FILES= bin/${PORTNAME} \ etc/pam.d/${PORTNAME} \ share/hypr/${PORTNAME}.conf # https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=282377 .if exists(/usr/lib/libc++.so) LIB_DEPENDS+= libdate-tz.so:devel/date USES+= localbase:ldflags post-patch: libcxx-post-patch libcxx-post-patch: @${REINPLACE_CMD} '/_LIBCPP_VERSION/s/$$/ || defined(_LIBCPP_HAS_NO_TIME_ZONE_DATABASE)/' \ ${WRKSRC}/src/renderer/widgets/IWidget.cpp .endif .include diff --git a/x11/hyprlock/distinfo b/x11/hyprlock/distinfo index d261e70271f4..b57009ed00a9 100644 --- a/x11/hyprlock/distinfo +++ b/x11/hyprlock/distinfo @@ -1,3 +1,5 @@ -TIMESTAMP = 1729555766 -SHA256 (hyprwm-hyprlock-v0.5.0_GH0.tar.gz) = 4f8a0199de205ad21a4e3da88c0196514a0ba3c6162e44f93e7cfb96371daf99 -SIZE (hyprwm-hyprlock-v0.5.0_GH0.tar.gz) = 67016 +TIMESTAMP = 1734534184 +SHA256 (hyprwm-hyprlock-v0.6.0_GH0.tar.gz) = e1c773947566ec0cc3c836db523bb3ff7efcf07b9e8ce453864ca9bf7c033a1f +SIZE (hyprwm-hyprlock-v0.6.0_GH0.tar.gz) = 71344 +SHA256 (d12b4a7fbaf5.patch) = 627cbca1594da61c2e117a99e016e3863ba98449c250d88c6b8f093707d97181 +SIZE (d12b4a7fbaf5.patch) = 802 diff --git a/x11/hyprlock/files/patch-pam_hyprlock b/x11/hyprlock/files/patch-pam_hyprlock index 864ba47ea5b2..dea75ca52d17 100644 --- a/x11/hyprlock/files/patch-pam_hyprlock +++ b/x11/hyprlock/files/patch-pam_hyprlock @@ -1,30 +1,30 @@ "login" and "su" have "auth sufficient pam_self.so" but a screen locker is supposed to ask for password regardless. pam_unix(8) requires root priveleges to access master.passwd(5), so try authenticating via setuid helper first. --- pam/hyprlock.orig 2024-03-01 23:49:44 UTC +++ pam/hyprlock @@ -1,5 +1,4 @@ -# PAM configuration file for hyprlock -# the 'login' configuration file (see /etc/pam.d/login) +# PAM configuration for hyprlock. Only uses auth facilities. -auth include login +auth include unix-selfauth ---- src/core/Auth.cpp.orig 2024-07-05 20:58:45 UTC -+++ src/core/Auth.cpp -@@ -56,11 +56,6 @@ CAuth::CAuth() { - CAuth::CAuth() { - static auto* const PPAMMODULE = (Hyprlang::STRING*)(g_pConfigManager->getValuePtr("general:pam_module")); +--- src/auth/Pam.cpp.orig 2024-12-18 15:03:04 UTC ++++ src/auth/Pam.cpp +@@ -64,11 +64,6 @@ CPam::CPam() { + static auto* const PPAMMODULE = (Hyprlang::STRING*)(g_pConfigManager->getValuePtr("auth:pam:module")); m_sPamModule = *PPAMMODULE; -- + - if (!std::filesystem::exists(std::filesystem::path("/etc/pam.d/") / m_sPamModule)) { - Debug::log(ERR, "Pam module \"/etc/pam.d/{}\" does not exist! Falling back to \"/etc/pam.d/su\"", m_sPamModule); - m_sPamModule = "su"; - } +- + m_sConversationState.waitForInput = [this]() { this->waitForInput(); }; } - static void passwordCheckTimerCallback(std::shared_ptr self, void* data) {