Merge pull request #67544 from vbgl/qarte+fix-qt-platform

qarte: use qt5’s mkDerivation and an other fix
This commit is contained in:
Vincent Laporte 2019-09-12 15:31:17 +00:00 committed by GitHub
commit bf759337fa
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 20 additions and 10 deletions

View File

@ -1,8 +1,8 @@
{ stdenv, fetchbzr, python3, rtmpdump, makeWrapper }: { mkDerivation, lib, fetchbzr, python3, rtmpdump }:
let let
pythonEnv = python3.withPackages (ps: with ps; [ pyqt5 sip ]); pythonEnv = python3.withPackages (ps: with ps; [ pyqt5_with_qtmultimedia ]);
in stdenv.mkDerivation { in mkDerivation {
name = "qarte-4.6.0"; name = "qarte-4.6.0";
src = fetchbzr { src = fetchbzr {
url = http://bazaar.launchpad.net/~vincent-vandevyvre/qarte/qarte-4; url = http://bazaar.launchpad.net/~vincent-vandevyvre/qarte/qarte-4;
@ -10,28 +10,33 @@ in stdenv.mkDerivation {
sha256 = "0v4zpj8w67ydvnmanxbl8pwvn0cfv70c0mlw36a1r4n0rvgxffcn"; sha256 = "0v4zpj8w67ydvnmanxbl8pwvn0cfv70c0mlw36a1r4n0rvgxffcn";
}; };
buildInputs = [ makeWrapper pythonEnv ]; buildInputs = [ pythonEnv ];
installPhase = '' installPhase = ''
runHook preInstall
mkdir -p $out/bin mkdir -p $out/bin
mv qarte $out/bin/ mv qarte $out/bin/
substituteInPlace $out/bin/qarte \ substituteInPlace $out/bin/qarte \
--replace '/usr/share' "$out/share" --replace '/usr/share' "$out/share"
wrapProgram $out/bin/qarte \
--prefix PATH : "${rtmpdump}/bin"
mkdir -p $out/share/man/man1/ mkdir -p $out/share/man/man1/
mv qarte.1 $out/share/man/man1/ mv qarte.1 $out/share/man/man1/
mkdir -p $out/share/qarte mkdir -p $out/share/qarte
mv * $out/share/qarte/ mv * $out/share/qarte/
runHook postInstall
'';
postFixup = ''
wrapQtApp $out/bin/qarte \
--prefix PATH : ${rtmpdump}/bin
''; '';
meta = { meta = {
homepage = https://launchpad.net/qarte; homepage = https://launchpad.net/qarte;
description = "A recorder for Arte TV Guide and Arte Concert"; description = "A recorder for Arte TV Guide and Arte Concert";
license = stdenv.lib.licenses.gpl3; license = lib.licenses.gpl3;
maintainers = with stdenv.lib.maintainers; [ vbgl ]; maintainers = with lib.maintainers; [ vbgl ];
platforms = stdenv.lib.platforms.linux; platforms = lib.platforms.linux;
}; };
} }

View File

@ -6,6 +6,7 @@
, qtdeclarative , qtdeclarative
, qtwebchannel , qtwebchannel
, withConnectivity ? false, qtconnectivity , withConnectivity ? false, qtconnectivity
, withMultimedia ? false, qtmultimedia
, withWebKit ? false, qtwebkit , withWebKit ? false, qtwebkit
, withWebSockets ? false, qtwebsockets , withWebSockets ? false, qtwebsockets
}: }:
@ -50,6 +51,7 @@ in buildPythonPackage rec {
qtwebchannel qtwebchannel
] ]
++ lib.optional withConnectivity qtconnectivity ++ lib.optional withConnectivity qtconnectivity
++ lib.optional withMultimedia qtmultimedia
++ lib.optional withWebKit qtwebkit ++ lib.optional withWebKit qtwebkit
++ lib.optional withWebSockets qtwebsockets ++ lib.optional withWebSockets qtwebsockets
; ;
@ -121,6 +123,7 @@ in buildPythonPackage rec {
] ]
++ lib.optional withWebSockets "PyQt5.QtWebSockets" ++ lib.optional withWebSockets "PyQt5.QtWebSockets"
++ lib.optional withWebKit "PyQt5.QtWebKit" ++ lib.optional withWebKit "PyQt5.QtWebKit"
++ lib.optional withMultimedia "PyQt5.QtMultimedia"
++ lib.optional withConnectivity "PyQt5.QtConnectivity" ++ lib.optional withConnectivity "PyQt5.QtConnectivity"
; ;
imports = lib.concatMapStrings (module: "import ${module};") modules; imports = lib.concatMapStrings (module: "import ${module};") modules;

View File

@ -5687,7 +5687,7 @@ in
openmodelica = callPackage ../applications/science/misc/openmodelica { }; openmodelica = callPackage ../applications/science/misc/openmodelica { };
qarte = callPackage ../applications/video/qarte { }; qarte = libsForQt5.callPackage ../applications/video/qarte { };
qlcplus = libsForQt5.callPackage ../applications/misc/qlcplus { }; qlcplus = libsForQt5.callPackage ../applications/misc/qlcplus { };

View File

@ -1002,6 +1002,8 @@ in {
*/ */
pyqt5_with_qtwebkit = self.pyqt5.override { withWebKit = true; }; pyqt5_with_qtwebkit = self.pyqt5.override { withWebKit = true; };
pyqt5_with_qtmultimedia = self.pyqt5.override { withMultimedia = true; };
pyqtwebengine = pkgs.libsForQt5.callPackage ../development/python-modules/pyqtwebengine { pyqtwebengine = pkgs.libsForQt5.callPackage ../development/python-modules/pyqtwebengine {
pythonPackages = self; pythonPackages = self;
}; };