Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

kdenlive #21646

Open
wants to merge 37 commits into
base: master
Choose a base branch
from
Open

kdenlive #21646

wants to merge 37 commits into from

Conversation

knyipab
Copy link
Contributor

@knyipab knyipab commented Oct 3, 2024

Should bring us closer to a complete KDE. Also prove that qt6-qt5compat #21573 is working.

Some dirty hacks applied on kf6-kconfig to build kdenlive. Help wanted to address such issue, see #21647. Done

Closes #16837

@twaik
Copy link
Member

twaik commented Oct 3, 2024

I do not think using separate package for building with cross-compiler is a bad idea. There are a lot of packages like this. You can find a lot of *-cross*.subpackage.sh buildscripts in termux packages. But probably it will be better to move x11-packages/kf6-kconfig-cross/build.sh content to the regular kf6-config build script with moving cross-building stuff to subpackage. This way we will be sure both regular and cross-subpackage have the same version and updated simultaneously.

@knyipab
Copy link
Contributor Author

knyipab commented Oct 3, 2024

I agree that it should be in *-cross*.subpackage.sh. Just that kf6 (including kf6-kconfig) uses a lot of extra-cmake-modules syntax and I couldn't figure out a way to make host build cmake to work with that, so I opened #21647. FYI, kf6-kconfig-cross is a dirty hack to build kconfig_compiler_kf6 with pure cmake which I suppose not preferred.

By the way, this Github actions failed and behave differently than that of my branch. My branch is up-to-date and is still building it (https://github.com/knyipab/termux-packages/actions). I expect it to build successfully.

@knyipab
Copy link
Contributor Author

knyipab commented Oct 3, 2024

Few things to add:

  • forgot to mention that kf6-kconfig-cross requires $TERMUX_PREFIX/include/KF6/KConfig/kconfig_version.h to be available which is generated by kf6-kconfig, so I couldn't find easy way to put it as subpackage.
  • [edited] My branch build fails but for different reasons. I will fix that in coming few days. Still, I dunno why this upstream Github Actions behave differently.
  • At least my build (https://github.com/knyipab/termux-packages/actions/runs/11171466617) can run on my phone and is able load video.

@knyipab knyipab force-pushed the dev/kdenlive-pr branch 3 times, most recently from 9f48e6d to 388f37e Compare October 4, 2024 13:20
@Biswa96
Copy link
Member

Biswa96 commented Oct 5, 2024

Before merging this pull request, we need to figure out how to manage auto-update with a group of packages instead of individual packages. Otherwise, we would get multiple kf6 auto-update issues. For example, we recently get qt6 auto-update issues which would not happen if those packages are updated in a specific order.

I can not figure out how to enable auto-update for groups. If anyone will implement that I can try to add the package groups e.g. qt5/6, kf5/6, gstreamer etc.

@knyipab knyipab changed the title [WIP] kdenlive kdenlive Oct 5, 2024
@knyipab knyipab marked this pull request as ready for review October 5, 2024 08:41
@knyipab
Copy link
Contributor Author

knyipab commented Oct 5, 2024

A separate kf6-kconfig-cross-tools may be necessary. Turning into subpackage is difficult, because fully building kf6-kconfig for the ubuntu host needs libGLX and more which is not so possible. Partially build kconfig_compiler_kf6 will need a header that requires kf6-kconfig to build first. Doing host build after cross compilation probably needs some tricks and workaround more than just unset environment variables e.g. CC, CXX, CPP, LDFLAGS, etc.

I did simple testing on preview, effects and render. Other than the cross tool issue as well as the package group issue mentioned by @Biswa96, this PR should be probably quite ready for review.

@twaik
Copy link
Member

twaik commented Oct 5, 2024

If the only thing you need in kf6-kconfig-cross-tools is kconfig_version.h you may just generate it, it is pretty simple.

// This file was generated by ecm_setup_version(): DO NOT EDIT!

#ifndef KCONFIG_VERSION_H
#define KCONFIG_VERSION_H

#define KCONFIG_VERSION_STRING "5.115.0"
#define KCONFIG_VERSION_MAJOR 5
#define KCONFIG_VERSION_MINOR 115
#define KCONFIG_VERSION_PATCH 0
#define KCONFIG_VERSION ((5<<16)|(115<<8)|(0))

#endif

So it will be a part of kf6-kconfig subpackage.

@TomJo2000 TomJo2000 added x11 Issue is related to stuff requiring X11 environment or x11-packages qt6 labels Oct 5, 2024
@knyipab knyipab force-pushed the dev/kdenlive-pr branch 3 times, most recently from 8191e84 to 281b1d8 Compare October 6, 2024 13:09
@knyipab
Copy link
Contributor Author

knyipab commented Oct 6, 2024

@twaik Thanks and done making it as a subpackage.

@hansm629
Copy link

@knyipab
I'm eagerly waiting for the Kdenlive merge to be completed~

This is unrelated to the current pull request, but in the future, do you think there's a possibility that programs like Pencil2D, Kolourpaint, and Okular will also be ported to Termux?

@Biswa96
Copy link
Member

Biswa96 commented Oct 11, 2024

There are some git conflict with recent kf6 changes. Here are two things to follow.

  1. I have added the following two cmake options for all kf6 package. Please add those here too.
-DKDE_INSTALL_QMLDIR=lib/qt6/qml
-DKDE_INSTALL_QTPLUGINDIR=lib/qt6/plugins
  1. I have added the version constrain (>= ${TERMUX_PKG_VERSION}) for only kf6 dependencies in TERMUX_PKG_DEPENDS and TERMUX_PKG_BUILD_DEPENDS. Please add that also. This would probably help with multiple auto update issues.

@twaik
Copy link
Member

twaik commented Oct 18, 2024

@knyipab can you please rebase this PR to master? The branch has conflicts.

@knyipab
Copy link
Contributor Author

knyipab commented Oct 19, 2024

Rebased, bumped to 6.7.0 and modified as requested.
Tested to render a simple video with blur effect.

@twaik
Copy link
Member

twaik commented Oct 21, 2024

image
Probably we should add ffplay and mediainfo to dependencies.
What about missing modules?

@knyipab
Copy link
Contributor Author

knyipab commented Oct 22, 2024

@TomJo2000 Addressed your code review.

Sorry to say that I doubt if it would be helpful to put me as maintainer for this particular package, provided no much expertise involved (unlike xfce plugins last time) and the uncertainty of my activeness (my skill and spare time only allow me to do simple stuff these days). Plus, kf6-* & mlt should likely be reused by other KDE apps frequently in the future.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
qt6 x11 Issue is related to stuff requiring X11 environment or x11-packages
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Package]: kdenlive
5 participants