]> git.pld-linux.org Git - packages/filesystem.git/blame - filesystem.spec
- version 4.1: updated for FHS 3.0
[packages/filesystem.git] / filesystem.spec
CommitLineData
aefd2597
ER
1# NOTE
2# - do not use any other user/group than "root", as then we have to depend on "setup" package.
3# see the gid_xxx macros and post scriptlet
cfc10410 4# FIXME: verify shows changed groups of dirs changed this way
c4ce2dbd 5
8487aa90 6# disable rpm generated debug package, we handle it differently here
c4ce2dbd
PS
7%define _enable_debug_packages 0
8
9c70a427
ER
9# avoid rpm 4.4.9 adding rm -rf buildroot
10%define __spec_clean_body %{nil}
0604b7eb 11Summary: Common directories
7793e3d4 12Summary(pl.UTF-8): Wspólne katalogi
0604b7eb 13Name: filesystem
4bcd9e02
JB
14Version: 4.1
15Release: 1
0604b7eb 16License: GPL
17Group: Base
55654d5c 18BuildRequires: automake
4de84d81 19BuildRequires: mktemp
397e750a 20BuildRequires: rpm >= 4.4.9-56
4bcd9e02 21Requires: FHS >= 3.0
74f9dc2c 22Provides: browser-plugins(%{_target_base_arch})
f705215d
JB
23%ifarch %{x8664}
24Provides: browser-plugins(i386)
25%endif
26%ifarch ppc64
27Provides: browser-plugins(ppc)
28%endif
29%ifarch s390x
30Provides: browser-plugins(s390)
31%endif
32%ifarch sparc64
33Provides: browser-plugins(sparc)
34%endif
5817b5d2 35Provides: filesystem-debuginfo = %{version}-%{release}
4c96f9a6 36Obsoletes: filesystem-debuginfo < 3.0-36
90e77461
ER
37%if "%{pld_release}" != "ac"
38Conflicts: X11-libs < 1:7.7
39%endif
0604b7eb 40BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
41
8de26154
ER
42# Adapter: This file does not like to be adapterized!
43
a539fb46
JB
44%if "%{_lib}" == "lib64"
45%define with_lib64 1
a539fb46
JB
46%endif
47%if "%{_lib}" == "libx32"
48%define with_libx32 1
12344edb 49%define with_lib64 1
a539fb46
JB
50%else
51%ifarch %{x8664}
52# x32 as additional ABI
53%define with_libx32 1
54%endif
55%endif
56
df96336f
JB
57# directory for "privilege separation" chroot
58%define _privsepdir /usr/share/empty
59# directory for *.idl files (for CORBA implementations)
60%define _idldir /usr/share/idl
61
aefd2597
ER
62# we have to use numeric uids/groups. see comment beginning of the spec
63%define gid_logs 124
05ef6bc6 64%define gid_crontab 117
aefd2597 65
0604b7eb 66%description
74f9dc2c
ER
67This package contains common directories for packages that extend some
68programs functionality, but don't require them themselves.
0604b7eb 69
e9348c6a
JR
70%description -l pl.UTF-8
71Ten pakiet zawiera wspólne katalogi dla pakietów rozszerzających
72funkcjonalność programów, ale nie wymagających ich.
0604b7eb 73
74%prep
9c70a427 75%setup -qcT
0604b7eb 76
77%install
78rm -rf $RPM_BUILD_ROOT
79
df96336f 80install -d \
4bcd9e02 81 $RPM_BUILD_ROOT/{initrd,selinux} \
6d1e1ac2 82 $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}} \
df96336f 83 $RPM_BUILD_ROOT/home/{users,services} \
cfc10410 84 $RPM_BUILD_ROOT/lib/{firmware,security,udev/{hwdb.d,rules.d},systemd/system} \
26b1f0da 85 $RPM_BUILD_ROOT/usr/include/{security,X11} \
68969db5 86 $RPM_BUILD_ROOT/usr/lib/{ConsoleKit/run-session.d,browser-plugins,cgi-bin,cmake,mozilla/extensions,pkcs11,pkgconfig,initrd,tmpfiles.d} \
4bcd9e02 87 $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,pkgconfig,soundfonts,sounds,themes/Default,thumbnailers,vala/vapi,wallpapers,wayland-sessions,xsessions} \
ef4f4d70 88 $RPM_BUILD_ROOT/usr/src/examples \
df96336f 89 $RPM_BUILD_ROOT/var/lock/subsys \
37075fae 90 $RPM_BUILD_ROOT/var/log/archive \
8a3dd5ec 91 $RPM_BUILD_ROOT{%{_aclocaldir},%{_desktopdir}/{docklets,screensavers},%{_iconsdir},%{_pixmapsdir}} \
df96336f 92 $RPM_BUILD_ROOT%{_fontsdir}/{{100,75}dpi,OTF,Speedo,Type1/{afm,pfm},TTF,cyrillic,local,misc} \
84956be9 93 $RPM_BUILD_ROOT{%{_idldir},%{_privsepdir}} \
d6cf6593 94 $RPM_BUILD_ROOT/boot/efi/EFI \
21e90289 95 $RPM_BUILD_ROOT/etc/OpenCL/vendors
df96336f 96
c248f033
MB
97> %{name}.lang
98install -d $RPM_BUILD_ROOT/usr/share/help/C
99
d6cf6593 100for 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
c248f033
MB
101 install -d $RPM_BUILD_ROOT/usr/share/help/${lang}
102 echo "%%lang($lang) %dir /usr/share/help/${lang}" >> %{name}.lang
103done
104
a539fb46 105%if %{with lib64}
e1458798
ER
106install -d \
107 $RPM_BUILD_ROOT/lib64/security \
a539fb46 108 $RPM_BUILD_ROOT/usr/lib64/{browser-plugins,cmake,initrd,mozilla/extensions,pkcs11,pkgconfig} \
6549ed9e 109 $RPM_BUILD_ROOT/usr/lib/debug/lib64/security
6549ed9e 110%endif
a539fb46 111%if %{with libx32}
6549ed9e
JR
112install -d \
113 $RPM_BUILD_ROOT/libx32/security \
a539fb46 114 $RPM_BUILD_ROOT/usr/libx32/{browser-plugins,cmake,initrd,mozilla/extensions,pkcs11,pkgconfig} \
6549ed9e 115 $RPM_BUILD_ROOT/usr/lib/debug/libx32/security
e1458798
ER
116%endif
117
331cdb80 118%if "%{pld_release}" == "ac"
3578364e 119rmdir $RPM_BUILD_ROOT/usr/include/X11
331cdb80
ER
120# X11
121install -d $RPM_BUILD_ROOT/usr/X11R6/share
122for manp in man{1,2,3,4,5,6,7,8} ; do
12c873e4 123 install -d $RPM_BUILD_ROOT/usr/X11R6/man/$manp
331cdb80 124 for mloc in it ko pl; do
12c873e4 125 install -d $RPM_BUILD_ROOT/usr/X11R6/man/$mloc/$manp
331cdb80
ER
126 done
127done
128install -d $RPM_BUILD_ROOT/usr/share/wm-properties
129%endif
130
ef4f4d70 131install -d \
e1458798 132 $RPM_BUILD_ROOT/usr/lib/debug/%{_lib} \
ef4f4d70 133 $RPM_BUILD_ROOT/usr/lib/debug%{_libdir} \
ccbc4d73
ER
134 $RPM_BUILD_ROOT/usr/lib/debug/{bin,sbin} \
135 $RPM_BUILD_ROOT/usr/lib/debug/usr/{bin,sbin} \
e1458798 136 $RPM_BUILD_ROOT/usr/lib/debug/lib/security \
ef4f4d70 137 $RPM_BUILD_ROOT/usr/src/debug
ef4f4d70 138
9c70a427
ER
139# create this for %clean
140tar -cf checkfiles.tar -C $RPM_BUILD_ROOT .
141
0604b7eb 142%clean
9c70a427
ER
143mkdir -p $RPM_BUILD_ROOT
144tar -xf checkfiles.tar -C $RPM_BUILD_ROOT
0604b7eb 145cd $RPM_BUILD_ROOT
146
e1458798 147check_filesystem_dirs() {
e1458798
ER
148 RPMFILE=%{_rpmdir}/%{name}-%{version}-%{release}.%{_target_cpu}.rpm
149 RPMFILE2=%{?with_debuginfo:%{_rpmdir}/%{name}-debuginfo-%{version}-%{release}.%{_target_cpu}.rpm}
150 TMPFILE=$(mktemp)
151 # note: we must exclude from check all existing dirs belonging to FHS
bca62328 152 find | sed -e 's|^\.||g' -e 's|^$||g' | LC_ALL=C sort | grep -v $TMPFILE | \
a539fb46 153 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
e1458798
ER
154
155 # find finds also '.', so use option -B for diff
a18a7af0 156 rpm -qpl $RPMFILE $RPMFILE2 | grep -v '^/$' | LC_ALL=C sort | diff -uB - $TMPFILE || :
0604b7eb 157
e1458798
ER
158 rm -f $TMPFILE
159}
0604b7eb 160
e1458798 161check_filesystem_dirs
0604b7eb 162
653cd3cf 163%if "%{pld_release}" != "ac"
8de26154
ER
164%pretrans -p <lua>
165-- this needs to be a dir
51effe9f 166if posix.stat("/usr/include/X11", "type") == "link" then
aa2719be
ER
167 posix.umask("0755");
168 os.rename("/usr/include/X11", "/usr/include/X11.rpmsave")
169 posix.mkdir("/usr")
170 posix.mkdir("/usr/include")
171 posix.mkdir("/usr/include/X11")
172 oldpwd = posix.getcwd()
173 posix.chdir("/usr/include/X11.rpmsave")
174 for i,j in pairs(posix.glob("*")) do
175 os.rename(j, "/usr/include/X11/" .. j)
176 end
177 posix.chdir(oldpwd)
6648f13d 178end
653cd3cf 179%endif
8de26154 180
aefd2597
ER
181%post -p <lua>
182posix.chown("/var/log/archive", 0, %{gid_logs})
05ef6bc6 183posix.chown("/etc/cron.d", 0, %{gid_crontab})
aefd2597 184
c248f033 185%files -f %{name}.lang
0604b7eb 186%defattr(644,root,root,755)
84956be9 187%dir /boot/efi
d6cf6593 188%dir /boot/efi/EFI
eb44ff58 189%dir /etc/X11/xinit
190%dir /etc/X11/xinit/xinitrc.d
f16a8a51 191%dir /etc/X11/xinit/xinput.d
21e90289
JK
192%dir /etc/OpenCL
193%dir /etc/OpenCL/vendors
df96336f 194%attr(751,root,root) %dir /etc/certs
05ef6bc6 195%dir /etc/cron.d
b3a77873 196%dir /etc/default
a8b4c708
ER
197%dir /etc/fonts
198%dir /etc/fonts/conf.d
a18a7af0 199%dir /etc/logrotate.d
7c326c2f 200%dir /etc/modprobe.d
5b0a642d 201%dir /etc/pki
a6ba33d6 202%dir /etc/pki/CA
83607c07 203%dir /etc/pki/tls
403336b2 204%attr(751,root,root) %dir /etc/security
3fbd6eaf 205%dir /etc/skel
df96336f 206%dir /etc/sysconfig
24e29915 207%dir /etc/tmpwatch
0604b7eb 208%dir /etc/xdg
d2fc9a97 209%dir /etc/xdg/autostart
6d1e1ac2 210%dir /etc/xdg/colors
b7207b55 211%dir /etc/xdg/menus
6283054f
ER
212%dir /etc/NetworkManager
213%dir /etc/NetworkManager/dispatcher.d
df96336f 214%dir /home/users
6e5634f0 215%dir /home/services
7bee3fbe 216%dir /initrd
df96336f
JB
217%dir /lib/firmware
218%dir /lib/security
83ca16a1
AM
219%dir /lib/systemd
220%dir /lib/systemd/system
cfc10410 221# for library packages or other software with optional udev support not to pull udev
1d394a22 222%dir /lib/udev
cfc10410 223%dir /lib/udev/hwdb.d
1d394a22 224%dir /lib/udev/rules.d
df96336f 225%dir /selinux
3578364e 226%if "%{pld_release}" != "ac"
26b1f0da 227%dir /usr/include/X11
3578364e 228%endif
df96336f 229%dir /usr/include/security
74e3380c
PZ
230%dir /usr/lib/ConsoleKit
231%dir /usr/lib/ConsoleKit/run-session.d
f705215d 232%dir /usr/lib/browser-plugins
df96336f 233%dir /usr/lib/cgi-bin
5b0a642d 234%dir /usr/lib/cmake
2d989ca3 235%dir /usr/lib/initrd
5b0a642d
JB
236%dir /usr/lib/mozilla
237%dir /usr/lib/mozilla/extensions
68969db5 238%dir /usr/lib/pkcs11
4a374292 239%dir /usr/lib/pkgconfig
83ca16a1 240%dir /usr/lib/tmpfiles.d
c756cfad 241%dir /usr/share/appdata
cc8582a4
AM
242%dir /usr/share/augeas
243%dir /usr/share/augeas/lenses
a17dcb35 244%dir /usr/share/augeas/lenses/tests
72e09cce 245%dir /usr/share/backgrounds
b5467d3c
JB
246%dir /usr/share/cmake
247%dir /usr/share/cmake/Modules
73b865a3 248%dir /usr/share/defaults
19e57b49
JK
249%dir /usr/share/factory
250%dir /usr/share/factory/etc
251%dir /usr/share/factory/etc/pam.d
a8b4c708
ER
252%dir /usr/share/fontconfig
253%dir /usr/share/fontconfig/conf.avail
9b6ddd09 254%dir /usr/share/gnome
255%dir /usr/share/gnome/help
21fda6d7
ER
256%dir /usr/share/mate
257%dir /usr/share/mate/help
c248f033
MB
258%dir /usr/share/help
259%dir /usr/share/help/C
df96336f
JB
260%dir /usr/share/man/man[nl]
261%lang(pl) %dir /usr/share/man/pl/mann
4a374292 262%dir /usr/share/pkgconfig
4aff994a 263%dir /usr/share/soundfonts
0604b7eb 264%dir /usr/share/sounds
265%dir /usr/share/themes
266%dir /usr/share/themes/Default
cf466961 267%dir /usr/share/thumbnailers
7a44593b
JK
268%dir /usr/share/vala
269%dir /usr/share/vala/vapi
0604b7eb 270%dir /usr/share/wallpapers
c756cfad 271%dir /usr/share/wayland-sessions
0604b7eb 272%dir /usr/share/xsessions
df96336f
JB
273%dir /usr/src/examples
274%attr(700,root,root) %dir /var/lock/subsys
aefd2597 275%attr(751,root,root) %dir /var/log/archive
df96336f
JB
276%dir %{_aclocaldir}
277%dir %{_desktopdir}
278%dir %{_desktopdir}/docklets
8a3dd5ec 279%dir %{_desktopdir}/screensavers
df96336f
JB
280%dir %{_iconsdir}
281%dir %{_pixmapsdir}
282%{_fontsdir}
283%dir %{_idldir}
284%dir %{_privsepdir}
a539fb46 285%if %{with lib64}
df96336f 286%dir /lib64/security
c7cd57d0 287%dir /usr/lib64/browser-plugins
5b0a642d
JB
288%dir /usr/lib64/cmake
289%dir /usr/lib64/initrd
9f76b0a2
ER
290%dir /usr/lib64/mozilla
291%dir /usr/lib64/mozilla/extensions
68969db5 292%dir /usr/lib64/pkcs11
2d989ca3 293%dir /usr/lib64/pkgconfig
6549ed9e 294%endif
a539fb46 295%if %{with libx32}
6549ed9e
JR
296%dir /libx32/security
297%dir /usr/libx32/browser-plugins
298%dir /usr/libx32/cmake
299%dir /usr/libx32/initrd
300%dir /usr/libx32/mozilla
301%dir /usr/libx32/mozilla/extensions
302%dir /usr/libx32/pkcs11
303%dir /usr/libx32/pkgconfig
df96336f 304%endif
c4ce2dbd 305
331cdb80
ER
306%if "%{pld_release}" == "ac"
307%dir /usr/X11R6
12c873e4
JB
308%dir /usr/X11R6/man
309/usr/X11R6/man/man*
310%lang(it) /usr/X11R6/man/it
311%lang(ko) /usr/X11R6/man/ko
312%lang(pl) /usr/X11R6/man/pl
331cdb80
ER
313%dir /usr/X11R6/share
314
315%dir /usr/share/wm-properties
316%endif
317
9528cca9 318# debuginfo
df96336f 319%dir /usr/lib/debug
a996419a 320/usr/lib/debug/*
e1458798 321
df96336f 322%dir /usr/src/debug
This page took 0.922502 seconds and 4 git commands to generate.