Release version 0.13.0
[platform/core/appfw/slp-pkgmgr.git] / packaging / pkgmgr.spec
index 326702d..201aab9 100644 (file)
@@ -1,8 +1,6 @@
-%bcond_with wayland
-
 Name:       pkgmgr
 Summary:    Packager Manager client library package
-Version:    0.2.89
+Version:    0.13.0
 Release:    0
 Group:      Application Framework/Package Management
 License:    Apache-2.0
@@ -17,11 +15,11 @@ Source1007: %{name}.conf
 Source1008: %{name}-installer-signal-agent.service
 Source1009: %{name}-installer-signal-agent.socket
 Requires(post): /usr/sbin/useradd
+Requires(post): capi-system-info
 
 BuildRequires:  cmake
 BuildRequires:  unzip
 BuildRequires:  gettext-tools
-BuildRequires:  pkgconfig(dbus-glib-1)
 BuildRequires:  pkgconfig(glib-2.0)
 BuildRequires:  pkgconfig(gio-2.0)
 BuildRequires:  pkgconfig(dlog)
@@ -29,11 +27,11 @@ BuildRequires:  pkgconfig(bundle)
 BuildRequires:  pkgconfig(pkgmgr-info)
 BuildRequires:  pkgconfig(iniparser)
 BuildRequires:  pkgconfig(libtzplatform-config)
-BuildRequires:  pkgconfig(security-manager)
 BuildRequires:  pkgconfig(xdgmime)
 BuildRequires:  pkgconfig(db-util)
 BuildRequires:  pkgconfig(libsmack)
-BuildRequires:  pkgconfig(libsystemd-daemon)
+BuildRequires:  pkgconfig(libsystemd)
+BuildRequires:  pkgconfig(minizip)
 BuildRequires:  pkgmgr-info-parser-devel
 BuildRequires:  pkgmgr-info-parser
 BuildRequires:  fdupes
@@ -72,6 +70,7 @@ Library for installer frontend/backend for packaging.
 %package installer-devel
 Summary:    Dev package for libpkgmgr-installer
 Requires:   %{name} = %{version}-%{release}
+Requires:   pkgmgr-installer = %{version}-%{release}
 
 %description installer-devel
 Dev package for libpkgmgr-installer for packaging.
@@ -89,7 +88,8 @@ Package Manager client types develpoment package for packaging
 cp %{SOURCE1001} %{SOURCE1002} %{SOURCE1003} %{SOURCE1004} %{SOURCE1005} %{SOURCE1006} .
 
 %build
-%cmake .
+MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
+%cmake . -DFULLVER=%{version} -DMAJORVER=${MAJORVER}
 
 %__make %{?_smp_mflags}
 
@@ -105,7 +105,7 @@ install -m 0644 %{SOURCE1007} %{buildroot}%{_tmpfilesdir}/pkgmgr.conf
 mkdir -p %{buildroot}%{_unitdir_user}/sockets.target.wants
 install -m 0644 %{SOURCE1008} %{buildroot}%{_unitdir_user}/pkgmgr-installer-signal-agent.service
 install -m 0644 %{SOURCE1009} %{buildroot}%{_unitdir_user}/pkgmgr-installer-signal-agent.socket
-ln -sf ../alarm_session_agent.socket %{buildroot}%{_unitdir_user}/sockets.target.wants/pkgmgr-installer-signal-agent.socket
+ln -sf ../pkgmgr-installer-signal-agent.socket %{buildroot}%{_unitdir_user}/sockets.target.wants/pkgmgr-installer-signal-agent.socket
 
 mkdir -p %{buildroot}%{_sysconfdir}/package-manager/backend
 mkdir -p %{buildroot}%{_sysconfdir}/package-manager/backendlib
@@ -113,6 +113,8 @@ mkdir -p %{buildroot}%{_sysconfdir}/opt/upgrade
 
 touch  %{buildroot}%{_sysconfdir}/package-manager/backend/default
 chmod 755 %{buildroot}%{_sysconfdir}/package-manager/backend/default
+touch  %{buildroot}%{_sysconfdir}/package-manager/backend/pkgmgr
+chmod 755 %{buildroot}%{_sysconfdir}/package-manager/backend/pkgmgr
 touch  %{buildroot}%{_sysconfdir}/package-manager/backend/pkgtool
 chmod 755 %{buildroot}%{_sysconfdir}/package-manager/backend/pkgtool
 
@@ -123,7 +125,7 @@ chmod 755 %{buildroot}%{_sysconfdir}/package-manager/backend/pkgtool
 /sbin/ldconfig
 
 # Create tizenglobalapp user needed for global installation
-useradd %TZ_SYS_GLOBALAPP_USER -r -c "system user for common applications" -g root
+useradd %TZ_SYS_GLOBALAPP_USER -r -c "system user for common applications" -g root -u 201
 
 # change owner of TZ_USER_APP (/etc/skel/apps_rw) to tizenglobalapp
 saveHOME="$HOME"
@@ -131,6 +133,15 @@ HOME="%{_sysconfdir}/skel"
 . "%{_sysconfdir}/tizen-platform.conf"
 
 chown %TZ_SYS_GLOBALAPP_USER:root $TZ_USER_APP
+
+# add .shared and .shared_tmp at skel
+mkdir -p $TZ_USER_APP/.shared
+mkdir -p $TZ_USER_APP/.shared_tmp
+chsmack -a User::Home $TZ_USER_APP/.shared
+chsmack -a User::Home $TZ_USER_APP/.shared_tmp
+chmod 755 $TZ_USER_APP/.shared
+chmod 755 $TZ_USER_APP/.shared_tmp
+
 HOME="$saveHOME"
 
 %post -n pkgmgr-client -p /sbin/ldconfig
@@ -141,6 +152,21 @@ HOME="$saveHOME"
 
 %postun -n pkgmgr-installer -p /sbin/ldconfig
 
+%posttrans
+if [ ! -f %{TZ_SYS_DB}/.pkgmgr_parser.db ]; then
+  pkg_initdb --ro
+  install_preload_pkg
+  if [ -f /tmp/.preload_install_error ]; then
+    if [ ! -d /tmp/.postscript/error ]; then
+      mkdir -p /tmp/.postscript/error
+    fi
+    echo "preload install failed" > /tmp/.postscript/error/%{name}_error
+  else
+    pkgcmd -l --global 1>&2
+  fi
+  %{_sysconfdir}/package-manager/pkgmgr-label-initial-image.sh
+fi
+rm -rf %{_sysconfdir}/package-manager/pkgmgr-label-initial-image.sh
 
 %files
 %manifest %{name}.manifest
@@ -152,6 +178,7 @@ HOME="$saveHOME"
 
 %files client
 %manifest %{name}-client.manifest
+%license LICENSE
 %defattr(-,root,root,-)
 %dir %{_sysconfdir}/package-manager
 %config %{_sysconfdir}/package-manager/pkg_path.conf
@@ -160,12 +187,13 @@ HOME="$saveHOME"
 %files client-devel
 %manifest %{name}-client-devel.manifest
 %defattr(-,root,root,-)
-%{_includedir}/package-manager.h
+%{_includedir}/*.h
 %{_libdir}/pkgconfig/pkgmgr.pc
 %{_libdir}/libpkgmgr-client.so
 
 %files installer
 %manifest %{name}-installer.manifest
+%license LICENSE
 %defattr(-,root,root,-)
 %{_libdir}/libpkgmgr_installer.so.*
 %{_bindir}/pkgmgr-installer-signal-agent
@@ -184,6 +212,5 @@ HOME="$saveHOME"
 %files types-devel
 %manifest %{name}-types-devel.manifest
 %defattr(-,root,root,-)
-%{_includedir}/package-manager-types.h
-%{_includedir}/package-manager-plugin.h
+%{_includedir}/package-manager-*.h
 %{_libdir}/pkgconfig/pkgmgr-types.pc