%global _empty_manifest_terminate_build 0
Name: python-castero
Version: 0.9.5
Release: 1
Summary: A TUI podcast client for the terminal
License: MIT License
URL: https://github.com/xgi/castero
Source0: https://mirrors.aliyun.com/pypi/web/packages/1f/70/460a81b7e737d2ab8bd9edbc1c28df6a6061f335db0c29b18151023dc648/castero-0.9.5.tar.gz
BuildArch: noarch
Requires: python3-beautifulsoup4
Requires: python3-cjkwrap
Requires: python3-grequests
Requires: python3-lxml
Requires: python3-mpv
Requires: python3-vlc
Requires: python3-pytz
Requires: python3-requests
Requires: python3-coverage
Requires: python3-pytest
%description
# castero
[![GitHub release](https://img.shields.io/github/release/xgi/castero.svg?style=flat-square)](https://github.com/xgi/castero/releases) [![PyPI](https://img.shields.io/pypi/v/castero.svg?style=flat-square)](https://pypi.org/project/castero) [![GitHub Build](https://img.shields.io/github/workflow/status/xgi/castero/CI?style=flat-square)](https://circleci.com/gh/xgi/castero/tree/master) [![Maintainability](https://api.codeclimate.com/v1/badges/babcaad5cb2cca266c92/maintainability)](https://codeclimate.com/github/xgi/castero/maintainability) [![Test Coverage](https://api.codeclimate.com/v1/badges/babcaad5cb2cca266c92/test_coverage)](https://codeclimate.com/github/xgi/castero/test_coverage)
castero is a TUI podcast client for the terminal.
![example client screenshot](https://raw.githubusercontent.com/xgi/castero/master/res/client_example.png)
## Installation
Install from [PyPi](https://pypi.org/project/castero) with pip:
```bash
$ pip3 install castero
```
Upgrading:
```bash
$ pip3 install castero --upgrade
```
### Manual Installation
```bash
$ git clone https://github.com/xgi/castero
$ cd castero
$ sudo python setup.py install
```
## Dependencies
Running castero requires the following external dependencies:
* Python >= 3.5 (check the output of ``python --version``)
* sqlite3
* At least one of the following media players:
* vlc >= 2.2.3
* (mpv and libmpv) >= 0.14.0
## Usage
After installing castero, it can be run with simply:
```bash
$ castero
```
The help menu provides a list of controls and can be accessed by pressing
h. Alternatively, see the list below:
```text
Commands
h - show this help screen
q - exit the client
a - add a feed
d - delete the selected feed
r - reload/refresh feeds
s - save episode for offline playback
UP/DOWN - navigate up/down in menus
RIGHT/LEFT - navigate right/left in menus
PPAGE/NPAGE - scroll up/down in menus
ENTER - play selected feed/episode
SPACE - add selected feed/episode to queue
c - clear the queue
n - go to the next episode in the queue
i - invert the order of the menu
/ - filter the contents of the menu
m - mark episode as played/unplayed
p or k - pause/play the current episode
f or l - seek forward
b or j - seek backward
=/- - increase/decrease volume
]/[ - increase/decrease playback speed
u - show episode URL
1-5 - change between client layouts
```
### Importing/exporting feeds from another client
castero supports importing and exporting an [OPML file](https://en.wikipedia.org/wiki/OPML)
of your subscriptions in order to easily transfer them between other podcast
clients. Please refer to your other client's documentation for details on
how/if it supports this format.
Importing and exporting from castero are available with command line flags.
Run `castero --help` for details.
## Configuration
The configuration file is located at `{HOME}/.config/castero/castero.conf`
after the client has been run at least once.
Please see the [default castero.conf](https://github.com/xgi/castero/blob/master/castero/templates/castero.conf)
for a list of available settings.
User data, including downloaded episodes and a database with your feed
information, is located at `{HOME}/.local/share/castero/`. These files are not
intended to be manually modified. Removing the database will simply cause
castero to replace it with an empty one the next time you run the client.
## Testing
This project uses [pytest](https://pytest.org) for testing. To run tests, run
the following command in the project's root directory:
```bash
$ python -m pytest tests
```
You can also run tests for an individual unit, i.e.:
```bash
$ python -m pytest tests/test_feed.py
```
## License
[MIT License](https://github.com/xgi/castero/blob/master/LICENSE.txt)
%package -n python3-castero
Summary: A TUI podcast client for the terminal
Provides: python-castero
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-pip
%description -n python3-castero
# castero
[![GitHub release](https://img.shields.io/github/release/xgi/castero.svg?style=flat-square)](https://github.com/xgi/castero/releases) [![PyPI](https://img.shields.io/pypi/v/castero.svg?style=flat-square)](https://pypi.org/project/castero) [![GitHub Build](https://img.shields.io/github/workflow/status/xgi/castero/CI?style=flat-square)](https://circleci.com/gh/xgi/castero/tree/master) [![Maintainability](https://api.codeclimate.com/v1/badges/babcaad5cb2cca266c92/maintainability)](https://codeclimate.com/github/xgi/castero/maintainability) [![Test Coverage](https://api.codeclimate.com/v1/badges/babcaad5cb2cca266c92/test_coverage)](https://codeclimate.com/github/xgi/castero/test_coverage)
castero is a TUI podcast client for the terminal.
![example client screenshot](https://raw.githubusercontent.com/xgi/castero/master/res/client_example.png)
## Installation
Install from [PyPi](https://pypi.org/project/castero) with pip:
```bash
$ pip3 install castero
```
Upgrading:
```bash
$ pip3 install castero --upgrade
```
### Manual Installation
```bash
$ git clone https://github.com/xgi/castero
$ cd castero
$ sudo python setup.py install
```
## Dependencies
Running castero requires the following external dependencies:
* Python >= 3.5 (check the output of ``python --version``)
* sqlite3
* At least one of the following media players:
* vlc >= 2.2.3
* (mpv and libmpv) >= 0.14.0
## Usage
After installing castero, it can be run with simply:
```bash
$ castero
```
The help menu provides a list of controls and can be accessed by pressing
h. Alternatively, see the list below:
```text
Commands
h - show this help screen
q - exit the client
a - add a feed
d - delete the selected feed
r - reload/refresh feeds
s - save episode for offline playback
UP/DOWN - navigate up/down in menus
RIGHT/LEFT - navigate right/left in menus
PPAGE/NPAGE - scroll up/down in menus
ENTER - play selected feed/episode
SPACE - add selected feed/episode to queue
c - clear the queue
n - go to the next episode in the queue
i - invert the order of the menu
/ - filter the contents of the menu
m - mark episode as played/unplayed
p or k - pause/play the current episode
f or l - seek forward
b or j - seek backward
=/- - increase/decrease volume
]/[ - increase/decrease playback speed
u - show episode URL
1-5 - change between client layouts
```
### Importing/exporting feeds from another client
castero supports importing and exporting an [OPML file](https://en.wikipedia.org/wiki/OPML)
of your subscriptions in order to easily transfer them between other podcast
clients. Please refer to your other client's documentation for details on
how/if it supports this format.
Importing and exporting from castero are available with command line flags.
Run `castero --help` for details.
## Configuration
The configuration file is located at `{HOME}/.config/castero/castero.conf`
after the client has been run at least once.
Please see the [default castero.conf](https://github.com/xgi/castero/blob/master/castero/templates/castero.conf)
for a list of available settings.
User data, including downloaded episodes and a database with your feed
information, is located at `{HOME}/.local/share/castero/`. These files are not
intended to be manually modified. Removing the database will simply cause
castero to replace it with an empty one the next time you run the client.
## Testing
This project uses [pytest](https://pytest.org) for testing. To run tests, run
the following command in the project's root directory:
```bash
$ python -m pytest tests
```
You can also run tests for an individual unit, i.e.:
```bash
$ python -m pytest tests/test_feed.py
```
## License
[MIT License](https://github.com/xgi/castero/blob/master/LICENSE.txt)
%package help
Summary: Development documents and examples for castero
Provides: python3-castero-doc
%description help
# castero
[![GitHub release](https://img.shields.io/github/release/xgi/castero.svg?style=flat-square)](https://github.com/xgi/castero/releases) [![PyPI](https://img.shields.io/pypi/v/castero.svg?style=flat-square)](https://pypi.org/project/castero) [![GitHub Build](https://img.shields.io/github/workflow/status/xgi/castero/CI?style=flat-square)](https://circleci.com/gh/xgi/castero/tree/master) [![Maintainability](https://api.codeclimate.com/v1/badges/babcaad5cb2cca266c92/maintainability)](https://codeclimate.com/github/xgi/castero/maintainability) [![Test Coverage](https://api.codeclimate.com/v1/badges/babcaad5cb2cca266c92/test_coverage)](https://codeclimate.com/github/xgi/castero/test_coverage)
castero is a TUI podcast client for the terminal.
![example client screenshot](https://raw.githubusercontent.com/xgi/castero/master/res/client_example.png)
## Installation
Install from [PyPi](https://pypi.org/project/castero) with pip:
```bash
$ pip3 install castero
```
Upgrading:
```bash
$ pip3 install castero --upgrade
```
### Manual Installation
```bash
$ git clone https://github.com/xgi/castero
$ cd castero
$ sudo python setup.py install
```
## Dependencies
Running castero requires the following external dependencies:
* Python >= 3.5 (check the output of ``python --version``)
* sqlite3
* At least one of the following media players:
* vlc >= 2.2.3
* (mpv and libmpv) >= 0.14.0
## Usage
After installing castero, it can be run with simply:
```bash
$ castero
```
The help menu provides a list of controls and can be accessed by pressing
h. Alternatively, see the list below:
```text
Commands
h - show this help screen
q - exit the client
a - add a feed
d - delete the selected feed
r - reload/refresh feeds
s - save episode for offline playback
UP/DOWN - navigate up/down in menus
RIGHT/LEFT - navigate right/left in menus
PPAGE/NPAGE - scroll up/down in menus
ENTER - play selected feed/episode
SPACE - add selected feed/episode to queue
c - clear the queue
n - go to the next episode in the queue
i - invert the order of the menu
/ - filter the contents of the menu
m - mark episode as played/unplayed
p or k - pause/play the current episode
f or l - seek forward
b or j - seek backward
=/- - increase/decrease volume
]/[ - increase/decrease playback speed
u - show episode URL
1-5 - change between client layouts
```
### Importing/exporting feeds from another client
castero supports importing and exporting an [OPML file](https://en.wikipedia.org/wiki/OPML)
of your subscriptions in order to easily transfer them between other podcast
clients. Please refer to your other client's documentation for details on
how/if it supports this format.
Importing and exporting from castero are available with command line flags.
Run `castero --help` for details.
## Configuration
The configuration file is located at `{HOME}/.config/castero/castero.conf`
after the client has been run at least once.
Please see the [default castero.conf](https://github.com/xgi/castero/blob/master/castero/templates/castero.conf)
for a list of available settings.
User data, including downloaded episodes and a database with your feed
information, is located at `{HOME}/.local/share/castero/`. These files are not
intended to be manually modified. Removing the database will simply cause
castero to replace it with an empty one the next time you run the client.
## Testing
This project uses [pytest](https://pytest.org) for testing. To run tests, run
the following command in the project's root directory:
```bash
$ python -m pytest tests
```
You can also run tests for an individual unit, i.e.:
```bash
$ python -m pytest tests/test_feed.py
```
## License
[MIT License](https://github.com/xgi/castero/blob/master/LICENSE.txt)
%prep
%autosetup -n castero-0.9.5
%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-castero -f filelist.lst
%dir %{python3_sitelib}/*
%files help -f doclist.lst
%{_docdir}/*
%changelog
* Fri Jun 09 2023 Python_Bot - 0.9.5-1
- Package Spec generated