File scanbd.spec of Package scanbd
#
# spec file for package scanbd
#
# Copyright (c) 2014-2018 Malcolm J Lewis <malcolmlewis@opensuse.org>
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: scanbd
Version: 1.5.1
Release: 0
Summary: Scanner button daemon looking for scanner button pressed
License: GPL-2.0+
Group: Productivity/Graphics/Other
Url: http://scanbd.sourceforge.net/
Source: https://downloads.sourceforge.net/project/%{name}/releases/%{name}-%{version}.tgz
#FIXME If intended for inclusion in any SUSE product please open a bug report to
# request review of the service by the security team.
Source99: scanbd-rpmlintrc
#PATCH-FIX-OPENSUSE scanbd-fix-ownership.patch malcolmlewis@opensuse.org -- Set ownership of systemd services and dbus service to root.
Patch0: scanbd-fix-ownership.patch
Patch1: 0001-Do-not-fail-if-effective-uid-and-gid-set-calls-with-.patch
Patch2: 0002-Extend-PATH-variable-length-for-script-to-four-times.patch
BuildRequires: pkgconfig
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(libconfuse)
BuildRequires: pkgconfig(libudev)
BuildRequires: pkgconfig(sane-backends)
BuildRequires: pkgconfig(systemd)
%description
Scanbd is a scanner button daemon. It polls the scanner buttons looking for
buttons pressed or function knob changes or other scanner events as paper
inserts / removals and at the same time allows also scan-applications to
access the scanners. If buttons are pressed, etc., 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.
%prep
%setup -q -n %{version}
%autopatch -p1
%build
%configure
make CFLAGS="%{optflags} -Wno-missing-field-initializers" %{?_smp_mflags}
%install
%make_install
pushd %{buildroot}%{_sbindir}
ln -s service rcscanbd
popd
install -Dm0644 integration/scanbd_dbus.conf %{buildroot}/%{_sysconfdir}/dbus-1/system.d/scanbd_dbus.conf
install -Dm0644 integration/systemd/de.kmux.scanbd.server.service %{buildroot}/%{_datadir}/dbus-1/system-services/de.kmux.scanbd.server.service
%check
%pre
%service_add_pre scanbd.service
%service_add_pre scanbm.socket
%service_add_pre scanbm@.service
%post
%service_add_post scanbd.service
%service_add_post scanbm.socket
%service_add_post scanbm@.service
%preun
%service_del_preun scanbd.service
%service_del_preun scanbm.socket
%service_del_preun scanbm@.service
%postun
%service_del_postun scanbd.service
%service_del_postun scanbm.socket
%service_del_postun scanbm@.service
%files
%doc AUTHORS
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/scanbd_dbus.conf
%dir %{_sysconfdir}/scanbd
%{_sysconfdir}/scanbd/action.script
%{_sysconfdir}/scanbd/example.script
%{_sysconfdir}/scanbd/insert.script
%{_sysconfdir}/scanbd/scanadf.script
%{_sysconfdir}/scanbd/test.script
%dir %{_sysconfdir}/scanbd/scanner.d
%config(noreplace) %{_sysconfdir}/scanbd/scanner.d/pixma.conf
%config(noreplace) %{_sysconfdir}/scanbd/scanner.d/canon.conf
%config(noreplace) %{_sysconfdir}/scanbd/scanner.d/avision.conf
%config(noreplace) %{_sysconfdir}/scanbd/scanner.d/fujitsu.conf
%config(noreplace) %{_sysconfdir}/scanbd/scanner.d/snapscan.conf
%config(noreplace) %{_sysconfdir}/scanbd/scanner.d/plustek.conf
%config(noreplace) %{_sysconfdir}/scanbd/scanner.d/hp.conf
%config(noreplace) %{_sysconfdir}/scanbd/scanbd.conf
%{_sbindir}/rcscanbd
%{_sbindir}/scanbd
%{_sbindir}/scanbm
%{_unitdir}/scanbd.service
%{_unitdir}/scanbm.socket
%{_unitdir}/scanbm@.service
%{_datadir}/dbus-1/system-services/de.kmux.scanbd.server.service
%{_mandir}/man8/scanbd.8%{?ext_man}
%{_mandir}/man8/scanbm.8%{?ext_man}
%changelog