# NOTE
# - do not use any other user/group than "root", as then we have to depend on "setup" package.
# see the gid_xxx macros and post scriptlet
-
-# disable rpm generated debug package, we handle it differently here
-%define _enable_debug_packages 0
-
-# avoid rpm 4.4.9 adding rm -rf buildroot
-%define __spec_clean_body %{nil}
+# FIXME: verify shows changed groups of dirs changed this way
Summary: Common directories
Summary(pl.UTF-8): Wspólne katalogi
Name: filesystem
-Version: 4.0
-Release: 41
+Version: 4.1
+Release: 13
License: GPL
Group: Base
BuildRequires: automake
BuildRequires: mktemp
BuildRequires: rpm >= 4.4.9-56
-Requires: FHS >= 2.3-15
+Requires: FHS >= 3.0
Provides: browser-plugins(%{_target_base_arch})
%ifarch %{x8664}
Provides: browser-plugins(i386)
%endif
Provides: filesystem-debuginfo = %{version}-%{release}
Obsoletes: filesystem-debuginfo < 3.0-36
+%if "%{pld_release}" != "ac"
+Conflicts: X11-libs < 1:7.7
+%endif
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
# Adapter: This file does not like to be adapterized!
+# disable rpm generated debug package, we handle it differently here
+%define _enable_debug_packages 0
+
%if "%{_lib}" == "lib64"
%define with_lib64 1
%endif
%endif
%endif
+# avoid rpm 4.4.9 adding rm -rf buildroot
+%define __spec_clean_body %{nil}
+
# directory for "privilege separation" chroot
%define _privsepdir /usr/share/empty
# directory for *.idl files (for CORBA implementations)
rm -rf $RPM_BUILD_ROOT
install -d \
- $RPM_BUILD_ROOT/{initrd,selinux,run,sys} \
- $RPM_BUILD_ROOT/etc/{NetworkManager/dispatcher.d,X11/xinit/{xinput,xinitrc}.d,certs,cron.d,default,init,logrotate.d,fonts/conf.d,modprobe.d,pki/{CA,tls},security,skel,sysconfig,tmpwatch,xdg/{autostart,menus}} \
+ $RPM_BUILD_ROOT/{initrd,selinux} \
+ $RPM_BUILD_ROOT/etc/{NetworkManager/dispatcher.d,X11/xinit/{xinput,xinitrc}.d,certs,cron.d,default,logrotate.d,fonts/conf.d,modprobe.d,pki/{CA,tls},security,skel,sysconfig,tmpwatch,xdg/{autostart,colors,menus}} \
$RPM_BUILD_ROOT/home/{users,services} \
- $RPM_BUILD_ROOT/lib/{firmware,security,udev/rules.d,systemd/system} \
+ $RPM_BUILD_ROOT/lib/{firmware,security,udev/{hwdb.d,rules.d},systemd/system} \
$RPM_BUILD_ROOT/usr/include/{security,X11} \
- $RPM_BUILD_ROOT/usr/lib/{ConsoleKit/run-session.d,browser-plugins,cgi-bin,cmake,mozilla/extensions,pkcs11,pkgconfig,initrd,tmpfiles.d} \
- $RPM_BUILD_ROOT/usr/share/{appdata,augeas/lenses/tests,backgrounds,cmake/Modules,color/icc,factory/etc/pam.d,fontconfig/conf.avail,gnome/help,mate/help,man/man{n,l},man/pl/mann,ppd,pkgconfig,soundfonts,sounds,themes/Default,thumbnailers,vala/vapi,wallpapers,wayland-sessions,xsessions} \
+ $RPM_BUILD_ROOT/usr/lib/{ConsoleKit/run-session.d,browser-plugins,cgi-bin,cmake,mozilla/extensions,pkcs11,pkgconfig,initrd,tmpfiles.d,binfmt.d} \
+ $RPM_BUILD_ROOT/usr/share/{appdata,augeas/lenses/tests,backgrounds,cmake/Modules,defaults,factory/etc/pam.d,fontconfig/conf.avail,gnome/help,mate/help,man/man{n,l},man/pl/mann,metainfo,pkgconfig,soundfonts,sounds,themes/Default,thumbnailers,vala/vapi,wallpapers,wayland-sessions,xdg-desktop-portal/portals,xsessions,zsh/site-functions} \
$RPM_BUILD_ROOT/usr/src/examples \
- $RPM_BUILD_ROOT/var/lib/color/icc \
$RPM_BUILD_ROOT/var/lock/subsys \
$RPM_BUILD_ROOT/var/log/archive \
$RPM_BUILD_ROOT{%{_aclocaldir},%{_desktopdir}/{docklets,screensavers},%{_iconsdir},%{_pixmapsdir}} \
> %{name}.lang
install -d $RPM_BUILD_ROOT/usr/share/help/C
-for lang in ar as ast bg bn_IN ca cs da de el en_GB es eu fa fi fr gl gu he hi hr hu id it ja ko kn lt lv mk ml mr nb nds nl oc pa pl ps pt pt_BR ro ru sk sl sr sr@latin sv ta te th tr uk vi zh_CN zh_HK zh_TW; do
+for lang in aa aa@saaho af ak am an ang anp ar ar_TN as ast az az_IR be be@latin bem be@tarask bg bho bn bn_IN bo br brx bs byn ca ca@valencia ce chr ckb cmn crh cs csb cv cy da de de_AT de_CH doi dv dz el en en_AU en@boldquot en_CA en_GB en_NZ en@quot en@shaw en_US eo es es_AR es_CL es_CO es_CR es_DO es_EC es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_SV es_UY es_VE et eu fa ff fi fil fo fr fr_BE fr_CA fr_CH fur fy ga gd gez gl gu gv ha he hi hne hr hsb ht hu hy ia id ig ik is it it_CH iu ja ka kg kk kl km kn ko kok ks ks@devanagari ku kw ky la lb lg li ln lo locale.alias lt lv mai mg mhr mi mk ml mn mni mr ms mt my nb nds ne nl nl_BE nn nr nso oc om or pa pap pl ps pt pt_BR quz rm ro ru rw sa sat sc sd sd@devanagari se shn si sid sk sl so sq sr sr@ije sr@ijekavian sr@ijekavianlatin sr@latin sr@Latn ss st sv sw szl ta te tg th ti tig tk tl tlh tn tr ts tt tt@iqtelif ug uk ur uz uz@cyrillic ve vi wa wal wo xh yi yo zh_CN zh_HK zh_TW zu; do
install -d $RPM_BUILD_ROOT/usr/share/help/${lang}
echo "%%lang($lang) %dir /usr/share/help/${lang}" >> %{name}.lang
done
$RPM_BUILD_ROOT/usr/lib/debug/lib/security \
$RPM_BUILD_ROOT/usr/src/debug
-# create this for %clean
-tar -cf checkfiles.tar -C $RPM_BUILD_ROOT .
-
%clean
-mkdir -p $RPM_BUILD_ROOT
-tar -xf checkfiles.tar -C $RPM_BUILD_ROOT
cd $RPM_BUILD_ROOT
check_filesystem_dirs() {
RPMFILE=%{_rpmdir}/%{name}-%{version}-%{release}.%{_target_cpu}.rpm
- RPMFILE2=%{?with_debuginfo:%{_rpmdir}/%{name}-debuginfo-%{version}-%{release}.%{_target_cpu}.rpm}
TMPFILE=$(mktemp)
# note: we must exclude from check all existing dirs belonging to FHS
- find | sed -e 's|^\.||g' -e 's|^$||g' | LC_ALL=C sort | grep -v $TMPFILE | \
+ find | sed -e 's|^\.||g' -e '/^$/d' | LC_ALL=C sort | grep -v $TMPFILE | \
grep -E -v '^/(boot|etc|etc/X11|home|lib|lib64|libx32|usr|usr/include|usr/lib|usr/lib64|usr/libx32|usr/share|usr/share/man|usr/share/man/pl|usr/src|var|var/lib|var/lock|var/log)$' > $TMPFILE
- # find finds also '.', so use option -B for diff
- rpm -qpl $RPMFILE $RPMFILE2 | grep -v '^/$' | LC_ALL=C sort | diff -uB - $TMPFILE || :
-
+ if rpm -qpl $RPMFILE | grep -v '^/$' | LC_ALL=C sort | diff -u $TMPFILE - ; then
+ rm -rf $RPM_BUILD_ROOT
+ else
+ echo -e "\nNot so good, some directories are not included in package\n"
+ exit 1
+ fi
rm -f $TMPFILE
}
%attr(751,root,root) %dir /etc/certs
%dir /etc/cron.d
%dir /etc/default
-%dir /etc/init
%dir /etc/fonts
%dir /etc/fonts/conf.d
%dir /etc/logrotate.d
%dir /etc/tmpwatch
%dir /etc/xdg
%dir /etc/xdg/autostart
+%dir /etc/xdg/colors
%dir /etc/xdg/menus
%dir /etc/NetworkManager
%dir /etc/NetworkManager/dispatcher.d
%dir /lib/security
%dir /lib/systemd
%dir /lib/systemd/system
+# for library packages or other software with optional udev support not to pull udev
%dir /lib/udev
+%dir /lib/udev/hwdb.d
%dir /lib/udev/rules.d
-%dir /run
%dir /selinux
-%dir /sys
%if "%{pld_release}" != "ac"
%dir /usr/include/X11
%endif
%dir /usr/include/security
%dir /usr/lib/ConsoleKit
%dir /usr/lib/ConsoleKit/run-session.d
+%dir /usr/lib/binfmt.d
%dir /usr/lib/browser-plugins
%dir /usr/lib/cgi-bin
%dir /usr/lib/cmake
%dir /usr/share/backgrounds
%dir /usr/share/cmake
%dir /usr/share/cmake/Modules
-%dir /usr/share/color
-%dir /usr/share/color/icc
+%dir /usr/share/defaults
%dir /usr/share/factory
%dir /usr/share/factory/etc
%dir /usr/share/factory/etc/pam.d
%dir /usr/share/gnome/help
%dir /usr/share/mate
%dir /usr/share/mate/help
+%dir /usr/share/metainfo
%dir /usr/share/help
%dir /usr/share/help/C
%dir /usr/share/man/man[nl]
%lang(pl) %dir /usr/share/man/pl/mann
%dir /usr/share/pkgconfig
-%dir /usr/share/ppd
%dir /usr/share/soundfonts
%dir /usr/share/sounds
%dir /usr/share/themes
%dir /usr/share/vala/vapi
%dir /usr/share/wallpapers
%dir /usr/share/wayland-sessions
+%dir /usr/share/xdg-desktop-portal
+%dir /usr/share/xdg-desktop-portal/portals
%dir /usr/share/xsessions
+%dir /usr/share/zsh
+%dir /usr/share/zsh/site-functions
%dir /usr/src/examples
-%dir /var/lib/color
-%dir /var/lib/color/icc
%attr(700,root,root) %dir /var/lock/subsys
%attr(751,root,root) %dir /var/log/archive
%dir %{_aclocaldir}