]> git.pld-linux.org Git - packages/polkit.git/blobdiff - polkit.spec
- versioned Obsoletes
[packages/polkit.git] / polkit.spec
index 11439b4568c53b7abb5dc06636007d6d0603213c..d41686441c878c7bc7076be5f62e17d31e06bb6c 100644 (file)
@@ -1,56 +1,76 @@
-
+#
 # Conditional build:
-%bcond_without apidocs                 # build without apidocs
-
+%bcond_without apidocs         # build without apidocs
+%bcond_without consolekit      # ConsoleKit fallback
+%bcond_with    mozjs           # build with mozjs as JS backend instead of duktape
+%bcond_without systemd         # use systemd-login for session tracking (fallback to ConsoleKit on runtime)
+%bcond_with    elogind         # use elogind instead of systemd-login
+
+%if %{with elogind}
+%undefine      with_systemd
+%endif
 Summary:       A framework for defining policy for system-wide components
 Summary(pl.UTF-8):     Szkielet do definiowania polityki dla komponentów systemowych
 Name:          polkit
-Version:       0.96
+Version:       121
 Release:       1
 License:       LGPL v2+
 Group:         Libraries
-Source0:       http://hal.freedesktop.org/releases/%{name}-%{version}.tar.gz
-# Source0-md5: e0a06da501b04ed3bab986a9df5b5aa2
-URL:           http://www.freedesktop.org/wiki/Software/PolicyKit
-BuildRequires: autoconf >= 2.60
-BuildRequires: automake >= 1:1.7
+Source0:       https://www.freedesktop.org/software/polkit/releases/%{name}-%{version}.tar.gz
+# Source0-md5: 255761abdc616805a6592bb5fffae178
+Patch0:                systemd-fallback.patch
+URL:           https://www.freedesktop.org/wiki/Software/polkit
+BuildRequires: dbus-devel
 BuildRequires: docbook-dtd412-xml
 BuildRequires: docbook-style-xsl
-BuildRequires: eggdbus-devel >= 0.6
+%{!?with_mozjs:BuildRequires:  duktape-devel >= 2.2.0}
+%{?with_elogind:BuildRequires: elogind-devel}
 BuildRequires: expat-devel >= 1:1.95.8
-BuildRequires: gettext-devel
-BuildRequires: gir-repository-devel
-BuildRequires: glib2-devel >= 1:2.21.4
-BuildRequires: glibc-misc
+BuildRequires: gettext-tools
+BuildRequires: glib2-devel >= 1:2.32.0
+%if %(locale -a | grep -q '^C\.utf8$'; echo $?)
+BuildRequires: glibc-localedb-all
+%endif
 BuildRequires: gobject-introspection-devel >= 0.6.2
-%{?with_apidocs:BuildRequires: gtk-doc >= 1.3}
-BuildRequires: gtk-doc-automake
-BuildRequires: intltool >= 0.40.0
-BuildRequires: libtool
+BuildRequires: gtk-doc >= 1.3
+BuildRequires: gtk-doc-automake >= 1.3
+BuildRequires: libstdc++-devel >= 6:7
 BuildRequires: libxslt-progs
+BuildRequires: meson >= 0.50.0
+%{?with_mozjs:BuildRequires:   mozjs91-devel}
+BuildRequires: ninja
 BuildRequires: pam-devel >= 0.80
 BuildRequires: pkgconfig
-BuildRequires: python-modules
-BuildRequires: rpmbuild(macros) >= 1.527
+BuildRequires: rpm-build >= 4.6
+BuildRequires: rpmbuild(macros) >= 1.736
+%{?with_systemd:BuildRequires: systemd-devel}
 Requires:      %{name}-libs = %{version}-%{release}
+%if %{without systemd} && %{without elogind}
 Requires:      ConsoleKit >= 0.4.1
+%endif
 Requires:      dbus >= 1.1.2-5
+%{!?with_mozjs:Requires:       duktape >= 2.2.0}
+%if %{with systemd}
+Requires:      systemd-units >= 38
+%endif
+Obsoletes:     PolicyKit < 1
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
 PolicyKit is a framework for defining policy for system-wide
-components and for desktop pieces to configure it. It is used by HAL.
+components and for desktop pieces to configure it.
 
 %description -l pl.UTF-8
 PolicyKit to szkielet do definiowania polityki dla komponentów
-systemowych oraz składników pulpitu do konfigurowania ich. Jest
-używany przez HAL-a.
+systemowych oraz składników pulpitu do konfigurowania ich.
 
 %package apidocs
 Summary:       PolicyKit API documentation
 Summary(pl.UTF-8):     Dokumentacja API PolicyKit
 Group:         Documentation
 Requires:      gtk-doc-common
+Obsoletes:     PolicyKit-apidocs < 1
+BuildArch:     noarch
 
 %description apidocs
 PolicyKit API documentation.
@@ -63,8 +83,9 @@ Summary:      PolicyKit libraries
 Summary(pl.UTF-8):     Biblioteki PolicyKit
 Group:         Libraries
 Requires:      dbus-libs >= 1.1.2-5
-Requires:      glib2 >= 1:2.18.0
-Conflicts:     PolicyKit < 0.1-0.20061203.6
+Requires:      glib2 >= 1:2.32.0
+Requires:      gobject-introspection
+Obsoletes:     PolicyKit-libs < 1
 
 %description libs
 PolicyKit libraries.
@@ -78,7 +99,9 @@ Summary(pl.UTF-8):    Pliki nagłówkowe PolicyKit
 Group:         Development/Libraries
 Requires:      %{name}-libs = %{version}-%{release}
 Requires:      expat-devel >= 1:1.95.8
-Requires:      glib2-devel >= 1:2.18.0
+Requires:      glib2-devel >= 1:2.32.0
+Obsoletes:     PolicyKit-devel < 1
+Obsoletes:     polkit-static < 121
 
 %description devel
 Header files for PolicyKit.
@@ -86,78 +109,78 @@ Header files for PolicyKit.
 %description devel -l pl.UTF-8
 Pliki nagłówkowe PolicyKit.
 
-%package static
-Summary:       Static PolicyKit libraries
-Summary(pl.UTF-8):     Statyczne biblioteki PolicyKit
-Group:         Development/Libraries
-Requires:      %{name}-devel = %{version}-%{release}
-
-%description static
-Static PolicyKit libraries.
-
-%description static -l pl.UTF-8
-Statyczne biblioteki PolicyKit.
-
 %prep
-%setup -q
+%setup -q -n %{name}-v.%{version}
+%if %{with consolekit} && (%{with systemd} || %{with elogind})
+%patch0 -p1
+%endif
 
 %build
-%{?with_apidocs:%{__gtkdocize}}
-%{__intltoolize}
-%{__libtoolize}
-%{__aclocal}
-%{__autoconf}
-%{__autoheader}
-%{__automake}
-%configure \
-       %{__enable_disable apidocs gtk-doc} \
-       --with-html-dir=%{_gtkdocdir} \
-       --with-pam-include=system-auth \
-       --with-pam-module-dir=/%{_lib}/security
-%{__make}
+%meson build \
+       -Dgtk_doc=%{__true_false apidocs} \
+       -Dtests=false \
+       -Dsession_tracking=%{?with_systemd:libsystemd-login}%{?with_elogind:libelogind} \
+       -Dpam_include=system-auth \
+       -Dpam_module_dir=/%{_lib}/security \
+       -Dpolkitd_user=polkitd \
+       -Dexamples=true \
+       -Djs_engine=%{!?with_mozjs:duktape}%{?with_mozjs:mozjs} \
+       -Dman=true
+
+%ninja_build -C build
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
-%{__make} install \
-       DESTDIR=$RPM_BUILD_ROOT
-
-rm -f $RPM_BUILD_ROOT%{_libdir}/polkit-1/extensions/*.{la,a}
+%ninja_install -C build
 
 %find_lang polkit-1
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
+%pre
+%groupadd -g 283 polkitd
+%useradd -u 283 -s /bin/false -c "polkitd pseudo user" -g polkitd polkitd
+%addusertogroup polkitd proc
+
+%postun
+if [ "$1" = "0" ]; then
+       %userremove polkitd
+       %groupremove polkitd
+fi
+
+%{?with_systemd:%systemd_reload}
+
 %post  libs -p /sbin/ldconfig
 %postun        libs -p /sbin/ldconfig
 
 %files -f polkit-1.lang
 %defattr(644,root,root,755)
-%doc AUTHORS README
+%doc AUTHORS NEWS.md README.md
 %attr(755,root,root) %{_bindir}/pkaction
 %attr(755,root,root) %{_bindir}/pkcheck
 %attr(4755,root,root) %{_bindir}/pkexec
-%attr(4755,root,root) %{_libexecdir}/polkit-agent-helper-1
-%attr(755,root,root) %{_libexecdir}/polkitd
-%dir %{_libdir}/polkit-1
-%dir %{_libdir}/polkit-1/extensions
-%attr(755,root,root) %{_libdir}/polkit-1/extensions/libnullbackend.so
-%attr(755,root,root) %{_libdir}/polkit-1/extensions/libpkexec-action-lookup.so
+%attr(755,root,root) %{_bindir}/pkttyagent
+%attr(755,root,root) %{_bindir}/pk-example-frobnicate
+%dir %{_prefix}/lib/polkit-1
+%attr(4755,root,root) %{_prefix}/lib/polkit-1/polkit-agent-helper-1
+%attr(755,root,root) %{_prefix}/lib/polkit-1/polkitd
 %dir %{_sysconfdir}/polkit-1
-%dir %{_sysconfdir}/polkit-1/localauthority.conf.d
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/polkit-1/localauthority.conf.d/*.conf
-%dir %{_sysconfdir}/polkit-1/nullbackend.conf.d
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/polkit-1/nullbackend.conf.d/*.conf
-/etc/dbus-1/system.d/org.freedesktop.PolicyKit1.conf
+%attr(700,polkitd,root) %dir %{_sysconfdir}/polkit-1/rules.d
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/polkit-1/rules.d/50-default.rules
 /etc/pam.d/polkit-1
-%{_datadir}/polkit-1
+%dir %{_datadir}/polkit-1
+%{_datadir}/polkit-1/policyconfig-1.dtd
+%{_datadir}/polkit-1/actions
+%attr(700,polkitd,root) %dir %{_datadir}/polkit-1/rules.d
 %{_datadir}/dbus-1/system-services/org.freedesktop.PolicyKit1.service
-%attr(700,root,root) %dir /var/lib/polkit-1
+%{_datadir}/dbus-1/system.d/org.freedesktop.PolicyKit1.conf
+%{?with_systemd:%{systemdunitdir}/polkit.service}
 %{_mandir}/man1/pkaction.1*
 %{_mandir}/man1/pkcheck.1*
 %{_mandir}/man1/pkexec.1*
-%{_mandir}/man8/pklocalauthority.8*
+%{_mandir}/man1/pkttyagent.1*
 %{_mandir}/man8/polkit.8*
 %{_mandir}/man8/polkitd.8*
 
@@ -173,28 +196,19 @@ rm -rf $RPM_BUILD_ROOT
 %doc COPYING
 %attr(755,root,root) %{_libdir}/libpolkit-agent-1.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libpolkit-agent-1.so.0
-%attr(755,root,root) %{_libdir}/libpolkit-backend-1.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpolkit-backend-1.so.0
 %attr(755,root,root) %{_libdir}/libpolkit-gobject-1.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libpolkit-gobject-1.so.0
-%{_libdir}/girepository-1.0/*.typelib
+%{_libdir}/girepository-1.0/Polkit-1.0.typelib
+%{_libdir}/girepository-1.0/PolkitAgent-1.0.typelib
 
 %files devel
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libpolkit-agent-1.so
-%attr(755,root,root) %{_libdir}/libpolkit-backend-1.so
 %attr(755,root,root) %{_libdir}/libpolkit-gobject-1.so
-%{_libdir}/libpolkit-agent-1.la
-%{_libdir}/libpolkit-backend-1.la
-%{_libdir}/libpolkit-gobject-1.la
 %{_includedir}/polkit-1
 %{_pkgconfigdir}/polkit-agent-1.pc
-%{_pkgconfigdir}/polkit-backend-1.pc
 %{_pkgconfigdir}/polkit-gobject-1.pc
-%{_datadir}/gir-1.0/*.gir
-
-%files static
-%defattr(644,root,root,755)
-%{_libdir}/libpolkit-agent-1.a
-%{_libdir}/libpolkit-backend-1.a
-%{_libdir}/libpolkit-gobject-1.a
+%{_datadir}/gir-1.0/Polkit-1.0.gir
+%{_datadir}/gir-1.0/PolkitAgent-1.0.gir
+%{_datadir}/gettext/its/polkit.its
+%{_datadir}/gettext/its/polkit.loc
This page took 0.082737 seconds and 4 git commands to generate.