nixpkgs/pkgs/by-name/qm/qmplay2/package.nix

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

117 lines
2.2 KiB
Nix
Raw Normal View History

{
lib,
alsa-lib,
callPackage,
cmake,
ffmpeg,
fribidi,
game-music-emu,
libXdmcp,
libXv,
libass,
libcddb,
libcdio,
libpulseaudio,
libsidplayfp,
libva,
libxcb,
2024-07-23 02:39:44 +00:00
ninja,
pkg-config,
qt5,
2024-07-23 02:39:44 +00:00
qt6,
stdenv,
taglib,
vulkan-headers,
vulkan-tools,
2024-07-23 02:39:44 +00:00
# Configurable options
qtVersion ? "6", # Can be 5 or 6
2020-11-28 00:02:38 +00:00
}:
2023-03-27 02:03:51 +00:00
let
sources = callPackage ./sources.nix { };
in
assert lib.elem qtVersion [
"5"
"6"
];
2023-04-16 20:10:09 +00:00
stdenv.mkDerivation (finalAttrs: {
2024-07-23 02:39:44 +00:00
pname = sources.qmplay2.pname + "-qt" + qtVersion;
inherit (sources.qmplay2) version src;
2020-11-28 00:02:38 +00:00
postPatch = ''
pushd src
cp -va ${sources.qmvk.src}/* qmvk/
chmod --recursive 744 qmvk
popd
'';
nativeBuildInputs =
[
cmake
ninja
pkg-config
]
++ lib.optionals (qtVersion == "6") [ qt6.wrapQtAppsHook ]
++ lib.optionals (qtVersion == "5") [ qt5.wrapQtAppsHook ];
2023-03-27 02:03:51 +00:00
buildInputs =
[
alsa-lib
ffmpeg
fribidi
game-music-emu
libXdmcp
libXv
libass
libcddb
libcdio
libpulseaudio
libsidplayfp
libva
libxcb
taglib
vulkan-headers
vulkan-tools
]
++ lib.optionals (qtVersion == "6") [
qt6.qt5compat
qt6.qtbase
qt6.qtsvg
qt6.qttools
]
++ lib.optionals (qtVersion == "5") [
qt5.qtbase
qt5.qttools
];
2020-11-28 00:02:38 +00:00
2024-07-03 17:25:52 +00:00
strictDeps = true;
# Because we think it is better to use only lowercase letters!
# But sometimes we come across case-insensitive filesystems...
2024-07-26 12:23:08 +00:00
postInstall = ''
[ -e $out/bin/qmplay2 ] || ln -s $out/bin/QMPlay2 $out/bin/qmplay2
2020-11-28 00:02:38 +00:00
'';
passthru = {
inherit sources;
};
2023-03-27 02:03:51 +00:00
meta = {
2020-11-28 00:02:38 +00:00
homepage = "https://github.com/zaps166/QMPlay2/";
description = "Qt-based Multimedia player";
longDescription = ''
QMPlay2 is a video and audio player. It can play all formats supported by
FFmpeg and libmodplug (including J2B and SFX). It also supports Audio CD,
raw files, Rayman 2 music, and chiptunes. It also contains YouTube and
MyFreeMP3 browser.
2020-11-28 00:02:38 +00:00
'';
2023-03-27 02:03:51 +00:00
license = lib.licenses.lgpl3Plus;
mainProgram = "qmplay2";
maintainers = with lib.maintainers; [
AndersonTorres
kashw2
];
2023-03-27 02:03:51 +00:00
platforms = lib.platforms.linux;
2020-11-28 00:02:38 +00:00
};
2023-03-27 02:03:51 +00:00
})