lomiri.libusermetrics: init at 1.3.0
This commit is contained in:
parent
bf226bd766
commit
c907360ea2
2 changed files with 130 additions and 0 deletions
|
@ -11,6 +11,7 @@ let
|
|||
cmake-extras = callPackage ./development/cmake-extras { };
|
||||
deviceinfo = callPackage ./development/deviceinfo { };
|
||||
gmenuharness = callPackage ./development/gmenuharness { };
|
||||
libusermetrics = callPackage ./development/libusermetrics { };
|
||||
lomiri-api = callPackage ./development/lomiri-api { };
|
||||
};
|
||||
in
|
||||
|
|
129
pkgs/desktops/lomiri/development/libusermetrics/default.nix
Normal file
129
pkgs/desktops/lomiri/development/libusermetrics/default.nix
Normal file
|
@ -0,0 +1,129 @@
|
|||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitLab
|
||||
, gitUpdater
|
||||
, testers
|
||||
, cmake
|
||||
, cmake-extras
|
||||
, dbus
|
||||
, doxygen
|
||||
, gsettings-qt
|
||||
, gtest
|
||||
, intltool
|
||||
, json-glib
|
||||
, libapparmor
|
||||
, libqtdbustest
|
||||
, pkg-config
|
||||
, qdjango
|
||||
, qtbase
|
||||
, qtdeclarative
|
||||
, qtxmlpatterns
|
||||
, ubports-click
|
||||
, wrapQtAppsHook
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "libusermetrics";
|
||||
version = "1.3.0";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "ubports";
|
||||
repo = "development/core/libusermetrics";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-yO9wZcXJBKt1HZ1GKoQ1flqYuwW9PlXiWLE3bl21PSQ=";
|
||||
};
|
||||
|
||||
outputs = [
|
||||
"out"
|
||||
"dev"
|
||||
"doc"
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace data/CMakeLists.txt \
|
||||
--replace '/etc' "$out/etc"
|
||||
|
||||
# Tries to query QMake for QT_INSTALL_QML variable, would return broken paths into /build/qtbase-<commit> even if qmake was available
|
||||
substituteInPlace src/modules/UserMetrics/CMakeLists.txt \
|
||||
--replace "\''${QT_IMPORTS_DIR}/UserMetrics" '${placeholder "out"}/${qtbase.qtQmlPrefix}/UserMetrics'
|
||||
|
||||
substituteInPlace src/libusermetricsinput/CMakeLists.txt \
|
||||
--replace 'RUNTIME DESTINATION bin' 'RUNTIME DESTINATION ''${CMAKE_INSTALL_BINDIR}'
|
||||
|
||||
substituteInPlace doc/CMakeLists.txt \
|
||||
--replace "\''${CMAKE_INSTALL_DATAROOTDIR}/doc/libusermetrics-doc" "\''${CMAKE_INSTALL_DOCDIR}"
|
||||
'' + lib.optionalString (!finalAttrs.doCheck) ''
|
||||
# Only needed by tests
|
||||
sed -i -e '/QTDBUSTEST/d' CMakeLists.txt
|
||||
'';
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
doxygen
|
||||
intltool
|
||||
pkg-config
|
||||
wrapQtAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
cmake-extras
|
||||
gsettings-qt
|
||||
json-glib
|
||||
libapparmor
|
||||
qdjango
|
||||
qtxmlpatterns
|
||||
ubports-click
|
||||
|
||||
# Plugin
|
||||
qtbase
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
dbus
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
gtest
|
||||
libqtdbustest
|
||||
qtdeclarative
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DGSETTINGS_LOCALINSTALL=ON"
|
||||
"-DGSETTINGS_COMPILE=ON"
|
||||
"-DENABLE_TESTS=${lib.boolToString finalAttrs.doCheck}"
|
||||
];
|
||||
|
||||
doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform;
|
||||
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
|
||||
export QT_PLUGIN_PATH=${lib.getBin qtbase}/lib/qt-${qtbase.version}/plugins/
|
||||
export QML2_IMPORT_PATH=${lib.getBin qtdeclarative}/lib/qt-${qtbase.version}/qml/
|
||||
dbus-run-session --config-file=${dbus}/share/dbus-1/session.conf -- \
|
||||
make test "''${enableParallelChecking:+-j $NIX_BUILD_CORES}"
|
||||
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
|
||||
updateScript = gitUpdater { };
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Enables apps to locally store interesting numerical data for later presentation";
|
||||
homepage = "https://gitlab.com/ubports/development/core/libusermetrics";
|
||||
license = licenses.lgpl3Only;
|
||||
maintainers = teams.lomiri.members;
|
||||
platforms = platforms.linux;
|
||||
mainProgram = "usermetricsinput";
|
||||
pkgConfigModules = [
|
||||
"libusermetricsinput-1"
|
||||
"libusermetricsoutput-1"
|
||||
];
|
||||
};
|
||||
})
|
Loading…
Reference in a new issue