These .desktop files set InitialPreference>1 which will override other
associations even the .desktop appears first in XDG_DATA_DIRS. This
applies to:
- org.kde.kate.desktop
- org.kde.kwrite.desktop
- kfmclient_html.desktop
- okularApplication_txt.desktop
Fixes #86137
Following nh2's advice, I want to be more involved in nixpkgs,
and I'll start to review changes to programs that are important to me,
and that didn't have a long list of maintainers yet.
CMake Error at /nix/store/cmriqbxnpcgmbll06pnl1h3va08x2xvr-cmake-3.16.5/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:146 (message):
Could NOT find SharedMimeInfo (missing: UPDATE_MIME_DATABASE_EXECUTABLE)
(Required is at least version "1.3")
Call Stack (most recent call first):
/nix/store/cmriqbxnpcgmbll06pnl1h3va08x2xvr-cmake-3.16.5/share/cmake-3.16/Modules/FindPackageHandleStandardArgs.cmake:393 (_FPHSA_FAILURE_MESSAGE)
/nix/store/hxvvgjkvpp22g1rykzcb734649sgzjz0-extra-cmake-modules-5.66.0/share/ECM/find-modules/FindSharedMimeInfo.cmake:74 (find_package_handle_standard_args)
CMakeLists.txt:32 (find_package)
kdenlive's configuration stores two paths to the `mlt` package. These
may be set in the GUI under `Settings -> Configure Kdenlive ->
Environment`, and are persisted in $XDG_CONFIG_HOME/.kdenliverc
A problem I encountered was `kdenlive` holding on to old `mlt` paths
in these settings after a nixpkgs update, causing video rendering to fail.
The C++ class kdenlive uses for these settings is automatically
generated, so what this patch does is edit the declaration of the
relevant settings to provide default values with the absolute path of
`mlt` known at build time, and mark those settings as hidden.
In testing, I've found that changing `mlt` and rebuilding `kdenlive`
causes updated paths to appear in the GUI, and no entries to be added
to the kdenliverc file.
A shortcoming of this patch is that existing users will already have paths
stored in their `kdenliverc` files that can cause trouble. The hope is
that an approach like the one taken here will reduce this sort
of breakage moving forward.