From Fedora Project Wiki

< SIGs‎ | KDE

(→‎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/en            || HTML/API documentation                  || %{_kde4_htmldocdir}      || medium  || Used mostly for  
+
| %{_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        ||                         || high    || All applications need a .desktop file here
+
| %{_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?
+
| %{_kde4_datadir}/applnk            || unused?                                ||                          || low    || Looks mostly unused, delete it altogether?
 
|-
 
|-
| %{_kde4_datadir}/emoticons        || emoticon directory                      || %{_kde4_emoticondir}    || medium  || Conveneince; kde-look packages mainly
+
| %{_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.
 
'''Note''': The meeting on 2009-06-23 has this as an agenda meeting item. Discussion about this should probably be the main point, with details of the macros and definitions on #fedora-kde. Unfortunately, I will not be available for the meeting due to summer work schedule. [[User:Mathstuf|Mathstuf]]
 

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.