From de8cf8018c525690b1c43bed82fdd9adf2df9b00 Mon Sep 17 00:00:00 2001 From: OPNA2608 Date: Sat, 24 Aug 2024 22:25:26 +0200 Subject: lomiri.lomiri-docviewer-app: init at 3.0.4 --- .../applications/lomiri-docviewer-app/default.nix | 155 +++++++++++++++++++++ pkgs/desktops/lomiri/default.nix | 1 + 2 files changed, 156 insertions(+) create mode 100644 pkgs/desktops/lomiri/applications/lomiri-docviewer-app/default.nix (limited to 'pkgs/desktops') diff --git a/pkgs/desktops/lomiri/applications/lomiri-docviewer-app/default.nix b/pkgs/desktops/lomiri/applications/lomiri-docviewer-app/default.nix new file mode 100644 index 0000000000000..9fb8cebe4e94b --- /dev/null +++ b/pkgs/desktops/lomiri/applications/lomiri-docviewer-app/default.nix @@ -0,0 +1,155 @@ +{ + stdenv, + lib, + fetchFromGitLab, + fetchpatch, + fetchpatch2, + gitUpdater, + cmake, + content-hub, + gettext, + libreoffice, + libreoffice-unwrapped, + lomiri-ui-toolkit, + pkg-config, + poppler, + qtbase, + qtdeclarative, + qtsystems, + wrapQtAppsHook, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "lomiri-docviewer-app"; + version = "3.0.4"; + + src = fetchFromGitLab { + owner = "ubports"; + repo = "development/apps/lomiri-docviewer-app"; + rev = "v${finalAttrs.version}"; + hash = "sha256-xUBE+eSAfG2yMlE/DI+6JHQx+3HiNwtSTv/P4YOAE7Y="; + }; + + patches = [ + # Remove when version > 3.0.4 + (fetchpatch { + name = "0001-lomiri-docviewer-app-Set-gettext-domain.patch"; + url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/8dc2c911817c45451ff341e4ae4b841bcc134945.patch"; + hash = "sha256-vP6MYl7qhJzkgtnVelMMIbc0ZkHxC1s3abUXJ2zVi4w="; + }) + (fetchpatch { + name = "0002-lomiri-docviewer-app-Install-splash-file.patch"; + url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/ef20bbdd5e80040bf11273a5fc2964400086fdc9.patch"; + hash = "sha256-ylPFn53PJRyyzhN1SxtmNFMFeDsV9UxyQhAqULA5PJM="; + }) + + # Remove when https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/merge_requests/72 merged & in release + (fetchpatch { + name = "1001-lomiri-docviewer-app-Stop-using-qt5_use_modules.patch"; + url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/120c81dd71356f2e06ef5c44d114b665236a7382.patch"; + hash = "sha256-4VCw90qYnQ/o67ndp9o8h+wUl2IUpmVGb9xyY55AMIQ="; + }) + (fetchpatch { + name = "1002-lomiri-docviewer-app-Move-Qt-find_package-to-top-level.patch"; + url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/43ee96a3a33b7a8f04e95f434982bcc60ba4b257.patch"; + hash = "sha256-3LggdNo4Yak4SVAD/4/mMCl8PjZy1dIx9i5hKHM5fJU="; + }) + + # Remove when https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/merge_requests/73 merged & in release + (fetchpatch { + name = "1011-lomiri-docviewer-app-Call-i18n-bindtextdomain.patch"; + url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/67599a841917304f76ffa1167a217718542a8b46.patch"; + hash = "sha256-nbi3qX14kWtFcXrxAD41IeybDIRTNfUdRgSP1vDI/Hs="; + }) + + # Remove when https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/merge_requests/74 merged & in release + (fetchpatch { + name = "1021-lomiri-docviewer-app-Use-GNUInstallDirs-more-better.patch"; + url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/40a860a118077c05692002db694be77ea62dc5b3.patch"; + hash = "sha256-/zhpIdqZ7WsU4tx4/AZs5w8kEopjH2boiHdHaJk5RXk="; + }) + + # Remove when https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/merge_requests/75 merged & in release + (fetchpatch { + name = "1031-lomiri-docviewer-app-Use-BUILD_TESTING.patch"; + url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/6f1eb739a3e0bf0ba847f94f8ea8411e0a385c2d.patch"; + hash = "sha256-yVuYG+1JGo/I4TVRZ3UQeO/TJ8GiFO5BJ9Bs7glK7hg="; + }) + + # Remove when https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/merge_requests/76 merged & in release + # fetchpatch2 because there's a file rename + (fetchpatch2 { + name = "1041-lomiri-docviewer-app-Configurable-LibreOffice-path.patch"; + url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/6e1aee99b31b88a90b07f3c5fcf6340c54ce9aaa.patch"; + hash = "sha256-KdHyKXM0hMMIFkuDn5JZJOEuitWAXT2QQOuR+1AolP0="; + }) + + # Remove when https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/merge_requests/77 merged & in release + (fetchpatch { + name = "1051-lomiri-docviewer-app-Install-content-hub-lomiri-url-dispatcher-files.patch"; + url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/98f5ab9d51ba05e8c3ed1991c0b67d3922b5ba90.patch"; + hash = "sha256-JA26ga1CNOdbis87lSzqbUbs94Oc1vlxraXZxx3dsu8="; + }) + ]; + + postPatch = '' + substituteInPlace cmake/modules/Click.cmake \ + --replace-fail 'qmake -query QT_INSTALL_QML' "echo $out/${qtbase.qtQmlPrefix}" + + # We don't want absolute paths in desktop files + substituteInPlace data/CMakeLists.txt \ + --replace-fail 'ICON "''${DATA_DIR}/''${ICON_FILE}"' 'ICON lomiri-docviewer-app' \ + --replace-fail 'SPLASH "''${DATA_DIR}/''${SPLASH_FILE}"' 'SPLASH "lomiri-app-launch/splash/lomiri-docviewer-app.svg"' + ''; + + strictDeps = true; + + nativeBuildInputs = [ + cmake + gettext + pkg-config + wrapQtAppsHook + ]; + + buildInputs = [ + libreoffice-unwrapped # LibreOfficeKit + poppler + qtbase + qtdeclarative + + # QML + content-hub + lomiri-ui-toolkit + qtsystems + ]; + + cmakeFlags = [ + (lib.cmakeBool "INSTALL_TESTS" false) + (lib.cmakeBool "CLICK_MODE" false) + (lib.cmakeFeature "LIBREOFFICE_PREFIX" "${libreoffice-unwrapped}") + ]; + + # Only autopilot tests we can't run + doCheck = false; + + postInstall = '' + mkdir -p $out/share/{icons/hicolor/scalable/apps,lomiri-app-launch/splash} + + ln -s $out/share/{lomiri-docviewer-app/docviewer-app.svg,icons/hicolor/scalable/apps/lomiri-docviewer-app.svg} + ln -s $out/share/{lomiri-docviewer-app/docviewer-app-splash.svg,lomiri-app-launch/splash/lomiri-docviewer-app.svg} + ''; + + passthru = { + updateScript = gitUpdater { rev-prefix = "v"; }; + }; + + meta = { + description = "Document Viewer application for Ubuntu Touch devices"; + homepage = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app"; + changelog = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/blob/v${finalAttrs.version}/ChangeLog"; + license = lib.licenses.gpl3Only; + maintainers = lib.teams.lomiri.members; + mainProgram = "lomiri-docviewer-app"; + platforms = lib.platforms.linux; + }; +}) diff --git a/pkgs/desktops/lomiri/default.nix b/pkgs/desktops/lomiri/default.nix index f905c77dfb533..8e5dbd2ff9efb 100644 --- a/pkgs/desktops/lomiri/default.nix +++ b/pkgs/desktops/lomiri/default.nix @@ -17,6 +17,7 @@ let lomiri-calculator-app = callPackage ./applications/lomiri-calculator-app { }; lomiri-camera-app = callPackage ./applications/lomiri-camera-app { }; lomiri-clock-app = callPackage ./applications/lomiri-clock-app { }; + lomiri-docviewer-app = callPackage ./applications/lomiri-docviewer-app { }; lomiri-filemanager-app = callPackage ./applications/lomiri-filemanager-app { }; lomiri-gallery-app = callPackage ./applications/lomiri-gallery-app { }; lomiri-system-settings-unwrapped = callPackage ./applications/lomiri-system-settings { }; -- cgit 1.4.1