Scanners: Difference between revisions

Add example for network-attached epkowa scanner
 
(2 intermediate revisions by 2 users not shown)
Line 72: Line 72:


===Epson===
===Epson===
If your scanner is listed as supported by the <tt>epkowa</tt> backend:
If your scanner is listed as supported by the <tt>epkowa</tt> backend and is connected by USB or SCSI:


<syntaxhighlight lang="nix">hardware.sane.extraBackends = [ pkgs.epkowa ];</syntaxhighlight>
<syntaxhighlight lang="nix">hardware.sane.extraBackends = [ pkgs.epkowa ];</syntaxhighlight>
If your scanner is listed as supported by the <tt>epkowa</tt> backend and is on the network,
substitute the host name or IP address in:
<syntaxhighlight lang="nix">
hardware.sane.extraBackends = [
  (pkgs.epkowa.overrideAttrs (oldAttrs: {
    postInstall = oldAttrs.postInstall + ''
      echo "net epson10a2e0.local" >> $out/etc/sane.d/epkowa.conf
    '';
  }))
];
</syntaxhighlight>


Some other scanners (see [https://gitlab.com/utsushi/utsushi/blob/master/README list]) need the <tt>utsushi</tt> backend:
Some other scanners (see [https://gitlab.com/utsushi/utsushi/blob/master/README list]) need the <tt>utsushi</tt> backend:
Line 132: Line 145:


<ol>
<ol>
<li>You need to install a special version of xsane, which you can enable by amending <tt>/etc/nixos/configuration.nix</tt> as follows:
<li>Enable GIMP support in xsane by editing <tt>/etc/nixos/configuration.nix.</tt> Remove <tt>pkgs.xsane</tt> from your package list, and use the following instead:


<syntaxhighlight lang="nix">{
<syntaxhighlight lang="nix">{
   ...
   #...
   nixpkgs.config.packageOverrides = pkgs: {
   environment.systemPackages = [
     xsaneGimp = pkgs.xsane.override { gimpSupport = true; };
     (pkgs.xsane.override { gimpSupport = true; })
   };
   ];
   ...
   #...
}</syntaxhighlight></li>
}</syntaxhighlight></li>
<li>Rebuild: <syntaxhighlight lang="console">$ sudo nixos-rebuild switch</syntaxhighlight></li>
<li>Rebuild: <syntaxhighlight lang="console">$ sudo nixos-rebuild switch</syntaxhighlight></li>
Line 148: Line 161:
==Network scanning==
==Network scanning==


If NixOs cannot find a scanner located on your network, you may be interested in adding in your <tt>configuration.nix</tt>:
If NixOS cannot find a scanner located on your network, you may be interested in adding in your <tt>configuration.nix</tt>:


<syntaxhighlight lang="nix">{
<syntaxhighlight lang="nix">{
Line 174: Line 187:


==Using the scanner button==
==Using the scanner button==
{{WOC}}
Many scanners feature a hardware button which makes for very convenient operation, especially in combination with an automated document processing system like <tt>paperless</tt>.  NixOS includes the scanner button daemon <tt>scanbd</tt> which can be used for this purpose; however, its setup isn't terribly user friendly.
Many scanners feature a hardware button which makes for very convenient operation, especially in combination with an automated document processing system like <tt>paperless</tt>.  NixOS includes the scanner button daemon <tt>scanbd</tt> which can be used for this purpose; however, its setup isn't terribly user friendly.


Line 366: Line 380:
       };
       };
}</syntaxhighlight>
}</syntaxhighlight>


==See also==
==See also==