Changeset View
Standalone View
audio/pithos/Makefile
# Created by: John Hixson <john@pcbsd.org> | # Created by: John Hixson <john@pcbsd.org> | ||||
# $FreeBSD$ | # $FreeBSD$ | ||||
PORTNAME= pithos | PORTNAME= pithos | ||||
PORTVERSION= 1.0.0 | PORTVERSION= 1.4.1 | ||||
PORTREVISION= 3 | |||||
CATEGORIES= audio | CATEGORIES= audio | ||||
MAINTAINER= jhixson@FreeBSD.org | MAINTAINER= jhixson@FreeBSD.org | ||||
COMMENT= Pandora client for the GNOME desktop | COMMENT= Pandora client for the GNOME desktop | ||||
LICENSE= GPLv3 | LICENSE= GPLv3 | ||||
USE_GITHUB= yes | BUILD_DEPENDS= appstream-util:devel/appstream-glib \ | ||||
desktop-file-validate:devel/desktop-file-utils \ | |||||
mat: I don't think I ever saw a port depend on this directly, usually it is done with `USES=desktop… | |||||
Done Inline ActionsThis port uses it to verify desktop files. jhixson: This port uses it to verify desktop files. | |||||
help2man:misc/help2man \ | |||||
Done Inline ActionsUSE_GNOME= glib20 miwi: USE_GNOME= glib20 | |||||
${PYTHON_PKGNAMEPREFIX}sphinx>0:textproc/py-sphinx@${PY_FLAVOR} | |||||
Done Inline ActionsWhy +=? mat: Why `+=`? | |||||
Done Inline ActionsI apologize, this was just copied over from the prior version. I have fixed this. jhixson: I apologize, this was just copied over from the prior version. I have fixed this. | |||||
Done Inline ActionsThe port does not seem to install any documentation, what is sphinx used for? mat: The port does not seem to install any documentation, what is sphinx used for? | |||||
Done Inline ActionsGood question, I will find the answer! jhixson: Good question, I will find the answer! | |||||
Done Inline ActionsSphinx is in fact not used. I'm unsure why it is in the build, other than perhaps future use. I have removed the need for it. jhixson: Sphinx is in fact not used. I'm unsure why it is in the build, other than perhaps future use. I… | |||||
RUN_DEPENDS+= ${PYTHON_SITELIBDIR}/xdg/__init__.py:devel/py-xdg@${PY_FLAVOR} \ | RUN_DEPENDS= gnome-keyring:security/gnome-keyring \ | ||||
gsettings-desktop-schemas>3.0.0:devel/gsettings-desktop-schemas \ | |||||
pkgconf>1.0:devel/pkgconf \ | |||||
Done Inline ActionsWhy +=? mat: Why `+=`? | |||||
Done Inline ActionsSame as above. jhixson: Same as above. | |||||
Done Inline ActionsYou set already USES= gnome, I think USE_GNOME=glib20 will work here too. miwi: You set already USES= gnome, I think USE_GNOME=glib20 will work here too. | |||||
Done Inline ActionsCorrect. I did have that at one point. According to the handbook, it appears that using USES is the preferred method. jhixson: Correct. I did have that at one point. According to the handbook, it appears that using USES is… | |||||
Done Inline Actionscan be removed in favor of USE_GNOME= glib20 miwi: can be removed in favor of USE_GNOME= glib20 | |||||
${PYTHON_SITELIBDIR}/dbus/__init__.py:devel/py-dbus@${PY_FLAVOR} \ | ${PYTHON_SITELIBDIR}/dbus/__init__.py:devel/py-dbus@${PY_FLAVOR} \ | ||||
${PYTHON_SITELIBDIR}/gi/overrides/Gst.py:multimedia/py-gstreamer1@${PY_FLAVOR} \ | ${PYTHON_SITELIBDIR}/gi/overrides/Gst.py:multimedia/py-gstreamer1@${PY_FLAVOR} \ | ||||
${PYTHON_PKGNAMEPREFIX}pylast>0:audio/py-pylast@${PY_FLAVOR} | ${PYTHON_PKGNAMEPREFIX}pylast>0:audio/py-pylast@${PY_FLAVOR} \ | ||||
${PYTHON_SITELIBDIR}/xdg/__init__.py:devel/py-xdg@${PY_FLAVOR} | |||||
USE_GNOME= gtk30 pygobject3 | USES= python:3.4+ gnome meson ninja gettext shebangfix | ||||
USES= python:3.4+ | |||||
USE_PYTHON= distutils autoplist optsuffix | USE_GITHUB= yes | ||||
USE_GNOME= glib20 | |||||
USE_GSTREAMER1= core good bad soup | USE_GSTREAMER1= core good bad soup | ||||
post-install: | GLIB_SCHEMAS= io.github.Pithos.gschema.xml | ||||
BINARY_ALIAS= sphinx-build-3=sphinx-build-${PYTHON_VER} | |||||
INSTALLS_ICONS= yes | |||||
SHEBANG_FILES= bin/pithos.in docs/conf.py meson_post_install.py | |||||
post-patch: | |||||
${REINPLACE_CMD} -i '' -e \ | |||||
"s|\(\([^.]\)pkgdatadir\)|\2'${PYTHONPREFIX_SITELIBDIR}'|g" \ | |||||
Done Inline ActionsUse ${REINPLACE_CMD} and not ${SED}. Also, are you aware that you can pass multiple arguments to sed so that it processes many files at once? mat: Use `${REINPLACE_CMD}` and not `${SED}`. Also, are you aware that you can pass multiple… | |||||
Done Inline ActionsThank you. I was not aware of ${REINPLACE_CMD}. I have rearranged the sed to do multiple files at once. jhixson: Thank you. I was not aware of ${REINPLACE_CMD}. I have rearranged the sed to do multiple files… | |||||
Done Inline ActionsI was also not aware of the GLIB_SCHEMAS variable. Thanks for the tip. I have fixed everything you've mentioned. I am having an issue now since the pyc files are in the stage directory, but not in the pkg-plist. jhixson: I was also not aware of the GLIB_SCHEMAS variable. Thanks for the tip. I have fixed everything… | |||||
Done Inline ActionsWould it not easier to use SHEBANG? miwi: Would it not easier to use SHEBANG? | |||||
Done Inline ActionsPlease tell me more about this mythical creature. I am not familiar with it. jhixson: Please tell me more about this mythical creature. I am not familiar with it. | |||||
Done Inline ActionsHi, Take a look here: https://www.freebsd.org/doc/en/books/porters-handbook/uses-shebangfix.html araujo: Hi,
Take a look here: https://www.freebsd.org/doc/en/books/porters-handbook/uses-shebangfix. | |||||
Done Inline ActionsThanks. Miwi already pointed me to this. Much appreciated . jhixson: Thanks. Miwi already pointed me to this. Much appreciated . | |||||
${WRKSRC}/meson.build | |||||
pre-install: | |||||
${MKDIR} ${STAGEDIR}/${PYTHONPREFIX_SITELIBDIR}/${PORTNAME} | |||||
${MKDIR} ${STAGEDIR}/${PREFIX}/share/glib-2.0/schemas | |||||
Done Inline Actionssed can do more than one thing. ${REINPLACE_CMD} -i '' -e \ 's|@@PYTHONPREFIX_SITELIBDIR@@|${PYTHONPREFIX_SITELIBDIR}|g; \ s|@@PYTHON_PATH@@|${PYTHONBASE}/bin/python${PYTHON_VER}|g' \ ${WRKSRC}/meson.build \ ${WRKSRC}/bin/pithos.in \ ${WRKSRC}/meson_post_install.py \ ${WRKSRC}/docs/conf.py mat: sed can do more than one thing.
```
${REINPLACE_CMD} -i '' -e \
… | |||||
${MKDIR} ${STAGEDIR}${DATADIR} | ${MKDIR} ${STAGEDIR}${DATADIR} | ||||
(cd ${WRKSRC}/data/ && ${COPYTREE_SHARE} \* ${STAGEDIR}${DATADIR}) | |||||
(cd ${WRKSRC}/pithos/data/ && ${COPYTREE_SHARE} \* ${STAGEDIR}${DATADIR}) | |||||
.include <bsd.port.mk> | .include <bsd.port.mk> | ||||
Done Inline ActionsThis could probably be replaced by setting: BINARY_ALIAS= sphinx-build-3=sphinx-build-${PYTHON_VER} mat: This could probably be replaced by setting:
```
BINARY_ALIAS= sphinx-build-3=sphinx-build… | |||||
Done Inline ActionsI will give this a try. jhixson: I will give this a try. | |||||
Done Inline ActionsSTAGEDIR can only be accessed during the install phase, so this should be either post-install or pre-install. mat: STAGEDIR can only be accessed during the install phase, so this should be either post-install… | |||||
Done Inline ActionsWill do. I appreciate the feedback. You guys have taught me a lot just in this single review ;-) jhixson: Will do. I appreciate the feedback. You guys have taught me a lot just in this single review ;-) |
I don't think I ever saw a port depend on this directly, usually it is done with USES=desktop-file-utils.