media-video/openshot
Free, open-source, non-linear video editor
ChangeLog
commit f3347026e71a43967faf99cdf735eedbebaf7b58
Author: lucascouts <lucascs@protonmail.com>
Date: Tue Sep 1 12:24:18 2026 -0300
add(net-libs/cppzmq-4.11.0, media-libs/{libopenshot-audio-1.0.0, libopenshot-1.0.0}, media-video/openshot-4.0.0), mod(.autoupdate/packages.toml)
Reintroduce the OpenShot stack, which ::gentoo last-rited on 2024-03-26 and
removed on 2024-05-08 (bug #909996). The two reasons given there were a
deprecated distutils-r1 API and a dev-qt/qtwebengine:5 dependency; the 4.x
series resolves both. Verified against the v4.0.0 tarball: no occurrence of
WebEngine under src/ and no .html file anywhere in the tree -- the timeline,
previously rendered in QtWebEngine, is now native Qt.
net-libs/cppzmq is new to this overlay and to ::gentoo. It is not optional
despite upstream probing it with find_package(cppzmq QUIET): libopenshot's
ZmqLogger.h does #include <zmq.hpp>, a header net-libs/zeromq does not install.
Measured with g++: the include is a fatal error without it.
libopenshot carries two patches, each covering one end of USE=opencv:
guard-tracked-object-mask fixes an upstream bug. The 1.0.0-new
EffectBase::TrackedObjectMask() calls TrackedObjectBBox::Contains() and
::GetBox() without the "#ifdef USE_OPENCV" guard that Clip.cpp and
Timeline.cpp use. TrackedObjectBBox.cpp only enters the build through
OPENSHOT_CV_SOURCES, so with USE=-opencv libopenshot.so ships three undefined
symbols (confirmed with nm -DC) and every downstream link fails. A control
build without the patch reproduces exactly those three symbols.
opencv5-cxx20 ports to OpenCV 5, which this overlay ships. opencv is
SLOT="0/$", so 4 and 5 cannot coexist and upstream's
find_package(OpenCV 4) rejects the 5. The patch also raises
CMAKE_CXX_STANDARD to 20, required by abseil/protobuf 7.x -- note that
-DCMAKE_CXX_STANDARD=20 on the command line does not work, the set() in
CMakeLists.txt wins. Diagnosis trap worth recording: under C++17 the abseil
headers fail to parse and emit ~690 errors that read as OpenCV errors
("cv::boundingRect is not a member"). Fix the standard first.
dev-python/pyqt6[scxml] is load-bearing and not obvious: openshot's qt_api.py
aborts the launch with "PyQt6 QtStateMachine module not available" without it,
and scxml is not default-on. The resolver independently demands
>=dev-python/pyqt6-6.11.0-r1 scxml.
Two build-breaking defects found only by building, both invisible to pkgcheck
and emerge -pv: openshot-qt ships an installer/__init__.py at the top of $
that shadows dev-python/installer and kills gpep517 install-wheel, and its
setup.py runs update-mime-database and update-desktop-database against the live
prefix whenever euid is 0 (it only self-disarms on FAKEROOTKEY, which Portage
never sets). Both are handled in src_prepare behind grep/die guards so a
version bump cannot silently turn them into no-ops.
libopenshot-audio drops a dead JuceLibraryCode oboe CMakeLists.txt: it is never
add_subdirectory()'d, but cmake.eclass scans every CMakeLists.txt under $,
finds its cmake_minimum_required(VERSION 3.4.1) and pushes
-DCMAKE_POLICY_VERSION_MINIMUM=3.5 onto the whole build.
Verified by real builds on this host (GCC 16.2, CMake 4.3.4, Qt 6.11.2,
FFmpeg 8.1.2, OpenCV 5.0.0, Python 3.14, SWIG 4.4.1):
cppzmq build + 107/107 tests
libopenshot-audio ebuild install, SONAME 10, NEEDED = libasound + libz
libopenshot 106/106 with USE=-opencv, 138/138 with USE=opencv
openshot build through src_install, 7260-file image
runtime openshot-qt 4.0.0 starts against the patched library
under QT_QPA_PLATFORM=offscreen with no traceback
Nothing was merged into the live system: this host has no sudo, so USE=doc and
USE=test on libopenshot remain unexecuted.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
commit c37938fb612bbdd71144a6059b7e57b91c10d467
Author: lucascouts <lucascs@protonmail.com>
Date: Sun Aug 25 22:03:21 2019 +0000
the master branch is the minimal overlay configuration.
commit 826e6810bc74949b213c56f91c1af51ba6903386
Author: lucascouts <lucascs@protonmail.com>
Date: Sat Jun 15 23:33:40 2019 -0300
add+(media-video/openshot-2.4.4, x11-libs/libva-vdpau-driver-0.7.4-r5), up^(app-portage/eix-0.33.7 -> 0.33.8, dev-util/pycharm-community-2019.1.2 -> 2019.1.3, dev-util/pycharm-professional-2019.1.2 -> 2019.1.3, sys-fs/zfs-kmod-0.7.13 -> 0.8.1, sys-fs/zfs-0.7.13 -> 0.8.1, www-client/chromium-74.0.3729.169 -> 75.0.3770.90, www-client/google-chrome-74.0.3729.169 -> 75.0.3770.90)
Author: lucascouts <lucascs@protonmail.com>
Date: Tue Sep 1 12:24:18 2026 -0300
add(net-libs/cppzmq-4.11.0, media-libs/{libopenshot-audio-1.0.0, libopenshot-1.0.0}, media-video/openshot-4.0.0), mod(.autoupdate/packages.toml)
Reintroduce the OpenShot stack, which ::gentoo last-rited on 2024-03-26 and
removed on 2024-05-08 (bug #909996). The two reasons given there were a
deprecated distutils-r1 API and a dev-qt/qtwebengine:5 dependency; the 4.x
series resolves both. Verified against the v4.0.0 tarball: no occurrence of
WebEngine under src/ and no .html file anywhere in the tree -- the timeline,
previously rendered in QtWebEngine, is now native Qt.
net-libs/cppzmq is new to this overlay and to ::gentoo. It is not optional
despite upstream probing it with find_package(cppzmq QUIET): libopenshot's
ZmqLogger.h does #include <zmq.hpp>, a header net-libs/zeromq does not install.
Measured with g++: the include is a fatal error without it.
libopenshot carries two patches, each covering one end of USE=opencv:
guard-tracked-object-mask fixes an upstream bug. The 1.0.0-new
EffectBase::TrackedObjectMask() calls TrackedObjectBBox::Contains() and
::GetBox() without the "#ifdef USE_OPENCV" guard that Clip.cpp and
Timeline.cpp use. TrackedObjectBBox.cpp only enters the build through
OPENSHOT_CV_SOURCES, so with USE=-opencv libopenshot.so ships three undefined
symbols (confirmed with nm -DC) and every downstream link fails. A control
build without the patch reproduces exactly those three symbols.
opencv5-cxx20 ports to OpenCV 5, which this overlay ships. opencv is
SLOT="0/$", so 4 and 5 cannot coexist and upstream's
find_package(OpenCV 4) rejects the 5. The patch also raises
CMAKE_CXX_STANDARD to 20, required by abseil/protobuf 7.x -- note that
-DCMAKE_CXX_STANDARD=20 on the command line does not work, the set() in
CMakeLists.txt wins. Diagnosis trap worth recording: under C++17 the abseil
headers fail to parse and emit ~690 errors that read as OpenCV errors
("cv::boundingRect is not a member"). Fix the standard first.
dev-python/pyqt6[scxml] is load-bearing and not obvious: openshot's qt_api.py
aborts the launch with "PyQt6 QtStateMachine module not available" without it,
and scxml is not default-on. The resolver independently demands
>=dev-python/pyqt6-6.11.0-r1 scxml.
Two build-breaking defects found only by building, both invisible to pkgcheck
and emerge -pv: openshot-qt ships an installer/__init__.py at the top of $
that shadows dev-python/installer and kills gpep517 install-wheel, and its
setup.py runs update-mime-database and update-desktop-database against the live
prefix whenever euid is 0 (it only self-disarms on FAKEROOTKEY, which Portage
never sets). Both are handled in src_prepare behind grep/die guards so a
version bump cannot silently turn them into no-ops.
libopenshot-audio drops a dead JuceLibraryCode oboe CMakeLists.txt: it is never
add_subdirectory()'d, but cmake.eclass scans every CMakeLists.txt under $,
finds its cmake_minimum_required(VERSION 3.4.1) and pushes
-DCMAKE_POLICY_VERSION_MINIMUM=3.5 onto the whole build.
Verified by real builds on this host (GCC 16.2, CMake 4.3.4, Qt 6.11.2,
FFmpeg 8.1.2, OpenCV 5.0.0, Python 3.14, SWIG 4.4.1):
cppzmq build + 107/107 tests
libopenshot-audio ebuild install, SONAME 10, NEEDED = libasound + libz
libopenshot 106/106 with USE=-opencv, 138/138 with USE=opencv
openshot build through src_install, 7260-file image
runtime openshot-qt 4.0.0 starts against the patched library
under QT_QPA_PLATFORM=offscreen with no traceback
Nothing was merged into the live system: this host has no sudo, so USE=doc and
USE=test on libopenshot remain unexecuted.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
commit c37938fb612bbdd71144a6059b7e57b91c10d467
Author: lucascouts <lucascs@protonmail.com>
Date: Sun Aug 25 22:03:21 2019 +0000
the master branch is the minimal overlay configuration.
commit 826e6810bc74949b213c56f91c1af51ba6903386
Author: lucascouts <lucascs@protonmail.com>
Date: Sat Jun 15 23:33:40 2019 -0300
add+(media-video/openshot-2.4.4, x11-libs/libva-vdpau-driver-0.7.4-r5), up^(app-portage/eix-0.33.7 -> 0.33.8, dev-util/pycharm-community-2019.1.2 -> 2019.1.3, dev-util/pycharm-professional-2019.1.2 -> 2019.1.3, sys-fs/zfs-kmod-0.7.13 -> 0.8.1, sys-fs/zfs-0.7.13 -> 0.8.1, www-client/chromium-74.0.3729.169 -> 75.0.3770.90, www-client/google-chrome-74.0.3729.169 -> 75.0.3770.90)


View
Download
Browse