From c89a37da755fc8aa59772f6be56b695999646df2 Mon Sep 17 00:00:00 2001 From: Daniel Date: Mon, 26 Aug 2024 20:17:23 +0200 Subject: [PATCH] security/kc: add YUBIKEY option Remove pcre support. Add TEST_DEPENDS and use bash instead of sh in tests. Shorten pkg-message. Switch to DISTVERSION. Pet portlint, portfmt. PR: 277801 Approved by: submitter is maintainer --- security/kc/Makefile | 71 ++++++++++++++++++++++------------------- security/kc/pkg-message | 31 ++---------------- 2 files changed, 41 insertions(+), 61 deletions(-) diff --git a/security/kc/Makefile b/security/kc/Makefile index 0f963080cf83..a9c101e171c2 100644 --- a/security/kc/Makefile +++ b/security/kc/Makefile @@ -1,47 +1,54 @@ -PORTNAME= kc -PORTVERSION= 2.5.3 -PORTREVISION= 1 -CATEGORIES= security +PORTNAME= kc +DISTVERSION= 2.5.3 +PORTREVISION= 2 +CATEGORIES= security -MAINTAINER= leva@ecentrum.hu -COMMENT= Console based password storing application -WWW= https://github.com/levaidaniel/kc +MAINTAINER= leva@ecentrum.hu +COMMENT= Console based password storing application +WWW= https://github.com/levaidaniel/kc -LICENSE= BSD2CLAUSE -LICENSE_FILE= ${WRKSRC}/LICENSE +LICENSE= BSD2CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE -LIB_DEPENDS= libxml2.so:textproc/libxml2 +LIB_DEPENDS= libxml2.so:textproc/libxml2 +TEST_DEPENDS= bash:shells/bash -CONFLICTS= kc24 +USES= ncurses pkgconfig ssl uidfix +USE_GITHUB= yes +GH_ACCOUNT= levaidaniel -OPTIONS_DEFINE= PCRE SCRYPT -OPTIONS_DEFAULT= PCRE SCRYPT LIBEDIT -OPTIONS_RADIO= CLI -OPTIONS_RADIO_CLI= LIBEDIT READLINE +MAKE_ARGS= BINDIR="${PREFIX}/bin" \ + MANDIR="${PREFIX}/share/man/man" +MAKE_ENV= BUNDLED_BCRYPT=y +TEST_ENV= SH=${PREFIX}/bin/bash +TEST_TARGET= test -SCRYPT_DESC= Scrypt KDF support (needs libscrypt) +CONFLICTS= kc24 + +PLIST_FILES= bin/kc share/doc/kc/Changelog.md share/man/man1/kc.1.gz + +OPTIONS_DEFINE= SCRYPT YUBIKEY +OPTIONS_DEFAULT= LIBEDIT SCRYPT +OPTIONS_SINGLE= CLI +OPTIONS_SINGLE_CLI= LIBEDIT READLINE + +SCRYPT_DESC= Scrypt KDF support (needs libscrypt) +YUBIKEY_DESC= YubiKey support (needs libyubikey and ykpers) -PCRE_LIB_DEPENDS= libpcre.so:devel/pcre -PCRE_MAKE_ENV+= HAVE_PCRE=yes -SCRYPT_LIB_DEPENDS= libscrypt.so:security/libscrypt -SCRYPT_MAKE_ENV+= HAVE_LIBSCRYPT=1 LIBEDIT_USES= libedit -LIBEDIT_MAKE_ENV+= EDITLINE=y +LIBEDIT_MAKE_ENV= EDITLINE=y READLINE_USES= readline -READLINE_MAKE_ENV+= READLINE=y - -USES+= pkgconfig ncurses ssl uidfix -USE_GITHUB= yes -GH_ACCOUNT= levaidaniel - -PLIST_FILES= bin/kc share/doc/kc/Changelog.md share/man/man1/kc.1.gz - -MAKE_ARGS= BINDIR="${PREFIX}/bin" \ - MANDIR="${PREFIX}/share/man/man" -MAKE_ENV+= BUNDLED_BCRYPT=y +READLINE_MAKE_ENV= READLINE=y +SCRYPT_LIB_DEPENDS= libscrypt.so:security/libscrypt +SCRYPT_MAKE_ENV= HAVE_LIBSCRYPT=1 +YUBIKEY_LIB_DEPENDS= libykpers-1.so:security/ykpers \ + libyubikey.so:security/libyubikey +YUBIKEY_MAKE_ENV+= CFLAGS=-I${PREFIX}/include \ + HAVE_YUBIKEY=y post-patch: @${REINPLACE_CMD} -e 's|-lncursesw|${NCURSESLIBS}|' ${WRKSRC}/Makefile + @${REINPLACE_CMD} -e 's|^#!/bin/sh|#!${PREFIX}/bin/bash|' ${WRKSRC}/regress/run_tests.sh post-install: @${MKDIR} ${STAGEDIR}${DOCSDIR} diff --git a/security/kc/pkg-message b/security/kc/pkg-message index c08487d3e962..e5f800a9cb5c 100644 --- a/security/kc/pkg-message +++ b/security/kc/pkg-message @@ -1,36 +1,9 @@ [ { type: install message: < import -o -R 5000 -k passwords.kcd -Reading database... -Opening 'passwords.kcd' -Password: -Decrypting... -Checking database... -Counting keys and keychains... -Import finished. - +For YubiKey support, the user needs to have r/w access to the USB device under /dev/usb. EOM } ]