Compare commits

...

No commits in common. "c8" and "c9-beta" have entirely different histories.
c8 ... c9-beta

2 changed files with 81 additions and 40 deletions

View File

View File

@ -1,7 +1,7 @@
Summary: The basic directory layout for a Linux system
Name: filesystem
Version: 3.8
Release: 6%{?dist}
Version: 3.16
Release: 5%{?dist}
License: Public Domain
URL: https://pagure.io/filesystem
Group: System Environment/Base
@ -11,6 +11,9 @@ Source3: iso_3166.sed
BuildRequires: iso-codes
Requires(pre): setup
Provides: filesystem-afs = %{version}-%{release}
Obsoletes: filesystem-afs <= 3.14-2
%description
The filesystem package is one of the basic packages that is installed
on a Linux system. Filesystem contains the basic directory layout
@ -26,7 +29,6 @@ This subpackage of filesystem package contains just the file with
the directories owned by the filesystem package. This can be used
during the build process instead of calling rpm -ql filesystem.
%prep
rm -f $RPM_BUILD_DIR/filelist
@ -40,14 +42,17 @@ install -p -c -m755 %SOURCE3 %{buildroot}/iso_3166.sed
cd %{buildroot}
mkdir -p boot dev \
etc/{X11/{applnk,fontpath.d},xdg/autostart,opt,pm/{config.d,power.d,sleep.d},xinetd.d,skel,sysconfig,pki,bash_completion.d} \
home media mnt opt proc root run srv sys tmp \
usr/{bin,games,include,%{_lib}/{bpf,games,sse2,tls,X11,pm-utils/{module.d,power.d,sleep.d}},lib/{debug/{.dwz,usr},games,locale,modules,sysimage,sse2},libexec,local/{bin,etc,games,lib,%{_lib}/bpf,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/{aclocal,appdata,applications,augeas/lenses,backgrounds,bash-completion{,/completions,/helpers},desktop-directories,dict,doc,empty,games,gnome,help,icons,idl,info,licenses,man/man{1,2,3,4,5,6,7,8,9,n,1x,2x,3x,4x,5x,6x,7x,8x,9x,0p,1p,3p},metainfo,mime-info,misc,omf,pixmaps,sounds,themes,xsessions,X11,wayland-sessions},src,src/kernels,src/debug} \
var/{adm,empty,ftp,gopher,lib/{games,misc,rpm-state},local,log,nis,preserve,spool/{mail,lpd},tmp,db,cache/bpf,opt,games,yp}
Paths=(
afs boot dev \
etc/{X11/{applnk,fontpath.d,xinit/{xinitrc,xinput}.d},xdg/autostart,opt,pm/{config.d,power.d,sleep.d},skel,sysconfig,pki,bash_completion.d,default,rwtab.d,statetab.d} \
home media mnt opt root run srv tmp \
usr/{bin,games,include,%{_lib}/{bpf,games,X11,pm-utils/{module.d,power.d,sleep.d}},lib/{debug/{.dwz,usr},games,locale,modules,sysimage},libexec,local/{bin,etc,games,lib,%{_lib}/bpf,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/{aclocal,appdata,applications,augeas/lenses,backgrounds,bash-completion{,/completions,/helpers},desktop-directories,dict,doc,empty,fish/vendor_completions.d,games,gnome,help,icons,idl,info,licenses,man/man{1,2,3,4,5,6,7,8,9,n,1x,2x,3x,4x,5x,6x,7x,8x,9x,0p,1p,3p},metainfo,mime-info,misc,omf,pixmaps,sounds,themes,xsessions,X11/fonts,wayland-sessions,zsh/site-functions},src,src/kernels,src/debug} \
var/{adm,empty,ftp,lib/{games,misc,rpm-state},local,log,nis,preserve,spool/{mail,lpd},tmp,db,cache/bpf,opt,games,yp}
)
for i in "${Paths[@]}"; do
mkdir -p "$i"
done
#do not create the symlink atm.
#ln -snf etc/sysconfig etc/default
ln -snf ../var/tmp usr/tmp
ln -snf spool/mail var/mail
ln -snf usr/bin bin
@ -122,9 +127,6 @@ mkdir -p %{buildroot}/usr/share/filesystem
find %{buildroot} -mindepth 0 | sed -e 's|%{buildroot}|/|' -e 's|//|/|' \
| LC_ALL=C sort | grep -v filesystem >%{buildroot}%{_datadir}/filesystem/paths
%clean
rm -rf %{buildroot}
%pretrans -p <lua>
--# If we are running in pretrans in a fresh root, there is no /usr and
--# symlinks. We cannot be sure, to be the very first rpm in the
@ -155,17 +157,8 @@ posix.symlink("usr/%{_lib}", "/%{_lib}")
posix.mkdir("/run")
posix.mkdir("/proc")
posix.mkdir("/sys")
st = posix.stat("/proc")
if st and st.mode ~= 0555 then
posix.chmod("/proc", 0555)
end
st = posix.stat("/sys")
if st and st.mode ~= 0555 then
posix.chmod("/sys", 0555)
end
st = posix.stat("/media")
if st and st.type == "link" then
os.remove("/media")
@ -183,30 +176,35 @@ restorecon /var/lock 2>/dev/null >/dev/null || :
restorecon -r /usr/lib/debug/ 2>/dev/null >/dev/null || :
restorecon /sys 2>/dev/null >/dev/null || :
restorecon /boot 2>/dev/null >/dev/null || :
restorecon /proc 2>/dev/null >/dev/null || :
restorecon /dev 2>/dev/null >/dev/null || :
restorecon /media 2>/dev/null >/dev/null || :
restorecon /afs 2>/dev/null >/dev/null || :
%files content
%dir %{_datadir}/filesystem
%{_datadir}/filesystem/paths
%files -f filelist
%defattr(0755,root,root,0755)
%dir %attr(555,root,root) /
/bin
%attr(555,root,root) /boot
%attr(555,root,root) /afs
/dev
%dir /etc
/etc/X11
/etc/xdg
/etc/opt
/etc/pm
/etc/xinetd.d
/etc/skel
/etc/sysconfig
/etc/pki
/etc/bash_completion.d/
%dir /etc/default
%dir /etc/rwtab.d
%dir /etc/statetab.d
/home
/lib
%ifarch x86_64 ppc64 sparc64 s390x aarch64 ppc64le mips64 mips64el riscv64
@ -216,11 +214,11 @@ restorecon /media 2>/dev/null >/dev/null || :
%dir /mnt
%dir /opt
%ghost %attr(555,root,root) /proc
%ghost %attr(555,root,root) /sys
%attr(550,root,root) /root
/run
/sbin
/srv
%ghost %attr(555,root,root) /sys
%attr(1777,root,root) /tmp
%dir /usr
%attr(555,root,root) /usr/bin
@ -243,13 +241,11 @@ restorecon /media 2>/dev/null >/dev/null || :
%ghost /usr/lib/debug/usr/.dwz
%ghost /usr/lib/debug/sbin
%attr(555,root,root) /usr/lib/games
%attr(555,root,root) /usr/lib/sse2
%ifarch x86_64 ppc64 sparc64 s390x aarch64 ppc64le mips64 mips64el riscv64
%attr(555,root,root) /usr/%{_lib}
%else
%attr(555,root,root) /usr/lib/tls
%attr(555,root,root) /usr/lib/X11
%attr(555,root,root) /usr/lib/bpf
%attr(555,root,root) /usr/lib/X11
%attr(555,root,root) /usr/lib/pm-utils
%endif
/usr/libexec
@ -268,6 +264,7 @@ restorecon /media 2>/dev/null >/dev/null || :
/usr/share/dict
/usr/share/doc
%attr(555,root,root) %dir /usr/share/empty
/usr/share/fish
/usr/share/games
/usr/share/gnome
/usr/share/help
@ -285,8 +282,10 @@ restorecon /media 2>/dev/null >/dev/null || :
/usr/share/sounds
/usr/share/themes
/usr/share/xsessions
/usr/share/X11
%dir /usr/share/X11
/usr/share/X11/fonts
/usr/share/wayland-sessions
/usr/share/zsh
/usr/src
/usr/tmp
%dir /var
@ -297,7 +296,6 @@ restorecon /media 2>/dev/null >/dev/null || :
/var/empty
/var/ftp
/var/games
/var/gopher
/var/lib
/var/local
%ghost /var/lock
@ -314,15 +312,58 @@ restorecon /media 2>/dev/null >/dev/null || :
/var/yp
%changelog
* Mon Jun 21 2021 Pavel Zhukov <pzhukov@redhat.com> - 3.8-6
- Make /proc and /sys ghost to workaround issue in container
- Revert restorecon change
* Tue Jun 25 2024 František Hrdina <fhrdina@redhat.com> - 3.16-5
- Fixing gating.yaml
* Thu Apr 23 2020 Pavel Zhukov <pzhukov@redhat.com> - 3.8-4
- Do not restore content of /proc (#1827087)
* Tue Jun 25 2024 Martin Osvald <mosvald@redhat.com> - 3.16-4
- Update fmf plans and gating
* Wed Apr 22 2020 Pavel Zhukov <pavel@desktop.zhukoff.net> - 3.8-3
- Add BPF directories (#1788999)
* Tue Jun 25 2024 Martin Osvald <mosvald@redhat.com> - 3.16-3
- Add ownership of /etc/default, /usr/share/X11/fonts,
/usr/share/fish, /usr/share/zsh
- Improve directory creation to avoid 'Argument list too long' error
Resolves: RHEL-35327
Resolves: RHEL-1337
Resolves: RHEL-1338
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 3.16-2
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
* Tue Aug 3 2021 Pavel Zhukov <pzhukov@redhat.com> - 3.15-1
- Move /afs into main package
* Fri Aug 07 2020 Pavel Raiskup <praiskup@redhat.com> - 3.14-4
- /proc and /sys made %%ghost to allow filesystem package updates in rootless
container environments (rhbz#1548403)
* Mon Jan 27 2020 Ondrej Vasik <ovasik@redhat.com> - 3.14-1
- do not restore context of /proc (#1722766)
* Wed Dec 18 2019 Ondrej Vasik <ovasik@redhat.com> - 3.13-1
- add ownership for eBPF bytecode files directories (#1781646)
* Thu Jun 20 2019 David Howells <dhowells@redhat.com> - 3.12-1
- add new -afs supbackage for /afs directory (#FPC888,#1720232)
* Mon Apr 29 2019 Ondrej Vasik <ovasik@redhat.com> - 3.11-1
- drop ownership for /etc/xinet.d (#1691146)
- drop ownership for %{_libdir}/tls, %{_libdir}/sse2 (#1702329)
* Mon Feb 11 2019 Ondrej Vasik <ovasik@redhat.com> - 3.10-1
- drop legacy /var/gopher (#1667231)
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.9-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.9-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Thu Jun 21 2018 Ondrej Vasik <ovasik@redhat.com> - 3.9-1
- add ownership of /etc/rwtab.d and /etc/statetab.d
* Tue Feb 20 2018 Adam Jackson <ajax@redhat.com> - 3.8-3
- own /etc/X11/xinit/{,{xinitrc,xinput}.d}
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
@ -436,7 +477,7 @@ restorecon /media 2>/dev/null >/dev/null || :
* Sun Jun 30 2013 Ondrej Vasik <ovasik@redhat.com> - 3.2-17
- .dwz symlink is needed as well (#974130)
* Wed Jun 20 2013 Ondrej Vasik <ovasik@redhat.com> - 3.2-16
* Thu Jun 20 2013 Ondrej Vasik <ovasik@redhat.com> - 3.2-16
- /var/run and /var/lock can't be in payload for some reason
* Wed Jun 19 2013 Ondrej Vasik <ovasik@redhat.com> - 3.2-15