mediaelch: move to by-name and clean up (#414670)
This commit is contained in:
+51
-43
@@ -5,59 +5,33 @@
|
||||
fetchpatch,
|
||||
|
||||
cmake,
|
||||
qttools,
|
||||
wrapQtAppsHook,
|
||||
|
||||
curl,
|
||||
ffmpeg,
|
||||
libmediainfo,
|
||||
libzen,
|
||||
qt5compat ? null, # qt6 only
|
||||
qtbase,
|
||||
qtdeclarative,
|
||||
qtmultimedia,
|
||||
qtsvg,
|
||||
qtwayland,
|
||||
quazip,
|
||||
libsForQt5,
|
||||
qt6Packages,
|
||||
|
||||
qtVersion ? 6,
|
||||
}:
|
||||
|
||||
let
|
||||
qtVersion = lib.versions.major qtbase.version;
|
||||
qt' = if qtVersion == 5 then libsForQt5 else qt6Packages;
|
||||
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "mediaelch";
|
||||
version = "2.12.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Komet";
|
||||
repo = "MediaElch";
|
||||
rev = "v${version}";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-m2d4lnyD8HhhqovMdeG36dMK+4kJA7rlPHE2tlhfevo=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
qttools
|
||||
wrapQtAppsHook
|
||||
];
|
||||
|
||||
buildInputs =
|
||||
[
|
||||
curl
|
||||
ffmpeg
|
||||
libmediainfo
|
||||
libzen
|
||||
qtbase
|
||||
qtdeclarative
|
||||
qtmultimedia
|
||||
qtsvg
|
||||
qtwayland
|
||||
quazip
|
||||
]
|
||||
++ lib.optionals (qtVersion == "6") [
|
||||
qt5compat
|
||||
];
|
||||
|
||||
patches = [
|
||||
# fix from: https://github.com/Komet/MediaElch/pull/1878
|
||||
(fetchpatch {
|
||||
@@ -66,10 +40,34 @@ stdenv.mkDerivation rec {
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
qt'.qttools
|
||||
qt'.wrapQtAppsHook
|
||||
];
|
||||
|
||||
buildInputs =
|
||||
[
|
||||
curl
|
||||
ffmpeg
|
||||
libmediainfo
|
||||
libzen
|
||||
qt'.qtbase
|
||||
qt'.qtdeclarative
|
||||
qt'.qtmultimedia
|
||||
qt'.qtsvg
|
||||
qt'.qtwayland
|
||||
qt'.quazip
|
||||
]
|
||||
++ lib.optionals (qtVersion == 6) [
|
||||
qt'.qt5compat
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DDISABLE_UPDATER=ON"
|
||||
"-DUSE_EXTERN_QUAZIP=ON"
|
||||
"-DMEDIAELCH_FORCE_QT${qtVersion}=ON"
|
||||
(lib.cmakeBool "DISABLE_UPDATER" true)
|
||||
(lib.cmakeBool "ENABLE_TESTS" finalAttrs.finalPackage.doCheck or false)
|
||||
(lib.cmakeBool "MEDIAELCH_FORCE_QT${toString qtVersion}" true)
|
||||
(lib.cmakeBool "USE_EXTERN_QUAZIP" true)
|
||||
];
|
||||
|
||||
# libmediainfo.so.0 is loaded dynamically
|
||||
@@ -77,12 +75,22 @@ stdenv.mkDerivation rec {
|
||||
"--prefix LD_LIBRARY_PATH : ${libmediainfo}/lib"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
env = {
|
||||
HOME = "/tmp"; # for the font cache
|
||||
LANG = "C.UTF-8";
|
||||
QT_QPA_PLATFORM = "offscreen"; # the tests require a UI
|
||||
};
|
||||
|
||||
doCheck = true;
|
||||
|
||||
checkTarget = "unit_test"; # the other tests require network connectivity
|
||||
|
||||
meta = {
|
||||
homepage = "https://mediaelch.de/mediaelch/";
|
||||
description = "Media Manager for Kodi";
|
||||
mainProgram = "MediaElch";
|
||||
license = licenses.lgpl3Only;
|
||||
maintainers = with maintainers; [ stunkymonkey ];
|
||||
platforms = platforms.linux;
|
||||
license = lib.licenses.lgpl3Only;
|
||||
maintainers = with lib.maintainers; [ stunkymonkey ];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
})
|
||||
@@ -13063,9 +13063,8 @@ with pkgs;
|
||||
|
||||
mbrola-voices = callPackage ../applications/audio/mbrola/voices.nix { };
|
||||
|
||||
mediaelch = mediaelch-qt5;
|
||||
mediaelch-qt5 = libsForQt5.callPackage ../applications/misc/mediaelch { };
|
||||
mediaelch-qt6 = qt6Packages.callPackage ../applications/misc/mediaelch { };
|
||||
mediaelch-qt5 = callPackage ../by-name/me/mediaelch/package.nix { qtVersion = 5; };
|
||||
mediaelch-qt6 = mediaelch;
|
||||
|
||||
melmatcheq.lv2 = callPackage ../applications/audio/melmatcheq.lv2 { };
|
||||
|
||||
|
||||
Reference in New Issue
Block a user