%define with_ksmarttray 1 %define with_smart_update 1 Name: smart Version: 0.42 Release: %mkrel 6 Group: System/Configuration/Packaging Summary: Next generation package handling tool Source0: smart-%{version}.tar.bz2 Source1: distro.py Source2: smart.console Source4: smart.desktop Source5: smart-fr.tar.bz2 # http://tracker.labix.org/issue184 Patch: smart-0.42-issue184.patch Patch1: smart-0.42-platform.patch License: GPL URL: http://smartpm.org/ Requires: python Requires: python-rpm %ifarch %{ix86} Requires: python-psyco %endif Requires: usermode-consoleonly BuildRequires: rpm-mandriva-setup >= 1.7 %py_requires -d %if %{with_ksmarttray} BuildRequires: kdelibs-devel %endif BuildRoot: %{_tmppath}/%{name}-%{version}-root %description Smart Package Manager is a next generation package handling tool. %files %defattr(0644,root,root,0755) %doc HACKING README LICENSE TODO IDEAS doc %defattr(-,root,root) %{_libdir}/smart/distro.py %{_bindir}/smart-root %config(noreplace) %{_sysconfdir}/security/console.apps/smart-root %config(noreplace) %{_sysconfdir}/pam.d/smart-root %dir %{_localstatedir}/smart/channels %{_bindir}/smart %_mandir/*/* %dir %{py_platsitedir}/smart %{py_platsitedir}/smart/* %exclude %{py_platsitedir}/smart/interfaces/gtk #------------------------------------------------------------------ %package gui Summary: Smart GTK user interface Group: System/Configuration/Packaging Requires: smart Requires: pygtk2.0 >= 2.3.94 Conflicts: smart <= 0.40-1mdk %description gui Smart GTK user interface %post gui %{update_menus} %postun gui %{clean_menus} %files gui %defattr(0644,root,root,0755) %{_datadir}/applications/smart-package-manager.desktop %{_datadir}/pixmaps/smart-package-manager.png %{_datadir}/locale/*/*/smart.mo %{_menudir}/smart-gui %{_datadir}/applications/mandriva-smart*.desktop %{py_platsitedir}/smart/interfaces/gtk #------------------------------------------------------------------ %if %with_smart_update %package update Summary: Allows execution of 'smart update' by normal users (suid) Group: System/Configuration/Packaging Requires: smart %description update Allows execution of 'smart update' by normal users through a special suid command. %files update %attr(4755,root,root) %{_bindir}/smart-update %endif #------------------------------------------------------------------ %if %with_ksmarttray %package -n ksmarttray Summary: KDE tray program for watching updates with Smart Package Manager Group: System/Configuration/Packaging Requires: smart-update BuildRequires: kdelibs-devel BuildRequires: libqt-devel BuildRequires: make BuildRequires: popt BuildRequires: rpm-devel >= 4.2.1 BuildRequires: automake BuildRequires: autoconf %description -n ksmarttray KDE tray program for watching updates with Smart Package Manager. %files -n ksmarttray %attr(0755,root,root) %{_bindir}/ksmarttray %attr(-,root,root) %{_datadir}/apps/ksmarttray %{_menudir}/ksmarttray %{_datadir}/applications/mandriva-ksmarttray.desktop %post -n ksmarttray %{update_menus} %postun -n ksmarttray %{clean_menus} %endif #------------------------------------------------------------------ %prep %setup -q -a 5 %patch -p1 -b .issue184 %patch1 -p1 -b .platform %build env CFLAGS="%{optflags}" python setup.py build %if %with_ksmarttray pushd contrib/ksmarttray make -f admin/Makefile.common %ifarch amd64 %configure --disable-rpath --enable-libsuffix=64 %else %configure --disable-rpath %endif make popd %endif %if %with_smart_update pushd contrib/smart-update make popd %endif %install rm -fr %{buildroot} python setup.py install --root=%{buildroot} mkdir -p %{buildroot}%{_libdir}/smart cp %{_sourcedir}/distro.py %{buildroot}%{_libdir}/smart/ ln -sf consolehelper %{buildroot}%{_bindir}/smart-root mkdir -p %{buildroot}/%{_sysconfdir}/security/console.apps mkdir -p %{buildroot}/%{_sysconfdir}/pam.d install -m 644 %{_sourcedir}/smart.console \ %{buildroot}/%{_sysconfdir}/security/console.apps/smart-root cat > %{buildroot}%{_sysconfdir}/pam.d/smart-root <<EOF #%PAM-1.0 auth sufficient pam_rootok.so auth sufficient pam_timestamp.so %if %mdkversion < 200700 auth required pam_stack.so service=system-auth %else auth include system-auth %endif session required pam_permit.so session optional pam_timestamp.so session optional pam_xauth.so account required pam_permit.so EOF mkdir -p %{buildroot}/%{_datadir}/applications install -m 644 %{_sourcedir}/smart.desktop \ %{buildroot}/%{_datadir}/applications/smart-package-manager.desktop mkdir -p %{buildroot}/%{_datadir}/pixmaps install -m 644 smart/interfaces/images/smart.png \ %{buildroot}/%{_datadir}/pixmaps/smart-package-manager.png mkdir -p %{buildroot}%{_localstatedir}/smart/channels %if %with_smart_update pushd contrib/smart-update cp -f smart-update %{buildroot}%{_bindir} popd %endif %if %with_ksmarttray pushd contrib/ksmarttray make install DESTDIR=%{buildroot} popd # Old menu entry mkdir -p %{buildroot}%{_menudir} cat << EOF > %{buildroot}%{_menudir}/ksmarttray ?package(ksmarttray): command="%{_bindir}/ksmarttray" \ needs="kde" \ section="System/Configuration/Packaging" \ icon="smart-package-manager.png" \ title="KSmartTray" \ longtitle="KDE Tray widget for updating RPM files" \ multiple_files="true" \ kde_opt="InitialPreference=9" \ xdg="true" EOF %endif # Old menu entry mkdir -p %{buildroot}%{_menudir} cat << EOF > %{buildroot}%{_menudir}/smart-gui ?package(smart-gui): command="%{_bindir}/smart-root --gui" \ needs="x11" \ section=".hidden" \ title="Software Installer" \ longtitle="Graphical front end to install RPM files ( as root )" \ mimetypes="application/x-rpm" \ multiple_files="true" \ xdg="true" EOF mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications/ cat > $RPM_BUILD_ROOT%{_datadir}/applications/mandriva-ksmarttray.desktop << EOF [Desktop Entry] Name=KSmartTray Comment=KDE Tray widget for updating RPM files Exec=%{_bindir}/ksmarttray %%F Icon=smart-package-manager.png Type=Application Categories=GTK;X-MandrivaLinux-System-Configuration-Packaging;Settings;PackageManager;X-MandrivaLinux-.hidden EOF cat > $RPM_BUILD_ROOT%{_datadir}/applications/mandriva-smart-root.desktop << EOF [Desktop Entry] Name=Software Installer Comment=Graphical front end to browse RPM files Exec=%{_bindir}/smart-root --gui %%F Icon=smart-package-manager.png Type=Application Categories=GTK;X-MandrivaLinux-System-Configuration-Packaging;Settings;PackageManager;X-MandrivaLinux-.hidden EOF %clean rm -rf %{buildroot} %changelog * Wed Sep 06 2006 Andreas Hasenack <andreas@mandriva.com> + 2006-09-06 14:55:06 (60276) - drop non-root menu entry (#25257) * Tue Sep 05 2006 Andreas Hasenack <andreas@mandriva.com> + 2006-09-05 15:35:29 (60074) - bumped release * Tue Sep 05 2006 Andreas Hasenack <andreas@mandriva.com> + 2006-09-05 15:31:53 (60071) - fixed syntax error in menu file * Sat Sep 02 2006 Andreas Hasenack <andreas@mandriva.com> + 2006-09-02 21:17:03 (59632) - escape macro in desktop files * Thu Aug 31 2006 Andreas Hasenack <andreas@mandriva.com> + 2006-08-31 22:47:11 (59253) - bump release * Thu Aug 31 2006 Andreas Hasenack <andreas@mandriva.com> + 2006-08-31 22:42:40 (59250) - fix build on i586/x86_64 * Thu Aug 31 2006 Andreas Hasenack <andreas@mandriva.com> + 2006-08-31 22:10:51 (59244) - fixed #23751 (smart does not recognize a conflict when it should) * Fri Aug 25 2006 Thierry Vignaud <tvignaud@mandriva.com> + 2006-08-25 14:10:35 (58070) - fix incoherent-package-value-in-menu warning * Fri Aug 25 2006 Thierry Vignaud <tvignaud@mandriva.com> + 2006-08-25 14:09:42 (58069) - fix non-coherent-menu-filename warning * Fri Aug 25 2006 Thierry Vignaud <tvignaud@mandriva.com> + 2006-08-25 14:08:21 (58068) - XDG menu entry * Thu Aug 24 2006 Thierry Vignaud <tvignaud@mandriva.com> + 2006-08-24 19:52:58 (57954) - fix build on x86_64 * Mon Aug 07 2006 Andreas Hasenack <andreas@mandriva.com> + 2006-08-07 23:07:05 (54219) - update release :( * Mon Aug 07 2006 Andreas Hasenack <andreas@mandriva.com> + 2006-08-07 23:06:05 (54218) - drop pam_stack, make build backportable * Wed Jun 28 2006 Helio Chissini de Castro <helio@mandriva.com> + 2006-06-28 10:01:09 (38114) - New upstream version 0.42 - Removed defencondig patch already applied on code * Mon May 29 2006 Andreas Hasenack <andreas@mandriva.com> + 2006-05-29 14:36:37 (31646) - renamed mdv to packages because mdv is too generic and it's hosting only packages anyway * Fri May 26 2006 Andreas Hasenack <andreas@mandriva.com> + 2006-05-26 18:46:26 (31617) - dummy commit * Tue May 23 2006 Andreas Hasenack <andreas@mandriva.com> + 2006-05-23 16:27:27 (27989) - disable parallel build, it's not NFS friendly - replace %%{py_sitedir} with %%{py_platsitedir}: fixes build on x86_64 (smart does have a few binary objects [.so], so it makes sense) * Thu Mar 23 2006 Michael Scherer <misc@mandriva.org> + 2006-03-23 14:02:34 (26120) - add a ksmarttray menu file, bug 15551 - fix menu file, not restricted to gnome or kde - remove application/x-urpmi mimtype handling, not used at the moment, reenable it if needed * Mon Mar 20 2006 Michael Scherer <misc@mandriva.org> + 2006-03-20 08:19:59 (26013) - use mkrel macro (for branding, backporting, etc) * Mon Jan 30 2006 Helio Chissini de Castro <helio@mandriva.com> + 2006-01-30 23:35:18 (1497) - Added old debian menu entry ( http://qa.mandriva.com/show_bug.cgi?id=19030 ) * Thu Dec 22 2005 Helio Chissini de Castro <helio@mandriva.com> + 2005-12-22 17:40:56 (1341) - New upstream version. Major speed increase * Wed Oct 26 2005 Helio Chissini de Castro <helio@mandriva.com> + 2005-10-26 18:22:34 (1073) - Missing build requires * Tue Oct 25 2005 Helio Chissini de Castro <helio@mandriva.com> + 2005-10-25 23:47:47 (1067) - Added language exception patch from Bogdano * Tue Oct 18 2005 Helio Chissini de Castro <helio@mandriva.com> + 2005-10-18 14:42:03 (1029) - ksmarttray was disabled by mistake. * Fri Oct 14 2005 Helio Chissini de Castro <helio@mandriva.com> + 2005-10-14 20:39:10 (1018) - Separate gui from main package. Using smart as a command line must not require an entire set of xorg libs plus gtk base libs - Add build requires for rpm-mandriva-setup >= 17.1 to allow use of easy python macros introduced on latest rpm-mandriva-setup * Thu Oct 06 2005 Andreas Hasenack <andreas@mandriva.com> + 2005-10-06 01:57:36 (990) - updated to version 0.40 - releasing 0.40-1mdk * Tue Sep 20 2005 Helio Chissini de Castro <helio@mandriva.com> + 2005-09-20 15:31:05 (922) - Reenabled gpg signatire check ( Thanks Andreas ) * Mon Sep 12 2005 Andreas Hasenack <andreas@mandriva.com> + 2005-09-12 16:50:49 (886) - updated to version 0.39 (fixes #17385) * Mon Sep 12 2005 Andreas Hasenack <andreas@mandriva.com> + 2005-09-12 16:31:29 (884) - applied changes which were done only in cvs: - New upstream bugfix release: 0.38 (chiquitto@mandriva.com> - Patch0 was merged, remove it (chiquitto@mandriva.com) - Patch0: fix bug 17776: smart-update segfaults at startup (rgarciasuarez@mandriva.com) - Source5: fix French translations (rgarciasuarez@mandriva.com) - removed changelog from specfile in svn, repsys adds it back at package build time * Wed Aug 17 2005 Helio Chissini de Castro <helio@mandriva.com> + 2005-08-17 07:50:01 (671) - Small changelog fix * Wed Aug 17 2005 Helio Chissini de Castro <helio@mandriva.com> + 2005-08-17 07:47:30 (670) - Small changelog fix * Wed Aug 17 2005 Helio Chissini de Castro <helio@mandriva.com> + 2005-08-17 07:43:35 (669) - Added changelog in package for moment * Tue Aug 16 2005 Helio Chissini de Castro <helio@mandriva.com> + 2005-08-16 13:07:19 (657) - New upstream bugfix version - Package now have his home on subversion too * Tue May 24 2005 Helio Chissini de Castro <helio@mandriva.com> + 2005-05-24 16:18:03 (33) - Uploading package ./smart * Thu Mar 24 2005 Helio Chissini de Castro <helio@mandrakesoft.com> 0.30-1mdk - Changed spec layout and add the ability to generates just smart utilty - Search option now available to regular users - provides: path: requires: methods are available, allowing usual mdk devel requires match - config is no longer available on package, as smart is in charge of handle this file now - andreas: moved other changelog entries to here to avoid date problem ordering in this %%changelog section (these changes were done out of sync with the svn repository, i.e., the package was already in svn but changes were done to cvs) * Fri Jun 17 2005 Gustavo Niemeyer <gustavo@niemeyer.net> 0.36-1mdk - New upstream version: 0.36 * Mon May 30 2005 Helio Chissini de Castro <helio@mandriva.com> 0.35-2mdk - Added modifications from last package * Mon May 30 2005 Helio Chissini de Castro <helio@mandriva.com> 0.35-1mdk - New upstream version * Tue Mar 29 2005 Helio Chissini de castro <helio@mandrakesoft.com> 0.30.2-1mdk - Fixed minor flaw introduced by latest package * Tue Mar 29 2005 Helio Chissini de castro <helio@mandrakesoft.com> 0.30.1-1mdk - Minor fix for Python 2.3 backports * Wed Mar 16 2005 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 0.29.2-2mdk - amd64 compilation fix (by trem) * Mon Mar 07 2005 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 0.29.2-1mdk - New version - Remove patch2, integrated upstream * Fri Mar 04 2005 Laurent MONTEL <lmontel@mandrakesoft.com> 0.29-3mdk - Patch2: fix qtooltips, remove it before to add it. * Fri Mar 04 2005 Laurent MONTEL <lmontel@mandrakesoft.com> 0.29-2mdk - Patch1: Includemoc into ksmarttray * Wed Mar 02 2005 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 0.29-1mdk - 0.29 - Require rpm-python for GUI - Remove inter-package requires on release * Wed Dec 08 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 0.28-1mdk - New version 0.28 * Mon Dec 06 2004 Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com> 0.27.1-1mdk - First Mandrakelinux package, based on Guilherme Manika's FC3 spec file, with the help of Michael Scherer.