fedora-kickstarts/snippets/packagekit-cached-metadata.ks
Kalev Lember ee9e070d75 packagekit-cached-metadata.ks: Adapt for livemedia-creator changes
Now that F24 images are made with livemedia-creator instead of
livecd-creator, the kickstart parser has changed; the new kickstart
parser doesn't understand the $INSTALL_ROOT variable we'd been using in
%post --nochroot scripts. This commit fixes this by replacing
$INSTALL_ROOT usage with hardcoded /mnt/sysimage as docs suggest.

While at this, this commit also fixes a case where resolv.conf would be
incorrectly copied if it is a symlink, thanks to dgilmore for pointing
this out.
2016-06-01 23:20:46 +02:00

54 lines
2.4 KiB
Plaintext

# %post script to include initial metadata for PackageKit
%post --nochroot
# Copy over files needed for networking inside the chroot
for f in /etc/resolv.conf /etc/hosts ; do
test -f $f && cp $f /mnt/sysimage/$f.kickstart
done
%end
%post
# Use host machine's resolv.conf and hosts files
for f in /etc/resolv.conf /etc/hosts ; do
test -f $f && mv $f $f.orig
test -f $f.kickstart && mv -f $f.kickstart $f
done
PK_PREFIX=`mktemp -d`
mkdir -p $PK_PREFIX/etc/yum.repos.d
if [ -f /etc/yum.repos.d/fedora.repo ] ; then
cp /etc/yum.repos.d/fedora.repo $PK_PREFIX/etc/yum.repos.d/
sed -i -e 's|^metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch|baseurl=http://kojipkgs.fedoraproject.org/compose/branched/latest-Fedora-/compose/Everything/$basearch/os/|' \
$PK_PREFIX/etc/yum.repos.d/fedora.repo
fi
if [ -f /etc/yum.repos.d/fedora-updates.repo ] ; then
cp /etc/yum.repos.d/fedora-updates.repo $PK_PREFIX/etc/yum.repos.d/
sed -i -e 's|^metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f$releasever&arch=$basearch|baseurl=http://kojipkgs.fedoraproject.org/mash/updates/f$releasever-updates/$basearch/|' \
$PK_PREFIX/etc/yum.repos.d/fedora-updates.repo
fi
if [ -f /etc/yum.repos.d/fedora-updates-testing.repo ] ; then
cp /etc/yum.repos.d/fedora-updates-testing.repo $PK_PREFIX/etc/yum.repos.d/
sed -i -e 's|^metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-f$releasever&arch=$basearch|baseurl=http://kojipkgs.fedoraproject.org/mash/updates/f$releasever-updates-testing/$basearch/|' \
$PK_PREFIX/etc/yum.repos.d/fedora-updates-testing.repo
fi
if [ -f /etc/yum.repos.d/fedora-rawhide.repo ] ; then
cp /etc/yum.repos.d/fedora-rawhide.repo $PK_PREFIX/etc/yum.repos.d/
sed -i -e 's|^metalink=https://mirrors.fedoraproject.org/metalink?repo=rawhide&arch=$basearch|baseurl=http://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-/compose/Everything/$basearch/os/|' \
$PK_PREFIX/etc/yum.repos.d/fedora-rawhide.repo
fi
rpm --root=$PK_PREFIX --initdb
DESTDIR=$PK_PREFIX /usr/libexec/packagekit-direct refresh
if [ -d /var/cache/PackageKit ] ; then
mv $PK_PREFIX/var/cache/PackageKit/* /var/cache/PackageKit/
fi
rm -rf $PK_PREFIX
# Restore original resolv.conf and hosts files
for f in /etc/resolv.conf /etc/hosts ; do
rm -f $f
test -f $f.orig && mv $f.orig $f
done
%end