]> git.pld-linux.org Git - packages/filesystem.git/blobdiff - filesystem.spec
- /boot belongs to FHS
[packages/filesystem.git] / filesystem.spec
index 2407e1dce3a741432fef88fe8b2c05d042bb2d97..b2dfbaa739124e323a64b3a2d43bbd9a100b346b 100644 (file)
@@ -1,3 +1,6 @@
+# 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
 Summary:       Common directories
 Summary(pl.UTF-8):     Wspólne katalogi
 Name:          filesystem
-Version:       3.0
-Release:       29
+Version:       4.0
+Release:       19
 License:       GPL
 Group:         Base
 BuildRequires: automake
 BuildRequires: mktemp
+BuildRequires: rpm >= 4.4.9-56
 Requires:      FHS >= 2.3-15
 Provides:      browser-plugins(%{_target_base_arch})
 %ifarch %{x8664}
@@ -27,15 +31,20 @@ Provides:   browser-plugins(s390)
 %ifarch sparc64
 Provides:      browser-plugins(sparc)
 %endif
-Obsoletes:     filesystem-debuginfo
 Provides:      filesystem-debuginfo = %{version}-%{release}
+Obsoletes:     filesystem-debuginfo < 3.0-36
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+# Adapter: This file does not like to be adapterized!
+
 # directory for "privilege separation" chroot
 %define                _privsepdir     /usr/share/empty
 # directory for *.idl files (for CORBA implementations)
 %define                _idldir         /usr/share/idl
 
+# we have to use numeric uids/groups. see comment beginning of the spec
+%define                gid_logs        124
+
 %description
 This package contains common directories for packages that extend some
 programs functionality, but don't require them themselves.
@@ -51,25 +60,47 @@ funkcjonalność programów, ale nie wymagających ich.
 rm -rf $RPM_BUILD_ROOT
 
 install -d \
-       $RPM_BUILD_ROOT/{initrd,selinux,sys} \
-       $RPM_BUILD_ROOT/etc/{pki,X11/xinit/xinitrc.d,certs,default,logrotate.d,security,sysconfig/wmstyle,tmpwatch,xdg/autostart} \
+       $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} \
        $RPM_BUILD_ROOT/home/{users,services} \
-       $RPM_BUILD_ROOT/lib/{firmware,security} \
-       $RPM_BUILD_ROOT/usr/include/security \
-       $RPM_BUILD_ROOT/usr/lib/{cgi-bin,browser-plugins,pkgconfig,initrd,ConsoleKit/run-session.d} \
-       $RPM_BUILD_ROOT/usr/share/{backgrounds,gnome/{help,wm-properties},man/man{n,l},man/pl/mann,pkgconfig,sound{,font}s,themes/Default,wallpapers,xsessions} \
+       $RPM_BUILD_ROOT/lib/{firmware,security,udev/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,man/man{n,l},man/pl/mann,pkgconfig,soundfonts,sounds,themes/Default,thumbnailers,vala/vapi,wallpapers,xsessions} \
        $RPM_BUILD_ROOT/usr/src/examples \
+       $RPM_BUILD_ROOT/var/lib/color/icc \
        $RPM_BUILD_ROOT/var/lock/subsys \
-       $RPM_BUILD_ROOT{%{_aclocaldir},%{_desktopdir}/docklets,%{_iconsdir},%{_pixmapsdir}} \
+       $RPM_BUILD_ROOT/var/log/archive \
+       $RPM_BUILD_ROOT{%{_aclocaldir},%{_desktopdir}/{docklets,screensavers},%{_iconsdir},%{_pixmapsdir}} \
        $RPM_BUILD_ROOT%{_fontsdir}/{{100,75}dpi,OTF,Speedo,Type1/{afm,pfm},TTF,cyrillic,local,misc} \
-       $RPM_BUILD_ROOT{%{_idldir},%{_privsepdir}}
+       $RPM_BUILD_ROOT{%{_idldir},%{_privsepdir}} \
+       $RPM_BUILD_ROOT/boot/efi
+
+> %{name}.lang
+install -d $RPM_BUILD_ROOT/usr/share/help/C
+
+for lang in ar bg ca cs da de el en_GB es eu fa fi fr gl he hi hr hu id it ja ko lt lv mk nb nds nl oc pa pl ps pt pt_BR ro ru sl sr sr@latin sv te th tr uk vi zh_CN zh_HK zh_TW; do
+       install -d $RPM_BUILD_ROOT/usr/share/help/${lang}
+       echo "%%lang($lang) %dir /usr/share/help/${lang}" >> %{name}.lang
+done
 
 %if "%{_lib}" == "lib64"
 install -d \
        $RPM_BUILD_ROOT/lib64/security \
-       $RPM_BUILD_ROOT/usr/lib64/pkgconfig \
-       $RPM_BUILD_ROOT/usr/lib64/browser-plugins \
-       $RPM_BUILD_ROOT/usr/lib64/initrd
+       $RPM_BUILD_ROOT/usr/lib64/{browser-plugins,cmake,initrd,mozilla/extensions,pkgconfig}
+%endif
+
+%if "%{pld_release}" == "ac"
+rmdir $RPM_BUILD_ROOT/usr/include/X11
+# X11
+install -d $RPM_BUILD_ROOT/usr/X11R6/share
+for manp in man{1,2,3,4,5,6,7,8} ; do
+       install -d $RPM_BUILD_ROOT/usr/X11R6/man/$manp
+       for mloc in it ko pl; do
+               install -d $RPM_BUILD_ROOT/usr/X11R6/man/$mloc/$manp
+       done
+done
+install -d $RPM_BUILD_ROOT/usr/share/wm-properties
 %endif
 
 install -d \
@@ -85,10 +116,6 @@ install -d \
        $RPM_BUILD_ROOT/usr/lib/debug/lib64/security
 %endif
 
-find $RPM_BUILD_ROOT/usr/lib/debug -type d | while read line; do
-       echo ${line#$RPM_BUILD_ROOT}
-done > $RPM_BUILD_ROOT/usr/src/debug/%{name}-debuginfo.files
-
 # create this for %clean
 tar -cf checkfiles.tar -C $RPM_BUILD_ROOT .
 
@@ -102,7 +129,8 @@ check_filesystem_dirs() {
        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 '^/(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/lock)$' > $TMPFILE
+       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 || :
@@ -112,38 +140,83 @@ check_filesystem_dirs() {
 
 check_filesystem_dirs
 
-%files
+%if "%{pld_release}" != "ac"
+%pretrans -p <lua>
+-- this needs to be a dir
+if posix.stat("/usr/include/X11", "type") == "link" then
+       posix.umask("0755");
+       os.rename("/usr/include/X11", "/usr/include/X11.rpmsave")
+       posix.mkdir("/usr")
+       posix.mkdir("/usr/include")
+       posix.mkdir("/usr/include/X11")
+       oldpwd = posix.getcwd()
+       posix.chdir("/usr/include/X11.rpmsave")
+       for i,j in pairs(posix.glob("*")) do
+               os.rename(j, "/usr/include/X11/" .. j)
+       end
+       posix.chdir(oldpwd)
+end
+%endif
+
+%post -p <lua>
+posix.chown("/var/log/archive", 0, %{gid_logs})
+
+%files -f %{name}.lang
 %defattr(644,root,root,755)
+%dir /boot/efi
 %dir /etc/X11/xinit
 %dir /etc/X11/xinit/xinitrc.d
 %attr(751,root,root) %dir /etc/certs
 %dir /etc/default
-%attr(751,root,root) %dir /etc/security
+%dir /etc/init
 %dir /etc/logrotate.d
+%dir /etc/pki
+%dir /etc/pki/CA
+%attr(751,root,root) %dir /etc/security
 %dir /etc/sysconfig
-%dir /etc/sysconfig/wmstyle
 %dir /etc/tmpwatch
-%dir /etc/pki
 %dir /etc/xdg
 %dir /etc/xdg/autostart
+%dir /etc/NetworkManager
+%dir /etc/NetworkManager/dispatcher.d
 %dir /home/users
-%attr(751,root,adm) %dir /home/services
+%dir /home/services
 %dir /initrd
 %dir /lib/firmware
 %dir /lib/security
+%dir /lib/systemd
+%dir /lib/systemd/system
+%dir /lib/udev
+%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/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/pkgconfig
+%dir /usr/lib/tmpfiles.d
+%dir /usr/share/augeas
+%dir /usr/share/augeas/lenses
+%dir /usr/share/augeas/lenses/tests
 %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/gnome
 %dir /usr/share/gnome/help
-%dir /usr/share/gnome/wm-properties
+%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
@@ -151,13 +224,20 @@ check_filesystem_dirs
 %dir /usr/share/sounds
 %dir /usr/share/themes
 %dir /usr/share/themes/Default
+%dir /usr/share/thumbnailers
+%dir /usr/share/vala
+%dir /usr/share/vala/vapi
 %dir /usr/share/wallpapers
 %dir /usr/share/xsessions
 %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}
 %dir %{_desktopdir}
 %dir %{_desktopdir}/docklets
+%dir %{_desktopdir}/screensavers
 %dir %{_iconsdir}
 %dir %{_pixmapsdir}
 %{_fontsdir}
@@ -166,13 +246,27 @@ check_filesystem_dirs
 %if "%{_lib}" == "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/pkgconfig
 %endif
 
+%if "%{pld_release}" == "ac"
+%dir /usr/X11R6
+%dir /usr/X11R6/man
+/usr/X11R6/man/man*
+%lang(it) /usr/X11R6/man/it
+%lang(ko) /usr/X11R6/man/ko
+%lang(pl) /usr/X11R6/man/pl
+%dir /usr/X11R6/share
+
+%dir /usr/share/wm-properties
+%endif
+
 # debuginfo
 %dir /usr/lib/debug
 /usr/lib/debug/*
 
 %dir /usr/src/debug
-/usr/src/debug/filesystem-debuginfo.files
This page took 0.121361 seconds and 4 git commands to generate.