From Fedora Project Wiki
(→Macros) |
(→Macros: Add sections and fix spelling and typos) |
||
Line 1: | Line 1: | ||
== Macros == | === Macros === | ||
== Current Macros == | |||
Currently, the macros for KDE packaging are basic and still need directories appended to them constantly for files in KDE packages. Here is a table of the current macros provided: | Currently, the macros for KDE packaging are basic and still need directories appended to them constantly for files in KDE packages. Here is a table of the current macros provided: | ||
Line 32: | Line 34: | ||
| %{_kde4_includedir} || %{_kde4_prefix}/include/kde4 || /usr/include/kde4 || Not %{_includedir}/kde4 ? | | %{_kde4_includedir} || %{_kde4_prefix}/include/kde4 || /usr/include/kde4 || Not %{_includedir}/kde4 ? | ||
|} | |} | ||
== Proposed macros == | |||
There are many directories that appear over and over in packaging KDE applications and libraries. | There are many directories that appear over and over in packaging KDE applications and libraries. | ||
Line 38: | Line 42: | ||
! Directory !! Use !! Proposed Macro !! Urgency !! Reason | ! Directory !! Use !! Proposed Macro !! Urgency !! Reason | ||
|- | |- | ||
| %{_kde4_docdir}/HTML | | %{_kde4_docdir}/HTML || HTML/API documentation || %{_kde4_htmldocdir} || medium || Used mostly for any HTML documentation | ||
|- | |- | ||
| %{_kde4_datadir}/mime/packages || xdg shared-mime-info standard files || %{_kde4_mimedir} || high || Mimetype directory (xdg) | | %{_kde4_datadir}/mime/packages || xdg shared-mime-info standard files || %{_kde4_mimedir} || high || Mimetype directory (xdg) | ||
|- | |- | ||
| %{_kde4_datadir}/applications/kde4 || .desktop files for applications || | | %{_kde4_datadir}/applications/kde4 || .desktop files for applications || %{_kde4_desktopdir} || high || All applications need a .desktop file here (macro name could be better) | ||
|- | |- | ||
| %{_kde4_configdir}.kcfg || KCFG files || %{_kde4_kcfgdir} || high || Most applications use KCFG for configuration | | %{_kde4_configdir}.kcfg || KCFG files || %{_kde4_kcfgdir} || high || Most applications use KCFG for configuration | ||
Line 68: | Line 72: | ||
| %{_kde4_datadir}/mimelnk || KDE3 mime data || || low || KDE3; why do KDE4 apps still use this? | | %{_kde4_datadir}/mimelnk || KDE3 mime data || || low || KDE3; why do KDE4 apps still use this? | ||
|- | |- | ||
| | | %{_kde4_datadir}/applnk || unused? || || low || Looks mostly unused, delete it altogether? | ||
|- | |- | ||
| %{_kde4_datadir}/emoticons || emoticon directory || %{_kde4_emoticondir} || medium || | | %{_kde4_datadir}/emoticons || emoticon directory || %{_kde4_emoticondir} || medium || Convenience; kde-look packages mainly | ||
|- | |- | ||
| %{_kde4_datadir}/templates || templates directory || %{_kde4_templatedir} || medium || Convenience; kde-look packages mainly | | %{_kde4_datadir}/templates || templates directory || %{_kde4_templatedir} || medium || Convenience; kde-look packages mainly | ||
Line 76: | Line 80: | ||
This would bump the KDE macros API to 3 and force a rebuild of all KDE apps. I propose this is done before KDE 4.3 final hits. | This would bump the KDE macros API to 3 and force a rebuild of all KDE apps. I propose this is done before KDE 4.3 final hits. | ||
Revision as of 17:22, 30 July 2009
Macros
Current Macros
Currently, the macros for KDE packaging are basic and still need directories appended to them constantly for files in KDE packages. Here is a table of the current macros provided:
Macro | Definition | Path | Notes |
---|---|---|---|
%{_kde4_prefix} | %{_prefix} | /usr | |
%{_kde4_sysconfdir} | %{_sysconfdir} | /etc | |
%{_kde4_libdir} | %{_libdir} | /usr/lib[64] | |
%{_kde4_libexecdir} | %{_libexecdir}/kde4 | /usr/libexec/kde4 | |
%{_kde4_datadir} | %{_datadir} | /usr/share | |
%{_kde4_sharedir} | %{_datadir} | /usr/share | Why duplicate %{_kde4_datadir}? |
%{_kde4_iconsdir} | %{_kde4_sharedir}/icons | /usr/share/icons | |
%{_kde4_configdir} | %{_kde4_sharedir}/config | /usr/share/config | |
%{_kde4_appsdir} | %{_kde4_sharedir}/kde4/apps | /usr/share/kde4/apps | |
%{_kde4_docdir} | /usr/share/doc | /usr/share/doc | Why is the definition not using a macro? |
%{_kde4_bindir} | %{_kde4_prefix}/bin | /usr/bin | Not %{_bindir}? |
%{_kde4_sbindir} | %{_kde4_prefix}/sbin | /usr/sbin | Not %{_sbindir} |
%{_kde4_includedir} | %{_kde4_prefix}/include/kde4 | /usr/include/kde4 | Not %{_includedir}/kde4 ? |
Proposed macros
There are many directories that appear over and over in packaging KDE applications and libraries.
Directory | Use | Proposed Macro | Urgency | Reason |
---|---|---|---|---|
%{_kde4_docdir}/HTML | HTML/API documentation | %{_kde4_htmldocdir} | medium | Used mostly for any HTML documentation |
%{_kde4_datadir}/mime/packages | xdg shared-mime-info standard files | %{_kde4_mimedir} | high | Mimetype directory (xdg) |
%{_kde4_datadir}/applications/kde4 | .desktop files for applications | %{_kde4_desktopdir} | high | All applications need a .desktop file here (macro name could be better) |
%{_kde4_configdir}.kcfg | KCFG files | %{_kde4_kcfgdir} | high | Most applications use KCFG for configuration |
%{_kde4_libdir}/kde4 | KPlugin libraries | %{_kde4_plugindir} | high | Directory for KPlugin libraries |
%{_kde4_datadir}/kde4/services | services for KDE apps (plugin metadata) | %{_kde4_servicesdir} | high | Directory for KPlugin metadata |
%{_kde4_datadir}/kde4/servicetypes | specs for types of services | %{_kde4_servicetypesdir} | high | Directory for KPlugin metadata |
%{_kde4_datadir}/dbus-1/interfaces | DBus interface declarations | %{_kde4_dbusifacedir} | low | Used outside KDE as well |
%{_kde4_datadir}/dbus-1/services | DBus services | %{_kde4_dbusservicedir} | low | Used outside KDE as well |
%{_kde4_sysconfdir}/kde/env | scripts for user login/creation | low | Not used often | |
%{_kde4_sysconfdir}/kde/shutdown | scripts to run on user logout | low | Not used often | |
%{_kde4_appsdir}/kconf_update | kconf update scripts | %{_kde4_kconfdir} | low | Not used often; kconf is known to not work 100% anyways |
%{_kde4_datadir}/autostart | session start .desktop files | low | Not used often | |
%{_kde4_datadir}/sounds | sounds (notifications) | %{_kde4_sounddir} | medium | Convenience; kde-look packages mainly |
%{_kde4_datadir}/mimelnk | KDE3 mime data | low | KDE3; why do KDE4 apps still use this? | |
%{_kde4_datadir}/applnk | unused? | low | Looks mostly unused, delete it altogether? | |
%{_kde4_datadir}/emoticons | emoticon directory | %{_kde4_emoticondir} | medium | Convenience; kde-look packages mainly |
%{_kde4_datadir}/templates | templates directory | %{_kde4_templatedir} | medium | Convenience; kde-look packages mainly |
This would bump the KDE macros API to 3 and force a rebuild of all KDE apps. I propose this is done before KDE 4.3 final hits.