Skip to main content

tools for plex admins

This project has been archived.

The maintainers of this project have marked this project as archived. No new releases are expected.

Project description

Setup Project

install with poetry

  • Poetry installation documentation
  • open the terminal in the project directory
  • execute poetry install to install the dependencies
  • execute poetry run compile-messages to install other languages
  • execute poetry run generate-test-data to generate the test data for the unittests
  • execute poetry run plexutils to run the script

config.yaml

To create a config.yaml file you can simply copy or rename the example-config.yaml file to config.yaml and adjust the settings to your needs.

Language

Example

language: de_DE

Supported languages

  • de_DE german (germany)
  • de_AT german (tyrol)
  • en_US english

Plex Libraries

Example

libraries:
  - name: Movies
    type: movie
    lang:
      dub: de_DE
      sub: de_DE
    path: /.../movies
  - name: TV Shows
    type: tvshow
    lang:
      dub: de_DE
      sub: de_DE
    path: /.../tvshows

Description

Under the libraries key you can define your plex libraries. Each library has the following keys:

  • name (required): The name of the library
  • type (required): The type of the library. Possible values are movie and tvshow
  • path (required): The path to the library
  • lang (optional): The language settings for the library. Each library has the following keys:
    • dub (optional): The default is en_US. The language of the dubbing
    • sub (optional): The language of the subtitles

TVDB Credentials

To get the TVDB credentials you need to create an account on thetvdb.com and create a new API key and pin.

Example

tvdb:
  api_key: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
  api_pin: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Description

Under the tvdb key you can define your TVDB credentials:

  • api_key (required): The API key
  • api_pin (required): The API pin

Documentation

Update the documentation

  • open the terminal in the project directory
  • execute poetry run generate-docs to generate the documentation with sphinx

Features

MovieFileUtils

  1. validate movie filename syntax

TVShowFileUtils

  1. validate tvshow directory syntax
  2. validate season directory syntax
  3. validate episode filename syntax

TVDBUtils

  1. search in tvdb for new seasons of existing tvshows
  2. search in tvdb for missing episodes of existing seasons of existing tvshows

Contribute

Add new language

Unix

  1. install xgettext
  2. create the messages.pot file
    1. (unix) find . -iname "*.py" | xargs xgettext -o messages.pot
  3. rename the messages.pot file to plexutils.po
  4. move plexutils.po to locale/xx_XX/LC_MESSAGES/
  5. execute msgfmt locale/xx_XX/LC_MESSAGES/plexutils.po -o locale/xx_XX/LC_MESSAGES/plexutils.mo
  6. change the language in the config.yaml
  7. DONE!

Windows

  1. install babel if not installed (pip install Babel)
  2. create babel.cfg with [python: **.py] as its content
  3. open Command Prompt (cmd) and navigate to your project directory. Run:
    pybabel extract -F babel.cfg -o messages.pot .
    
  4. run the following command, replacing xx_XX with your language code (e.g., de_DE for German):
    pybabel init -i messages.pot -d locale -l xx_XX
    
  5. open the generated .po file in locale/xx_XX/LC_MESSAGES/ directory with a text editor and translate the messages into your desired language
  6. rename the messages.pot file to plexutils.po
  7. compile the .po file to a .mo file: Execute:
    pybabel compile -d locale
    
  8. Open config.yaml in a text editor and update the language setting (e.g., language: de_DE)
  9. DONE!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

plexutils-1.1.0.tar.gz (29.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

plexutils-1.1.0-py3-none-any.whl (38.7 kB view details)

Uploaded Python 3

File details

Details for the file plexutils-1.1.0.tar.gz.

File metadata

  • Download URL: plexutils-1.1.0.tar.gz
  • Upload date:
  • Size: 29.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.1 Linux/6.5.0-1023-azure

File hashes

Hashes for plexutils-1.1.0.tar.gz
Algorithm Hash digest
SHA256 caf96a110f161ac607f08375910f343afae8f547739e9383c627dbca9d0c75db
MD5 a024974b5178a7ffe121ff9371b0f95c
BLAKE2b-256 e5e2c75dba93e54944167afedf3ee13dbe977f2c317305b0524dd88f6e802126

See more details on using hashes here.

File details

Details for the file plexutils-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: plexutils-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 38.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.1 Linux/6.5.0-1023-azure

File hashes

Hashes for plexutils-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 eea44fa12be40cb728e1dc2142651f92d18989e9bfe2821a04bc74490295fe5b
MD5 513caa967e9db8d7f5db4c3874f7851f
BLAKE2b-256 818734cceca754665f9091c0264f257c7698a316ba3ba161415d78966ba7e027

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page