1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-18 00:10:04 +00:00

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
This commit is contained in:
Daniel 2024-08-26 20:17:23 +02:00 committed by Zsolt Udvari
parent 3851e5c18b
commit c89a37da75
2 changed files with 41 additions and 61 deletions

View File

@ -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}

View File

@ -1,36 +1,9 @@
[
{ type: install
message: <<EOM
Please read ${PREFIX}/share/doc/kc/Changelog.md to see why you might not be able to open your database anymore.
Please read ${PREFIX}/share/doc/kc/Changelog.md to see why you might not be able to open your v2.4 database anymore.
Example:
Running v2.5, creating a new then importing a v2.4 database that was using the default settings (sha512 KDF, aes256 cipher, cbc mode):
$ kc
Creating 'default.kcd'
Using 'default.kcd' database.
New password (empty to cancel):
New password again (empty to cancel):
Initializing...
Database file: default.kcd (default.kcd)
XML structure size: 148 bytes
Security key(s): no
Password: yes
SSH agent: no
Password function: sha512 (100000 iterations)
Encryption: aes256, cbc
Read-only: no
Modified: yes
<default% > import -o -R 5000 -k passwords.kcd
Reading database...
Opening 'passwords.kcd'
Password:
Decrypting...
Checking database...
Counting keys and keychains...
Import finished.
<passwords% >
For YubiKey support, the user needs to have r/w access to the USB device under /dev/usb.
EOM
}
]