colord/colord.spec

247 lines
7.9 KiB
RPMSpec
Raw Normal View History

#
# spec file for package colord
#
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# 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/
#
%define _udevrulesdir %(pkg-config --variable=udevdir udev)/rules.d
Name: colord
Version: 1.2.4
Release: 0
Summary: System Daemon for Managing Color Devices
License: GPL-2.0+
Group: System/Daemons
Url: http://colord.hughsie.com/
Source0: http://www.freedesktop.org/software/colord/releases/%{name}-%{version}.tar.xz
# Apparmor profile
Source1: usr.lib.colord
Source99: baselibs.conf
BuildRequires: gobject-introspection-devel
BuildRequires: intltool
BuildRequires: vala
BuildRequires: pkgconfig(bash-completion) >= 2.0
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(gio-2.0) >= 2.25.9
BuildRequires: pkgconfig(gio-unix-2.0)
BuildRequires: pkgconfig(glib-2.0) >= 2.36.0
BuildRequires: pkgconfig(gmodule-2.0)
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(gudev-1.0)
BuildRequires: pkgconfig(gusb) >= 0.1.1
BuildRequires: pkgconfig(lcms2) >= 2.6
BuildRequires: pkgconfig(libsystemd-login) >= 44
BuildRequires: pkgconfig(polkit-gobject-1) >= 0.103
BuildRequires: pkgconfig(sqlite3)
BuildRequires: pkgconfig(systemd)
BuildRequires: pkgconfig(udev)
Requires(pre): pwdutils
Requires: shared-color-profiles
Recommends: %{name}-lang
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%{?systemd_requires}
%description
colord is a system activated daemon that maps devices to color profiles.
It is used by gnome-color-manager for system integration and use when
there are no users logged in.
%package -n libcolord2
Summary: System Daemon for Managing Color Devices -- Library
Group: System/Libraries
Suggests: %{name}
%description -n libcolord2
colord is a system activated daemon that maps devices to color profiles.
It is used by gnome-color-manager for system integration and use when
there are no users logged in.
%package -n libcolorhug2
Summary: System Daemon for Managing Color Devices -- Library
Group: System/Libraries
Suggests: %{name}
%description -n libcolorhug2
colord is a system activated daemon that maps devices to color profiles.
It is used by gnome-color-manager for system integration and use when
there are no users logged in.
%package -n typelib-1_0-Colord-1_0
Summary: System Daemon for Managing Color Devices -- Introspection bindings
Group: System/Libraries
%description -n typelib-1_0-Colord-1_0
colord is a system activated daemon that maps devices to color profiles.
It is used by gnome-color-manager for system integration and use when
there are no users logged in.
This package provides the GObject Introspection bindings for the
libcolord library.
%package -n typelib-1_0-ColorHug-1_0
Summary: System Daemon for Managing Color Devices -- Introspection bindings
Group: System/Libraries
%description -n typelib-1_0-ColorHug-1_0
colord is a system activated daemon that maps devices to color profiles.
It is used by gnome-color-manager for system integration and use when
there are no users logged in.
This package provides the GObject Introspection bindings for the
libcolorhug library.
%package -n libcolord-devel
Summary: System Daemon for Managing Color Devices -- Development Files
Group: Development/Languages/C and C++
Requires: libcolord2 = %{version}
Requires: libcolorhug2 = %{version}
Requires: typelib-1_0-ColorHug-1_0 = %{version}
Requires: typelib-1_0-Colord-1_0 = %{version}
%description -n libcolord-devel
colord is a system activated daemon that maps devices to color profiles.
It is used by gnome-color-manager for system integration and use when
there are no users logged in.
%lang_package
%prep
%setup -q
%build
%configure \
--disable-static \
--enable-polkit \
--with-daemon-user=colord --enable-vala
make %{?_smp_mflags}
%install
%make_install
mkdir $RPM_BUILD_ROOT%{_sbindir}
ln -sf %{_sbindir}/service $RPM_BUILD_ROOT%{_sbindir}/rc%{name}
find %{buildroot} -type f -name '*.la' -delete -print
mkdir %{buildroot}/etc/apparmor.d
install -c -m 644 %{SOURCE1} %{buildroot}/etc/apparmor.d/
# Manually install prebuilt man pages, since we don't have docbook2man
pushd man
test ! -f %{buildroot}%{_mandir}/man1/*
mkdir -p %{buildroot}%{_mandir}/man1/
for man in *.1; do
install -m 644 ${man} %{buildroot}%{_mandir}/man1/
done
# Check we only have man1 pages to install
test ! -f *.[2-9]
popd
%find_lang %{name}
%pre
# Create colord user
getent group colord >/dev/null || groupadd -r colord
getent passwd colord >/dev/null || useradd -r -g colord -d %{_localstatedir}/lib/colord -s /sbin/nologin -c "user for colord" colord
%service_add_pre %{name}.service
# Fix ownership of /var/lib/colord from first packages (in 12.1)
test ! -d %{_localstatedir}/lib/colord || chown -R colord:colord %{_localstatedir}/lib/colord
exit 0
%preun
%service_del_preun %{name}.service
%post
%glib2_gsettings_schema_post
%service_add_post %{name}.service
%postun
%glib2_gsettings_schema_postun
%service_del_postun %{name}.service
%post -n libcolord2 -p /sbin/ldconfig
%postun -n libcolord2 -p /sbin/ldconfig
%post -n libcolorhug2 -p /sbin/ldconfig
%postun -n libcolorhug2 -p /sbin/ldconfig
%files
%defattr(-,root,root)
%doc AUTHORS ChangeLog COPYING NEWS
%{_unitdir}/colord.service
%{_udevrulesdir}/*.rules
%attr(755,colord,colord) %dir %{_localstatedir}/lib/colord
%{_datadir}/bash-completion/completions/colormgr
%{_sysconfdir}/dbus-1/system.d/org.freedesktop.ColorManager.conf
%{_bindir}/cd-create-profile
%{_bindir}/cd-fix-profile
%{_bindir}/cd-iccdump
%{_bindir}/colormgr
%{_libdir}/colord-sensors/
%{_libexecdir}/%{name}
%{_libexecdir}/%{name}-session
%{_datadir}/%{name}/
%{_datadir}/color/
%{_datadir}/dbus-1/interfaces/org.freedesktop.ColorHelper.xml
%{_datadir}/dbus-1/interfaces/org.freedesktop.ColorManager.*
%{_datadir}/dbus-1/services/org.freedesktop.ColorHelper.service
%{_datadir}/dbus-1/system-services/org.freedesktop.ColorManager.service
%{_datadir}/glib-2.0/schemas/org.freedesktop.ColorHelper.gschema.xml
%{_datadir}/polkit-1/actions/org.freedesktop.color.policy
%{_mandir}/man1/cd-create-profile.1%{?ext_man}
%{_mandir}/man1/cd-fix-profile.1%{?ext_man}
%{_mandir}/man1/colormgr.1%{?ext_man}
%dir /etc/apparmor.d/
%config /etc/apparmor.d/usr.lib.colord
%dir %{_libdir}/colord-plugins
%{_libdir}/colord-plugins/libcd_plugin_camera.so
%{_libdir}/colord-plugins/libcd_plugin_scanner.so
# These should not be here.. this is ugly (fdo#60733)
#{_libdir}/lib*private.*
%{_sbindir}/rc%{name}
%files -n libcolord2
%defattr(-, root, root)
%{_libdir}/libcolord.so.*
%{_libdir}/libcolordprivate.so.*
%files -n libcolorhug2
%defattr(-,root,root)
%{_libdir}/libcolorhug.so.*
%files -n typelib-1_0-Colord-1_0
%defattr(-,root,root)
%{_libdir}/girepository-1.0/Colord-1.0.typelib
%files -n typelib-1_0-ColorHug-1_0
%defattr(-,root,root)
%{_libdir}/girepository-1.0/ColorHug-1.0.typelib
%files -n libcolord-devel
%defattr(-, root, root)
%{_includedir}/colord-1/
%{_libdir}/libcolord.so
%{_libdir}/libcolordprivate.so
%{_libdir}/libcolorhug.so
%{_libdir}/pkgconfig/colord.pc
%{_libdir}/pkgconfig/colorhug.pc
%{_datadir}/gir-1.0/Colord-1.0.gir
%{_datadir}/gir-1.0/ColorHug-1.0.gir
%dir %{_datadir}/vala
%dir %{_datadir}/vala/vapi
%{_datadir}/vala/vapi/colord.vapi
%files lang -f %{name}.lang
%defattr(-, root, root)
%changelog