I thought I'd start a new thread after @rvp encouraged me to give this a go.
rvp ueberzug is now in FreeBSD ports.
If you ever decide to add it to NetBSD, please use the FreeBSD patches to the python files instead of what I posted above. They're simpler and don't need a mounted /proc filesystem.
Mate, I may need this explained to me like a newbie. While I managed to patch it last time I'm still pretty much just following instructions here. One noteworthy change is that python-Xlib
is no longer a dependency.
Anyway, I have gone through the steps in the link to Chapter 14: creating a new pkgsrc package from scratch and I think I'm getting there.
Makefile: UPDATED
# $NetBSD$
DISTNAME= ueberzug-18.1.9
CATEGORIES= local
MASTER_SITES= ${MASTER_SITE_GITHUB:=seebye/}
MAINTAINER= david.pfeiffer@pm.me
HOMEPAGE= https://github.com/seebye/ueberzug
COMMENT= Command line util to display images in the terminal
LICENSE= gnu-gpl-v3
PYTHON_VERSIONS_INCOMPATIBLE= 27
DEPENDS+= ${PYPKGPREFIX}-psutil>=5.8.0:../../sysutils/py-psutil
DEPENDS+= ${PYPKGPREFIX}-Pillow>=8.2.0:../../graphics/py-Pillow
DEPENDS+= ${PYPKGPREFIX}-docopt>=0.6.2:../../devel/py-docopt
DEPENDS+= ${PYPKGPREFIX}-attrs>=18.2.0:../../devel/py-attrs
WRKSRC= ${WRKDIR}/ueberzug-18.1.9
.include "../../x11/libXext/buildlink3.mk"
.include "../../x11/libXres/buildlink3.mk"
.include "../../lang/python/egg.mk"
.include "../../mk/bsd.pkg.mk"
pkglint seems happy
$ pwd
/home/dave/pkgsrc/local/py-Ueberzug
$ pkglint -e
Looks fine.
It appears to build... and install
$ bmake clean
===> Cleaning for ueberzug-18.1.9
$ bmake CHECK_FILES=no install
=> Bootstrap dependency digest>=20010302: found digest-20190127
=> Checksum SHA1 OK for ueberzug/18.1.9.tar.gz
=> Checksum RMD160 OK for ueberzug/18.1.9.tar.gz
=> Checksum SHA512 OK for ueberzug/18.1.9.tar.gz
===> Installing dependencies for ueberzug-18.1.9
==========================================================================
The following variables will affect the build process of this package,
ueberzug-18.1.9. Their current value is shown below:
* PYTHON_VERSION_DEFAULT = 38
Based on these variables, the following variables have been set:
* PYPACKAGE = python38
You may want to abort the process now with CTRL-C and change the value
of variables in the first group before continuing. Be sure to run
`/usr/pkg/bin/bmake clean' after the changes.
==========================================================================
=> Tool dependency bsdtar-[0-9]*: found bsdtar-3.4.3
=> Tool dependency checkperms>=1.1: found checkperms-1.12
=> Build dependency x11-links>=1.33: found x11-links-1.33
=> Build dependency cwrappers>=20150314: found cwrappers-20180325
=> Full dependency py38-Pillow>=8.2.0: found py38-Pillow-8.2.0
=> Full dependency py38-docopt>=0.6.2: found py38-docopt-0.6.2
=> Full dependency py38-attrs>=18.2.0: found py38-attrs-19.3.0
=> Full dependency py38-setuptools-[0-9]*: found py38-setuptools-56.0.0
=> Full dependency python38>=3.8.0: found python38-3.8.10nb1
===> Checking for vulnerabilities in ueberzug-18.1.9
===> Overriding tools for ueberzug-18.1.9
===> Extracting for ueberzug-18.1.9
===> Patching for ueberzug-18.1.9
===> Creating toolchain wrappers for ueberzug-18.1.9
===> Configuring for ueberzug-18.1.9
=> Checking for portability problems in extracted files
===> Building for ueberzug-18.1.9
...
=> Checking for non-existent script interpreters in ueberzug-18.1.9
=> Checking file permissions in ueberzug-18.1.9
=> Checking for missing run-time search paths in ueberzug-18.1.9
=> Checking for work-directory references in ueberzug-18.1.9
=> Creating binary package /home/dave/pkgsrc/local/py-Ueberzug/work/.packages/ueberzug-18.1.9.tgz
===> Building binary package for ueberzug-18.1.9
=> Creating binary package /home/dave/pkgsrc/packages/All/ueberzug-18.1.9.tgz
===> Installing binary package of ueberzug-18.1.9
$
$
$ please bmake print-PLIST >PLIST
[please] password for dave:
$ please bmake deinstall
===> Deinstalling for ueberzug-18.1.9
Running /usr/pkg/sbin/pkg_delete -K /usr/pkg/pkgdb ueberzug-18.1.9
$ please bmake install
=> Bootstrap dependency digest>=20010302: found digest-20190127
===> Installing binary package of ueberzug-18.1.9
$
Neat! But Now I need to add the patch.