1 %define disable_docs_package 1
2 %define debug_package %{nil}
7 Summary: The basic directory layout for a Linux system
8 Url: https://fedorahosted.org/filesystem
9 Group: Base/Configuration
12 Source3: languages.man
16 The filesystem package is one of the basic packages that is installed
17 on a Linux system. Filesystem contains the basic directory layout
18 for a Linux operating system, including the correct permissions for
22 rm -f $RPM_BUILD_DIR/filelist
27 function create_dir () {
36 local BDIR=`dirname $NAME`
37 test -d "$RPM_BUILD_ROOT/$NAME" && { echo "dir $NAME does already exist" ; echo "input out of sequence ?" ; exit 1 ; }
38 test -n "$BDIR" -a ! -d $RPM_BUILD_ROOT$BDIR && create_dir 0755 root root $BDIR
39 mkdir -m $MODE $RPM_BUILD_ROOT/$NAME
40 echo "$XTRA%%dir %%attr($MODE,$OWNR,$GRUP) $NAME" >> $RPM_BUILD_DIR/filelist
46 etc/{X11/{applnk,fontpath.d},xdg/autostart,ld.so.conf.d,opt,pm/{config.d,power.d,sleep.d},xinetd.d,skel,sysconfig,pki} \
47 home media mnt opt/home/{app,developer} proc root run/lock srv sys tmp \
48 usr/{bin,etc,games,include,%{_lib}/{pkgconfig,games,sse2,tls,X11,pm-utils/{module.d,power.d,sleep.d}},lib/{games,locale,modules,sse2},libexec,local/{bin,etc,games,lib,%{_lib},sbin,src,share/{applications,man/man{1,2,3,4,5,6,7,8,9,n,1x,2x,3x,4x,5x,6x,7x,8x,9x},info},libexec,include,},sbin,share/{help/C,aclocal,applications,augeas/lenses,backgrounds,desktop-directories,dict,doc,empty,games,ghostscript/conf.d,gnome,icons,idl,info,man/man{1,2,3,4,5,6,7,8,9,n,1x,2x,3x,4x,5x,6x,7x,8x,9x,0p,1p,3p},mime-info,misc,omf,pixmaps,sounds,themes,xsessions,X11},src,src/kernels,src/debug} \
49 var/{adm,empty,gopher,lib/{empty,games,misc,rpm-state},local,lock/subsys,log,nis,preserve,run,spool/{mail,lpd,uucp},tmp,db,cache,opt,games,yp} \
50 opt/{dbspace,usr/dbspace} \
53 ln -snf ../var/tmp usr/tmp
54 ln -snf spool/mail var/mail
58 ln -snf usr/%{_lib} %{_lib}
60 # Create the locale directories:
62 echo "%lang(${LANG}) %ghost %config(missingok) /usr/share/locale/${LANG}" >>$RPM_BUILD_DIR/filelist
63 create_dir 0755 root root /usr/share/locale/$LANG/LC_MESSAGES
64 create_dir 0755 root root /usr/share/help/$LANG
66 # Create the locale directories for man:
68 create_dir 0755 root root /usr/share/man/$LANG
69 for sec in 1 2 3 4 5 6 7 8 9 n; do
70 create_dir 0755 root root /usr/share/man/$LANG/man$sec
71 ##"%lang(${LANG}) %ghost %config(missingok)"
78 --# If we are running in pretrans in a fresh root, there is no /usr and symlinks.
79 --# We cannot be sure, to be the very first rpm in the transaction list,
80 --# so, let's create the toplevel symlinks here and the directories they point to.
81 --# When our rpm is unpacked by cpio, it will set all permissions and modes later.
84 if posix.stat("/usr") == nil then
88 for i,dir in ipairs({"/lib", "/%{_lib}", "/sbin", "/bin"}) do
89 if posix.stat("/usr"..dir) == nil then
90 posix.mkdir("/usr"..dir)
91 if posix.stat(dir, "mode") == nil then
92 posix.symlink("usr"..dir, dir)
100 posix.symlink("../run", "/var/run")
101 posix.symlink("../run/lock", "/var/lock")
102 posix.symlink("/opt/home/app", "/home/app")
103 posix.symlink("/opt/home/developer", "/home/developer")
106 %defattr(0755,root,root,-)
107 %dir %attr(555,root,root)
109 %attr(555,root,root) /boot
115 %attr(700,app,app) /opt/home/app
116 %attr(700,developer,developer) /opt/home/developer
118 %{_sysconfdir}/xinetd.d
120 %{_sysconfdir}/sysconfig
124 #%ifarch x86_64 ppc ppc64 sparc sparc64 s390 s390x
130 %dir %attr(755,root,root) /opt/dbspace
131 %dir %attr(755,root,root) /opt/usr
132 %dir %attr(755,root,app) /opt/usr/dbspace
133 %dir %attr(755,app,app) /opt/usr/media
134 %dir %attr(755,app,app) /opt/usr/share
135 %attr(555,root,root) /proc
136 %attr(550,root,root) /root
141 %attr(1777,root,root) /tmp
143 %attr(555,root,root) /usr/bin
147 %attr(555,root,root) /usr/lib
148 #%ifarch x86_64 ppc ppc64 sparc sparc64 s390 s390x
149 %attr(555,root,root) /usr/%{_lib}
153 %attr(555,root,root) /usr/sbin
156 /usr/share/applications
159 /usr/share/backgrounds
160 /usr/share/desktop-directories
163 %attr(555,root,root) %dir /usr/share/empty
165 /usr/share/ghostscript
170 %dir /usr/share/locale
183 %{_localstatedir}/adm
184 %{_localstatedir}/cache
186 %{_localstatedir}/empty
187 %{_localstatedir}/games
188 %{_localstatedir}/gopher
189 %{_localstatedir}/lib
190 %{_localstatedir}/local
191 %ghost %dir %attr(755,root,root) %{_localstatedir}/lock
192 %ghost %{_localstatedir}/lock/subsys
193 %{_localstatedir}/log
194 %{_localstatedir}/mail
195 %{_localstatedir}/nis
196 %{_localstatedir}/opt
197 %{_localstatedir}/preserve
198 %ghost %attr(755,root,root) %{_localstatedir}/run
199 %dir %{_localstatedir}/spool
200 %attr(755,root,root) %{_localstatedir}/spool/lpd
201 %attr(775,root,mail) %{_localstatedir}/spool/mail
202 %attr(755,uucp,uucp) %{_localstatedir}/spool/uucp
203 %attr(1777,root,root) %{_localstatedir}/tmp