Skip to content

Latest commit

 

History

History
139 lines (87 loc) · 3.56 KB

README.md

File metadata and controls

139 lines (87 loc) · 3.56 KB

deemon

PyPI PyPI - Python Version PyPI - License PyPI - Status PyPI - Downloads GitHub last commit Discord

About | Prerequisites | Installation | Usage | Examples

About

deemon is an automation tool that relies on the deemix library and the deezer-py API module to monitor a specified list of artists for new releases

Support

Open an Issue | Discord

Prerequisites

  • python >= 3.6
  • deemix >= 2.0.1

Installation

$ pip install deemon

You may want to add an entry in your crontab to run this weekly (e.g. every Friday at 06:00):

0 6 * * 5 /home/USER/.local/bin/deemon -a artists.txt -m /plex/music

Configuration

Starting with version 0.4.0, deemon now uses a config.json file to store configuration settings.

  • Windows: %appdata%/deemon

  • Mac: /Users//Library/Application Support/deemon

  • Linux: /home//.config/deemon

Usage

$ deemon --artists <file|dir\> [ --music <dir\> ] [ --config <dir\> ] [ --bitrate < 1 | 3 | 9 > ]
                        [ --db <dir\> ] [ --download-all ] [ --record-type <album|single> ]

By default, deemon uses the default paths for the config and download directories provided by deemix to make getting started easier.

  • -a, --artists /path/to/file.txt or /path/to/artists...

    • Required - Path to text file containing one artist per line -or- path to parent directory containing artist subdirectories
  • -m, --music /path/to/music

    • Optional - Path to download new releases
    • Default: ~/Music/deemix Music
  • -c, --config /path/to/config

    • Optional - Path to deemix config directory
    • Default: ~/.config/deemix
  • -d, --db /path/to/database

    • Optional - Path to save database
    • Default: ~/.config/deemon
  • -b, --bitrate int

    • Optional - Set bitrate
    • 1 - MP3 128kbps
    • 3 - MP3 320kbps (Default)
    • 9 - FLAC
  • -D, --download-all

    • Optional - Download all releases when adding new artist
  • -r, --record-type album or single

    • Optional - Only monitor for either 'album' or 'single'
  • --email-test

    • Send test notification to verify SMTP settings
  • -V, --version

    • Print version information

Examples

In the examples below, my music library structure is as follows:

plex/
   music/
      Artist 1/
      Artist 2/

Method A - Use a text file containing one artist per line, download to /plex/music as FLAC:

This method is good for monitoring only specific artists

$ deemon -a artists.txt -m /plex/music -b 9
$ cat artists.txt
Artist 1
Artist 2
Artist 3

Method B - Use a directory containing subdirectory for each artists; download to /plex/music:

This method is good for monitoring all artists

$ deemon -a /plex/music -m /plex/music
$ ls /plex/music
Artist 1/
Artist 2/
Artist 3/