From 01f1932796560755bba7236007dc6a020155e316 Mon Sep 17 00:00:00 2001 From: Colin Walters Date: Mon, 8 Jul 2013 10:10:52 -0400 Subject: Clean up paths --- make-fedora-ostree-tarball | 54 ++++++++++++++++++++++++---------------------- 1 file changed, 28 insertions(+), 26 deletions(-) diff --git a/make-fedora-ostree-tarball b/make-fedora-ostree-tarball index c774ce7..c27c5a2 100755 --- a/make-fedora-ostree-tarball +++ b/make-fedora-ostree-tarball @@ -1,32 +1,34 @@ #!/usr/bin/env bash srcdir=$(dirname $0) +builddir=$(pwd) releasever=19 name=fedora-ostree-${releasever} prefix=$(pwd)/${name} -root=${prefix}.tmp +yumroot=${prefix}.yum +targetroot=${prefix}.root output=${name}.tar.gz -yumcachedir=${root}/var/cache/yum -yumcache_lookaside=${prefix}-yum-cache -logs_lookaside=${prefix}-logs +yumcachedir=${yumroot}/var/cache/yum +yumcache_lookaside=${prefix}.yum-cache +logs_lookaside=${prefix}.logs set -x set -e -rm ${root} -rf +rm ${yumroot} -rf if test -d ${yumcache_lookaside}; then - mkdir -p ${root}/var/cache/ + mkdir -p ${yumroot}/var/cache/ cp -a ${yumcache_lookaside} ${yumcachedir} fi -yum -c ${srcdir}/fedora-ostree.repo -y --releasever=${releasever} --nogpg --installroot=${root} --disablerepo='*' --enablerepo=fedora --enablerepo=fedora-ostree install systemd passwd yum ostree fedora-release vim-minimal kernel dracut e2fsprogs less +yum -c ${srcdir}/fedora-ostree.repo -y --releasever=${releasever} --nogpg --installroot=${yumroot} --disablerepo='*' --enablerepo=fedora --enablerepo=fedora-ostree install systemd passwd yum ostree fedora-release vim-minimal kernel dracut e2fsprogs less if test "${mfotbreak}" = "post-yum"; then bash fi # Now make an empty "real" root -rm ${root}.real -rf -mkdir ${root}.real -cd ${root}.real +rm ${targetroot} -rf +mkdir ${targetroot} +cd ${targetroot} for d in dev proc run sys var; do mkdir $d @@ -55,16 +57,16 @@ ln -s sysroot/tmp tmp ln -s var/home home # These are the only directories we take from the Fedora build -mv ${root}/usr . +mv ${yumroot}/usr . # Except /usr/local -> ../var/usrlocal rm usr/local -rf ln -s ../var/usrlocal usr/local # And /etc -> /usr/etc rm usr/etc -rf -mv ${root}/etc usr/etc +mv ${yumroot}/etc usr/etc # Move boot, but rename the kernel/initramfs to have a checksum -mv ${root}/boot . +mv ${yumroot}/boot . kernel=$(ls boot/vmlinuz-3*) initramfs=$(ls boot/initramfs-3*) bootcsum=$(cat ${kernel} ${initramfs} | sha256sum | cut -f 1 -d ' ') @@ -72,25 +74,24 @@ mv ${kernel} ${kernel}-${bootcsum} mv ${initramfs} ${initramfs}-${bootcsum} # Also move the toplevel compat links -mv ${root}/lib . -if test -L ${root}/lib64; then - mv ${root}/lib64 . +mv ${yumroot}/lib . +if test -L ${yumroot}/lib64; then + mv ${yumroot}/lib64 . fi -mv ${root}/bin . -mv ${root}/sbin . +mv ${yumroot}/bin . +mv ${yumroot}/sbin . mkdir -p usr/lib/tmpfiles.d -cp $(srcdir)/tmpfiles-gnome-ostree.conf usr/lib/tmpfiles.d +cp ${srcdir}/tmpfiles-gnome-ostree.conf usr/lib/tmpfiles.d # Ok, let's globally fix permissions in the Fedora content; # everything is root owned, all directories are u=rwx,g=rx,og=rx. -chown -R -h 0:0 usr etc boot -for x in usr etc boot; do +chown -R -h 0:0 usr boot +for x in usr boot; do find $x -type d -exec chmod u=rwx,g=rx,og=rx "{}" \; done -# Blow away stuff we don't want here -rm ${root}/var/lib/yum/* -rf +cd ${builddir} # Attempt to cache stuff between runs rm ${yumcache_lookaside} -rf @@ -99,8 +100,9 @@ mv ${yumcachedir} ${yumcache_lookaside} # And move the log files out rm "${logs_lookaside}" -rf mkdir -p "${logs_lookaside}" -mv ${root}/var/log/* ${logs_lookaside} +mv ${yumroot}/var/log/* ${logs_lookaside} -tar -c -z -C ${root} -f ${output} . +tar -c -z -C ${targetroot} -f ${output} . echo "Generated ${output}" -rm ${root} -rf +rm ${yumroot} -rf +rm ${targetroot} -rf -- cgit