Skip to content

Commit

Permalink
Add rpm 4.14 backport (fc28) + rebuild packages linked with it (fc25)
Browse files Browse the repository at this point in the history
This set of packages will allow running rpm 4.14 in a fc25-based dom0
(R4.0), which is necessary to update to fc31-based dom0 (R4.1).

QubesOS/qubes-issues#5685
  • Loading branch information
marmarek committed Feb 23, 2020
0 parents commit b873532
Show file tree
Hide file tree
Showing 6 changed files with 138 additions and 0 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
pkgs/
*.src.rpm
rpmdb/
7 changes: 7 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
sudo: required
dist: bionic
language: generic
install: git clone https://github.com/QubesOS/qubes-builder ~/qubes-builder
script: ~/qubes-builder/scripts/travis-build
env:
- DIST_DOM0=fc25 USE_QUBES_REPO_VERSION=4.1
41 changes: 41 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
FEDORA_MIRROR ?= http://archives.fedoraproject.org/pub/archive/fedora/linux
FC28_BASEURL = $(FEDORA_MIRROR)/updates/28/Everything/SRPMS/Packages
FC25_BASEURL = $(FEDORA_MIRROR)/releases/25/Everything/source/tree/Packages
FC25_UPDATES_BASEURL = $(FEDORA_MIRROR)/updates/25/SRPMS/Packages
KEYS = keys/RPM-GPG-KEY-fedora-28-primary keys/RPM-GPG-KEY-fedora-25-primary

include Makefile.builder

ALL_URLS := $(foreach pkg,$(PACKAGES_FROM_FC28), \
$(FC28_BASEURL)/$(shell echo $(pkg)|head -c 1|tr A-Z a-z)/$(pkg)) \
$(foreach pkg,$(PACKAGES_FROM_FC25), \
$(if $(findstring $(pkg), $(PACKAGES_FROM_FC25_UPDATES)), \
$(FC25_UPDATES_BASEURL), $(FC25_BASEURL))/$(shell echo $(pkg)|head -c 1|tr A-Z a-z)/$(pkg))

ALL_ORIG_FILES := $(notdir $(ALL_URLS))
ALL_FILES := $(ALL_ORIG_FILES:%.fc28.src.rpm=%.fc25.src.rpm)

ifneq ($(DISTFILES_MIRROR),)
ALL_URLS := $(addprefix $(DISTFILES_MIRROR),$(ALL_FILES))
endif

UNTRUSTED_SUFF = .UNTRUSTED

rpmdb/.imported: $(KEYS)
@mkdir -p rpmdb
@rpmkeys --dbpath=$(PWD)/rpmdb --import $(KEYS)
@touch rpmdb/.imported

$(ALL_ORIG_FILES): %.src.rpm: rpmdb/.imported
@wget --no-use-server-timestamps -q -O $@$(UNTRUSTED_SUFF) $(filter %/$@,$(ALL_URLS))
@rpmkeys --dbpath=$(PWD)/rpmdb --checksig $@$(UNTRUSTED_SUFF) | grep 'signatures OK$$\|rsa sha1 (md5) pgp md5 OK$$'
@mv $@$(UNTRUSTED_SUFF) $@

%.fc25.src.rpm: %.fc28.src.rpm
mv $< $@

.PHONY: get-sources verify-sources
get-sources: $(ALL_FILES)

verify-sources:
@true
29 changes: 29 additions & 0 deletions Makefile.builder
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
PACKAGES_FROM_FC28 := \
rpm-4.14.2.1-2.fc28.src.rpm
# rebuild with updated rpm
PACKAGES_FROM_FC25 := \
deltarpm-3.6-17.fc25.src.rpm \
drpm-0.3.0-3.fc25.src.rpm \
libsolv-0.6.29-2.fc25.src.rpm \
createrepo_c-0.10.0-6.fc25.src.rpm \
hawkey-0.6.4-3.fc25.src.rpm \
satyr-0.21-2.fc25.src.rpm \
PackageKit-1.1.5-1.fc25.src.rpm \
grub2-2.02-0.38.fc25.src.rpm

# used by Makefile, not relevant for RPM_SRC_PACKAGES
PACKAGES_FROM_FC25_UPDATES := \
libsolv-0.6.29-2.fc25.src.rpm \
hawkey-0.6.4-3.fc25.src.rpm \
PackageKit-1.1.5-1.fc25.src.rpm \
grub2-2.02-0.38.fc25.src.rpm

ifeq ($(DIST), fc25)
RPM_SRC_PACKAGES.dom0 := $(PACKAGES_FROM_FC28:%.fc28.src.rpm=%.$(DIST).src.rpm) \
$(PACKAGES_FROM_FC25)
endif

# avoid libimaevm dep on rpm, and also increase versions to force the update
RPM_BUILD_EXTRA_OPTS += --without=libimaevm --define='dist .1.fc25'

RPM_SRC_PACKAGES := $(RPM_SRC_PACKAGES.$(PACKAGE_SET))
30 changes: 30 additions & 0 deletions keys/RPM-GPG-KEY-fedora-25-primary
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1

mQINBFb9YzMBEACy1RmbMa6MNIpfHYxLwgCgBVnFYCdCHZqWfYYYK14potfJ9uI2
4Y4w+oHiLeZ/HoG1EBQiDfXHetGZECAKEYQlE7BbRBcd3An9GalKTkWzcshhHFx7
f5JIprL0uY8x2D9HmCfAjMxoh6usWjmAQ+DUYd48iYCkahyZa0/2CgX9HIcEz/M/
oDeQbTwzw9AQbQz382oOErfRaXE/DQrjlx2ln0iejidiOe7DzGZOH9/Foc2KN062
A9VnZ7tU1ACKT8NxZ78RaBL3qmvMGdb7kf7GywjpRNo4J7XCQUP+nP51eCur2wMS
4mY2idDL8Ojouta79pPrviVLmwzunJoFnBcnIhbndebdxPqgOA5XAOaTdLtgurMq
90V45DPyJpkdEyptovksH7zYNGEIGB8cFmrVgUwriB0TLNJTEcM4Knbh4imfTX42
vCE+rEHn3YVqubG7rggibKznJbflwQcqOYZHLlPGYCxO47aaFUo5qJN7QN3lxajb
SzL/SdoHrVL67unzmHyktx5uF8Fv6EDgUV6NCb/IBiEwhR8YHi86NQ8nsI3K8Zhv
EnIxghJQD+cn3ykthwqYmZwi2PJDBiZsOGf3iXbalAjU3JVqoA7mboRPR+IBXQxK
xvAEpyIGeSUN8yBn+JVDRwZ37kkUVs2AOeUwMlnfFSqYFfmqbeQ73A9ECwARAQAB
tDxGZWRvcmEgMjUgUHJpbWFyeSAoMjUpIDxmZWRvcmEtMjUtcHJpbWFyeUBmZWRv
cmFwcm9qZWN0Lm9yZz6JAjgEEwECACIFAlb9YzMCGw8GCwkIBwMCBhUIAgkKCwQW
AgMBAh4BAheAAAoJEECJ2PL9sZyY1TEP/0u/v4g8HEdl9gqlhV179vXCJJiGtzB0
7IGAu++mrsxBrDpqPZTEs6dG5MyzvhhHcmHYrZIiicPAeL9xlZ75oIqQuvjDncoM
kROSGvtfUnvocZhQIPvvkgWe3UAmmP3cSlVzu3KtbTpM+KL71incWo4Tentq9L/f
vsow7vvGbKUMoSSZbAMfjJkzlzSDNlFtaRkrCBQFJ76EKeggjnEZ8H0cowCdGuyv
uBoxQeeQM13b2T9c/uyrXCIcasaOTIKTcqTjbJUTIC2NIZ8OHjtlxZacEaN3ml1M
lNRtbIvqzbtv+sb+DsOVTyd1XIcxU9s+TDKvUm0OBNvj3Bm2BQbi8RHyLFbHWvhx
Gjzb8Wb/MnlcdTlk3M2iPv8dWHXjEM9n9TKyStdpBD9X3P/Gy2gUquHgkl8p+r8o
xmzNH534mKH47kPL/trKInKwv0fkBwxvuPgHG0n79eMHQenVA8gXzG4P6JkcyObA
6xGEEQ/wXFF0gLksmwFWuPm2GcnOI5KmGNgDP2PMhS8/cfJfW04a/tL2T2zr4CmE
LynbOvY/yOJk7/2W3Cb47+yhqo/htrpJDP6n6zQNNk3+e8EVgfhkQqFxom8yCmEP
pW0gBFeE83VoytYPXRkavwmFR+tplyZfOkXG9gysTn8SpRp5+B44O+VeaZumanQZ
kRFmBygMR6M/
=NrXo
-----END PGP PUBLIC KEY BLOCK-----
28 changes: 28 additions & 0 deletions keys/RPM-GPG-KEY-fedora-28-primary
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----

mQINBFmSAVYBEADakUeJgNnAP2CE3vw+iI0Um9XvuBP6NdESRiJIEPgXhKWM058J
PZDkpRETS4pbB3xUyPLoogoO76lheBEOPEAGp5mb/7vEcwlYqjtuetFi9hcsbNPx
DeOLQ9KR7Xs2idU+DlCJW1WyU9UiLoyZpQgAqF7Y50MoxPKJtfDuM52YkulYLU+M
leRtxJzHYcXArU3x3Czz1FnemVtol3/1/BvmGQPIyj2HdG4vxWbiX79AUSlchh+M
bNqOOpVVK16lLEbJCxCbPdCsKCTOI+FsdQsB4bnX5ddNcvxxACwHNUifVD/1XH8A
x77DHohRbccRtIZqZEIKecHxVyFdr2mAl9mEXSzaFvRzWa+5seCgGoV0INBhj6NE
tHhSxBYzLmr5noQ8JNPa6eRipPvYTle2vstq2YUJ8D0ZbKbxaCPstemCQZrQKzh0
tgezIgVXKc2U0i3ZOEYf4ISMHeBnH36nRMBnaH/HkLyZyHXNE4vswJpwPjNtaofz
QDD+TmCe2ObKei8iUqfLo/8Je8IvnodS9C5l0fyEaMmo5BWc+SYRSTR9libNruwu
4j6Kuoxge9SbRuD2S0qzKK2LYRZrlkxjP8REnpvXxUfeSvNYHrbjzYDv677S6pqW
dNqyoPduKiZWy6Vg4g+pYmk5T7vrpNizGK6exKiYZ5tAUaO3lrdpHOolUwARAQAB
tCxGZWRvcmEgMjggKDI4KSA8ZmVkb3JhLTI4QGZlZG9yYXByb2plY3Qub3JnPokC
OAQTAQIAIgUCWZIBVgIbDwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQ4I5+
Yp22L7GMDhAAwwQhpXFXxegkgi0pFbA98Om3UBiQtcDemQSls0HEJh+J9sm4g0Sj
2K7khFnJCKsQNVnJDVxvxJ9j/AFZErRMjudUF7ACZfKDtNxq3gkH7qICPKk/DzeX
blrzPc/RX+kkl9I5jFBhapypsExa2yilfk8IiKq6nd2Ro7K+gEh/CMhfe7YBGInZ
3FmZWsq1+WKTZCUNmA8++eWIbmukrAoieTHTvIcOmc+dfaUAmjWtOnc69E9UmTCw
EMEbPVMSmZv0qnp0kByWUeV5cZR7NoXmaMaTr5aUY6wJuLshbWzgmudorf1udUwq
YlpxZJtQCxlHezulrDJG19d4dC5vGdYbnpeq01s9L9yieccKafWfldBU+YBZbo9e
9Uzu/766pxEAtqYYSyZboiqsj5NCoq2fRc4DjfCDVEaK7HSPcQpQFA+p18sD2qcc
EPPo+F2+M8PZLf4khipGRH1nm9AmM/v25a/9w22bDuUUvpcWwW45YsNToTTM4d6T
s750lCw/4K3jHnrQWxL7VfwLw0H1xlxnVqIXlL3HeOIn9EoaygxV2gJtPjB/Gwr2
z/K+HoibAxvo7VcpxD+N38LaPtrx/ERMxeYBJvMgSqGaC3MXj36/qv0zTyyTItYX
9JfbOrikoJa+aKQGmTWLrcuKaYl6Jzsq3vRTbNRRi4SpXwTwMyuW4pU=
=fo1W
-----END PGP PUBLIC KEY BLOCK-----

0 comments on commit b873532

Please sign in to comment.