nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at netboot-syslinux-multiplatform 103 lines 3.4 kB view raw
1# This file contains the base package, some of which is compiled. 2# Runtime glue to optinal runtime dependencies is in 'default.nix'. 3{ fetchurl, lib, qt5 4 5# python deps 6, python, buildPythonPackage 7, alembic, beautifulsoup4, chardet, lxml, mako, pyenchant 8, pyqt5_with_qtwebkit, pyxdg, sip_4, sqlalchemy, sqlalchemy-migrate 9}: 10 11buildPythonPackage rec { 12 pname = "openlp"; 13 version = "2.4.6"; 14 15 src = fetchurl { 16 url = "https://get.openlp.org/${version}/OpenLP-${version}.tar.gz"; 17 sha256 = "f63dcf5f1f8a8199bf55e806b44066ad920d26c9cf67ae432eb8cdd1e761fc30"; 18 }; 19 20 doCheck = false; 21 # FIXME: checks must be disabled because they are lacking the qt env. 22 # They fail like this, even if built and wrapped with all Qt and 23 # runtime dependencies: 24 # 25 # running install tests 26 # qt.qpa.plugin: Could not find the Qt platform plugin "xcb" in "" 27 # This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem. 28 # 29 # Available platform plugins are: wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx. 30 # 31 # See also https://discourse.nixos.org/t/qt-plugin-path-unset-in-test-phase/ 32 33 #nativeCheckInputs = [ mock nose ]; 34 nativeBuildInputs = [ qt5.qttools ]; 35 propagatedBuildInputs = [ 36 alembic 37 beautifulsoup4 38 chardet 39 lxml 40 mako 41 pyenchant 42 pyqt5_with_qtwebkit 43 pyxdg 44 sip_4 45 sqlalchemy 46 sqlalchemy-migrate 47 ]; 48 49 prePatch = '' 50 echo 'from vlc import *' > openlp/core/ui/media/vendor/vlc.py 51 ''; 52 53 dontWrapQtApps = true; 54 dontWrapGApps = true; 55 postInstall = '' 56 ( # use subshell because of cd 57 tdestdir="$out/i18n" 58 mkdir -p "$tdestdir" 59 cd ./resources/i18n 60 for file in *.ts; do 61 lconvert -i "$file" -o "$tdestdir/''${file%%ts}qm" 62 done 63 ) 64 ''; 65 66 preFixup = '' 67 rm -r $out/${python.sitePackages}/tests 68 rm -r $out/bin 69 ''; 70 71 meta = with lib; { 72 description = "Free church presentation software"; 73 homepage = "https://openlp.org/"; 74 downloadPage = "https://openlp.org/#downloads"; 75 platforms = platforms.unix; 76 license = licenses.gpl2Only; 77 maintainers = [ maintainers.jorsn ]; 78 79 longDescription = '' 80 OpenLP is a free church presentation software. 81 82 Features: 83 84 * Cross platform between Linux, Windows, OS X and FreeBSD 85 * Display songs, Bible verses, presentations, images, audio and video 86 * Control OpenLP remotely via the Android remote, iOS remote or mobile web browser 87 * Quickly and easily import songs from other popular presentation packages 88 * Easy enough to use to get up and running in less than 10 minutes 89 90 Remark: This pkg only supports sqlite dbs. If you wish to have support for 91 mysql or postgresql dbs, or Jenkins, please contact the maintainer. 92 93 Bugs which affect this software packaged in Nixpkgs: 94 95 1. The package must disable checks, because they are lacking the qt env. 96 (see pkg source and https://discourse.nixos.org/t/qt-plugin-path-unset-in-test-phase/) 97 2. There is a segfault on exit. Not a real problem, according to debug log, everything 98 shuts down correctly. Maybe related to https://forums.openlp.org/discussion/3620/crash-on-exit. 99 Plan: Wait for OpenLP-3, since it is already in beta 1 100 (2021-02-09; news: https://openlp.org/blog/). 101 ''; 102 }; 103}