summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/applications/networking/instant-messengers/gajim/default.nix15
-rw-r--r--pkgs/development/haskell-modules/make-package-set.nix46
-rw-r--r--pkgs/development/tools/misc/cl-launch/default.nix2
-rw-r--r--pkgs/development/web/nodejs/v9.nix4
-rw-r--r--pkgs/tools/X11/primus/lib.nix2
-rw-r--r--pkgs/tools/networking/megatools/default.nix21
-rw-r--r--pkgs/tools/package-management/nix/default.nix3
7 files changed, 81 insertions, 12 deletions
diff --git a/pkgs/applications/networking/instant-messengers/gajim/default.nix b/pkgs/applications/networking/instant-messengers/gajim/default.nix
index 42c510495574..2f5ea0715680 100644
--- a/pkgs/applications/networking/instant-messengers/gajim/default.nix
+++ b/pkgs/applications/networking/instant-messengers/gajim/default.nix
@@ -22,7 +22,8 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "gajim-${version}";
-  version = "0.16.9";
+  majorVersion = "0.16";
+  version = "${majorVersion}.9";
 
   src = fetchurl {
     name = "${name}.tar.bz2";
@@ -31,6 +32,18 @@ stdenv.mkDerivation rec {
     sha256 = "121dh906zya9n7npyk7b5xama0z3ycy9jl7l5jm39pc86h1winh3";
   };
 
+  # Needed for Plugin Installer
+  release = fetchurl {
+    url = "https://gajim.org/downloads/${majorVersion}/gajim-${version}.tar.bz2";
+    sha256 = "0v08zdvpqaig0wxpxn1l8rsj3wr3fqvnagn8cnvch17vfqv9gcr1";
+  };
+
+  postUnpack = ''
+    tar -xaf $release
+    cp -r ${name}/plugins/plugin_installer gajim-${name}-*/plugins
+    rm -rf ${name}
+  '';
+
   patches = let
     # An attribute set of revisions to apply from the upstream repository.
     cherries = {
diff --git a/pkgs/development/haskell-modules/make-package-set.nix b/pkgs/development/haskell-modules/make-package-set.nix
index 2a96c66dced5..c793c0e70860 100644
--- a/pkgs/development/haskell-modules/make-package-set.nix
+++ b/pkgs/development/haskell-modules/make-package-set.nix
@@ -188,6 +188,52 @@ in package-set { inherit pkgs stdenv callPackage; } self // {
         };
       in withPackages (packages ++ [ hoogle ]);
 
+    # Returns a derivation whose environment contains a GHC with only
+    # the dependencies of packages listed in `packages`, not the
+    # packages themselves. Using nix-shell on this derivation will
+    # give you an environment suitable for developing the listed
+    # packages with an incremental tool like cabal-install.
+    #
+    #     # default.nix
+    #     with import <nixpkgs> {};
+    #     haskellPackages.extend (haskell.lib.packageSourceOverrides {
+    #       frontend = ./frontend;
+    #       backend = ./backend;
+    #       common = ./common;
+    #     })
+    #
+    #     # shell.nix
+    #     (import ./.).shellFor {
+    #       packages = p: [p.frontend p.backend p.common];
+    #       withHoogle = true;
+    #     }
+    #
+    #     -- cabal.project
+    #     packages:
+    #       frontend/
+    #       backend/
+    #       common/
+    #
+    #     bash$ nix-shell --run "cabal new-build all"
+    shellFor = { packages, withHoogle ? false, ... } @ args:
+      let
+        selected = packages self;
+        packageInputs = builtins.map (p: p.override { mkDerivation = haskellLib.extractBuildInputs p.compiler; }) selected;
+        haskellInputs =
+          builtins.filter
+            (input: pkgs.lib.all (p: input.outPath != p.outPath) selected)
+            (pkgs.lib.concatMap (p: p.haskellBuildInputs) packageInputs);
+        systemInputs = pkgs.lib.concatMap (p: p.systemBuildInputs) packageInputs;
+        withPackages = if withHoogle then self.ghcWithHoogle else self.ghcWithPackages;
+        mkDrvArgs = builtins.removeAttrs args ["packages" "withHoogle"];
+      in pkgs.stdenv.mkDerivation (mkDrvArgs // {
+        name = "ghc-shell-for-packages";
+        nativeBuildInputs = [(withPackages (_: haskellInputs))] ++ mkDrvArgs.nativeBuildInputs or [];
+        buildInputs = systemInputs ++ mkDrvArgs.buildInputs or [];
+        phases = ["installPhase"];
+        installPhase = "echo $nativeBuildInputs $buildInputs > $out";
+      });
+
     ghc = ghc // {
       withPackages = self.ghcWithPackages;
       withHoogle = self.ghcWithHoogle;
diff --git a/pkgs/development/tools/misc/cl-launch/default.nix b/pkgs/development/tools/misc/cl-launch/default.nix
index ffd668dbdeef..c245a32a06d9 100644
--- a/pkgs/development/tools/misc/cl-launch/default.nix
+++ b/pkgs/development/tools/misc/cl-launch/default.nix
@@ -33,6 +33,6 @@ stdenv.mkDerivation {
     description = ''Common Lisp launcher script'';
     license = stdenv.lib.licenses.llgpl21 ;
     maintainers = [stdenv.lib.maintainers.raskin];
-    platforms = stdenv.lib.platforms.linux;
+    platforms = stdenv.lib.platforms.unix;
   };
 }
diff --git a/pkgs/development/web/nodejs/v9.nix b/pkgs/development/web/nodejs/v9.nix
index af3a8b4d22fd..f17c5f6d26c9 100644
--- a/pkgs/development/web/nodejs/v9.nix
+++ b/pkgs/development/web/nodejs/v9.nix
@@ -5,7 +5,7 @@ let
 in
   buildNodejs {
     inherit enableNpm;
-    version = "9.6.1";
-    sha256 = "04hi7lwdizwqqbyi77f4z12gnsh673h92brmbssrmw5kjx6h4k5q";
+    version = "9.7.1";
+    sha256 = "0hlhj817s5bji2qdghxkwxjj40kwkyzgax4zyv32r5pbl6af3yh6";
     patches = lib.optionals stdenv.isDarwin [ ./no-xcode-v7.patch ];
   }
diff --git a/pkgs/tools/X11/primus/lib.nix b/pkgs/tools/X11/primus/lib.nix
index d9bebf6055f6..dcd50ee9158c 100644
--- a/pkgs/tools/X11/primus/lib.nix
+++ b/pkgs/tools/X11/primus/lib.nix
@@ -45,7 +45,7 @@ in stdenv.mkDerivation {
   meta = with stdenv.lib; {
     description = "Low-overhead client-side GPU offloading";
     homepage = https://github.com/amonakov/primus;
-    platforms = platforms.linux;
+    platforms = [ "i686-linux" "x86_64-linux" ];
     license = licenses.bsd2;
     maintainers = with maintainers; [ abbradar ];
   };
diff --git a/pkgs/tools/networking/megatools/default.nix b/pkgs/tools/networking/megatools/default.nix
index f6a750112870..e2d4880250c2 100644
--- a/pkgs/tools/networking/megatools/default.nix
+++ b/pkgs/tools/networking/megatools/default.nix
@@ -1,18 +1,25 @@
-{ stdenv, fetchurl, pkgconfig, glib, fuse, curl, glib-networking
-, asciidoc, wrapGAppsHook }:
+{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, glib, fuse, curl, glib-networking
+, asciidoc, libxml2, docbook_xsl, docbook_xml_dtd_45, libxslt, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
   name = "megatools-${version}";
-  version = "1.9.98";
+  version = "2017-10-26";
 
-  src = fetchurl {
-    url = "https://megatools.megous.com/builds/${name}.tar.gz";
-    sha256 = "0vx1farp0dpg4zwvxdbfdnzjk9qx3sn109p1r1zl3g3xsaj221cv";
+  src = fetchFromGitHub {
+    owner = "megous";
+    repo = "megatools";
+    rev = "35dfba3262f620b4701ec1975293463957e20f26";
+    sha256 = "0xphgv78j731rmhxic4fwzdr7vq5px921qifrw1y40b93nhy4d5n";
   };
 
-  nativeBuildInputs = [ pkgconfig wrapGAppsHook asciidoc ];
+  nativeBuildInputs = [
+    autoreconfHook pkgconfig wrapGAppsHook asciidoc libxml2
+    docbook_xsl docbook_xml_dtd_45 libxslt
+  ];
   buildInputs = [ glib glib-networking fuse curl ];
 
+  enableParallelBuilding = true;
+
   meta = with stdenv.lib; {
     description = "Command line client for Mega.co.nz";
     homepage = https://megatools.megous.com/;
diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix
index 246819d3dc06..a768ff848021 100644
--- a/pkgs/tools/package-management/nix/default.nix
+++ b/pkgs/tools/package-management/nix/default.nix
@@ -132,6 +132,8 @@ in rec {
     };
   }) // { perl-bindings = perl-bindings { nix = nixStable; }; };
 
+  nixUnstable = nix;
+/*
   nixUnstable = (lib.lowPrio (common rec {
     name = "nix-2.0${suffix}";
     suffix = "pre5968_a6c0b773";
@@ -143,5 +145,6 @@ in rec {
     };
     fromGit = true;
   })) // { perl-bindings = perl-bindings { nix = nixUnstable; }; };
+*/
 
 }