PyCA's cryptography library
d387ba975f
The macro /usr/lib/rpm/macros.d/macros.rust-toolset is needed to fix %cargo_prep: + %cargo_prep -V 1 /var/tmp/rpm-tmp.HSVni1: line 54: fg: no job control error: Bad exit status from /var/tmp/rpm-tmp.HSVni1 (%prep) Bad exit status from /var/tmp/rpm-tmp.HSVni1 (%prep) Fixes: FREEIPA-11477 Signed-off-by: Francisco Trivino <ftrivino@redhat.com> |
||
---|---|---|
tests | ||
.gitignore | ||
11328.patch | ||
changelog | ||
conftest-skipper.py | ||
gating.yaml | ||
python-cryptography.spec | ||
README.md | ||
sources | ||
vendor_rust.py |
PyCA cryptography
https://cryptography.io/en/latest/
Packaging python-cryptography
The example assumes
- Fedora Rawhide (f34)
- PyCA cryptography release
3.4
- Update Bugzilla issue is
RHBZ#00000001
Build new python-cryptography
Switch and update branch
fedpkg switch-branch rawhide
fedpkg pull
Bump version and get sources
rpmdev-bumpspec -c "Update to 3.4 (#00000001)" -n 3.4 python-cryptography.spec
spectool -gf python-cryptography.spec
Upload new source
fedpkg new-sources cryptography-3.4.tar.gz
Commit changes
fedpkg commit --clog
fedpkg push
Build
fedpkg build
RHEL/CentOS builds
RHEL and CentOS use a different approach for Rust crates packaging than
Fedora. On Fedora Rust dependencies are packaged as RPMs, e.g.
rust-pyo3+default-devel
RPM. These packages don't exist on RHEL and
CentOS. Instead python-cryptography uses a tar ball with vendored crates.
The tar ball is created by a script:
./vendor_rust.py
rhpkg upload cryptography-3.4-vendor.tar.bz2