From a5124cb261c4c06ed0227ec4541349fa3cce91aa Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Tue, 11 Apr 2023 16:01:35 +0000 Subject: automatic import of python-rpmfile --- .gitignore | 1 + python-rpmfile.spec | 415 ++++++++++++++++++++++++++++++++++++++++++++++++++++ sources | 1 + 3 files changed, 417 insertions(+) create mode 100644 python-rpmfile.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore index e69de29..eb6cec6 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/rpmfile-1.1.1.tar.gz diff --git a/python-rpmfile.spec b/python-rpmfile.spec new file mode 100644 index 0000000..f85ccdd --- /dev/null +++ b/python-rpmfile.spec @@ -0,0 +1,415 @@ +%global _empty_manifest_terminate_build 0 +Name: python-rpmfile +Version: 1.1.1 +Release: 1 +Summary: Read rpm archive files +License: MIT +URL: https://github.com/srossross/rpmfile +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/df/a1/4ef3aba6c4c23e38b0ec766f0cd01c9db4abbe6febaa557b47541dc18000/rpmfile-1.1.1.tar.gz +BuildArch: noarch + +Requires: python3-zstandard + +%description +# rpmfile + +[![Build Status](https://travis-ci.org/srossross/rpmfile.svg?branch=master)](https://travis-ci.org/srossross/rpmfile) +[![Actions Status](https://github.com/srossross/rpmfile/workflows/Tests/badge.svg?branch=master&event=push)](https://github.com/srossross/rpmfile/actions) +[![PyPI version](https://img.shields.io/pypi/v/rpmfile.svg)](https://pypi.org/project/rpmfile) + +Tools for inspecting RPM files in python. This module is modeled after the +[tarfile](https://docs.python.org/3/library/tarfile.html) module. + +## Install + +```console +$ python -m pip install -U rpmfile +``` + +If you want to use `rpmfile` with `zstd` compressed rpms, you'll need to install +the [zstandard](https://pypi.org/project/zstandard/) module. + +`zstd` also requires that you are using Python >= 3.5 + +```console +$ python -m pip install -U zstandard +``` + +## Example + +See the [tests](tests/test_extract.py) for more examples. + +```python +import rpmfile + +with rpmfile.open('file.rpm') as rpm: + + # Inspect the RPM headers + print(rpm.headers.keys()) + print(rpm.headers.get('arch', 'noarch')) + + # Extract a fileobject from the archive + fd = rpm.extractfile('./usr/bin/script') + print(fd.read()) + + for member in rpm.getmembers(): + print(member) +``` + +## Command line usage + +You can use `rpmfile` via it's module invocation or via `rpmfile` command if +your `PATH` environment variable is configured correctly. Pass `--help` for all +options. + +List RPM contents + +```conosle +curl -sfL 'https://example.com/some.rpm.gz' | gzip -d - | python -m rpmfile -l - +./path/to/file +``` + +Extract files + +```conosle +curl -sfL 'https://example.com/some.rpm.gz' | gzip -d - | rpmfile -xv - +./path/to/file +``` + +Extract files to directory + +```conosle +curl -sfL 'https://example.com/some.rpm.gz' | gzip -d - | rpmfile -xvC /tmp - +/tmp/path/to/file +``` + +Display RPM information (similar to command `rpm -qip` in Linux) + +```conosle +curl -sfL 'https://example.com/some.rpm.gz' |gzip -d - | rpmfile -i - +Name : something +Version : 1.02 +Release : 1 +Architecture: noarch +Group : default +Size : 1234 +License : BSD +Signature : None +Source RPM : some.src.rpm +Build Date : Tue Apr 9 08:55:16 2019 +Build Host : demo +URL : http://example.com/some +Summary : Example of something +Description : +The description of something. +It can display more than one line. +``` + + +## Classes + +* rpmfile.RPMFile: The RPMFile object provides an interface to a RPM archive +* rpmfile.RPMInfo: An RPMInfo object represents one member in a RPMFile. + +## Contributing + +The [black](https://github.com/psf/black) formater should be used on all files +before submitting a contribution. Version 19.10b0. + +```console +$ pip install black==19.10b0 +$ black . +``` + +## Code in this module was borrowed from: + +* https://bitbucket.org/krp/cpiofile +* https://github.com/mjvm/pyrpm + + +%package -n python3-rpmfile +Summary: Read rpm archive files +Provides: python-rpmfile +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-rpmfile +# rpmfile + +[![Build Status](https://travis-ci.org/srossross/rpmfile.svg?branch=master)](https://travis-ci.org/srossross/rpmfile) +[![Actions Status](https://github.com/srossross/rpmfile/workflows/Tests/badge.svg?branch=master&event=push)](https://github.com/srossross/rpmfile/actions) +[![PyPI version](https://img.shields.io/pypi/v/rpmfile.svg)](https://pypi.org/project/rpmfile) + +Tools for inspecting RPM files in python. This module is modeled after the +[tarfile](https://docs.python.org/3/library/tarfile.html) module. + +## Install + +```console +$ python -m pip install -U rpmfile +``` + +If you want to use `rpmfile` with `zstd` compressed rpms, you'll need to install +the [zstandard](https://pypi.org/project/zstandard/) module. + +`zstd` also requires that you are using Python >= 3.5 + +```console +$ python -m pip install -U zstandard +``` + +## Example + +See the [tests](tests/test_extract.py) for more examples. + +```python +import rpmfile + +with rpmfile.open('file.rpm') as rpm: + + # Inspect the RPM headers + print(rpm.headers.keys()) + print(rpm.headers.get('arch', 'noarch')) + + # Extract a fileobject from the archive + fd = rpm.extractfile('./usr/bin/script') + print(fd.read()) + + for member in rpm.getmembers(): + print(member) +``` + +## Command line usage + +You can use `rpmfile` via it's module invocation or via `rpmfile` command if +your `PATH` environment variable is configured correctly. Pass `--help` for all +options. + +List RPM contents + +```conosle +curl -sfL 'https://example.com/some.rpm.gz' | gzip -d - | python -m rpmfile -l - +./path/to/file +``` + +Extract files + +```conosle +curl -sfL 'https://example.com/some.rpm.gz' | gzip -d - | rpmfile -xv - +./path/to/file +``` + +Extract files to directory + +```conosle +curl -sfL 'https://example.com/some.rpm.gz' | gzip -d - | rpmfile -xvC /tmp - +/tmp/path/to/file +``` + +Display RPM information (similar to command `rpm -qip` in Linux) + +```conosle +curl -sfL 'https://example.com/some.rpm.gz' |gzip -d - | rpmfile -i - +Name : something +Version : 1.02 +Release : 1 +Architecture: noarch +Group : default +Size : 1234 +License : BSD +Signature : None +Source RPM : some.src.rpm +Build Date : Tue Apr 9 08:55:16 2019 +Build Host : demo +URL : http://example.com/some +Summary : Example of something +Description : +The description of something. +It can display more than one line. +``` + + +## Classes + +* rpmfile.RPMFile: The RPMFile object provides an interface to a RPM archive +* rpmfile.RPMInfo: An RPMInfo object represents one member in a RPMFile. + +## Contributing + +The [black](https://github.com/psf/black) formater should be used on all files +before submitting a contribution. Version 19.10b0. + +```console +$ pip install black==19.10b0 +$ black . +``` + +## Code in this module was borrowed from: + +* https://bitbucket.org/krp/cpiofile +* https://github.com/mjvm/pyrpm + + +%package help +Summary: Development documents and examples for rpmfile +Provides: python3-rpmfile-doc +%description help +# rpmfile + +[![Build Status](https://travis-ci.org/srossross/rpmfile.svg?branch=master)](https://travis-ci.org/srossross/rpmfile) +[![Actions Status](https://github.com/srossross/rpmfile/workflows/Tests/badge.svg?branch=master&event=push)](https://github.com/srossross/rpmfile/actions) +[![PyPI version](https://img.shields.io/pypi/v/rpmfile.svg)](https://pypi.org/project/rpmfile) + +Tools for inspecting RPM files in python. This module is modeled after the +[tarfile](https://docs.python.org/3/library/tarfile.html) module. + +## Install + +```console +$ python -m pip install -U rpmfile +``` + +If you want to use `rpmfile` with `zstd` compressed rpms, you'll need to install +the [zstandard](https://pypi.org/project/zstandard/) module. + +`zstd` also requires that you are using Python >= 3.5 + +```console +$ python -m pip install -U zstandard +``` + +## Example + +See the [tests](tests/test_extract.py) for more examples. + +```python +import rpmfile + +with rpmfile.open('file.rpm') as rpm: + + # Inspect the RPM headers + print(rpm.headers.keys()) + print(rpm.headers.get('arch', 'noarch')) + + # Extract a fileobject from the archive + fd = rpm.extractfile('./usr/bin/script') + print(fd.read()) + + for member in rpm.getmembers(): + print(member) +``` + +## Command line usage + +You can use `rpmfile` via it's module invocation or via `rpmfile` command if +your `PATH` environment variable is configured correctly. Pass `--help` for all +options. + +List RPM contents + +```conosle +curl -sfL 'https://example.com/some.rpm.gz' | gzip -d - | python -m rpmfile -l - +./path/to/file +``` + +Extract files + +```conosle +curl -sfL 'https://example.com/some.rpm.gz' | gzip -d - | rpmfile -xv - +./path/to/file +``` + +Extract files to directory + +```conosle +curl -sfL 'https://example.com/some.rpm.gz' | gzip -d - | rpmfile -xvC /tmp - +/tmp/path/to/file +``` + +Display RPM information (similar to command `rpm -qip` in Linux) + +```conosle +curl -sfL 'https://example.com/some.rpm.gz' |gzip -d - | rpmfile -i - +Name : something +Version : 1.02 +Release : 1 +Architecture: noarch +Group : default +Size : 1234 +License : BSD +Signature : None +Source RPM : some.src.rpm +Build Date : Tue Apr 9 08:55:16 2019 +Build Host : demo +URL : http://example.com/some +Summary : Example of something +Description : +The description of something. +It can display more than one line. +``` + + +## Classes + +* rpmfile.RPMFile: The RPMFile object provides an interface to a RPM archive +* rpmfile.RPMInfo: An RPMInfo object represents one member in a RPMFile. + +## Contributing + +The [black](https://github.com/psf/black) formater should be used on all files +before submitting a contribution. Version 19.10b0. + +```console +$ pip install black==19.10b0 +$ black . +``` + +## Code in this module was borrowed from: + +* https://bitbucket.org/krp/cpiofile +* https://github.com/mjvm/pyrpm + + +%prep +%autosetup -n rpmfile-1.1.1 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-rpmfile -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Tue Apr 11 2023 Python_Bot - 1.1.1-1 +- Package Spec generated diff --git a/sources b/sources new file mode 100644 index 0000000..05594ce --- /dev/null +++ b/sources @@ -0,0 +1 @@ +1827aa3096833dbea55d21d2a7c3f849 rpmfile-1.1.1.tar.gz -- cgit v1.2.3