about summary refs log tree commit diff
diff options
context:
space:
mode:
authorNicolas Pierron <nicolas.b.pierron@gmail.com>2008-05-29 19:12:53 +0000
committerNicolas Pierron <nicolas.b.pierron@gmail.com>2008-05-29 19:12:53 +0000
commit77175d5dc3404b4d34adb8e91ed3bacf9868ef3e (patch)
tree62c6d2a6f46c8f26af3a998bb6c5fc70d47e86de
parenteeb82eb2df7a8ed6a580036a35ee47c2e6deb2ff (diff)
downloadnixlib-77175d5dc3404b4d34adb8e91ed3bacf9868ef3e.tar
nixlib-77175d5dc3404b4d34adb8e91ed3bacf9868ef3e.tar.gz
nixlib-77175d5dc3404b4d34adb8e91ed3bacf9868ef3e.tar.bz2
nixlib-77175d5dc3404b4d34adb8e91ed3bacf9868ef3e.tar.lz
nixlib-77175d5dc3404b4d34adb8e91ed3bacf9868ef3e.tar.xz
nixlib-77175d5dc3404b4d34adb8e91ed3bacf9868ef3e.tar.zst
nixlib-77175d5dc3404b4d34adb8e91ed3bacf9868ef3e.zip
Add TaskJuggler: A project management tool.
svn path=/nixpkgs/trunk/; revision=11933
-rw-r--r--pkgs/applications/misc/taskjuggler/default.nix64
-rw-r--r--pkgs/top-level/all-packages.nix12
2 files changed, 76 insertions, 0 deletions
diff --git a/pkgs/applications/misc/taskjuggler/default.nix b/pkgs/applications/misc/taskjuggler/default.nix
new file mode 100644
index 000000000000..27db42160d26
--- /dev/null
+++ b/pkgs/applications/misc/taskjuggler/default.nix
@@ -0,0 +1,64 @@
+{stdenv, fetchurl,
+zlib, libpng, perl, expat, qt,
+libX11, libXext, libSM, libICE,
+withKde, kdelibs, kdebase
+}:
+
+stdenv.mkDerivation rec {
+  name = "taskjuggler-2.4.1";
+  src = fetchurl {
+    url = "http://www.taskjuggler.org/download/${name}.tar.bz2";
+    md5 = "18e0cec8b2ec69220ae7c9a790c16819";
+  };
+
+  buildInputs =
+    [zlib libpng libX11 libXext libSM libICE perl expat]
+    ++ (if withKde then [kdelibs] else [])
+    ;
+
+  preConfigure = ''
+    for i in $(grep -R "/bin/bash" .  | sed 's/:.*//'); do
+      substituteInPlace $i --replace /bin/bash $(type -Pp bash)
+    done
+    for i in $(grep -R "/usr/bin/perl" .  | sed 's/:.*//'); do
+      substituteInPlace $i --replace /usr/bin/perl ${perl}/bin/perl
+    done
+
+    # Fix install
+    for i in docs/en/Makefile.in Examples/BigProject/Common/Makefile.in Examples/BigProject/Makefile.in Examples/BigProject/Project1/Makefile.in Examples/BigProject/Project2/Makefile.in Examples/FirstProject/Makefile.in Examples/ShiftSchedule/Makefile.in; do
+      # Do not use variable substitution because there is some text after the last '@'
+      substituteInPlace $i --replace 'docprefix = @PACKAGES_DIR@' 'docprefix = $(docdir)/'
+    done
+
+    # Comment because the ical export need the KDE support.
+    for i in Examples/FirstProject/AccountingSoftware.tjp; do
+      substituteInPlace $i --replace "icalreport" "# icalreport"
+    done
+  '';
+
+  configureFlags = "
+    --without-arts --disable-docs
+    --x-includes=${libX11}/include
+    --x-libraries=${libX11}/lib
+    --with-qt-dir=${qt}
+    --with-kde-support=${if withKde then "yes" else "no"}
+  ";
+
+  installFlags =
+    # kde_locale is not defined when installing without kde.
+    if withKde then "" else "kde_locale=\${out}/share/locale";
+
+  meta = {
+    homepage = "http://www.taskjuggler.org";
+    license = "GPLv2";
+    description = "Project management tool.";
+    longDescription = ''
+      TaskJuggler is a modern and powerful, Open Source project management
+      tool. Its new approach to project planing and tracking is more
+      flexible and superior to the commonly used Gantt chart editing
+      tools. It has already been successfully used in many projects and
+      scales easily to projects with hundreds of resources and thousands of
+      tasks.
+    '';
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index b62b3f317d7b..42b376937256 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -5935,6 +5935,18 @@ let pkgs = rec {
   };
   */
 
+  taskJuggler = import ../applications/misc/taskjuggler {
+    inherit stdenv fetchurl;
+    inherit zlib libpng perl expat;
+    qt = qt3;
+
+    inherit (xlibs) libX11 libXext libSM libICE;
+
+    # KDE support is not working yet.
+    inherit kdelibs kdebase;
+    withKde = pkgs.getConfig ["taskJuggler" "kde"] false;
+  };
+
   thunderbird = import ../applications/networking/mailreaders/thunderbird-2.x {
     inherit fetchurl stdenv pkgconfig perl zip libjpeg libpng zlib cairo;
     inherit (gtkLibs) gtk;