]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
RPM: Build bird-repo packages for easy install
authorMaria Matejka <mq@ucw.cz>
Sat, 3 Jan 2026 14:11:17 +0000 (15:11 +0100)
committerMaria Matejka <mq@ucw.cz>
Sat, 3 Jan 2026 15:46:16 +0000 (16:46 +0100)
distro/pkg/rpm/bird.spec
distro/pkg/rpm/bird_cznic.repo [new file with mode: 0644]
distro/pkg/rpm/keys/RPM-GPG-KEY-maria-ed25519-bird.nic.cz [new file with mode: 0644]
distro/pkg/rpm/keys/RPM-GPG-KEY-maria-rsa-bird.nic.cz [new file with mode: 0644]
distro/pkg/rpm/keys/RPM-GPG-KEY-network.cz [new file with mode: 0644]
tools/make-rpm

index 55eba3cce93c5731f09d702f31b50fefa70ab247..c2daaff4f2c9b7a2aa24bac7f8866358fe9729f2 100644 (file)
@@ -19,6 +19,8 @@ Source0:          https://bird.nic.cz/download/bird-%{version}.tar.gz
 Source1:          bird.service
 Source2:          bird.tmpfilesd
 Source3:          system-user-bird.conf
+Source4:         bird_cznic.repo
+Source5:         keys
 
 BuildRequires:    autoconf
 BuildRequires:    flex
@@ -70,6 +72,13 @@ and inspection of the status of the daemon, soft reconfiguration as well as a
 powerful language for route filtering.
 %endif
 
+%package repo
+Summary:         Repository for BIRD Internet Routing Daemon
+Group:           Unspecified
+
+%description repo
+CZ.NIC upstream repository for BIRD Internet Routing Daemon.
+
 %prep
 %setup -q -n bird-%{version}
 
@@ -94,6 +103,11 @@ install -D -p -m 0644 %{SOURCE1} %{buildroot}%{_unitdir}/bird.service
 install -D -p -m 0644 %{SOURCE2} %{buildroot}%{_tmpfilesdir}/bird.conf
 install -D -p -m 0644 %{SOURCE3} %{buildroot}%{_sysusersdir}/system-user-bird.conf
 
+install -dm 755 %{buildroot}%{_sysconfdir}/pki/rpm-gpg
+cd %{SOURCE5} && install -pm 644 * %{buildroot}%{_sysconfdir}/pki/rpm-gpg/
+install -dm 755 %{buildroot}%{_sysconfdir}/yum.repos.d
+install -pm 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/yum.repos.d
+
 %check
 %if 0%{?rhel} && 0%{?rhel} < 8
 . /opt/rh/devtoolset-8/enable
@@ -148,6 +162,10 @@ getent passwd %{bird_user} >/dev/null || useradd -r -g %{bird_group} -d /var/lib
 %doc obj/doc/prog.pdf
 %endif
 
+%files repo
+%config(noreplace) %{_sysconfdir}/yum.repos.d/bird_cznic.repo
+%{_sysconfdir}/pki/rpm-gpg/*
+
 %changelog
 * {{ now }} Maria Matejka <maria.matejka@nic.cz> - {{ version }}-cznic.1
 - upstream package
diff --git a/distro/pkg/rpm/bird_cznic.repo b/distro/pkg/rpm/bird_cznic.repo
new file mode 100644 (file)
index 0000000..989d930
--- /dev/null
@@ -0,0 +1,11 @@
+[bird]
+name=bird (nic.cz)
+baseurl=https://pkg.labs.nic.cz/rpm/bird/{{ repodir }}/
+countme=1
+enabled=1
+metadata_expire=24h
+gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-network.cz
+  file:///etc/pki/rpm-gpg/RPM-GPG-KEY-maria-rsa-bird.nic.cz
+  file:///etc/pki/rpm-gpg/RPM-GPG-KEY-maria-ed25519-bird.nic.cz
+gpgcheck=1
+repo_gpgcheck=0
diff --git a/distro/pkg/rpm/keys/RPM-GPG-KEY-maria-ed25519-bird.nic.cz b/distro/pkg/rpm/keys/RPM-GPG-KEY-maria-ed25519-bird.nic.cz
new file mode 100644 (file)
index 0000000..8e51ddb
--- /dev/null
@@ -0,0 +1,17 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+
+mDMEaS3MrBYJKwYBBAHaRw8BAQdADUVQ0H2SRAidqh1+2tP0JPwvQJgICpMXZDGx
+F01rr4u0LU1hcmlhIE1hdGVqa2EgfCBDWi5OSUMgPG1hcmlhLm1hdGVqa2FAbmlj
+LmN6PoiWBBMWCgA+FiEEbvpPgojwIsUjUF8wunVvZly0GOIFAmkutz0CGwMFCQeE
+zgAFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AACgkQunVvZly0GOKTUQD9FOmJgutl
+FwcDu9BhV56Kngx81UI2aaAKOSDnOnJh7rcA+wbz0OWMvREgWuOFrAHZT+BAnMPr
+u+i5VrsAd/iKjdwPtBlNYXJpYSBNYXRlamthIDxtcUBqbXEuY3o+iJkEExYKAEEC
+GwMFCQeEzgAFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AWIQRu+k+CiPAixSNQXzC6
+dW9mXLQY4gUCaS636wIZAQAKCRC6dW9mXLQY4m+SAQDwKzKvMm+6DLcx44FNZnCv
+ta0LfF/MKz0VB3N6ayIdRAD+K5uA2HwLA+uHRub1LDStN8FNLgfi+kQI/OqUqz6B
+Ow24OARpLcysEgorBgEEAZdVAQUBAQdAkgeUYtNQjM6zMhfn6FvuyAppqmiGuYkf
+kXV6/oaZXwsDAQgHiH4EGBYKACYWIQRu+k+CiPAixSNQXzC6dW9mXLQY4gUCaS3M
+rAIbDAUJB4TOAAAKCRC6dW9mXLQY4hbvAP0c96lsx/vyT8YzOPom2ndPQfZEbsvC
++QHDRC+hXyZVTAD/dQHwozWTBJEEQv8JOEn1qQ3mFoC1PTcbN8t5UQRImwc=
+=pCaR
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/distro/pkg/rpm/keys/RPM-GPG-KEY-maria-rsa-bird.nic.cz b/distro/pkg/rpm/keys/RPM-GPG-KEY-maria-rsa-bird.nic.cz
new file mode 100644 (file)
index 0000000..ce5871f
--- /dev/null
@@ -0,0 +1,52 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+
+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
+Jg==
+=ExU0
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/distro/pkg/rpm/keys/RPM-GPG-KEY-network.cz b/distro/pkg/rpm/keys/RPM-GPG-KEY-network.cz
new file mode 100644 (file)
index 0000000..ca978db
--- /dev/null
@@ -0,0 +1,29 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1.4.11 (GNU/Linux)
+
+mQINBE8UV0sBEACuEupfHbceckFdMKpqj2xGquZGSIYkJjdT/DlugYP//zX5g7DF
+Sh062112A8fvqvKvxeudmCI5IhoTu9hShrT3gn7sPoTCSyPIOzn+XEwHFJC9vPN4
+Bu+Byeqpwsu/xP1OG9GojMQehJZYWGR3HXaIq05wlbhm2X8duXWsSY+fDwT8s+/X
+MX6FrmS82pJPNCjx5hKNC/loTGWChU4TJT7VJeDAT5d1NobBd0UKCYmfey/U+4Vv
+RQp8tYpd62jAV7oxbbltDogFHBZ4pQlTyLD220Gki2Yy6mXACDcy2VMORUn1e+09
+sxq32WL8/iqNXUFRZM04lw8cnRk6y1D+p+i7YABeuFyln4LEt0UjLsm1KSlR2xZQ
+Gk8Kr3Dw+V+1nTCadHcTDc5hboFI2QWxFaymNaywWVDzLUTfUWbT9E5o0ZjsI+Zc
+vRKZdtkO6++6P2rJRkkQITZKrpjovwKoFamhrPN66G7wxASzgOe42rpseUXYhw/k
+QTy8+5FZaQiq2kYvsGYD2aWSIfTrTJt7gNnQT3KrbMkUXdeikqOeIK+wHgxae9Ij
+kxTumPe6d3BwvQWsaWPhO9jwahD2DnkwkPKu5/P6OMxjgceBhdHXQKlBsoSIKxzS
+JgFmAIA/UqAtU+PcVeGrML6inzjleciCPTBsy8E02ioGHDgdyr/fiHzxYQARAQAB
+tC1OZXR3b3JrLkNaIFJlcG9zaXRvcnkgPHJlcG9zaXRvcnlAbmV0d29yay5jej6J
+AjgEEwECACIFAk8UV0sCGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEInn
+UGILr2MD+3kP/05tKCKGFqkXpSl/xowG73Y+4Vwi9lyeWcV1IRzF2TvEWXjDg0MO
+FH5N2RKin4Bb7Y4g06KSo/UEjxkq2lUrcMxfefXuPXuBrGE6eTjSveMU5bIFhRKd
+06Qt48hjbsiIGJLDQUueM/mnpobHdUnq4IbZ5sdruR7MF1EE0h/xStfKLRswukaX
+fxvjS0I5GYuiBEyocs5K9VCyKWm5crpr7AnRTYVkgveWgq0mSwwYIHp2OM4ITOrg
+WHq5GdFhUCGJe3AVP/KIuZOsuITjnNCnxDaVdPupnlGSyrvNLy5uTZnN+qaGcCgU
+Hrr15rJieXDNgOaDQaQNM8Cw4zgJVfLfB8a5sVqFMC64fPMGA+Y1b16fsnqPTb1r
+/biG+rSiSq+xxM8zC3hB+ABsVK/nvvhjK2o0iSzt5MOhFYPMI2MJ/qmDq3SSnseN
+B84UbANMUGSNNqqQbeJX1ovEX90BSNsUOfZBfharXqGWpcENJr0IIt8BqXIpbAyT
+MzFJkfioX/5m4G4RSaEN/gw0cH5dCypIPFaMl76pn4xbiYaxsUn3wsWaZ9FydSLJ
+2OdeWKCXwHvda4W77/e5cEj99W6FkW7CE2vYs0pDiv1V+ayNRECBY0xQG2eIWsfv
+m83S+KWR+SSS3z+4e7p50n3+cr7sBjcRxLALzNhjXBJAsdICedSFnBrO
+=Y3gM
+-----END PGP PUBLIC KEY BLOCK-----
index baf1a0813591205b3fa7c370aa444593d95dca50..1bb46642f16b670daa6a183ed0b7459cfd721824 100755 (executable)
@@ -40,6 +40,8 @@ RPMPKGSTEM=bird-$PKGVERSION
 ORIG=$(pwd)
 DIRTARGET=$($LSB_RELEASE -is)-$($LSB_RELEASE -rs | tr '/' '-')
 DIRTARGET=${DIRTARGET,,}
+REPODIR=$($LSB_RELEASE -is)/$($LSB_RELEASE -rs)/$(uname -m)
+REPODIR=${REPODIR,,}
 SRCTARGET=${ORIG}/pkg/srcpkgs/$DIRTARGET/$RPMPKGSTEM-cznic.1/
 BINTARGET=${ORIG}/pkg/pkgs/$DIRTARGET/$RPMPKGSTEM-cznic.1/
 
@@ -59,8 +61,9 @@ $LSB_RELEASE -a
 mkdir -p $SRCTARGET $BINTARGET
 mkdir -p $TMPDIR/SOURCES $TMPDIR/BUILD/$RPMPKGSTEM-build
 
-cp distro/pkg/rpm/* $TMPDIR/SOURCES/
+cp -r distro/pkg/rpm/* $TMPDIR/SOURCES/
 sed -i "s#{{ version }}#$PKGVERSION#;s#{{ now }}#$(date +'%a %b %d %Y')#;" $TMPDIR/SOURCES/bird.spec
+sed -i "s#{{ repodir }}#$REPODIR#;" $TMPDIR/SOURCES/bird_cznic.repo
 
 cp bird-$PKGVERSION.tar.gz $TMPDIR/SOURCES/$RPMPKGSTEM.tar.gz
 pushd $TMPDIR/SOURCES