summary refs log tree commit diff
path: root/pkgs/misc/drivers
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2016-03-08 09:57:58 +0100
committerVladimír Čunát <vcunat@gmail.com>2016-03-08 09:58:19 +0100
commit09af15654f0c8091f1b9e0bbb2e523cdee194442 (patch)
treee648edef1ce4c64c533f2593aa22b8015cf0e506 /pkgs/misc/drivers
parentf306e67e15bdbe9a8358c9f81319fc4fcbadc2eb (diff)
parent0ee75214f336474e127c2e3546c0406a0c4d5fa7 (diff)
downloadnixpkgs-09af15654f0c8091f1b9e0bbb2e523cdee194442.tar
nixpkgs-09af15654f0c8091f1b9e0bbb2e523cdee194442.tar.gz
nixpkgs-09af15654f0c8091f1b9e0bbb2e523cdee194442.tar.bz2
nixpkgs-09af15654f0c8091f1b9e0bbb2e523cdee194442.tar.lz
nixpkgs-09af15654f0c8091f1b9e0bbb2e523cdee194442.tar.xz
nixpkgs-09af15654f0c8091f1b9e0bbb2e523cdee194442.tar.zst
nixpkgs-09af15654f0c8091f1b9e0bbb2e523cdee194442.zip
Merge master into closure-size
The kde-5 stuff still didn't merge well.
I hand-fixed what I saw, but there may be more problems.
Diffstat (limited to 'pkgs/misc/drivers')
-rw-r--r--pkgs/misc/drivers/epson-escpr/cups-filter-ppd-dirs.patch62
-rw-r--r--pkgs/misc/drivers/epson-escpr/default.nix38
-rw-r--r--pkgs/misc/drivers/gutenprint/default.nix20
-rw-r--r--pkgs/misc/drivers/m3d-linux/default.nix25
-rw-r--r--pkgs/misc/drivers/xboxdrv/default.nix6
5 files changed, 143 insertions, 8 deletions
diff --git a/pkgs/misc/drivers/epson-escpr/cups-filter-ppd-dirs.patch b/pkgs/misc/drivers/epson-escpr/cups-filter-ppd-dirs.patch
new file mode 100644
index 00000000000..78d278f186b
--- /dev/null
+++ b/pkgs/misc/drivers/epson-escpr/cups-filter-ppd-dirs.patch
@@ -0,0 +1,62 @@
+diff --git a/configure b/configure_new
+index 3d6f68c..c2b10ff 100755
+--- a/configure
++++ b/configure_new
+@@ -11585,55 +11585,8 @@ else
+ $as_echo "no" >&6; }
+ fi
+ 
+-
+-
+-if test "xNONE" != "x${prefix}" ; then
+-   cups_default_prefix="${prefix}"
+-else
+-   cups_default_prefix="${ac_default_prefix}"
+-fi
+-
+-
+-# Check whether --with-cupsfilterdir was given.
+-if test "${with_cupsfilterdir+set}" = set; then :
+-  withval=$with_cupsfilterdir;
+-else
+-  with_cupsfilterdir=no
+-fi
+-
+-if test "xno" = "x${with_cupsfilterdir}"; then
+-   if test "xyes" = "x$have_cups_config" ; then
+-            CUPS_FILTER_DIR="${cups_default_prefix}`cups-config --serverbin | sed -e 's,^/[^/][^/]*,,'`/filter"
+-   else
+-      CUPS_FILTER_DIR="${cups_default_prefix}/lib/cups/filter"
+-   fi
+-else
+-   CUPS_FILTER_DIR="${with_cupsfilterdir}"
+-fi
+-
+-
+-# Check whether --with-cupsppddir was given.
+-if test "${with_cupsppddir+set}" = set; then :
+-  withval=$with_cupsppddir;
+-else
+-  with_cupsppddir=no
+-fi
+-
+-if test "xno" = "x${with_cupsppddir}"; then
+-   if test -d "${cups_default_prefix}/share/ppd" ; then
+-      CUPS_PPD_DIR="${cups_default_prefix}/share/ppd"
+-   elif test "xyes" = "x$have_cups_config" ; then
+-            CUPS_PPD_DIR="${cups_default_prefix}/`cups-config --datadir | sed -e 's,^/[^/][^/]*,,'`/model"
+-   else
+-      CUPS_PPD_DIR="${cups_default_prefix}/share/cups/model"
+-   fi
+-else
+-   CUPS_PPD_DIR="${with_cupsppddir}"
+-fi
+-
+-
+-
+-
++CUPS_FILTER_DIR="${prefix}/lib/cups/filter"
++CUPS_PPD_DIR="${prefix}/share/cups/model"
+ 
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
+ $as_echo_n "checking for ANSI C header files... " >&6; }
diff --git a/pkgs/misc/drivers/epson-escpr/default.nix b/pkgs/misc/drivers/epson-escpr/default.nix
new file mode 100644
index 00000000000..faf13d4bcc3
--- /dev/null
+++ b/pkgs/misc/drivers/epson-escpr/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchurl, cups }:
+
+let
+  version = "1.6.4";
+in
+  stdenv.mkDerivation {
+
+    name = "epson-escpr-${version}";
+  
+    src = fetchurl {
+      url = "https://download3.ebz.epson.net/dsc/f/03/00/04/37/97/88177bc0dc7025905eae4a0da1e841408f82e33c/epson-inkjet-printer-escpr-1.6.4-1lsb3.2.tar.gz"; 
+      sha256 = "76c66461a30be82b9cc37d663147a72f488fe060ef54578120602bb87a3f7754"; 
+    }; 
+
+    patches = [ ./cups-filter-ppd-dirs.patch ]; 
+
+    buildInputs = [ cups ];
+
+    meta = with stdenv.lib; {
+      homepage = https://github.com/artuuge/NixOS-files/;
+      description = "ESC/P-R Driver (generic driver)";
+      longDescription = ''
+        Epson Inkjet Printer Driver (ESC/P-R) for Linux and the
+	corresponding PPD files. The list of supported printers
+	can be found at http://www.openprinting.org/driver/epson-escpr/ .
+
+	To use the driver adjust your configuration.nix file:
+	  services.printing = {
+	    enable = true;
+	    drivers = [ pkgs.epson-escpr ];
+	  };
+      '';
+      license = licenses.gpl3Plus;
+      maintainers = with maintainers; [ artuuge ];
+      platforms = platforms.linux;
+    };
+
+  }
diff --git a/pkgs/misc/drivers/gutenprint/default.nix b/pkgs/misc/drivers/gutenprint/default.nix
index 5be7f5ecff4..e53ddf7143b 100644
--- a/pkgs/misc/drivers/gutenprint/default.nix
+++ b/pkgs/misc/drivers/gutenprint/default.nix
@@ -1,7 +1,7 @@
 # this package was called gimp-print in the past
 { stdenv, lib, fetchurl, pkgconfig
 , ijs, makeWrapper
-, gimp2Support ? true, gimp
+, gimp2Support ? false, gimp
 , cupsSupport ? true, cups, libusb, perl
 }:
 
@@ -23,15 +23,25 @@ stdenv.mkDerivation rec {
     "--disable-static-genppd" # should be harmless on NixOS
   ];
 
+  # FIXME: hacky because we modify generated configure, but I haven't found a better way.
+  # makeFlags doesn't change this everywhere (e.g. in cups-genppdupdate).
+  preConfigure = lib.optionalString cupsSupport ''
+    sed -i \
+      -e "s,cups_conf_datadir=.*,cups_conf_datadir=\"$out/share/cups\",g" \
+      -e "s,cups_conf_serverbin=.*,cups_conf_serverbin=\"$out/lib/cups\",g" \
+      -e "s,cups_conf_serverroot=.*,cups_conf_serverroot=\"$out/etc/cups\",g" \
+      configure
+  '' + lib.optionalString gimp2Support ''
+    sed -i \
+      -e "s,gimp2_plug_indir=.*,gimp2_plug_indir=\"$out/lib/gimp/${gimp.majorVersion}\",g" \
+      configure
+  '';
+
   enableParallelBuilding = true;
 
   # Testing is very, very long.
   # doCheck = true;
 
-  installFlags =
-    lib.optionals cupsSupport [ "cups_conf_datadir=$(out)/share/cups" "cups_conf_serverbin=$(out)/lib/cups" "cups_conf_serverroot=$(out)/etc/cups" ]
-    ++ lib.optionals gimp2Support [ "gimp2_plug_indir=$(out)/${gimp.name}-plugins" ];
-
   meta = with stdenv.lib; {
     description = "Ghostscript and cups printer drivers";
     homepage = http://sourceforge.net/projects/gimp-print/;
diff --git a/pkgs/misc/drivers/m3d-linux/default.nix b/pkgs/misc/drivers/m3d-linux/default.nix
new file mode 100644
index 00000000000..0e970e30d58
--- /dev/null
+++ b/pkgs/misc/drivers/m3d-linux/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation {
+  name = "M3D-Linux-2016-01-20";
+
+  src = fetchFromGitHub {
+    owner = "donovan6000";
+    repo = "M3D-Linux";
+    rev = "d0bbb0379c52a88af55740a937edc92af162cdf6";
+    sha256 = "0fwzb9mf04bw5wxabh3js7nir60kfq8iz7kcigw6c233aadwg03i";
+  };
+
+  installPhase = ''
+    install -Dm755 m3d-linux $out/bin/m3d-linux
+    install -Dm755 90-m3d-local.rules $out/lib/udev/rules.d/90-m3d-local.rules
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/donovan6000/M3D-Linux;
+    description = "A Linux program that can communicate with the Micro 3D printer";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ abbradar ];
+  };
+}
diff --git a/pkgs/misc/drivers/xboxdrv/default.nix b/pkgs/misc/drivers/xboxdrv/default.nix
index a40dd0bd31d..a6f99cca8cc 100644
--- a/pkgs/misc/drivers/xboxdrv/default.nix
+++ b/pkgs/misc/drivers/xboxdrv/default.nix
@@ -2,13 +2,13 @@
 , libusb1, boost, glib, dbus_glib }:
 
 let
-  version = "0.8.5";
+  version = "0.8.8";
 in stdenv.mkDerivation {
   name = "xboxdrv-${version}";
 
   src = fetchurl {
-    url = "https://github.com/Grumbel/xboxdrv/archive/v${version}.tar.gz";
-    sha256 = "0xg2dhfsk3i693rgwr1pr532b3hk3zmjxlx55g6bplslr94bibi2";
+    url = "https://github.com/xboxdrv/xboxdrv/archive/v${version}.tar.gz";
+    sha256 = "0jx2wqmc7602dxyj19n3h8x0cpy929h7c0h39vcc5rf0q74fh3id";
   };
 
   patchPhase = ''