On Thu, Oct 31, 2019 at 09:42:49PM +0000, Stuart Henderson wrote:
> On 2019/10/31 21:09, Klemens Nanni wrote:
> > I know the usual way for Python libs is to provide flavours, but since
> > this port depends on the unflavoured security/pcsc-lite which depends on
> > Python 3 itself, this port's py2 flavour will also install Python 3.
> 
> Additionally 1) it's really billed as just the tool rather than the python
> module, and 2) the flavour setup was wrong for multi-version anyway, it would
> have needed to install the ykman script under a different filename for one of
> the versions, and use a py- prefix.
> 
> > Point being: Python 3's going to be there anyway, so let's drop the
> > Python 2 flavour - it ought to be deprecated anyway.
> 
> Yes I agree. Diff below does that, fixes some whitespace, sorts RUN_DEPENDS,
> moves ykpers to LIB_DEPENDS+WANTLIB (it's not just a build dep, it's also
> dlopen'd at runtime) and adds a bit more to DESCR from upstream's page.
> 
> Untested, as kn@ says it also needs pyscard.
> 
> diff --git Makefile Makefile
> index 9199104..d068663 100644
> --- Makefile
> +++ Makefile
> @@ -1,29 +1,32 @@
>  # $OpenBSD: Makefile.template,v 1.85 2019/09/09 19:19:05 kmos Exp $
>  
> -COMMENT =    library and command line tool for configuring a YubiKey
> +COMMENT =    library and CLI tool (ykman) for configuring a YubiKey
>  
>  MODPY_EGG_VERSION =  3.1.0
>  
>  DISTNAME =   yubikey-manager-${MODPY_EGG_VERSION}
> -YK_PROJECT =         yubikey-manager
> +YK_PROJECT = yubikey-manager
>  
>  CATEGORIES = sysutils
>  
> -FLAVORS =    python3
> -FLAVOR ?=
> +MODULES =    lang/python
> +MODPY_VERSION =      ${MODPY_DEFAULT_VERSION_3}
>  
>  MODPY_SETUPTOOLS =   Yes
> -MODULES =            lang/python
>  
> -BUILD_DEPENDS =      devel/swig \
> -             security/yubico/yubikey-personalization
> -RUN_DEPENDS =        security/py-fido2${MODPY_FLAVOR} \
> -             security/py-openssl${MODPY_FLAVOR} \
> -             devel/py-click${MODPY_FLAVOR} \
> -             devel/pyusb${MODPY_FLAVOR} \
> +WANTLIB += ykpers-1 # dlopen()'d
> +
> +BUILD_DEPENDS =      devel/swig
> +LIB_DEPENDS =        security/yubico/yubikey-personalization
> +RUN_DEPENDS =        devel/py-click${MODPY_FLAVOR} \
>               devel/py-six${MODPY_FLAVOR} \
> +             devel/pyusb${MODPY_FLAVOR} \
> +             security/pcsc-lite \
>               security/py-cryptography${MODPY_FLAVOR} \
> -             security/pcsc-lite
> +             security/py-fido2${MODPY_FLAVOR} \
> +             security/py-openssl${MODPY_FLAVOR}
> +# XXX pyscard
> +
>  TEST_DEPENDS =       devel/py-mock${MODPY_FLAVOR}
>  
>  .include <bsd.port.mk>
> diff --git pkg/DESCR pkg/DESCR
> index 851a710..892a044 100644
> --- pkg/DESCR
> +++ pkg/DESCR
> @@ -1 +1,5 @@
> -Python library and command line tool for configuring a YubiKey
> +The YubiKey Manager can configure FIDO2, OTP and PIV functionality on
> +a YubiKey. It works with any currently supported YubiKey. You can also
> +use the tool to check the type and firmware of a YubiKey. In addition,
> +you can use the extended settings to specify other features, such as to
> +configure 3-second long touch.
> 
Incorporated changes and includes the man page from the repo. The man
page isn't really any different from the -h option though...

Attachment: yubikey-manager.tgz
Description: Binary data



Reply via email to