diff options
author | CoprDistGit <infra@openeuler.org> | 2023-04-11 19:53:36 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-04-11 19:53:36 +0000 |
commit | f0fc77d76182f6b398fa004a8ca4669b0c958879 (patch) | |
tree | b24642162a68516d621af036afc0e200f235f790 | |
parent | b0e1331ac671cf2d0d1406928162b5c38b77d1e7 (diff) |
automatic import of python-dkimpy
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-dkimpy.spec | 774 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 776 insertions, 0 deletions
@@ -0,0 +1 @@ +/dkimpy-1.1.2.tar.gz diff --git a/python-dkimpy.spec b/python-dkimpy.spec new file mode 100644 index 0000000..a88ea55 --- /dev/null +++ b/python-dkimpy.spec @@ -0,0 +1,774 @@ +%global _empty_manifest_terminate_build 0 +Name: python-dkimpy +Version: 1.1.2 +Release: 1 +Summary: DKIM (DomainKeys Identified Mail), ARC (Authenticated Receive Chain), and TLSRPT (TLS Report) email signing and verification +License: BSD-like +URL: https://launchpad.net/dkimpy +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/e9/fa/d220babf87bc638cd36b289f4da42300108d40203759bbc7cc20a95db605/dkimpy-1.1.2.tar.gz +BuildArch: noarch + + +%description +dkimpy - DKIM (DomainKeys Identified Mail) +https://launchpad.net/dkimpy/ + +Friendly fork of: +http://hewgill.com/pydkim/ + +# INTRODUCTION + +dkimpy is a library that implements DKIM (DomainKeys Identified Mail) email +signing and verification. Basic DKIM requirements are defined in RFC 6376: + +https://tools.ietf.org/html/rfc6376 + +# VERSION + +This is dkimpy 1.1.2. + +# REQUIREMENTS + +Dependencies will be automatically included for normal DKIM usage. The +extras_requires feature 'ed25519' will add the dependencies needed for signing +and verifying using the new DCRUP ed25519-sha256 algorithm. The +extras_requires feature 'ARC' will add the extra dependencies needed for ARC. +Similarly, extras_requires feature 'asyncio' will add the extra dependencies +needed for asyncio. + + - Python 3.x >= 3.5. Recent versions have not been on python3 < 3.4, but + may still work on earlier python3 versions. + - dnspython or py3dns. dnspython is preferred if both are present and + installed to satisfy the DNS module requirement if neither are installed. + - authres. Needed for ARC. + - PyNaCl. Needed for use of ed25519 capability. + - aiodns. Needed for asycnio (Requires python3.5 or later) + +# INSTALLATION + +This package includes a scripts and man pages. For those to be installed when +installing using setup.py, the following incantation is required because +setuptools developers decided not being able to do this by default is a +feature: + +```python3 setup.py install --single-version-externally-managed --record=/dev/null``` + +# DOCUMENTATION + +An online version of the package documentation for the most recent release can +be found at: + +https://pymilter.org/pydkim/ + +# TESTING + +To run dkimpy's test suite: + +```PYTHONPATH=. python3 dkim``` + +or + +```python3 test.py``` + +or + +```PYTHONPATH=. python3 -m unittest dkim.tests.test_suite``` + + +Alternatively, if you have testrepository installed: + +```testr init``` + +```testr run``` + +You should install all optional dependencies required for the test suite, e.g. +by creating a virtualenv and using: + +```pip install -e '.[testing]'``` + +The included ARC tests are very limited. The primary testing method for ARC +is using the ARC test suite: https://github.com/ValiMail/arc_test_suite + +As of 0.6.0, all tests pass for both python2.7 and python3. The test suite + ships with test runners for dkimpy. After downloading the test suite, you + can run the signing and validation tests like this: + +```python3 ./testarc.py sign runners/arcsigntest.py``` +```python3 ./testarc.py validate runners/arcverifytest.py``` + +As ov version 1.1.0, python2.7 is no longer supported. + +# USAGE + +The dkimpy library offers one module called dkim. The sign() function takes an +RFC822 formatted message, along with some signing options, and returns a +DKIM-Signature header line that can be prepended to the message. The verify() +function takes an RFC822 formatted message, and returns True or False depending +on whether the signature verifies correctly. There is also a DKIM class which +can be used to perform these functions in a more modern way. + +In version 0.9.0, the default set of header fields that are oversigned was +changed from 'from', 'subject', 'date' to 'from' to reduce fragility of +signatures. To restore the previous behavior, you can add them back after +instantiating your DKIM class using the add_frozen function as shown in the +following example: + +```python +>>> dkim = DKIM() +>>> dkim.add_frozen((b'date',b'subject')) +>>> [text(x) for x in sorted(dkim.frozen_sign)] +['date', 'from', 'subject'] +``` + +## DKIM RSA MODERNIZATION (RFC 8301) + +RFC8301 updated DKIM requirements in two ways: + +1. It set the minimum valid RSA key size to 1024 bits. +2. It removed use of rsa-sha1. + +As of version 0.7, the dkimpy defaults largely support these requirements. + +It is possible to override the minimum key size to a lower value, but this is +strongly discouraged. As of 2018, keys much smaller than the minimum are not +difficult to factor. + +The code for rsa-sha1 signing and verification is retained, but not used for +signing by default. Future releases will raise warnings and then errors when +verifying rsa-sha1 signatures. There are still some significant users of +rsa-sha1 signatures, so operationally it's premature to disable verification +of rsa-sha1. + +## ED25519 (RFC 8463) SUPPORT + +As of version 0.7, experimental signing and verifying of DKIM Ed25519 +signatures is supported as described in draft-ietf-dcrup-dkim-crypto: + +https://datatracker.ietf.org/doc/draft-ietf-dcrup-dkim-crypto/ + +The RFC that documents ed25519 DKIM signatures, RFC 8463, has been released +and dkimpy 0.7 and later are aligned to its requirements. As of 0.8, ed25519 +need not be considered experimental. The dkimpy implementation has +successfully interoperated with three other implementations and the technical +parameters for ed25519-sha256 are defined and stable. + +To install from pypi with the required optional depenencies, use the ed25519 +option: + +```pip install -e '.[ed25519]'``` + +## DKIM SCRIPTS + +Three helper programs are also supplied: dknewkey, dkimsign and +dkimverify + +dknewkey is s script that produces private and public key pairs suitable +for use with DKIM. Note that the private key file format used for ed25519 is +not standardized (there is no standard) and is unique to dkimpy. + +dkimsign is a filter that reads an RFC822 message on standard input, and +writes the same message on standard output with a DKIM-Signature line +prepended. The signing options are specified on the command line: + +dkimsign selector domain privatekeyfile [identity] + +The identity is optional and defaults to "@domain". + +dkimverify reads an RFC822 message on standard input, and returns with exit +code 0 if the signature verifies successfully. Otherwise, it returns with exit +code 1. + +## ARC (Authenticated Receive Chain) + +As of version 0.6.0, dkimpy provides experimental support for ARC (Authenticated +Received Chain). See RFC 8617 for the current version of ARC: + +https://tools.ietf.org/html/rfc8617 + +In addition to arcsign and arcverify, the dkim module now provides +arc_sign and arc_verify functions as well as an ARC class. + +If an invalid authentication results header field is included in the set for +ARC, it is ignored and no error is raised. + +Both DKIM ed25519 and ARC are now considered stable (no longer experimantal). + +## ASYNC SUPPORT + +As of version 1.0, an alternative to dkim.verify for use in an async +environment is provied. It requires aiodns, https://pypi.org/project/aiodns/. +Here is a simple example of dkim.verify_async usage: + +```python +>>> sys.stdin = sys.stdin.detach() +>>> +>>> async def main(): +>>> res = await dkim.verify_async(message) +>>> return res +>>> +>>> if __name__ == "__main__": +>>> res = asyncio.run(main()) +``` + +This feature requires python3.5 or newer. + +If aiodns is available, the async functions will be used. To avoide async +when aiodns is availale, set dkim.USE_ASYNC = False. + +## TLSRPT (TLS Report) + +As of version 1.0, the RFC 8460 tlsrpt service type is supported: + +https://tools.ietf.org/html/rfc8460 + +A non-tlsrpt signed with a key record with s=tlsrpt won't verify. Since the +service type (s=) is optional in the DKIM public key record, it is not +required by RFC 8460. When checking for a tlsrpt signature, set the tlsrpt= +flag when verifying the signature: + +```python +>>> res = dkim.verify(smessage, tlsrpt='strict') +``` + +If tlsrpt='strict', only public key records with s=tlsrpt will be considered +valid. If set to tlsrpt=True, the service type is not required, but other +RFC 8460 requirements are applied. + +# LIMITATIONS + +Dkimpy will correctly sign/verify messages with ASCII or UTF-8 content. +Messages that contain other types of content will not verify correctly. It +does not yet implement RFC 8616, Email Authentication for Internationalized +Mail. + +# FEEDBACK + +Bug reports may be submitted to the bug tracker for the dkimpy project on +launchpad. + +%package -n python3-dkimpy +Summary: DKIM (DomainKeys Identified Mail), ARC (Authenticated Receive Chain), and TLSRPT (TLS Report) email signing and verification +Provides: python-dkimpy +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-dkimpy +dkimpy - DKIM (DomainKeys Identified Mail) +https://launchpad.net/dkimpy/ + +Friendly fork of: +http://hewgill.com/pydkim/ + +# INTRODUCTION + +dkimpy is a library that implements DKIM (DomainKeys Identified Mail) email +signing and verification. Basic DKIM requirements are defined in RFC 6376: + +https://tools.ietf.org/html/rfc6376 + +# VERSION + +This is dkimpy 1.1.2. + +# REQUIREMENTS + +Dependencies will be automatically included for normal DKIM usage. The +extras_requires feature 'ed25519' will add the dependencies needed for signing +and verifying using the new DCRUP ed25519-sha256 algorithm. The +extras_requires feature 'ARC' will add the extra dependencies needed for ARC. +Similarly, extras_requires feature 'asyncio' will add the extra dependencies +needed for asyncio. + + - Python 3.x >= 3.5. Recent versions have not been on python3 < 3.4, but + may still work on earlier python3 versions. + - dnspython or py3dns. dnspython is preferred if both are present and + installed to satisfy the DNS module requirement if neither are installed. + - authres. Needed for ARC. + - PyNaCl. Needed for use of ed25519 capability. + - aiodns. Needed for asycnio (Requires python3.5 or later) + +# INSTALLATION + +This package includes a scripts and man pages. For those to be installed when +installing using setup.py, the following incantation is required because +setuptools developers decided not being able to do this by default is a +feature: + +```python3 setup.py install --single-version-externally-managed --record=/dev/null``` + +# DOCUMENTATION + +An online version of the package documentation for the most recent release can +be found at: + +https://pymilter.org/pydkim/ + +# TESTING + +To run dkimpy's test suite: + +```PYTHONPATH=. python3 dkim``` + +or + +```python3 test.py``` + +or + +```PYTHONPATH=. python3 -m unittest dkim.tests.test_suite``` + + +Alternatively, if you have testrepository installed: + +```testr init``` + +```testr run``` + +You should install all optional dependencies required for the test suite, e.g. +by creating a virtualenv and using: + +```pip install -e '.[testing]'``` + +The included ARC tests are very limited. The primary testing method for ARC +is using the ARC test suite: https://github.com/ValiMail/arc_test_suite + +As of 0.6.0, all tests pass for both python2.7 and python3. The test suite + ships with test runners for dkimpy. After downloading the test suite, you + can run the signing and validation tests like this: + +```python3 ./testarc.py sign runners/arcsigntest.py``` +```python3 ./testarc.py validate runners/arcverifytest.py``` + +As ov version 1.1.0, python2.7 is no longer supported. + +# USAGE + +The dkimpy library offers one module called dkim. The sign() function takes an +RFC822 formatted message, along with some signing options, and returns a +DKIM-Signature header line that can be prepended to the message. The verify() +function takes an RFC822 formatted message, and returns True or False depending +on whether the signature verifies correctly. There is also a DKIM class which +can be used to perform these functions in a more modern way. + +In version 0.9.0, the default set of header fields that are oversigned was +changed from 'from', 'subject', 'date' to 'from' to reduce fragility of +signatures. To restore the previous behavior, you can add them back after +instantiating your DKIM class using the add_frozen function as shown in the +following example: + +```python +>>> dkim = DKIM() +>>> dkim.add_frozen((b'date',b'subject')) +>>> [text(x) for x in sorted(dkim.frozen_sign)] +['date', 'from', 'subject'] +``` + +## DKIM RSA MODERNIZATION (RFC 8301) + +RFC8301 updated DKIM requirements in two ways: + +1. It set the minimum valid RSA key size to 1024 bits. +2. It removed use of rsa-sha1. + +As of version 0.7, the dkimpy defaults largely support these requirements. + +It is possible to override the minimum key size to a lower value, but this is +strongly discouraged. As of 2018, keys much smaller than the minimum are not +difficult to factor. + +The code for rsa-sha1 signing and verification is retained, but not used for +signing by default. Future releases will raise warnings and then errors when +verifying rsa-sha1 signatures. There are still some significant users of +rsa-sha1 signatures, so operationally it's premature to disable verification +of rsa-sha1. + +## ED25519 (RFC 8463) SUPPORT + +As of version 0.7, experimental signing and verifying of DKIM Ed25519 +signatures is supported as described in draft-ietf-dcrup-dkim-crypto: + +https://datatracker.ietf.org/doc/draft-ietf-dcrup-dkim-crypto/ + +The RFC that documents ed25519 DKIM signatures, RFC 8463, has been released +and dkimpy 0.7 and later are aligned to its requirements. As of 0.8, ed25519 +need not be considered experimental. The dkimpy implementation has +successfully interoperated with three other implementations and the technical +parameters for ed25519-sha256 are defined and stable. + +To install from pypi with the required optional depenencies, use the ed25519 +option: + +```pip install -e '.[ed25519]'``` + +## DKIM SCRIPTS + +Three helper programs are also supplied: dknewkey, dkimsign and +dkimverify + +dknewkey is s script that produces private and public key pairs suitable +for use with DKIM. Note that the private key file format used for ed25519 is +not standardized (there is no standard) and is unique to dkimpy. + +dkimsign is a filter that reads an RFC822 message on standard input, and +writes the same message on standard output with a DKIM-Signature line +prepended. The signing options are specified on the command line: + +dkimsign selector domain privatekeyfile [identity] + +The identity is optional and defaults to "@domain". + +dkimverify reads an RFC822 message on standard input, and returns with exit +code 0 if the signature verifies successfully. Otherwise, it returns with exit +code 1. + +## ARC (Authenticated Receive Chain) + +As of version 0.6.0, dkimpy provides experimental support for ARC (Authenticated +Received Chain). See RFC 8617 for the current version of ARC: + +https://tools.ietf.org/html/rfc8617 + +In addition to arcsign and arcverify, the dkim module now provides +arc_sign and arc_verify functions as well as an ARC class. + +If an invalid authentication results header field is included in the set for +ARC, it is ignored and no error is raised. + +Both DKIM ed25519 and ARC are now considered stable (no longer experimantal). + +## ASYNC SUPPORT + +As of version 1.0, an alternative to dkim.verify for use in an async +environment is provied. It requires aiodns, https://pypi.org/project/aiodns/. +Here is a simple example of dkim.verify_async usage: + +```python +>>> sys.stdin = sys.stdin.detach() +>>> +>>> async def main(): +>>> res = await dkim.verify_async(message) +>>> return res +>>> +>>> if __name__ == "__main__": +>>> res = asyncio.run(main()) +``` + +This feature requires python3.5 or newer. + +If aiodns is available, the async functions will be used. To avoide async +when aiodns is availale, set dkim.USE_ASYNC = False. + +## TLSRPT (TLS Report) + +As of version 1.0, the RFC 8460 tlsrpt service type is supported: + +https://tools.ietf.org/html/rfc8460 + +A non-tlsrpt signed with a key record with s=tlsrpt won't verify. Since the +service type (s=) is optional in the DKIM public key record, it is not +required by RFC 8460. When checking for a tlsrpt signature, set the tlsrpt= +flag when verifying the signature: + +```python +>>> res = dkim.verify(smessage, tlsrpt='strict') +``` + +If tlsrpt='strict', only public key records with s=tlsrpt will be considered +valid. If set to tlsrpt=True, the service type is not required, but other +RFC 8460 requirements are applied. + +# LIMITATIONS + +Dkimpy will correctly sign/verify messages with ASCII or UTF-8 content. +Messages that contain other types of content will not verify correctly. It +does not yet implement RFC 8616, Email Authentication for Internationalized +Mail. + +# FEEDBACK + +Bug reports may be submitted to the bug tracker for the dkimpy project on +launchpad. + +%package help +Summary: Development documents and examples for dkimpy +Provides: python3-dkimpy-doc +%description help +dkimpy - DKIM (DomainKeys Identified Mail) +https://launchpad.net/dkimpy/ + +Friendly fork of: +http://hewgill.com/pydkim/ + +# INTRODUCTION + +dkimpy is a library that implements DKIM (DomainKeys Identified Mail) email +signing and verification. Basic DKIM requirements are defined in RFC 6376: + +https://tools.ietf.org/html/rfc6376 + +# VERSION + +This is dkimpy 1.1.2. + +# REQUIREMENTS + +Dependencies will be automatically included for normal DKIM usage. The +extras_requires feature 'ed25519' will add the dependencies needed for signing +and verifying using the new DCRUP ed25519-sha256 algorithm. The +extras_requires feature 'ARC' will add the extra dependencies needed for ARC. +Similarly, extras_requires feature 'asyncio' will add the extra dependencies +needed for asyncio. + + - Python 3.x >= 3.5. Recent versions have not been on python3 < 3.4, but + may still work on earlier python3 versions. + - dnspython or py3dns. dnspython is preferred if both are present and + installed to satisfy the DNS module requirement if neither are installed. + - authres. Needed for ARC. + - PyNaCl. Needed for use of ed25519 capability. + - aiodns. Needed for asycnio (Requires python3.5 or later) + +# INSTALLATION + +This package includes a scripts and man pages. For those to be installed when +installing using setup.py, the following incantation is required because +setuptools developers decided not being able to do this by default is a +feature: + +```python3 setup.py install --single-version-externally-managed --record=/dev/null``` + +# DOCUMENTATION + +An online version of the package documentation for the most recent release can +be found at: + +https://pymilter.org/pydkim/ + +# TESTING + +To run dkimpy's test suite: + +```PYTHONPATH=. python3 dkim``` + +or + +```python3 test.py``` + +or + +```PYTHONPATH=. python3 -m unittest dkim.tests.test_suite``` + + +Alternatively, if you have testrepository installed: + +```testr init``` + +```testr run``` + +You should install all optional dependencies required for the test suite, e.g. +by creating a virtualenv and using: + +```pip install -e '.[testing]'``` + +The included ARC tests are very limited. The primary testing method for ARC +is using the ARC test suite: https://github.com/ValiMail/arc_test_suite + +As of 0.6.0, all tests pass for both python2.7 and python3. The test suite + ships with test runners for dkimpy. After downloading the test suite, you + can run the signing and validation tests like this: + +```python3 ./testarc.py sign runners/arcsigntest.py``` +```python3 ./testarc.py validate runners/arcverifytest.py``` + +As ov version 1.1.0, python2.7 is no longer supported. + +# USAGE + +The dkimpy library offers one module called dkim. The sign() function takes an +RFC822 formatted message, along with some signing options, and returns a +DKIM-Signature header line that can be prepended to the message. The verify() +function takes an RFC822 formatted message, and returns True or False depending +on whether the signature verifies correctly. There is also a DKIM class which +can be used to perform these functions in a more modern way. + +In version 0.9.0, the default set of header fields that are oversigned was +changed from 'from', 'subject', 'date' to 'from' to reduce fragility of +signatures. To restore the previous behavior, you can add them back after +instantiating your DKIM class using the add_frozen function as shown in the +following example: + +```python +>>> dkim = DKIM() +>>> dkim.add_frozen((b'date',b'subject')) +>>> [text(x) for x in sorted(dkim.frozen_sign)] +['date', 'from', 'subject'] +``` + +## DKIM RSA MODERNIZATION (RFC 8301) + +RFC8301 updated DKIM requirements in two ways: + +1. It set the minimum valid RSA key size to 1024 bits. +2. It removed use of rsa-sha1. + +As of version 0.7, the dkimpy defaults largely support these requirements. + +It is possible to override the minimum key size to a lower value, but this is +strongly discouraged. As of 2018, keys much smaller than the minimum are not +difficult to factor. + +The code for rsa-sha1 signing and verification is retained, but not used for +signing by default. Future releases will raise warnings and then errors when +verifying rsa-sha1 signatures. There are still some significant users of +rsa-sha1 signatures, so operationally it's premature to disable verification +of rsa-sha1. + +## ED25519 (RFC 8463) SUPPORT + +As of version 0.7, experimental signing and verifying of DKIM Ed25519 +signatures is supported as described in draft-ietf-dcrup-dkim-crypto: + +https://datatracker.ietf.org/doc/draft-ietf-dcrup-dkim-crypto/ + +The RFC that documents ed25519 DKIM signatures, RFC 8463, has been released +and dkimpy 0.7 and later are aligned to its requirements. As of 0.8, ed25519 +need not be considered experimental. The dkimpy implementation has +successfully interoperated with three other implementations and the technical +parameters for ed25519-sha256 are defined and stable. + +To install from pypi with the required optional depenencies, use the ed25519 +option: + +```pip install -e '.[ed25519]'``` + +## DKIM SCRIPTS + +Three helper programs are also supplied: dknewkey, dkimsign and +dkimverify + +dknewkey is s script that produces private and public key pairs suitable +for use with DKIM. Note that the private key file format used for ed25519 is +not standardized (there is no standard) and is unique to dkimpy. + +dkimsign is a filter that reads an RFC822 message on standard input, and +writes the same message on standard output with a DKIM-Signature line +prepended. The signing options are specified on the command line: + +dkimsign selector domain privatekeyfile [identity] + +The identity is optional and defaults to "@domain". + +dkimverify reads an RFC822 message on standard input, and returns with exit +code 0 if the signature verifies successfully. Otherwise, it returns with exit +code 1. + +## ARC (Authenticated Receive Chain) + +As of version 0.6.0, dkimpy provides experimental support for ARC (Authenticated +Received Chain). See RFC 8617 for the current version of ARC: + +https://tools.ietf.org/html/rfc8617 + +In addition to arcsign and arcverify, the dkim module now provides +arc_sign and arc_verify functions as well as an ARC class. + +If an invalid authentication results header field is included in the set for +ARC, it is ignored and no error is raised. + +Both DKIM ed25519 and ARC are now considered stable (no longer experimantal). + +## ASYNC SUPPORT + +As of version 1.0, an alternative to dkim.verify for use in an async +environment is provied. It requires aiodns, https://pypi.org/project/aiodns/. +Here is a simple example of dkim.verify_async usage: + +```python +>>> sys.stdin = sys.stdin.detach() +>>> +>>> async def main(): +>>> res = await dkim.verify_async(message) +>>> return res +>>> +>>> if __name__ == "__main__": +>>> res = asyncio.run(main()) +``` + +This feature requires python3.5 or newer. + +If aiodns is available, the async functions will be used. To avoide async +when aiodns is availale, set dkim.USE_ASYNC = False. + +## TLSRPT (TLS Report) + +As of version 1.0, the RFC 8460 tlsrpt service type is supported: + +https://tools.ietf.org/html/rfc8460 + +A non-tlsrpt signed with a key record with s=tlsrpt won't verify. Since the +service type (s=) is optional in the DKIM public key record, it is not +required by RFC 8460. When checking for a tlsrpt signature, set the tlsrpt= +flag when verifying the signature: + +```python +>>> res = dkim.verify(smessage, tlsrpt='strict') +``` + +If tlsrpt='strict', only public key records with s=tlsrpt will be considered +valid. If set to tlsrpt=True, the service type is not required, but other +RFC 8460 requirements are applied. + +# LIMITATIONS + +Dkimpy will correctly sign/verify messages with ASCII or UTF-8 content. +Messages that contain other types of content will not verify correctly. It +does not yet implement RFC 8616, Email Authentication for Internationalized +Mail. + +# FEEDBACK + +Bug reports may be submitted to the bug tracker for the dkimpy project on +launchpad. + +%prep +%autosetup -n dkimpy-1.1.2 + +%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-dkimpy -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Tue Apr 11 2023 Python_Bot <Python_Bot@openeuler.org> - 1.1.2-1 +- Package Spec generated @@ -0,0 +1 @@ +0634e01187ab624bdd8ab7e310d7ae39 dkimpy-1.1.2.tar.gz |