diff --git a/pkgs/applications/misc/openlp/default.nix b/pkgs/applications/misc/openlp/default.nix deleted file mode 100644 index c77b494f08ca..000000000000 --- a/pkgs/applications/misc/openlp/default.nix +++ /dev/null @@ -1,87 +0,0 @@ -# This file contains all runtime glue: Bindings to optional runtime dependencies -# for pdfSupport, presentationSupport, and media playback. -{ lib, mkDerivation, wrapGAppsHook3, python3Packages - -# qt deps -, qtbase, qtmultimedia - -# optional deps -, pdfSupport ? false, mupdf # alternatively could use ghostscript -, presentationSupport ? false, libreoffice-unwrapped -, vlcSupport ? false -, gstreamerSupport ? false, gst_all_1, gstPlugins ? (gst: [ - gst.gst-plugins-base - gst.gst-plugins-good - gst.gst-plugins-bad - gst.gst-plugins-ugly - ]) - -#, enableMySql ? false # Untested. If interested, contact maintainer. -#, enablePostgreSql ? false # Untested. If interested, contact maintainer. -#, enableJenkinsApi ? false # Untested. If interested, contact maintainer. -}: - -let p = gstPlugins gst_all_1; -# If gstreamer is activated but no plugins are given, it will at runtime -# create the false illusion of being usable. -in assert gstreamerSupport -> (builtins.isList p && builtins.length p > 0); - -let - # optional packages - libreofficePath = "${libreoffice-unwrapped}/lib/libreoffice/program"; - - # lib functions - inherit (lib.lists) optional optionals; - wrapSetVar = var: ''--set ${var} "''$${var}"''; - - # base pkg/lib - baseLib = python3Packages.callPackage ./lib.nix { }; -in mkDerivation { - pname = baseLib.pname + lib.optionalString (pdfSupport && presentationSupport && vlcSupport && gstreamerSupport) "-full"; - inherit (baseLib) version src; - - nativeBuildInputs = [ python3Packages.wrapPython wrapGAppsHook3 ]; - buildInputs = [ qtbase ] ++ optionals gstreamerSupport - ([ qtmultimedia.bin gst_all_1.gstreamer ] ++ gstPlugins gst_all_1); - propagatedBuildInputs = optional pdfSupport mupdf - ++ optional presentationSupport libreoffice-unwrapped; - pythonPath = [ baseLib ] ++ optional vlcSupport python3Packages.python-vlc; - # ++ optional enableMySql mysql-connector # Untested. If interested, contact maintainer. - # ++ optional enablePostgreSql psycopg2 # Untested. If interested, contact maintainer. - # ++ optional enableJenkinsApi jenkinsapi # Untested. If interested, contact maintainer. - - PYTHONPATH = libreofficePath; - URE_BOOTSTRAP = "vnd.sun.star.pathname:${libreofficePath}/fundamentalrc"; - UNO_PATH = libreofficePath; - LD_LIBRARY_PATH = libreofficePath; - JAVA_HOME = "${libreoffice-unwrapped.jdk.home}"; - - dontWrapQtApps = true; - dontWrapGApps = true; - - # defined in gappsWrapperHook - wrapPrefixVariables = optionals presentationSupport - [ "PYTHONPATH" "LD_LIBRARY_PATH" "JAVA_HOME" ]; - makeWrapperArgs = [ - "\${gappsWrapperArgs[@]}" - "\${qtWrapperArgs[@]}" - ] ++ optionals presentationSupport - ([ "--prefix PATH : ${libreoffice-unwrapped}/bin" ] - ++ map wrapSetVar [ "URE_BOOTSTRAP" "UNO_PATH" ]); - - installPhase = '' - install -D openlp.py $out/bin/openlp - ''; - - preFixup = '' - wrapPythonPrograms - ''; - - meta = baseLib.meta // { - hydraPlatforms = [ ]; # this is only the wrapper; baseLib gets built - }; - - passthru = { - inherit baseLib; - }; -} diff --git a/pkgs/applications/misc/openlp/lib.nix b/pkgs/applications/misc/openlp/lib.nix deleted file mode 100644 index ea22f54ac022..000000000000 --- a/pkgs/applications/misc/openlp/lib.nix +++ /dev/null @@ -1,103 +0,0 @@ -# This file contains the base package, some of which is compiled. -# Runtime glue to optinal runtime dependencies is in 'default.nix'. -{ fetchurl, lib, qt5 - -# python deps -, python, buildPythonPackage -, alembic, beautifulsoup4, chardet, lxml, mako, pyenchant -, pyqt5-webkit, pyxdg, sip4, sqlalchemy, sqlalchemy-migrate -}: - -buildPythonPackage rec { - pname = "openlp"; - version = "2.4.6"; - - src = fetchurl { - url = "https://get.openlp.org/${version}/OpenLP-${version}.tar.gz"; - sha256 = "f63dcf5f1f8a8199bf55e806b44066ad920d26c9cf67ae432eb8cdd1e761fc30"; - }; - - doCheck = false; - # FIXME: checks must be disabled because they are lacking the qt env. - # They fail like this, even if built and wrapped with all Qt and - # runtime dependencies: - # - # running install tests - # qt.qpa.plugin: Could not find the Qt platform plugin "xcb" in "" - # This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem. - # - # Available platform plugins are: wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx. - # - # See also https://discourse.nixos.org/t/qt-plugin-path-unset-in-test-phase/ - - #nativeCheckInputs = [ mock nose ]; - nativeBuildInputs = [ qt5.qttools ]; - propagatedBuildInputs = [ - alembic - beautifulsoup4 - chardet - lxml - mako - pyenchant - pyqt5-webkit - pyxdg - sip4 - sqlalchemy - sqlalchemy-migrate - ]; - - prePatch = '' - echo 'from vlc import *' > openlp/core/ui/media/vendor/vlc.py - ''; - - dontWrapQtApps = true; - dontWrapGApps = true; - postInstall = '' - ( # use subshell because of cd - tdestdir="$out/i18n" - mkdir -p "$tdestdir" - cd ./resources/i18n - for file in *.ts; do - lconvert -i "$file" -o "$tdestdir/''${file%%ts}qm" - done - ) - ''; - - preFixup = '' - rm -r $out/${python.sitePackages}/tests - rm -r $out/bin - ''; - - meta = with lib; { - description = "Free church presentation software"; - homepage = "https://openlp.org/"; - downloadPage = "https://openlp.org/#downloads"; - platforms = platforms.unix; - license = licenses.gpl2Only; - maintainers = [ maintainers.jorsn ]; - - longDescription = '' - OpenLP is a free church presentation software. - - Features: - - * Cross platform between Linux, Windows, OS X and FreeBSD - * Display songs, Bible verses, presentations, images, audio and video - * Control OpenLP remotely via the Android remote, iOS remote or mobile web browser - * Quickly and easily import songs from other popular presentation packages - * Easy enough to use to get up and running in less than 10 minutes - - Remark: This pkg only supports sqlite dbs. If you wish to have support for - mysql or postgresql dbs, or Jenkins, please contact the maintainer. - - Bugs which affect this software packaged in Nixpkgs: - - 1. The package must disable checks, because they are lacking the qt env. - (see pkg source and https://discourse.nixos.org/t/qt-plugin-path-unset-in-test-phase/) - 2. There is a segfault on exit. Not a real problem, according to debug log, everything - shuts down correctly. Maybe related to https://forums.openlp.org/discussion/3620/crash-on-exit. - Plan: Wait for OpenLP-3, since it is already in beta 1 - (2021-02-09; news: https://openlp.org/blog/). - ''; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 35d8138fdfa4..1e6c99e7c13a 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1071,6 +1071,7 @@ mapAliases ({ openimageio_1 = throw "'openimageio_1' has been removed, please update to 'openimageio' 2"; # Added 2023-06-14 openisns = open-isns; # Added 2020-01-28 openjpeg_2 = openjpeg; # Added 2021-01-25 + openlp = throw "openlp has been removed for now because the outdated version depended on insecure and removed packages and it needs help to upgrade and maintain it; see https://github.com/NixOS/nixpkgs/pull/314882"; # Added 2024-07-29 openmpt123 = libopenmpt; # Added 2021-09-05 openssl_3_0 = openssl_3; # Added 2022-06-27 openvpn_24 = throw "openvpn_24 has been removed, because it went EOL. 2.5.x or newer is still available"; # Added 2023-01-23 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 94c74d914ebd..09522213bc1b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -37099,14 +37099,6 @@ with pkgs; octopus = callPackage ../applications/science/chemistry/octopus { }; - openlp = libsForQt5.callPackage ../applications/misc/openlp { }; - openlpFull = openlp.override { - pdfSupport = true; - presentationSupport = true; - vlcSupport = true; - gstreamerSupport = true; - }; - autodock-vina = callPackage ../applications/science/chemistry/autodock-vina { }; dkh = callPackage ../applications/science/chemistry/dkh { };