Skip to content

Ravencentric/juicenet-cli

Repository files navigation


Logo

juicenet

CLI tool designed to simplify the process of uploading files to Usenet

PyPI - Version PyPI - Python Version GitHub Workflow Status (with event) GitHub Workflow Status (with event) License Checked with mypy Ruff

Table Of Contents

About The Project

Uploading stuff to Usenet is tedious so I tried to make it easier.

  • Uses ParPar and Nyuu under the hood
  • Recursively searches for files with pre-defined extensions in juicenet.yaml or as passed in --exts
  • Alternatively, searches for glob patterns passed in --glob
  • Preserves folder structure without RAR. RAR sucks and here's why
  • Does everything automatically and gives you the resulting nzbs in a neatly sorted manner
  • Offers the option to pick and choose what it does if you don't want it doing everything automatically
  • Automatically checks for and reposts failed articles from last run. Also has the option to not do this.
  • Can continue from where it stopped if it gets interrupted for any reason

Installation

Local

Prerequisites

Installation

  1. With pipx (recommended):

    pipx install juicenet-cli
  2. With pip:

    pip install juicenet-cli

For more details, checkout the local installation guide here

Docker

---
version: "2.1"
services:
  juicenet:
    image: ravencentric/juicenet-cli:latest
    container_name: juicenet
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
    volumes:
      - host/path/to/config/nyuu.docker.private.json:/config/nyuu.docker.private.json
      - host/path/to/config/nyuu.docker.public.json:/config/nyuu.docker.public.json
      - host/path/to/data/nzbs:/data/nzbs
      - host/path/to/data/appdata:/data/appdata
      - host/path/to/data/raw:/data/raw
      - host/path/to/media:/media
docker compose -f "path/to/docker-compose.yml" run juicenet --help

For more details, checkout the docker installation guide here

Docs

Checkout the complete documentation here

License

Distributed under the Unlicense License. See UNLICENSE for more information.