Repo cleanup

1) Use /tmp/qubes-installer-workdir instead of the ugly /Devel/Qubes
2) Use local fedora repo instead of the remote one
3) Still keep the remote fedora repo for extra packages (with higher cost though)
4) Use local repo keys!!!
5) Use nice update_repo.sh script

All in all now use 5 repos during installation:
* build/yum/installer (installer-related rpms)
* build/yum/qubes-dom0 (all the Qubes stuff)
* build/yum/dom0-updates (for select 3rd party packages, e.g. Xorg)
* build/fedora13-repo (local fedora 13 repo, copy from DVD, we don't
  keep it uder build/yum, because we don't want our update script
  to process it every time)
* remote fedora repo for extra packages (usually deps for qubes-dom0)
This commit is contained in:
Joanna Rutkowska 2011-04-01 18:52:15 +02:00
parent 8205df4910
commit 0589e35f48
11 changed files with 162 additions and 61 deletions

View File

@ -87,5 +87,6 @@ RPMS = rpm/noarch/qubes-logos-$(QBSLOGOS_VERSION)-*.rpm \
rpm/x86_64/firstboot-$(FIRSTBOOT_VERSION)-*.rpm
update-repo:
ln -f $(RPMS) ../yum/r1/installer/rpm/
ln -f $(RPMS) build/yum/installer/rpm/
build/yum/installer/update_repo.sh

2
build/fedora13-repo/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
Packages/
repodata/

1
build/installer Symbolic link
View File

@ -0,0 +1 @@
/home/joanna/qubes/installer

2
build/yum/dom0-updates/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
rpm/
repodata/

2
build/yum/installer/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
rpm/
repodata/

2
build/yum/qubes-dom0/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
rpm
repodata/

34
build/yum/update_repo.sh Executable file
View File

@ -0,0 +1,34 @@
#!/bin/sh
# $1 -- path to rpm dir
check_repo()
{
if ! [ $(ls -A "$1/*.rpm" 2>/dev/null) ] ; then
echo -n "Repo $1 is empty!"
return
fi
if rpm --checksig $1/*.rpm | grep -v pgp > /dev/null ; then
echo "ERROR: There are unsigned RPM packages in $1 repo:"
echo "---------------------------------------"
rpm --checksig $1/*.rpm | grep -v pgp
echo "---------------------------------------"
echo "Sign them before proceeding."
exit 1
fi
}
update_repo()
{
createrepo --update $1
}
for repo in * ; do
echo "--> Processing repo: $repo..."
check_repo $repo/rpm -o $repo/repodata
update_repo $repo -o $repo/repodata
done
#yum clean metadata

View File

@ -13,7 +13,7 @@ dependency_resolve_allow_conflicts = 0
mode_respin = 1
kickstart_manifest = 1
kickstart_file = /Devel/Qubes/installer/conf/qubes-1-respin.cfg
kickstart_file = /tmp/qubes-installer-workdir/installer/conf/qubes-1-respin.cfg
kickstart_include = 0
kickstart_default = 1
@ -35,17 +35,17 @@ version = R1
version_from = F13
comps_filter = 0
revisor_comps = 1
comps = /Devel/Qubes/installer/conf/comps-qubes1.xml
comps = /tmp/qubes-installer-workdir/installer/conf/comps-qubes1.xml
#isolinux_cfg = /Devel/Qubes/installer/conf/qubes-1_isolinux.cfg
#isolinux_cfg = opt/qubes-installer/installer/conf/qubes-1_isolinux.cfg
destination_directory = /Devel/Qubes/ISO
working_directory = /Devel/Qubes/work
destination_directory = /tmp/qubes-installer-workdir/ISO
working_directory = /tmp/qubes-installer-workdir/work
## Models
[qubes1-x86_64]
description = Qubes R1 for x86_64
main = /Devel/Qubes/installer/conf/qubes1-x86_64-respin.conf
main = /tmp/qubes-installer-workdir/installer/conf/qubes1-x86_64-respin.conf
iso_basename = Qubes
architecture = x86_64

View File

@ -13,69 +13,39 @@ obsoletes=1
gpgcheck=0
plugins=1
metadata_expire=1800
installroot=/Devel/Qubes/work/revisor
installroot=/tmp/qubes-installer-workdir/work/revisor
failovermethod=priority
[fedora-local]
name=Fedora 13 - x86_64 (local)
baseurl=file:///tmp/qubes-installer-workdir/fedora13-repo/
enabled=1
gpgcheck=1
gpgkey=file:///tmp/qubes-installer-workdir/installer/keys/fedora-13.asc
cost=1
[fedora]
name=Fedora 13 - x86_64
baseurl=http://download.fedoraproject.org/pub/fedora/linux/releases/13/Everything/x86_64/os/
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-13&arch=x86_64
#mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-13&arch=x86_64
enabled=1
gpgcheck=0
gpgcheck=1
gpgkey=file:///tmp/qubes-installer-workdir/installer/keys/fedora-13.asc
cost=10
[fedora-source]
name=Fedora 13 - Source
baseurl=http://download.fedoraproject.org/pub/fedora/linux/releases/13/Everything/source/SRPMS/
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-source-13&arch=src
enabled=0
gpgcheck=0
[updates]
name=Fedora 13 - x86_64 - Updates
baseurl=http://download.fedoraproject.org/pub/fedora/linux/updates/13/x86_64/
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f13&arch=x86_64
enabled=0
gpgcheck=0
[updates-source]
name=Fedora 13 - Source - Updates
baseurl=http://download.fedoraproject.org/pub/fedora/linux/updates/13/SRPMS/
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-source-f13&arch=src
enabled=0
gpgcheck=0
[updates-testing]
name=Fedora 13 - x86_64 - Test Updates
baseurl=http://download.fedoraproject.org/pub/fedora/linux/updates/testing/13/x86_64/
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=updates-testing-f13&arch=x86_64
enabled=0
gpgcheck=0
[updates-testing-source]
name=Fedora 13 - Source - Test Updates
baseurl=http://download.fedoraproject.org/pub/fedora/linux/updates/testing/13/SRPMS/
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=updates-testing-source-f13&arch=src
enabled=0
gpgcheck=0
[qubes]
name = Qubes OS R1 Repository
baseurl = http://qubes-os.org/yum/r1/dom0/rpm
enabled = 1
gpgcheck = 1
gpgkey = http://qubes-os.org/keys/qubes-release-1-signing-key.asc
[qubes-testing]
name = Qubes OS R1 Testing Repository
baseurl = http://qubes-os.org/yum/r1-testing/dom0/rpm
enabled = 0
gpgcheck = 1
gpgkey = http://qubes-os.org/keys/qubes-release-1-signing-key.asc
[local]
[installer]
name=Qubes Local Repository
baseurl=file:///Devel/Qubes/yum/r1/installer/rpm/
baseurl=file:///tmp/qubes-installer-workdir/yum/installer/
enabled=1
gpgcheck=0
gpgcheck=1
gpgkey=file:///tmp/qubes-installer-workdir/installer/keys/qubes-release-1-signing-key.asc
cost=1
[qubes-dom0]
name=Qubes Local Repository
baseurl=file:///tmp/qubes-installer-workdir/yum/qubes-dom0/
enabled=1
gpgcheck=1
gpgkey=file:///tmp/qubes-installer-workdir/installer/keys/qubes-release-1-signing-key.asc
cost=1

48
keys/fedora-13.asc Normal file
View File

@ -0,0 +1,48 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v2.0.16 (GNU/Linux)
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
NOCsSf2npCUaJqkya67DPB0qcL6UuS0=
=+91V
-----END PGP PUBLIC KEY BLOCK-----

View File

@ -0,0 +1,39 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
=f2Ro
-----END PGP PUBLIC KEY BLOCK-----