From 2a0f66b258589f3b58877ad54b8b6082125808a4 Mon Sep 17 00:00:00 2001 From: Guillaume Bouchard Date: Mon, 19 Mar 2018 16:03:50 +0100 Subject: [PATCH 1/2] qmlbox2d: init at 2018-03-16 This is a dependency for `gcompris` --- .../libraries/qmlbox2d/default.nix | 31 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 1 + 2 files changed, 32 insertions(+) create mode 100644 pkgs/development/libraries/qmlbox2d/default.nix diff --git a/pkgs/development/libraries/qmlbox2d/default.nix b/pkgs/development/libraries/qmlbox2d/default.nix new file mode 100644 index 00000000000..630f606c2e5 --- /dev/null +++ b/pkgs/development/libraries/qmlbox2d/default.nix @@ -0,0 +1,31 @@ +{stdenv, qtdeclarative, fetchFromGitHub, qmake }: +stdenv.mkDerivation rec { + name = "qml-box2d-2018-03-16"; + src = fetchFromGitHub { + owner = "qml-box2d"; + repo = "qml-box2d"; + sha256 = "1fbsvv28b4r0szcv8bk5gxpf8v534jp2axyfp438384sy757wsq2"; + rev = "21e57f1"; + }; + + enableParallelBuilding = true; + nativeBuildInputs = [ qmake ]; + + buildInputs = [ qtdeclarative ]; + + patchPhase = '' + substituteInPlace box2d.pro \ + --replace '$$[QT_INSTALL_QML]' "/$qtQmlPrefix/" + qmakeFlags="$qmakeFlags PREFIXSHORTCUT=$out" + ''; + + installFlags = [ "INSTALL_ROOT=$(out)" ]; + + meta = with stdenv.lib; { + description = "A QML plugin for Box2D engine"; + homepage = "https://github.com/qml-box2d/qml-box2d"; + maintainers = [ maintainers.guibou ]; + platforms = platforms.linux; + license = licenses.zlib; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 79145b7f996..3ca9d44a8fe 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11227,6 +11227,7 @@ with pkgs; qca-qt5 = callPackage ../development/libraries/qca-qt5 { }; qmltermwidget = callPackage ../development/libraries/qmltermwidget { }; + qmlbox2d = libsForQt59.callPackage ../development/libraries/qmlbox2d { }; qscintilla = callPackage ../development/libraries/qscintilla { withQt5 = true; From 74de977fddc60aabae391eb1ff4532c5564aaca6 Mon Sep 17 00:00:00 2001 From: Guillaume Bouchard Date: Mon, 19 Mar 2018 16:04:18 +0100 Subject: [PATCH 2/2] gcompris: init at 0.90 - uses qt 5.9 (qt 5.10 gives runtime error) - add a desktop file --- pkgs/games/gcompris/default.nix | 37 +++++++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 39 insertions(+) create mode 100644 pkgs/games/gcompris/default.nix diff --git a/pkgs/games/gcompris/default.nix b/pkgs/games/gcompris/default.nix new file mode 100644 index 00000000000..89b9fca06ea --- /dev/null +++ b/pkgs/games/gcompris/default.nix @@ -0,0 +1,37 @@ +{stdenv, cmake, qtbase, fetchurl, qtdeclarative, qtmultimedia, qttools, qtsensors, qmlbox2d, gettext, qtquickcontrols, qtgraphicaleffects, makeWrapper, + gst_all_1, ninja +}: +stdenv.mkDerivation rec { + version = "0.90"; + name = "gcompris-${version}"; + + src = fetchurl { + url = "http://gcompris.net/download/qt/src/gcompris-qt-${version}.tar.xz"; + sha256 = "1i5adxnhig849qxwi3c4v7r84q6agx1zxkd69fh4y7lcmq2qiaza"; + }; + + cmakeFlags = "-DQML_BOX2D_LIBRARY=${qmlbox2d}/${qtbase.qtQmlPrefix}/Box2D.2.0"; + + nativeBuildInputs = [ cmake ninja makeWrapper ]; + buildInputs = [ qtbase qtdeclarative qttools qtsensors qmlbox2d gettext qtquickcontrols qtmultimedia qtgraphicaleffects] ++ soundPlugins; + soundPlugins = with gst_all_1; [gst-plugins-good gstreamer gst-plugins-base gst-plugins-bad]; + + postInstall = '' + # install .desktop and icon file + mkdir -p $out/share/applications/ + mkdir -p $out/share/icons/hicolor/256x256/apps/ + cp ../org.kde.gcompris.desktop $out/share/applications/gcompris.desktop + cp -r ../images/256-apps-gcompris-qt.png $out/share/icons/hicolor/256x256/apps/gcompris-qt.png + + wrapProgram "$out/bin/gcompris-qt" \ + --prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0" + ''; + + meta = with stdenv.lib; { + description = "A high quality educational software suite, including a large number of activities for children aged 2 to 10"; + homepage = "https://gcompris.net/"; + maintainers = [ maintainers.guibou ]; + platforms = [ "i686-linux" "x86_64-linux" ]; + license = licenses.gpl3Plus; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3ca9d44a8fe..d3872bafd6e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18986,6 +18986,8 @@ with pkgs; gcs = callPackage ../games/gcs { }; + gcompris = libsForQt59.callPackage ../games/gcompris { }; + gemrb = callPackage ../games/gemrb { }; gl117 = callPackage ../games/gl-117 {};