summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/audio/kid3/default.nix7
-rw-r--r--pkgs/applications/editors/neovim/qt.nix48
-rw-r--r--pkgs/applications/graphics/pinta/default.nix97
-rw-r--r--pkgs/applications/misc/calibre/default.nix10
-rw-r--r--pkgs/applications/misc/gnuradio/default.nix4
-rw-r--r--pkgs/applications/misc/gpsbabel/default.nix29
-rw-r--r--pkgs/applications/networking/mailreaders/notmuch/default.nix4
-rw-r--r--pkgs/applications/video/clipgrab/default.nix6
8 files changed, 145 insertions, 60 deletions
diff --git a/pkgs/applications/audio/kid3/default.nix b/pkgs/applications/audio/kid3/default.nix
index 7cc1b1f665fa..0b2e4e7977b8 100644
--- a/pkgs/applications/audio/kid3/default.nix
+++ b/pkgs/applications/audio/kid3/default.nix
@@ -9,11 +9,10 @@
 
 stdenv.mkDerivation rec {
 
-  name = "kid3-${version}";
-  version = "3.3.0";
+  name = "kid3-${meta.version}";
 
   src = fetchurl {
-    url = "http://downloads.sourceforge.net/project/kid3/kid3/${version}/${name}.tar.gz";
+    url = "http://downloads.sourceforge.net/project/kid3/kid3/${meta.version}/${name}.tar.gz";
     sha256 = "12sa54mg1b3wkagmh5yi20ski8km9d199lk0a1yfxy0ffjfld7js";
   };
 
@@ -34,6 +33,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
+    version = "3.3.0";
     description = "A simple and powerful audio tag editor";
     longDescription = ''
       If you want to easily tag multiple MP3, Ogg/Vorbis, FLAC, MPC,
@@ -70,5 +70,4 @@ stdenv.mkDerivation rec {
     maintainers = [ maintainers.AndersonTorres ];
   };
 }
-
 # TODO: Qt5 support
diff --git a/pkgs/applications/editors/neovim/qt.nix b/pkgs/applications/editors/neovim/qt.nix
new file mode 100644
index 000000000000..949be3875d82
--- /dev/null
+++ b/pkgs/applications/editors/neovim/qt.nix
@@ -0,0 +1,48 @@
+{ stdenv, fetchFromGitHub, cmake, qt5, pythonPackages, libmsgpack
+, makeWrapper, neovim
+}:
+
+let # not very usable ATM
+  version = "0pre-2015-10-18";
+in
+stdenv.mkDerivation {
+  name = "neovim-qt-${version}";
+
+  src = fetchFromGitHub {
+    repo = "neovim-qt";
+    owner = "equalsraf";
+    rev = "03236e2";
+    sha256 = "0hhwpnj7yfqdk7yiwrq0x6n4xx30brj9clxmxx796421rlcrxypq";
+  };
+
+  # It tries to download libmsgpack; let's use ours.
+  postPatch = let use-msgpack = ''
+    cmake_minimum_required(VERSION 2.8.11)
+    project(neovim-qt-deps)
+
+    # Similar enough to FindMsgpack
+    set(MSGPACK_INCLUDE_DIRS ${libmsgpack}/include PARENT_SCOPE)
+    set(MSGPACK_LIBRARIES msgpack PARENT_SCOPE)
+  '';
+    in "echo '${use-msgpack}' > third-party/CMakeLists.txt";
+
+  buildInputs = with pythonPackages; [
+    cmake qt5.qtbase
+    python msgpack jinja2 libmsgpack
+    makeWrapper
+  ];
+
+  enableParallelBuilding = true;
+
+  installPhase = ''
+    mkdir -p "$out/bin"
+    mv ./bin/nvim-qt "$out/bin/"
+    wrapProgram "$out/bin/nvim-qt" --prefix PATH : "${neovim}/bin"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A prototype Qt5 GUI for neovim";
+    license = licenses.isc;
+    inherit (neovim.meta) platforms;
+  };
+}
diff --git a/pkgs/applications/graphics/pinta/default.nix b/pkgs/applications/graphics/pinta/default.nix
index 6958c94f7e18..2fd98b5033e9 100644
--- a/pkgs/applications/graphics/pinta/default.nix
+++ b/pkgs/applications/graphics/pinta/default.nix
@@ -1,44 +1,83 @@
-{stdenv, fetchurl, mono, gtksharp, pkgconfig}:
+{ stdenv, fetchFromGitHub, buildDotnetPackage, dotnetPackages, gtksharp,
+  gettext }:
 
-stdenv.mkDerivation {
-  name = "pinta-1.4";
+let
+  mono-addins = dotnetPackages.MonoAddins;
+in
+buildDotnetPackage rec {
+  name = "pinta-1.6";
 
-  src = fetchurl {
-    url = "https://github.com/PintaProject/Pinta/tarball/3f7ccfa93d";
-    name = "pinta-1.4.tar.gz";
-    sha256 = "1kgb4gy5l6bd0akniwhiqqkvqayr5jgdsvn2pgg1038q9raafnpn";
+  baseName = "Pinta";
+  version = "1.6";
+  outputFiles = [ "bin/*" ];
+  buildInputs = [ gtksharp mono-addins gettext ];
+  xBuildFiles = [ "Pinta.sln" ];
+
+  src = fetchFromGitHub {
+    owner = "PintaProject";
+    repo = "Pinta";
+    rev = version;
+    sha256 = "0vgswy981c7ys4q7js5k85sky7bz8v32wsfq3br4j41vg92pw97d";
   };
 
-  buildInputs = [mono gtksharp pkgconfig];
+  # Remove version information from nodes <Reference Include="... Version=... ">
+  postPatch = with stdenv.lib; let
+    csprojFiles = [
+      "Pinta/Pinta.csproj"
+      "Pinta.Core/Pinta.Core.csproj"
+      "Pinta.Effects/Pinta.Effects.csproj"
+      "Pinta.Gui.Widgets/Pinta.Gui.Widgets.csproj"
+      "Pinta.Resources/Pinta.Resources.csproj"
+      "Pinta.Tools/Pinta.Tools.csproj"
+    ];
+    versionedNames = [
+      "Mono\\.Addins"
+      "Mono\\.Posix"
+      "Mono\\.Addins\\.Gui"
+      "Mono\\.Addins\\.Setup"
+    ];
 
-  buildPhase = ''
-    # xbuild understands pkgconfig, but gtksharp does not give .pc for gdk-sharp
-    # So we have to go the GAC-way
-    export MONO_GAC_PREFIX=${gtksharp}
-    xbuild Pinta.sln
-  '';
+    stripVersion = name: file: let
+        match = ''<Reference Include="${name}([ ,][^"]*)?"'';
+        replace = ''<Reference Include="${name}"'';
+      in "sed -i -re 's/${match}/${replace}/g' ${file}\n";
 
-  # Very ugly - I don't know enough Mono to improve this. Isn't there any rpath in binaries?
-  installPhase = ''
-    mkdir -p $out/lib/pinta $out/bin
-    cp bin/*.{dll,exe} $out/lib/pinta
-    cat > $out/bin/pinta << EOF
-    #!/bin/sh
-    export MONO_GAC_PREFIX=${gtksharp}:\$MONO_GAC_PREFIX
-    export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:${gtksharp}/lib:${gtksharp.gtk}/lib:${mono}/lib
-    exec ${mono}/bin/mono $out/lib/pinta/Pinta.exe
-    EOF
-    chmod +x $out/bin/pinta
-  '';
+    # Map all possible pairs of two lists
+    map2 = f: listA: listB: concatMap (a: map (f a) listB) listA;
+    concatMap2Strings = f: listA: listB: concatStrings (map2 f listA listB);
+  in
+    concatMap2Strings stripVersion versionedNames csprojFiles
+    + ''
+      # For some reason there is no Microsoft.Common.tasks file
+      # in ''${mono}/lib/mono/3.5 .
+      substituteInPlace Pinta.Install.proj \
+        --replace 'ToolsVersion="3.5"' 'ToolsVersion="4.0"' \
+        --replace "/usr/local" "$out"
+    '';
 
-  # Always needed on Mono, otherwise nothing runs
-  dontStrip = true; 
+  makeWrapperArgs = [
+    ''--prefix MONO_GAC_PREFIX ':' "${gtksharp}"''
+    ''--prefix LD_LIBRARY_PATH ':' "${gtksharp}/lib"''
+    ''--prefix LD_LIBRARY_PATH ':' "${gtksharp.gtk}/lib"''
+  ];
+
+  postInstall = ''
+    # Do automake's job manually
+    substitute xdg/pinta.desktop.in xdg/pinta.desktop \
+      --replace _Name Name \
+      --replace _Comment Comment \
+      --replace _GenericName GenericName \
+      --replace _X-GNOME-FullName X-GNOME-FullName
+
+    xbuild /target:CompileTranslations Pinta.Install.proj
+    xbuild /target:Install Pinta.Install.proj
+  '';
 
   meta = {
     homepage = http://www.pinta-project.com/;
     description = "Drawing/editing program modeled after Paint.NET";
     license = stdenv.lib.licenses.mit;
-    maintainers = with stdenv.lib.maintainers; [viric];
+    maintainers = with stdenv.lib.maintainers; [ viric ];
     platforms = with stdenv.lib.platforms; linux;
   };
 }
diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index 9ebcf170e1b4..6bff13665188 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -5,12 +5,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "calibre-${version}";
-  version = "2.42.0";
+  name = "calibre-${meta.version}";
 
   src = fetchurl {
-    url = "https://github.com/kovidgoyal/calibre/releases/download/v${version}/${name}.tar.xz";
-    sha256 = "0inmhkrc6jmpa97wjwai9ny8vmwy9z0fbiw8w43s37ad1w9x5sn1";
+    url = "https://github.com/kovidgoyal/calibre/releases/download/v${meta.version}/${name}.tar.xz";
+    sha256 = "0h8c8w7f63pl1rarr3v6gi82dcsabb3216g7scmjfj50na5cfmhi";
   };
 
   inherit python;
@@ -59,10 +58,11 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
+    version = "2.43.0";
     description = "Comprehensive e-book software";
     homepage = http://calibre-ebook.com;
     license = licenses.gpl3;
-    maintainers = with maintainers; [ viric iElectric pSub ];
+    maintainers = with maintainers; [ viric iElectric pSub AndersonTorres ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/misc/gnuradio/default.nix b/pkgs/applications/misc/gnuradio/default.nix
index e7817dc5b524..ab02238606ab 100644
--- a/pkgs/applications/misc/gnuradio/default.nix
+++ b/pkgs/applications/misc/gnuradio/default.nix
@@ -23,11 +23,11 @@
 
 stdenv.mkDerivation rec {
   name = "gnuradio-${version}";
-  version = "3.7.8";
+  version = "3.7.8.1";
 
   src = fetchurl {
     url = "http://gnuradio.org/releases/gnuradio/${name}.tar.gz";
-    sha256 = "0wj1rp8fdrmsfqbcaicvfxk71vkd9hcczmb1vrnvfzypnmacn6gy";
+    sha256 = "1ap5gbgisnbny3jbnm2i5wm2sy6qkbhz747av3sjxp2z12fz81l4";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/misc/gpsbabel/default.nix b/pkgs/applications/misc/gpsbabel/default.nix
index 6cd50406ed74..0625219c2762 100644
--- a/pkgs/applications/misc/gpsbabel/default.nix
+++ b/pkgs/applications/misc/gpsbabel/default.nix
@@ -1,19 +1,17 @@
-{ fetchurl, stdenv, zlib, expat, which }:
+{ stdenv, fetchurl, zlib, qt5, which }:
 
-let version = "1.4.3"; in
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   name = "gpsbabel-${version}";
+  version = "1.5.2";
 
   src = fetchurl {
     # gpgbabel.org makes it hard to get the source tarball automatically, so
     # get it from elsewhere.
     url = "mirror://debian/pool/main/g/gpsbabel/gpsbabel_${version}.orig.tar.gz";
-    sha256 = "1s31xa36ivf836h89m1f3qiaz3c3znvqjdm0bnh8vr2jjlrz9jdi";
+    sha256 = "0xf7wmy2m29g2lm8lqc74yf8rf7sxfl3cfwbk7dpf0yf42pb0b6w";
   };
 
-  # FIXME: Would need libxml2 for one of the tests, but that in turns require
-  # network access for the XML schemas.
-  buildInputs = [ zlib expat which ];
+  buildInputs = [ zlib qt5.base which ];
 
   /* FIXME: Building the documentation, with "make doc", requires this:
 
@@ -25,10 +23,14 @@ stdenv.mkDerivation {
   configureFlags = [ "--with-zlib=system" ];
 
   doCheck = true;
+  preCheck = ''
+    patchShebangs testo
+    substituteInPlace testo \
+      --replace "-x /usr/bin/hexdump" ""
+  '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Convert, upload and download data from GPS and Map programs";
-
     longDescription = ''
       GPSBabel converts waypoints, tracks, and routes between popular
       GPS receivers and mapping programs.  It also has powerful
@@ -47,12 +49,9 @@ stdenv.mkDerivation {
       process data that may (or may not be) placed on a map, such as
       waypoints, tracks, and routes.
     '';
-
     homepage = http://www.gpsbabel.org/;
-
-    license = stdenv.lib.licenses.gpl2Plus;
-
-    maintainers = [ ];
-    platforms = stdenv.lib.platforms.gnu;         # arbitrary choice
+    license = licenses.gpl2Plus;
+    maintainers = [ maintainers.rycee ];
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/applications/networking/mailreaders/notmuch/default.nix b/pkgs/applications/networking/mailreaders/notmuch/default.nix
index 04d4eaebaa7a..c7921b8553b2 100644
--- a/pkgs/applications/networking/mailreaders/notmuch/default.nix
+++ b/pkgs/applications/networking/mailreaders/notmuch/default.nix
@@ -5,7 +5,7 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "notmuch-0.20.2";
+  name = "notmuch-0.21";
 
   passthru = {
     pythonSourceRoot = "${name}/bindings/python";
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://notmuchmail.org/releases/${name}.tar.gz";
-    sha256 = "1v5dcnlg4km5hfaq0i0qywq5fn66fi0rq4aaibyqkwxz8mis4hgp";
+    sha256 = "1cr53rbpkcy3pvrmhbg2gq7sjpwb0c8xd7a4zhzxbiv8s7z8yvyh";
   };
 
   buildInputs = [ bash emacs glib gmime gnupg pkgconfig talloc xapian sphinx python ]
diff --git a/pkgs/applications/video/clipgrab/default.nix b/pkgs/applications/video/clipgrab/default.nix
index d4239685f7b1..ebd45cea6adc 100644
--- a/pkgs/applications/video/clipgrab/default.nix
+++ b/pkgs/applications/video/clipgrab/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, ffmpeg, makeDesktopItem, qt4 }:
 
-let version = "3.5.1"; in
+let version = "3.5.2"; in
 stdenv.mkDerivation rec {
   name = "clipgrab-${version}";
 
   src = fetchurl {
-    sha256 = "16hm7zv0yhxj7gdd8q462jcxy0jk6hicsk1mkhmarwrhifwsy4g9";
-    # The .tar.bz2 "Download" link is a binary blob, the source is .tar.gz!
+    sha256 = "0prag5liwx2l1b2a5f7cp3jh50qw5iwkf2c07iws9m1j1np3lxgp";
+    # The .tar.bz2 "Download" link is a binary blob, the source is the .tar.gz!
     url = "http://download.clipgrab.de/${name}.tar.gz";
   };