Add a simple script that generates some offline metadata
See http://blogs.gnome.org/hughsie/2014/08/29/putting-packagekit-metadata-on-the-fedora-livecd/
This commit is contained in:
parent
769700a920
commit
c848547820
@ -29,4 +29,8 @@ bashcompletiondir = $(BASH_COMPLETIONS_DIR)
|
||||
dist_bashcompletion_DATA = pkcon
|
||||
endif
|
||||
|
||||
EXTRA_DIST = generate-md-archive.sh
|
||||
|
||||
CLEANFILES = cached-metadata.tar
|
||||
|
||||
-include $(top_srcdir)/git.mk
|
||||
|
@ -10,6 +10,9 @@ License: GPLv2+ and LGPLv2+
|
||||
URL: http://www.freedesktop.org/software/PackageKit/
|
||||
Source0: http://www.freedesktop.org/software/PackageKit/releases/%{name}-%{version}.tar.xz
|
||||
|
||||
# generated using contrib/generate-md-archive.sh in the PackageKit source tree
|
||||
Source1: cached-metadata.tar
|
||||
|
||||
Requires: %{name}-glib%{?_isa} = %{version}-%{release}
|
||||
Requires: shared-mime-info
|
||||
Requires: comps-extras
|
||||
@ -92,6 +95,15 @@ Provides: PackageKit-libs = %{version}-%{release}
|
||||
%description glib
|
||||
GLib libraries for accessing PackageKit.
|
||||
|
||||
%package cached-metadata
|
||||
Summary: Cached metadata for PackageKit
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
|
||||
%description cached-metadata
|
||||
Cached metadata allows application installers to start instantly on the
|
||||
LiveCD or installed system without downloading files from the internet or
|
||||
regenerating the SAT caches. It can safely removed if not required.
|
||||
|
||||
%package cron
|
||||
Summary: Cron job and related utilities for PackageKit
|
||||
Requires: crontabs
|
||||
@ -208,6 +220,10 @@ pushd ${RPM_BUILD_ROOT}%{_datadir}/PackageKit > /dev/null
|
||||
ln -s ../pixmaps/comps icons
|
||||
popd > /dev/null
|
||||
|
||||
# ship cached metadata on the LiveCD
|
||||
# http://blogs.gnome.org/hughsie/2014/08/29/putting-packagekit-metadata-on-the-fedora-livecd/
|
||||
tar -xf %{SOURCE1} --directory=$RPM_BUILD_ROOT
|
||||
|
||||
%find_lang %name
|
||||
|
||||
%post
|
||||
@ -270,6 +286,12 @@ popd > /dev/null
|
||||
%{_libdir}/packagekit-backend/libpk_backend_hif.so
|
||||
%endif
|
||||
|
||||
%files cached-metadata
|
||||
%defattr(-,root,root,-)
|
||||
%{_datadir}/PackageKit/hawkey
|
||||
%{_datadir}/PackageKit/hawkey/*
|
||||
%{_datadir}/PackageKit/metadata/*
|
||||
|
||||
%files glib
|
||||
%defattr(-,root,root,-)
|
||||
%{_libdir}/*packagekit-glib2.so.*
|
||||
|
34
contrib/generate-md-archive.sh
Executable file
34
contrib/generate-md-archive.sh
Executable file
@ -0,0 +1,34 @@
|
||||
#!/bin/bash
|
||||
# Copyright (C) 2014 Richard Hughes <richard@hughsie.com>
|
||||
#
|
||||
# Licensed under the GNU General Public License Version 2
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
|
||||
# run this as non-root
|
||||
|
||||
PREFIX=`realpath "./root"`
|
||||
rm -rf ${PREFIX}
|
||||
mkdir -p ${PREFIX}/etc/yum.repos.d
|
||||
cp /etc/yum.repos.d/fedora.repo ${PREFIX}/etc/yum.repos.d/
|
||||
cp /etc/yum.repos.d/fedora-updates.repo ${PREFIX}/etc/yum.repos.d/
|
||||
cp /etc/yum.repos.d/fedora-updates-testing.repo ${PREFIX}/etc/yum.repos.d/
|
||||
[ -x /usr/bin/rpm ] && rpm --root=${PREFIX} --initdb
|
||||
DESTDIR=${PREFIX} /usr/libexec/packagekit-direct repo-set-data fedora enabled 1
|
||||
DESTDIR=${PREFIX} /usr/libexec/packagekit-direct repo-set-data updates enabled 1
|
||||
DESTDIR=${PREFIX} /usr/libexec/packagekit-direct repo-set-data fedora-debuginfo enabled 0
|
||||
DESTDIR=${PREFIX} /usr/libexec/packagekit-direct repo-set-data updates-debuginfo enabled 0
|
||||
DESTDIR=${PREFIX} /usr/libexec/packagekit-direct repo-set-data updates-testing-debuginfo enabled 0
|
||||
DESTDIR=${PREFIX} /usr/libexec/packagekit-direct repo-set-data updates-testing enabled 0
|
||||
DESTDIR=${PREFIX} /usr/libexec/packagekit-direct refresh
|
||||
rm -rf ${PREFIX}/etc
|
||||
rm -rf ${PREFIX}/var/run
|
||||
rm -rf ${PREFIX}/var/lib
|
||||
# this is so we can use it again at runtime
|
||||
mv ${PREFIX}/var/cache ${PREFIX}/var/share
|
||||
mv ${PREFIX}/var ${PREFIX}/usr
|
||||
cd ${PREFIX} && tar -cf ../cached-metadata.tar usr
|
||||
rm -rf ${PREFIX}
|
||||
echo "now ship cached-metadata.tar in your package!"
|
Loading…
Reference in New Issue
Block a user