Package Samsung unified printer driver. i686 only but apparently can be improved to support x86_64. Based on patch by James Cook <james.cook[NOSPAM]@utoronto.ca>
This commit is contained in:
parent
e8ff7d627a
commit
0eecd67d14
35
pkgs/misc/cups/drivers/samsung/builder.sh
Normal file
35
pkgs/misc/cups/drivers/samsung/builder.sh
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
source $stdenv/setup
|
||||||
|
|
||||||
|
arch=$(uname -m)
|
||||||
|
# replace i[3456]86 with i386
|
||||||
|
echo arch | egrep -q '^i[3456]86$' && arch=i386
|
||||||
|
arch=i386
|
||||||
|
unpackPhase
|
||||||
|
patchPhase
|
||||||
|
|
||||||
|
set -v
|
||||||
|
|
||||||
|
echo $arch
|
||||||
|
cd cdroot/Linux
|
||||||
|
mkdir -p $out/opt
|
||||||
|
cp -r $arch/at_root/* $out
|
||||||
|
cp -r $arch/at_opt/* $out/opt
|
||||||
|
#cp -r noarch/at_root/* $out
|
||||||
|
cp -r noarch/at_opt/* $out/opt
|
||||||
|
|
||||||
|
cd $out
|
||||||
|
#test -d usr/lib64 && ln -s usr/lib64 lib ||
|
||||||
|
ln -s usr/lib lib
|
||||||
|
mkdir -p share/cups
|
||||||
|
cd share/cups
|
||||||
|
ln -s ../../opt/share/* .
|
||||||
|
ln -s ppd model
|
||||||
|
|
||||||
|
cd $out/lib/cups/filter
|
||||||
|
for i in $(ls); do
|
||||||
|
echo patching $i...
|
||||||
|
patchelf --set-interpreter $(cat $NIX_GCC/nix-support/dynamic-linker) $i || echo "(couldn't set interpreter)"
|
||||||
|
patchelf --set-rpath $cups/lib:$gcc/lib:$glibc/lib $i # This might not be necessary.
|
||||||
|
done
|
||||||
|
|
||||||
|
ln -s $ghostscript/bin/gs $out/lib/cups/filter
|
35
pkgs/misc/cups/drivers/samsung/default.nix
Normal file
35
pkgs/misc/cups/drivers/samsung/default.nix
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
# Tested on linux-x86_64. Might work on linux-i386. Probably won't work on anything else.
|
||||||
|
|
||||||
|
# To use this driver in NixOS, add it to printing.drivers in configuration.nix.
|
||||||
|
# configuration.nix might look like this when you're done:
|
||||||
|
# { pkgs, ... }: {
|
||||||
|
# printing = {
|
||||||
|
# enable = true;
|
||||||
|
# drivers = [ pkgs.samsungUnifiedLinuxDriver ];
|
||||||
|
# };
|
||||||
|
# (more stuff)
|
||||||
|
# }
|
||||||
|
# (This advice was tested on 2010 August 2.)
|
||||||
|
|
||||||
|
{stdenv, fetchurl, cups, gcc, ghostscript, glibc, patchelf}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "samsung-UnifiedLinuxDriver-0.92";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "http://downloadcenter.samsung.com/content/DR/200911/20091103171827750/UnifiedLinuxDriver_0.92.tar.gz";
|
||||||
|
sha256 = "0p2am0p8xvm339mad07c4j77gz31m63z76sy6d9hgwmxy2prbqfq";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [ cups gcc ghostscript glibc patchelf ];
|
||||||
|
|
||||||
|
inherit cups gcc ghostscript glibc;
|
||||||
|
|
||||||
|
builder = ./builder.sh;
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Samsung's Linux drivers; includes binaries without source code";
|
||||||
|
homepage = "http://www.samsung.com/";
|
||||||
|
license = "samsung"; # Binary-only
|
||||||
|
};
|
||||||
|
}
|
@ -8893,6 +8893,15 @@ let
|
|||||||
|
|
||||||
xlockmore = callPackage ../misc/screensavers/xlockmore { };
|
xlockmore = callPackage ../misc/screensavers/xlockmore { };
|
||||||
|
|
||||||
|
samsungUnifiedLinuxDriver = import ../misc/cups/drivers/samsung {
|
||||||
|
inherit fetchurl stdenv;
|
||||||
|
inherit cups ghostscript glibc patchelf;
|
||||||
|
gcc = import ../development/compilers/gcc/4.4 {
|
||||||
|
inherit stdenv fetchurl texinfo gmp mpfr noSysDirs gettext which;
|
||||||
|
profiledCompiler = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
saneBackends = callPackage ../applications/graphics/sane/backends.nix {
|
saneBackends = callPackage ../applications/graphics/sane/backends.nix {
|
||||||
gt68xxFirmware = config.sane.gt68xxFirmware or null;
|
gt68xxFirmware = config.sane.gt68xxFirmware or null;
|
||||||
hotplugSupport = config.sane.hotplugSupport or true;
|
hotplugSupport = config.sane.hotplugSupport or true;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user