Created attachment 255224 [details] 0001-natron-new-port.patch Hi, this port natron with qt5 support. I tested natron in poudriere. Updating database digests format: .......... done Checking integrity... done (0 conflicting) Deinstallation has been requested for the following 1 packages (of 0 packages in the universe): Installed packages to be REMOVED: natron: 2.5.1.p2 Number of packages to be removed: 1 The operation will free 24 MiB. [141amd64-default] [1/1] Deinstalling natron-2.5.1.p2... [141amd64-default] [1/1] Deleting files for natron-2.5.1.p2: .......... done ==> Running trigger: desktop-file-utils.ucl Building cache database of MIME types =========================================================================== =>> Checking for extra files and directories [00:12:36] Installing from package [141amd64-default] Installing natron-2.5.1.p2... [141amd64-default] Extracting natron-2.5.1.p2: .......... done ==> Running trigger: desktop-file-utils.ucl Building cache database of MIME types [00:12:36] Cleaning up ===> Cleaning for natron-2.5.1.p2 [00:12:36] Deinstalling package Updating database digests format: . done Checking integrity... done (0 conflicting) Deinstallation has been requested for the following 1 packages (of 0 packages in the universe): Installed packages to be REMOVED: natron: 2.5.1.p2 Number of packages to be removed: 1 The operation will free 24 MiB. [141amd64-default] [1/1] Deinstalling natron-2.5.1.p2... [141amd64-default] [1/1] Deleting files for natron-2.5.1.p2: .......... done ==> Running trigger: desktop-file-utils.ucl Building cache database of MIME types build of graphics/natron | natron-2.5.1.p2 ended at Sat Nov 16 23:07:24 CET 2024 build time: 00:12:15
Created attachment 255972 [details] natron.tar.xz
=======================<phase: stage >============================ ===== env: DEVELOPER_MODE=yes STRICT_DEPENDS=yes USER=nobody UID=65534 GID=65534 ===> Staging for natron-2.5.1.p2 ===> natron-2.5.1.p2 depends on file: /usr/local/OFX/Plugins/Shadertoy.ofx.bundle/Contents/Info.plist - found ===> natron-2.5.1.p2 depends on file: /usr/local/OFX/Plugins/Arena.ofx.bundle/Contents/Info.plist - found ===> natron-2.5.1.p2 depends on executable: update-desktop-database - found ===> natron-2.5.1.p2 depends on file: /usr/local/bin/python3.11 - found ===> natron-2.5.1.p2 depends on executable: update-mime-database - found ===> natron-2.5.1.p2 depends on file: /usr/local/libdata/pkgconfig/ice.pc - found ===> natron-2.5.1.p2 depends on file: /usr/local/libdata/pkgconfig/pixman-1.pc - found ===> natron-2.5.1.p2 depends on file: /usr/local/libdata/pkgconfig/sm.pc - found ===> natron-2.5.1.p2 depends on file: /usr/local/libdata/pkgconfig/x11.pc - found ===> natron-2.5.1.p2 depends on file: /usr/local/libdata/pkgconfig/xext.pc - found ===> Generating temporary packing list [ 0% 1/1] cd /wrkdirs/usr/ports/graphics/natron/work/.build && /usr/local/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake -- Install configuration: "Release" -- Installing: /usr/local/bin/natron-python CMake Error at PythonBin/cmake_install.cmake:47 (file): file INSTALL cannot copy file "/wrkdirs/usr/ports/graphics/natron/work/.build/PythonBin/natron-python" to "/usr/local/bin/natron-python": Permission denied. Call Stack (most recent call first): cmake_install.cmake:57 (include) FAILED: CMakeFiles/install/strip.util cd /wrkdirs/usr/ports/graphics/natron/work/.build && /usr/local/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake ninja: build stopped: subcommand failed. *** Error code 1 Stop. make: stopped in /usr/ports/graphics/natron
(In reply to Vladimir Druzenko from comment #2) Hi Vladimir. I tested natron in poudriere on 14.2 today. I don't know why is permission denied.
This is copy natron-python directly to ${PREFIX} or ${LOCALBASE} instead of ${STAGEDIR}. Maybe you have options in poudriere.conf which allow modify ${LOCALBASE}?
Also there are a lot of warnings and errors from portclippy and portlint: diff -ur graphics/natron.bak/Makefile graphics/natron/Makefile --- graphics/natron.bak/Makefile +++ graphics/natron/Makefile @@ -4,16 +4,16 @@ CATEGORIES= graphics MAINTAINER= freebsd@sysctl.cz -COMMENT= compositing software Video +COMMENT= Compositing software Video WWW= http://www.natron.fr LICENSE= GPLv2 -BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pyside2>5.14.0:devel/pyside2@${PY_FLAVOR} +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pyside2>5.14.0:devel/pyside2@${PY_FLAVOR} \ + boost-libs>0:devel/boost-libs \ + bash:shells/bash \ + gsed:textproc/gsed -RUN_DEPENDS= ${LOCALBASE}/OFX/Plugins/Shadertoy.ofx.bundle/Contents/Info.plist:graphics/openfx-misc \ - ${LOCALBASE}/OFX/Plugins/Arena.ofx.bundle/Contents/Info.plist:graphics/openfx-arena - LIB_DEPENDS= libavformat.so:multimedia/ffmpeg \ libboost_system.so:devel/boost-libs \ libboost_serialization.so:devel/boost-libs \ @@ -24,12 +24,12 @@ libpyside2.cpython-${PYTHON_SUFFIX}${PYTHON_ABIVER}.so:devel/pyside2 \ libshiboken2.cpython-${PYTHON_SUFFIX}${PYTHON_ABIVER}.so:devel/shiboken2@${PY_FLAVOR} -BUILD_DEPENDS= boost-libs>0:devel/boost-libs \ - bash:shells/bash \ - gsed:textproc/gsed +RUN_DEPENDS= ${LOCALBASE}/OFX/Plugins/Shadertoy.ofx.bundle/Contents/Info.plist:graphics/openfx-misc \ + ${LOCALBASE}/OFX/Plugins/Arena.ofx.bundle/Contents/Info.plist:graphics/openfx-arena USES= cmake compiler:c++17-lang desktop-file-utils gettext-runtime \ - pkgconfig localbase python:3.11 qt:5 shared-mime-info shebangfix + gl pkgconfig localbase python:3.11 qmake qt:5 shared-mime-info \ + shebangfix xorg USE_GITHUB= yes GH_ACCOUNT= NatronGitHub @@ -41,22 +41,25 @@ NatronGitHub:openfx:0759758d0fb57932b5c4698fff9ef6b4a3132309:openfx/libs/OpenFX \ NatronGitHub:SequenceParsing:3c93fcc488632b0bdfeee3181586809932357598:SequenceParsing/libs/SequenceParsing \ NatronGitHub:tinydir:3aae922:tinydir/libs/SequenceParsing/tinydir - -USE_QT= concurrent core gui network opengl widgets buildtools:build qmake:build -USE_XORG= pixman sm ice xext x11 + USE_GL= gl +USE_QT= concurrent core gui network opengl widgets buildtools:build qmake:build +USE_XORG= ice pixman sm x11 xext -QMAKE_ARGS+= PYTHON_INCLUDEDIR=${PYTHON_INCLUDEDIR} PYTHON_LIB=${PYTHON_LIB} \ +SHEBANG_FILES= OpenColorIO-Configs/nuke-default/make.py + +QMAKE_ARGS= PYTHON_INCLUDEDIR=${PYTHON_INCLUDEDIR} PYTHON_LIB=${PYTHON_LIB} \ PYTHON_LIBDIR=${PYTHON_LIBDIR} \ PYTHON_PACKAGES_PATH="${PYTHON_SITELIBDIR}" \ PYTHON_SHIBOKEN2_INCLUDE="${PYTHONBASE}/include/shiboken2" \ PYTHON_VER=${PYTHON_VER} -SHEBANG_FILES= OpenColorIO-Configs/nuke-default/make.py -BINARY_ALIAS= python-config=python${PYTHON_VER}-config \ - python=python${PYTHON_VER} \ - sed=gsed -PYTHON_MAKE_ARGS= PYTHON=0 +BINARY_ALIAS= python-config=python${PYTHON_VER}-config \ + python=python${PYTHON_VER} \ + sed=gsed + +#PYTHON_MAKE_ARGS= PYTHON=0 post-patch: @${REINPLACE_CMD} -e 's|/usr/OFX/Plugins|${PREFIX}/OFX/Plugins|g' \ @@ -69,4 +71,4 @@ ${WRKSRC}/Engine/Settings.cpp \ ${WRKSRC}/Natron.spec -.include <bsd.port.mk> \ No newline at end of file +.include <bsd.port.mk> diff -ur graphics/natron.bak/pkg-descr graphics/natron/pkg-descr --- graphics/natron.bak/pkg-descr +++ graphics/natron/pkg-descr @@ -1,2 +1,2 @@ Node-graph based video compositing software. Similar in functionalities to Adobe -After Effects and Foundry Nuke. \ No newline at end of file +After Effects and Foundry Nuke.
Why do you added lines: QMAKE_ARGS+= PYTHON_INCLUDEDIR=${PYTHON_INCLUDEDIR} PYTHON_LIB=${PYTHON_LIB} \ PYTHON_LIBDIR=${PYTHON_LIBDIR} \ PYTHON_PACKAGES_PATH="${PYTHON_SITELIBDIR}" \ PYTHON_SHIBOKEN2_INCLUDE="${PYTHONBASE}/include/shiboken2" \ PYTHON_VER=${PYTHON_VER} PYTHON_MAKE_ARGS= PYTHON=0 ?
(In reply to Vladimir Druzenko from comment #6) I will remove these lines because they are for qmake but we are building cmake now.
Don't need: USES=gettext-runtime USE_GL=gl USE_QT=opengl Why USES=python:3.11? Is it support python3.11 only? Not 3.10, 3.12 and etc?
(In reply to Vladimir Druzenko from comment #8) Can I add python:3.11+?
Created attachment 256023 [details] natron.tar.xz I added new version
(In reply to Martin Filla from comment #9) https://cgit.freebsd.org/ports/tree/Mk/Uses/python.mk#n17 Also: 1. - libpyside2.cpython-${PYTHON_SUFFIX}${PYTHON_ABIVER}.so:devel/pyside2 \ + libpyside2.cpython-${PYTHON_SUFFIX}${PYTHON_ABIVER}.so:devel/pyside2@${PY_FLAVOR} \ 2. If port have: LIB_DEPENDS=libpyside2.cpython-${PYTHON_SUFFIX}${PYTHON_ABIVER}.so:devel/pyside2@${PY_FLAVOR} then it not need: BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pyside2>5.14.0:devel/pyside2@${PY_FLAVOR} 3. Why in pkg-plist @owner natronProjectIcon_linux.png? 4. Not linked with: LIB_DEPENDS=libavformat.so:multimedia/ffmpeg. Maybe you mean: RUN_DEPENDS=ffmpeg:multimedia/ffmpeg ?
Maybe add: USE_PYTHON= flavors ???
(In reply to Vladimir Druzenko from comment #12) And: PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} Where did you get restriction to python version 3.11+?
Why you added localbase? Not need. Is shared-mime-info necessary?
(In reply to Vladimir Druzenko from comment #13) I believe the PySide library (py311-pyside) is specifically designed to work with Python 3.11. The name py311 in the port suggests that it should be compatible with Python 3.11. If there are issues, it might be worth verifying if the correct Python version is being used during the build or runtime.
(In reply to Vladimir Druzenko from comment #14) I remove it.
(In reply to Martin Filla from comment #15) Do you know how python flavors work? If you add DEFAULT_VERSIONS+=python=3.X in /usr/local/etc/poudriere.d/make.conf, then all python ports get names "py3X-*" instead of "py311-*".
Created attachment 256029 [details] natron.tar.xz I added new version
Why did you added do-install?
(In reply to Vladimir Druzenko from comment #19) you wrote me a mistake in comment #2. For the right install files, I need to define paths with do-install. or it is a mistake?
(In reply to Martin Filla from comment #20) QMAKE_ARGS require USES=qmake, but after add USES=qmake I got error in comment #2. After remove QMAKE_ARGS and USES=qmake build fine.
Created attachment 256037 [details] natron.tar.xz
Created attachment 256045 [details] v1 Check my Makefile.
Created attachment 256046 [details] natron.tar.xz
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=07270c2f715607adf7fec5b4a2bd0625a16586a3 commit 07270c2f715607adf7fec5b4a2bd0625a16586a3 Author: Martin Filla <freebsd@sysctl.cz> AuthorDate: 2024-12-22 18:05:27 +0000 Commit: Vladimir Druzenko <vvd@FreeBSD.org> CommitDate: 2024-12-22 18:05:27 +0000 graphics/natron: New port: Video compositing software Natron is a free, open-source (GPLv2 license) video compositor, similar in functionality to Adobe After Effects, Foundry's Nuke, or Blackmagic Fusion. https://github.com/NatronGitHub/Natron https://www.natron.fr PR: 282802 graphics/Makefile | 1 + graphics/natron/Makefile (new) | 64 ++++++++++++++++++++++ graphics/natron/distinfo (new) | 17 ++++++ .../natron/files/patch-Engine_CMakeLists.txt (new) | 22 ++++++++ graphics/natron/pkg-descr (new) | 2 + graphics/natron/pkg-plist (new) | 8 +++ 6 files changed, 114 insertions(+)
Thanks.