diff options
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | python-simplegmail.spec | 677 | ||||
| -rw-r--r-- | sources | 1 |
3 files changed, 679 insertions, 0 deletions
@@ -0,0 +1 @@ +/simplegmail-4.1.1.tar.gz diff --git a/python-simplegmail.spec b/python-simplegmail.spec new file mode 100644 index 0000000..e0110b6 --- /dev/null +++ b/python-simplegmail.spec @@ -0,0 +1,677 @@ +%global _empty_manifest_terminate_build 0 +Name: python-simplegmail +Version: 4.1.1 +Release: 1 +Summary: A simple Python API client for Gmail. +License: MIT License +URL: https://github.com/jeremyephron/simplegmail +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/bc/82/bc78ebd7f1fa5b55450357397d43b83bae2d944106b17b1fb93af1e3d3a6/simplegmail-4.1.1.tar.gz +BuildArch: noarch + +Requires: python3-google-api-python-client +Requires: python3-beautifulsoup4 +Requires: python3-dateutil +Requires: python3-oauth2client +Requires: python3-lxml + +%description +Currently Supported Behavior: +- Sending html messages +- Sending messages with attachments +- Sending messages with your Gmail account signature +- Retrieving messages with the full suite of Gmail's search capabilities +- Retrieving messages with attachments, and downloading attachments +- Modifying message labels (includes marking as read/unread, important/not + important, starred/unstarred, trash/untrash, inbox/archive) +## Table of Contents +- [Getting Started](#getting-started) +- [Installation](#installation) +- [Usage](#usage) + - [Send a simple message](#send-a-simple-message) + - [Send a message with attachments, cc, bcc fields](#send-a-message-with-attachments-cc-bcc-fields) + - [Retrieving messages](#retrieving-messages) + - [Marking messages](#marking-messages) + - [Changing message labels](#changing-message-labels) + - [Downloading attachments](#downloading-attachments) + - [Retrieving messages with queries](#retrieving-messages-advanced-with-queries) + - [Retrieving messages with more advanced queries](#retrieving-messages-more-advanced-with-more-queries) +- [Feedback](#feedback) +## Getting Started +The only setup required is to download an OAuth 2.0 Client ID file from Google +that will authorize your application. +This can be done at: https://console.developers.google.com/apis/credentials. +For those who haven't created a credential for Google's API, after clicking the +link above (and logging in to the appropriate account), +1. Select/create the project that this authentication is for (if creating a new +project make sure to configure the OAuth consent screen; you only need to set +an Application name) +2. Click on the "Dashboard" tab, then "Enable APIs and Services". Search for +Gmail and enable. +3. Click on the Credentials tab, then "Create Credentials" > "OAuth client ID". +4. Select what kind of application this is for, and give it a memorable name. +Fill out all necessary information for the credential (e.g., if choosing +"Web Application" make sure to add an Authorized Redirect URI. See +https://developers.google.com/identity/protocols/oauth2 for more infomation). +5. Back on the credentials screen, click the download icon next to the +credential you just created to download it as a JSON object. +6. Save this file as "client_secret.json" and place it in the root directory of +your application. (The `Gmail` class takes in an argument for the name of this +file if you choose to name it otherwise.) +The first time you create a new instance of the `Gmail` class, a browser window +will open, and you'll be asked to give permissions to the application. This +will save an access token in a file named "gmail-token.json", and only needs to +occur once. +You are now good to go! +Note about authentication method: I have opted not to use a username-password +authentication (through imap/smtp), since using Google's authorization is both +significantly safer and avoids clashing with Google's many security measures. +## Installation +Install using `pip` (Python3). +```bash +pip3 install simplegmail +``` +## Usage +### Send a simple message: +```python +from simplegmail import Gmail +gmail = Gmail() # will open a browser window to ask you to log in and authenticate +params = { + "to": "you@youremail.com", + "sender": "me@myemail.com", + "subject": "My first email", + "msg_html": "<h1>Woah, my first email!</h1><br />This is an HTML email.", + "msg_plain": "Hi\nThis is a plain text email.", + "signature": True # use my account signature +} +message = gmail.send_message(**params) # equivalent to send_message(to="you@youremail.com", sender=...) +``` +### Send a message with attachments, cc, bcc fields: +```python +from simplegmail import Gmail +gmail = Gmail() +params = { + "to": "you@youremail.com", + "sender": "me@myemail.com", + "cc": ["bob@bobsemail.com"], + "bcc": ["marie@gossip.com", "hidden@whereami.com"], + "subject": "My first email", + "msg_html": "<h1>Woah, my first email!</h1><br />This is an HTML email.", + "msg_plain": "Hi\nThis is a plain text email.", + "attachments": ["path/to/something/cool.pdf", "path/to/image.jpg", "path/to/script.py"], + "signature": True # use my account signature +} +message = gmail.send_message(**params) # equivalent to send_message(to="you@youremail.com", sender=...) +``` +It couldn't be easier! +### Retrieving messages: +```python +from simplegmail import Gmail +gmail = Gmail() +# Unread messages in your inbox +messages = gmail.get_unread_inbox() +# Starred messages +messages = gmail.get_starred_messages() +# ...and many more easy to use functions can be found in gmail.py! +# Print them out! +for message in messages: + print("To: " + message.recipient) + print("From: " + message.sender) + print("Subject: " + message.subject) + print("Date: " + message.date) + print("Preview: " + message.snippet) + print("Message Body: " + message.plain) # or message.html +``` +### Marking messages: +```python +from simplegmail import Gmail +gmail = Gmail() +messages = gmail.get_unread_inbox() +message_to_read = messages[0] +message_to_read.mark_as_read() +# Oops, I want to mark as unread now +message_to_read.mark_as_unread() +message_to_star = messages[1] +message_to_star.star() +message_to_trash = messages[2] +message_to_trash.trash() +# ...and many more functions can be found in message.py! +``` +### Changing message labels: +```python +from simplegmail import Gmail +gmail = Gmail() +# Get the label objects for your account. Each label has a specific ID that +# you need, not just the name! +labels = gmail.list_labels() +# To find a label by the name that you know (just an example): +finance_label = list(filter(lambda x: x.name == 'Finance', labels))[0] +messages = gmail.get_unread_inbox() +# We can add/remove a label +message = messages[0] +message.add_label(finance_label) +# We can "move" a message from one label to another +message.modify_labels(to_add=labels[10], to_remove=finance_label) +# ...check out the code in message.py for more! +``` +### Downloading attachments: +```python +from simplegmail import Gmail +gmail = Gmail() +messages = gmail.get_unread_inbox() +message = messages[0] +if message.attachments: + for attm in message.attachments: + print('File: ' + attm.filename) + attm.save() # downloads and saves each attachment under it's stored + # filename. You can download without saving with `attm.download()` +``` +### Retrieving messages (advanced, with queries!): +```python +from simplegmail import Gmail +from simplegmail.query import construct_query +gmail = Gmail() +# Unread messages in inbox with label "Work" +labels = gmail.list_labels() +work_label = list(filter(lambda x: x.name == 'Work', labels))[0] +messages = gmail.get_unread_inbox(labels=[work_label]) +# For even more control use queries: +# Messages that are: newer than 2 days old, unread, labeled "Finance" or both "Homework" and "CS" +query_params = { + "newer_than": (2, "day"), + "unread": True, + "labels":[["Work"], ["Homework", "CS"]] +} +messages = gmail.get_messages(query=construct_query(query_params)) +# We could have also accomplished this with +# messages = gmail.get_unread_messages(query=construct_query(newer_than=(2, "day"), labels=[["Work"], ["Homework", "CS"]])) +# There are many, many different ways of achieving the same result with search. +``` +### Retrieving messages (more advanced, with more queries!): +```python +from simplegmail import Gmail +from simplegmail.query import construct_query +gmail = Gmail() +# For even more control use queries: +# Messages that are either: +# newer than 2 days old, unread, labeled "Finance" or both "Homework" and "CS" +# or +# newer than 1 month old, unread, labeled "Top Secret", but not starred. +labels = gmail.list_labels() +# Construct our two queries separately +query_params_1 = { + "newer_than": (2, "day"), + "unread": True, + "labels":[["Finance"], ["Homework", "CS"]] +} +query_params_2 = { + "newer_than": (1, "month"), + "unread": True, + "labels": ["Top Secret"], + "exclude_starred": True +} +# construct_query() will create both query strings and "or" them together. +messages = gmail.get_messages(query=construct_query(query_params_1, query_params_2)) +``` +For more on what you can do with queries, read the docstring for `construct_query()` in `query.py`. +## Feedback +If there is functionality you'd like to see added, or any bugs in this project, +please let me know by posting an issue or submitting a pull request! + +%package -n python3-simplegmail +Summary: A simple Python API client for Gmail. +Provides: python-simplegmail +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-simplegmail +Currently Supported Behavior: +- Sending html messages +- Sending messages with attachments +- Sending messages with your Gmail account signature +- Retrieving messages with the full suite of Gmail's search capabilities +- Retrieving messages with attachments, and downloading attachments +- Modifying message labels (includes marking as read/unread, important/not + important, starred/unstarred, trash/untrash, inbox/archive) +## Table of Contents +- [Getting Started](#getting-started) +- [Installation](#installation) +- [Usage](#usage) + - [Send a simple message](#send-a-simple-message) + - [Send a message with attachments, cc, bcc fields](#send-a-message-with-attachments-cc-bcc-fields) + - [Retrieving messages](#retrieving-messages) + - [Marking messages](#marking-messages) + - [Changing message labels](#changing-message-labels) + - [Downloading attachments](#downloading-attachments) + - [Retrieving messages with queries](#retrieving-messages-advanced-with-queries) + - [Retrieving messages with more advanced queries](#retrieving-messages-more-advanced-with-more-queries) +- [Feedback](#feedback) +## Getting Started +The only setup required is to download an OAuth 2.0 Client ID file from Google +that will authorize your application. +This can be done at: https://console.developers.google.com/apis/credentials. +For those who haven't created a credential for Google's API, after clicking the +link above (and logging in to the appropriate account), +1. Select/create the project that this authentication is for (if creating a new +project make sure to configure the OAuth consent screen; you only need to set +an Application name) +2. Click on the "Dashboard" tab, then "Enable APIs and Services". Search for +Gmail and enable. +3. Click on the Credentials tab, then "Create Credentials" > "OAuth client ID". +4. Select what kind of application this is for, and give it a memorable name. +Fill out all necessary information for the credential (e.g., if choosing +"Web Application" make sure to add an Authorized Redirect URI. See +https://developers.google.com/identity/protocols/oauth2 for more infomation). +5. Back on the credentials screen, click the download icon next to the +credential you just created to download it as a JSON object. +6. Save this file as "client_secret.json" and place it in the root directory of +your application. (The `Gmail` class takes in an argument for the name of this +file if you choose to name it otherwise.) +The first time you create a new instance of the `Gmail` class, a browser window +will open, and you'll be asked to give permissions to the application. This +will save an access token in a file named "gmail-token.json", and only needs to +occur once. +You are now good to go! +Note about authentication method: I have opted not to use a username-password +authentication (through imap/smtp), since using Google's authorization is both +significantly safer and avoids clashing with Google's many security measures. +## Installation +Install using `pip` (Python3). +```bash +pip3 install simplegmail +``` +## Usage +### Send a simple message: +```python +from simplegmail import Gmail +gmail = Gmail() # will open a browser window to ask you to log in and authenticate +params = { + "to": "you@youremail.com", + "sender": "me@myemail.com", + "subject": "My first email", + "msg_html": "<h1>Woah, my first email!</h1><br />This is an HTML email.", + "msg_plain": "Hi\nThis is a plain text email.", + "signature": True # use my account signature +} +message = gmail.send_message(**params) # equivalent to send_message(to="you@youremail.com", sender=...) +``` +### Send a message with attachments, cc, bcc fields: +```python +from simplegmail import Gmail +gmail = Gmail() +params = { + "to": "you@youremail.com", + "sender": "me@myemail.com", + "cc": ["bob@bobsemail.com"], + "bcc": ["marie@gossip.com", "hidden@whereami.com"], + "subject": "My first email", + "msg_html": "<h1>Woah, my first email!</h1><br />This is an HTML email.", + "msg_plain": "Hi\nThis is a plain text email.", + "attachments": ["path/to/something/cool.pdf", "path/to/image.jpg", "path/to/script.py"], + "signature": True # use my account signature +} +message = gmail.send_message(**params) # equivalent to send_message(to="you@youremail.com", sender=...) +``` +It couldn't be easier! +### Retrieving messages: +```python +from simplegmail import Gmail +gmail = Gmail() +# Unread messages in your inbox +messages = gmail.get_unread_inbox() +# Starred messages +messages = gmail.get_starred_messages() +# ...and many more easy to use functions can be found in gmail.py! +# Print them out! +for message in messages: + print("To: " + message.recipient) + print("From: " + message.sender) + print("Subject: " + message.subject) + print("Date: " + message.date) + print("Preview: " + message.snippet) + print("Message Body: " + message.plain) # or message.html +``` +### Marking messages: +```python +from simplegmail import Gmail +gmail = Gmail() +messages = gmail.get_unread_inbox() +message_to_read = messages[0] +message_to_read.mark_as_read() +# Oops, I want to mark as unread now +message_to_read.mark_as_unread() +message_to_star = messages[1] +message_to_star.star() +message_to_trash = messages[2] +message_to_trash.trash() +# ...and many more functions can be found in message.py! +``` +### Changing message labels: +```python +from simplegmail import Gmail +gmail = Gmail() +# Get the label objects for your account. Each label has a specific ID that +# you need, not just the name! +labels = gmail.list_labels() +# To find a label by the name that you know (just an example): +finance_label = list(filter(lambda x: x.name == 'Finance', labels))[0] +messages = gmail.get_unread_inbox() +# We can add/remove a label +message = messages[0] +message.add_label(finance_label) +# We can "move" a message from one label to another +message.modify_labels(to_add=labels[10], to_remove=finance_label) +# ...check out the code in message.py for more! +``` +### Downloading attachments: +```python +from simplegmail import Gmail +gmail = Gmail() +messages = gmail.get_unread_inbox() +message = messages[0] +if message.attachments: + for attm in message.attachments: + print('File: ' + attm.filename) + attm.save() # downloads and saves each attachment under it's stored + # filename. You can download without saving with `attm.download()` +``` +### Retrieving messages (advanced, with queries!): +```python +from simplegmail import Gmail +from simplegmail.query import construct_query +gmail = Gmail() +# Unread messages in inbox with label "Work" +labels = gmail.list_labels() +work_label = list(filter(lambda x: x.name == 'Work', labels))[0] +messages = gmail.get_unread_inbox(labels=[work_label]) +# For even more control use queries: +# Messages that are: newer than 2 days old, unread, labeled "Finance" or both "Homework" and "CS" +query_params = { + "newer_than": (2, "day"), + "unread": True, + "labels":[["Work"], ["Homework", "CS"]] +} +messages = gmail.get_messages(query=construct_query(query_params)) +# We could have also accomplished this with +# messages = gmail.get_unread_messages(query=construct_query(newer_than=(2, "day"), labels=[["Work"], ["Homework", "CS"]])) +# There are many, many different ways of achieving the same result with search. +``` +### Retrieving messages (more advanced, with more queries!): +```python +from simplegmail import Gmail +from simplegmail.query import construct_query +gmail = Gmail() +# For even more control use queries: +# Messages that are either: +# newer than 2 days old, unread, labeled "Finance" or both "Homework" and "CS" +# or +# newer than 1 month old, unread, labeled "Top Secret", but not starred. +labels = gmail.list_labels() +# Construct our two queries separately +query_params_1 = { + "newer_than": (2, "day"), + "unread": True, + "labels":[["Finance"], ["Homework", "CS"]] +} +query_params_2 = { + "newer_than": (1, "month"), + "unread": True, + "labels": ["Top Secret"], + "exclude_starred": True +} +# construct_query() will create both query strings and "or" them together. +messages = gmail.get_messages(query=construct_query(query_params_1, query_params_2)) +``` +For more on what you can do with queries, read the docstring for `construct_query()` in `query.py`. +## Feedback +If there is functionality you'd like to see added, or any bugs in this project, +please let me know by posting an issue or submitting a pull request! + +%package help +Summary: Development documents and examples for simplegmail +Provides: python3-simplegmail-doc +%description help +Currently Supported Behavior: +- Sending html messages +- Sending messages with attachments +- Sending messages with your Gmail account signature +- Retrieving messages with the full suite of Gmail's search capabilities +- Retrieving messages with attachments, and downloading attachments +- Modifying message labels (includes marking as read/unread, important/not + important, starred/unstarred, trash/untrash, inbox/archive) +## Table of Contents +- [Getting Started](#getting-started) +- [Installation](#installation) +- [Usage](#usage) + - [Send a simple message](#send-a-simple-message) + - [Send a message with attachments, cc, bcc fields](#send-a-message-with-attachments-cc-bcc-fields) + - [Retrieving messages](#retrieving-messages) + - [Marking messages](#marking-messages) + - [Changing message labels](#changing-message-labels) + - [Downloading attachments](#downloading-attachments) + - [Retrieving messages with queries](#retrieving-messages-advanced-with-queries) + - [Retrieving messages with more advanced queries](#retrieving-messages-more-advanced-with-more-queries) +- [Feedback](#feedback) +## Getting Started +The only setup required is to download an OAuth 2.0 Client ID file from Google +that will authorize your application. +This can be done at: https://console.developers.google.com/apis/credentials. +For those who haven't created a credential for Google's API, after clicking the +link above (and logging in to the appropriate account), +1. Select/create the project that this authentication is for (if creating a new +project make sure to configure the OAuth consent screen; you only need to set +an Application name) +2. Click on the "Dashboard" tab, then "Enable APIs and Services". Search for +Gmail and enable. +3. Click on the Credentials tab, then "Create Credentials" > "OAuth client ID". +4. Select what kind of application this is for, and give it a memorable name. +Fill out all necessary information for the credential (e.g., if choosing +"Web Application" make sure to add an Authorized Redirect URI. See +https://developers.google.com/identity/protocols/oauth2 for more infomation). +5. Back on the credentials screen, click the download icon next to the +credential you just created to download it as a JSON object. +6. Save this file as "client_secret.json" and place it in the root directory of +your application. (The `Gmail` class takes in an argument for the name of this +file if you choose to name it otherwise.) +The first time you create a new instance of the `Gmail` class, a browser window +will open, and you'll be asked to give permissions to the application. This +will save an access token in a file named "gmail-token.json", and only needs to +occur once. +You are now good to go! +Note about authentication method: I have opted not to use a username-password +authentication (through imap/smtp), since using Google's authorization is both +significantly safer and avoids clashing with Google's many security measures. +## Installation +Install using `pip` (Python3). +```bash +pip3 install simplegmail +``` +## Usage +### Send a simple message: +```python +from simplegmail import Gmail +gmail = Gmail() # will open a browser window to ask you to log in and authenticate +params = { + "to": "you@youremail.com", + "sender": "me@myemail.com", + "subject": "My first email", + "msg_html": "<h1>Woah, my first email!</h1><br />This is an HTML email.", + "msg_plain": "Hi\nThis is a plain text email.", + "signature": True # use my account signature +} +message = gmail.send_message(**params) # equivalent to send_message(to="you@youremail.com", sender=...) +``` +### Send a message with attachments, cc, bcc fields: +```python +from simplegmail import Gmail +gmail = Gmail() +params = { + "to": "you@youremail.com", + "sender": "me@myemail.com", + "cc": ["bob@bobsemail.com"], + "bcc": ["marie@gossip.com", "hidden@whereami.com"], + "subject": "My first email", + "msg_html": "<h1>Woah, my first email!</h1><br />This is an HTML email.", + "msg_plain": "Hi\nThis is a plain text email.", + "attachments": ["path/to/something/cool.pdf", "path/to/image.jpg", "path/to/script.py"], + "signature": True # use my account signature +} +message = gmail.send_message(**params) # equivalent to send_message(to="you@youremail.com", sender=...) +``` +It couldn't be easier! +### Retrieving messages: +```python +from simplegmail import Gmail +gmail = Gmail() +# Unread messages in your inbox +messages = gmail.get_unread_inbox() +# Starred messages +messages = gmail.get_starred_messages() +# ...and many more easy to use functions can be found in gmail.py! +# Print them out! +for message in messages: + print("To: " + message.recipient) + print("From: " + message.sender) + print("Subject: " + message.subject) + print("Date: " + message.date) + print("Preview: " + message.snippet) + print("Message Body: " + message.plain) # or message.html +``` +### Marking messages: +```python +from simplegmail import Gmail +gmail = Gmail() +messages = gmail.get_unread_inbox() +message_to_read = messages[0] +message_to_read.mark_as_read() +# Oops, I want to mark as unread now +message_to_read.mark_as_unread() +message_to_star = messages[1] +message_to_star.star() +message_to_trash = messages[2] +message_to_trash.trash() +# ...and many more functions can be found in message.py! +``` +### Changing message labels: +```python +from simplegmail import Gmail +gmail = Gmail() +# Get the label objects for your account. Each label has a specific ID that +# you need, not just the name! +labels = gmail.list_labels() +# To find a label by the name that you know (just an example): +finance_label = list(filter(lambda x: x.name == 'Finance', labels))[0] +messages = gmail.get_unread_inbox() +# We can add/remove a label +message = messages[0] +message.add_label(finance_label) +# We can "move" a message from one label to another +message.modify_labels(to_add=labels[10], to_remove=finance_label) +# ...check out the code in message.py for more! +``` +### Downloading attachments: +```python +from simplegmail import Gmail +gmail = Gmail() +messages = gmail.get_unread_inbox() +message = messages[0] +if message.attachments: + for attm in message.attachments: + print('File: ' + attm.filename) + attm.save() # downloads and saves each attachment under it's stored + # filename. You can download without saving with `attm.download()` +``` +### Retrieving messages (advanced, with queries!): +```python +from simplegmail import Gmail +from simplegmail.query import construct_query +gmail = Gmail() +# Unread messages in inbox with label "Work" +labels = gmail.list_labels() +work_label = list(filter(lambda x: x.name == 'Work', labels))[0] +messages = gmail.get_unread_inbox(labels=[work_label]) +# For even more control use queries: +# Messages that are: newer than 2 days old, unread, labeled "Finance" or both "Homework" and "CS" +query_params = { + "newer_than": (2, "day"), + "unread": True, + "labels":[["Work"], ["Homework", "CS"]] +} +messages = gmail.get_messages(query=construct_query(query_params)) +# We could have also accomplished this with +# messages = gmail.get_unread_messages(query=construct_query(newer_than=(2, "day"), labels=[["Work"], ["Homework", "CS"]])) +# There are many, many different ways of achieving the same result with search. +``` +### Retrieving messages (more advanced, with more queries!): +```python +from simplegmail import Gmail +from simplegmail.query import construct_query +gmail = Gmail() +# For even more control use queries: +# Messages that are either: +# newer than 2 days old, unread, labeled "Finance" or both "Homework" and "CS" +# or +# newer than 1 month old, unread, labeled "Top Secret", but not starred. +labels = gmail.list_labels() +# Construct our two queries separately +query_params_1 = { + "newer_than": (2, "day"), + "unread": True, + "labels":[["Finance"], ["Homework", "CS"]] +} +query_params_2 = { + "newer_than": (1, "month"), + "unread": True, + "labels": ["Top Secret"], + "exclude_starred": True +} +# construct_query() will create both query strings and "or" them together. +messages = gmail.get_messages(query=construct_query(query_params_1, query_params_2)) +``` +For more on what you can do with queries, read the docstring for `construct_query()` in `query.py`. +## Feedback +If there is functionality you'd like to see added, or any bugs in this project, +please let me know by posting an issue or submitting a pull request! + +%prep +%autosetup -n simplegmail-4.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-simplegmail -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Wed May 17 2023 Python_Bot <Python_Bot@openeuler.org> - 4.1.1-1 +- Package Spec generated @@ -0,0 +1 @@ +4379d99a1b367c7d6d46bea685592f35 simplegmail-4.1.1.tar.gz |
