nixpkgs/pkgs/by-name/sc/scanbd/package.nix
aleksana 571c71e6f7 treewide: migrate packages to pkgs/by-name, take 1
We are migrating packages that meet below requirements:

1. using `callPackage`
2. called path is a directory
3. overriding set is empty (`{ }`)
4. not containing path expressions other than relative path (to
makenixpkgs-vet happy)
5. not referenced by nix files outside of the directory, other
than`pkgs/top-level/all-packages.nix`
6. not referencing nix files outside of the directory
7. not referencing `default.nix` (since it's changed to `package.nix`)
8. `outPath` doesn't change after migration

The tool is here: https://github.com/Aleksanaa/by-name-migrate.
2024-11-09 20:04:51 +08:00

61 lines
2.0 KiB
Nix

{ lib, stdenv, fetchurl, pkg-config
, dbus, libconfuse, libjpeg, sane-backends, systemd }:
stdenv.mkDerivation rec {
pname = "scanbd";
version = "1.5.1";
src = fetchurl {
sha256 = "0pvy4qirfjdfm8aj6x5rkbgl7hk3jfa2s21qkk8ic5dqfjjab75n";
url = "mirror://sourceforge/scanbd/${pname}-${version}.tgz";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ dbus libconfuse libjpeg sane-backends systemd ];
configureFlags = [
"--disable-Werror"
"--enable-udev"
"--with-scanbdconfdir=/etc/scanbd"
"--with-systemdsystemunitdir=$out/lib/systemd/system"
] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
# AC_FUNC_MALLOC is broken on cross builds.
"ac_cv_func_malloc_0_nonnull=yes"
"ac_cv_func_realloc_0_nonnull=yes"
];
enableParallelBuilding = true;
installFlags = [
"scanbdconfdir=$(out)/etc/scanbd"
"scannerconfdir=$(scanbdconfdir)/scanner.d"
];
doCheck = true;
meta = with lib; {
description = "Scanner button daemon";
longDescription = ''
scanbd polls a scanner's buttons, looking for button presses, function
knob changes, or other scanner events such as paper inserts and removals,
while at the same time allowing scan-applications to access the scanner.
Various actions can be submitted (scan, copy, email, ...) via action
scripts. The function knob values are passed to the action scripts as
well. Scan actions are also signaled via dbus. This can be useful for
foreign applications. Scans can also be triggered via dbus from foreign
applications.
On platforms which support signaling of dynamic device insertion/removal
(libudev, dbus, hal), scanbd supports this as well.
scanbd can use all sane-backends or some special backends from the (old)
scanbuttond project.
'';
homepage = "http://scanbd.sourceforge.net/";
downloadPage = "https://sourceforge.net/projects/scanbd/";
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}