]> git.pld-linux.org Git - packages/filesystem.git/blobdiff - filesystem.spec
add help dir for nan; rel 19
[packages/filesystem.git] / filesystem.spec
index 4ba2e2d197140112f23cb3aab9cd8eaa301ccd93..1bf37f7e9b1d9dcf593d81b7b34409dff8d1c57a 100644 (file)
@@ -1,23 +1,18 @@
 # 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:       23
+Version:       4.1
+Release:       19
 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)
@@ -33,10 +28,32 @@ Provides:   browser-plugins(sparc)
 %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
+%if "%{_lib}" == "libx32"
+%define                with_libx32     1
+%define                with_lib64      1
+%else
+%ifarch %{x8664}
+# x32 as additional ABI
+%define                with_libx32     1
+%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)
@@ -44,6 +61,7 @@ BuildRoot:    %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 # we have to use numeric uids/groups. see comment beginning of the spec
 %define                gid_logs        124
+%define                gid_crontab     117
 
 %description
 This package contains common directories for packages that extend some
@@ -60,34 +78,70 @@ funkcjonalność programów, ale nie wymagających ich.
 rm -rf $RPM_BUILD_ROOT
 
 install -d \
-       $RPM_BUILD_ROOT/{initrd,selinux,run,sys} \
-       $RPM_BUILD_ROOT/etc/{NetworkManager/dispatcher.d,X11/xinit/xinitrc.d,certs,default,init,logrotate.d,pki/CA,security,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/colors} \
        $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,pkgconfig,initrd,tmpfiles.d} \
-       $RPM_BUILD_ROOT/usr/share/{augeas/lenses/tests,backgrounds,cmake/Modules,color/icc,gnome/help,mate/help,man/man{n,l},man/pl/mann,pkgconfig,soundfonts,sounds,themes/Default,thumbnailers,vala/vapi,wallpapers,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,bash-completion/completions,cmake/Modules,defaults,doc/gi-doc,factory/etc/pam.d,fish/vendor_completions.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}} \
+       $RPM_BUILD_ROOT%{_aclocaldir} \
        $RPM_BUILD_ROOT%{_fontsdir}/{{100,75}dpi,OTF,Speedo,Type1/{afm,pfm},TTF,cyrillic,local,misc} \
        $RPM_BUILD_ROOT{%{_idldir},%{_privsepdir}} \
-       $RPM_BUILD_ROOT/boot/efi
+       $RPM_BUILD_ROOT/boot/efi/EFI \
+       $RPM_BUILD_ROOT/etc/OpenCL/vendors
+
+# XDG Autostart specs: https://specifications.freedesktop.org/autostart-spec/autostart-spec-latest.html
+install -d $RPM_BUILD_ROOT/etc/xdg/autostart
+
+# XDG Desktop Menus specs: https://specifications.freedesktop.org/menu-spec/menu-spec-latest.html
+# (+custom AppDir hierarchy)
+install -d $RPM_BUILD_ROOT{/etc/xdg/menus/applications-merged,/usr/share/desktop-directories,%{_desktopdir}/{docklets,screensavers}}
+
+# XDG Icon Theme specs: https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html
+# (top level only)
+install -d $RPM_BUILD_ROOT{%{_iconsdir},%{_pixmapsdir}}
+
+# XDG Sound Theme specs: https://specifications.freedesktop.org/sound-theme-spec/sound-theme-spec-latest.html
+# (top level only)
+install -d $RPM_BUILD_ROOT/usr/share/sounds
 
 > %{name}.lang
 install -d $RPM_BUILD_ROOT/usr/share/help/C
 
-for lang in ar 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 lt lv mk ml nb nds nl oc pa pl ps pt pt_BR ro ru 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 be@tarask bem 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_CA en_GB en_NZ 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 kab kg kk kl km kn ko kok ks ks@devanagari ku kw ky la lb lg li ln lo lt lv \
+       mai mg mhr mi mk ml mn mni mr ms mt my nan 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@ijekavian sr@ijekavianlatin sr@latin ss st sv sw szl \
+       ta te tg th ti tig tk tl tlh tn tpi 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
 
-%if "%{_lib}" == "lib64"
+%if %{with lib64}
 install -d \
        $RPM_BUILD_ROOT/lib64/security \
-       $RPM_BUILD_ROOT/usr/lib64/{browser-plugins,cmake,initrd,mozilla/extensions,pkgconfig}
+       $RPM_BUILD_ROOT/usr/lib64/{browser-plugins,cmake,initrd,mozilla/extensions,pkcs11,pkgconfig} \
+       $RPM_BUILD_ROOT/usr/lib/debug/lib64/security
+%endif
+%if %{with libx32}
+install -d \
+       $RPM_BUILD_ROOT/libx32/security \
+       $RPM_BUILD_ROOT/usr/libx32/{browser-plugins,cmake,initrd,mozilla/extensions,pkcs11,pkgconfig} \
+       $RPM_BUILD_ROOT/usr/lib/debug/libx32/security
 %endif
 
 %if "%{pld_release}" == "ac"
@@ -111,30 +165,22 @@ install -d \
        $RPM_BUILD_ROOT/usr/lib/debug/lib/security \
        $RPM_BUILD_ROOT/usr/src/debug
 
-%if "%{_lib}" == "lib64"
-install -d \
-       $RPM_BUILD_ROOT/usr/lib/debug/lib64/security
-%endif
-
-# 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 | \
-       grep -E -v '^/(boot|etc|etc/X11|home|lib|lib64|usr|usr/include|usr/lib|usr/lib64|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 || :
+       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/doc|usr/share/man|usr/share/man/pl|usr/src|var|var/lib|var/lock|var/log)$' > $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
 }
 
@@ -160,24 +206,37 @@ end
 
 %post -p <lua>
 posix.chown("/var/log/archive", 0, %{gid_logs})
+posix.chown("/etc/cron.d", 0, %{gid_crontab})
 
 %files -f %{name}.lang
 %defattr(644,root,root,755)
 %dir /boot/efi
+%dir /boot/efi/EFI
 %dir /etc/X11/xinit
 %dir /etc/X11/xinit/xinitrc.d
+%dir /etc/X11/xinit/xinput.d
+%dir /etc/OpenCL
+%dir /etc/OpenCL/vendors
 %attr(751,root,root) %dir /etc/certs
+# root:crontab
+%attr(750,root,root) %dir /etc/cron.d
 %dir /etc/default
-%dir /etc/init
+%dir /etc/fonts
+%dir /etc/fonts/conf.d
 %dir /etc/logrotate.d
+%dir /etc/modprobe.d
 %dir /etc/pki
 %dir /etc/pki/CA
+%dir /etc/pki/tls
 %attr(751,root,root) %dir /etc/security
+%dir /etc/skel
 %dir /etc/sysconfig
 %dir /etc/tmpwatch
 %dir /etc/xdg
 %dir /etc/xdg/autostart
+%dir /etc/xdg/colors
 %dir /etc/xdg/menus
+%dir /etc/xdg/menus/applications-merged
 %dir /etc/NetworkManager
 %dir /etc/NetworkManager/dispatcher.d
 %dir /home/users
@@ -187,37 +246,51 @@ posix.chown("/var/log/archive", 0, %{gid_logs})
 %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/lib/initrd
 %dir /usr/lib/mozilla
 %dir /usr/lib/mozilla/extensions
+%dir /usr/lib/pkcs11
 %dir /usr/lib/pkgconfig
 %dir /usr/lib/tmpfiles.d
+%dir /usr/share/appdata
 %dir /usr/share/augeas
 %dir /usr/share/augeas/lenses
 %dir /usr/share/augeas/lenses/tests
 %dir /usr/share/backgrounds
+%dir /usr/share/bash-completion
+%dir /usr/share/bash-completion/completions
 %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/desktop-directories
+%dir /usr/share/doc/gi-doc
+%dir /usr/share/factory
+%dir /usr/share/factory/etc
+%dir /usr/share/factory/etc/pam.d
+%dir /usr/share/fish
+%dir /usr/share/fish/vendor_completions.d
+%dir /usr/share/fontconfig
+%dir /usr/share/fontconfig/conf.avail
 %dir /usr/share/gnome
 %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]
@@ -231,10 +304,13 @@ posix.chown("/var/log/archive", 0, %{gid_logs})
 %dir /usr/share/vala
 %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}
@@ -246,15 +322,26 @@ posix.chown("/var/log/archive", 0, %{gid_logs})
 %{_fontsdir}
 %dir %{_idldir}
 %dir %{_privsepdir}
-%if "%{_lib}" == "lib64"
+%if %{with lib64}
 %dir /lib64/security
 %dir /usr/lib64/browser-plugins
 %dir /usr/lib64/cmake
 %dir /usr/lib64/initrd
 %dir /usr/lib64/mozilla
 %dir /usr/lib64/mozilla/extensions
+%dir /usr/lib64/pkcs11
 %dir /usr/lib64/pkgconfig
 %endif
+%if %{with libx32}
+%dir /libx32/security
+%dir /usr/libx32/browser-plugins
+%dir /usr/libx32/cmake
+%dir /usr/libx32/initrd
+%dir /usr/libx32/mozilla
+%dir /usr/libx32/mozilla/extensions
+%dir /usr/libx32/pkcs11
+%dir /usr/libx32/pkgconfig
+%endif
 
 %if "%{pld_release}" == "ac"
 %dir /usr/X11R6
This page took 0.27173 seconds and 4 git commands to generate.