diff --git a/.gitignore b/.gitignore
index 01f94af..0f1ec4b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -11,4 +11,6 @@ qbittorrent/config/qBittorrent/qBittorrent-data.conf
!stash/cron/**/*
!stash/config/config.yml
!stash/stash-box-config/*
-!stash/config/plugins/**/*
\ No newline at end of file
+!stash/config/plugins/**/*
+!servarr/slskd/slskd.yml
+qbittorrent/config/qBittorrent/qBittorrent-data.conf
diff --git a/servarr/docker-compose.yml b/servarr/docker-compose.yml
index 413b1b6..62db9e5 100644
--- a/servarr/docker-compose.yml
+++ b/servarr/docker-compose.yml
@@ -41,11 +41,12 @@ services:
- SLSKD_SLSK_PASSWORD=asdf1234
volumes:
- ./slskd:/app
- - /mnt/servarr/data/media/music:/music
+ - /mnt/servarr/data/torrents/music:/music
+ - /mnt/servarr/data/media/music:/music-organized
restart: unless-stopped
lidarr:
- image: lscr.io/linuxserver/lidarr:latest
+ image: ghcr.io/hotio/lidarr:pr-plugins
container_name: lidarr
environment:
- PUID=1000
diff --git a/servarr/slskd/slskd.yml b/servarr/slskd/slskd.yml
new file mode 100644
index 0000000..d5c0a6a
--- /dev/null
+++ b/servarr/slskd/slskd.yml
@@ -0,0 +1,265 @@
+# debug: false
+# headless: false
+# remote_configuration: false
+# remote_file_management: false
+# instance_name: default
+# flags:
+# no_logo: false
+# no_start: false
+# no_config_watch: false
+# no_connect: false
+# no_share_scan: false
+# force_share_scan: false
+# no_version_check: false
+# log_sql: false
+# experimental: false
+# volatile: false
+# case_sensitive_reg_ex: false
+# legacy_windows_tcp_keepalive: false
+# optimistic_relay_file_info: false
+# relay:
+# enabled: false
+# mode: controller # controller (default), agent, or debug (for local development)
+# # controller config is required when running in 'agent' mode
+# # this specifies the relay controller that will be controlling this agent
+# controller:
+# address: https://some.site.com:5000
+# ignore_certificate_errors: false
+# api_key:
+# secret:
+# downloads: false
+# # agent config is optional when running in 'controller' mode
+# # this specifies all of the agents capable of connecting
+# agents:
+# my_agent:
+# instance_name: my_agent # make sure the top-level instance_name of the agent matches!
+# secret:
+# cidr: 0.0.0.0/0,::/0
+# permissions:
+# file:
+# mode: ~ # not for Windows, chmod syntax, e.g. 644, 777. can't escalate beyond umask
+ directories:
+# incomplete: ~
+ downloads: /music
+ shares:
+ directories:
+ - /music-organized
+# filters:
+# - \.ini$
+# - Thumbs.db$
+# - \.DS_Store$
+# cache:
+# storage_mode: memory
+# workers: 16
+# retention: ~ # retain indefinitely (do not automatically re-scan)
+# rooms:
+# - ~
+# global:
+# upload:
+# slots: 20
+# speed_limit: 1000 # in kibibytes
+# limits:
+# queued:
+# files: 500
+# megabytes: 5000
+# daily:
+# files: 1000
+# megabytes: 10000
+# failures: 200
+# weekly:
+# files: 5000
+# megabytes: 50000
+# failures: 1000
+# download:
+# slots: 500
+# speed_limit: 1000
+# groups:
+# default:
+# upload:
+# priority: 500
+# strategy: roundrobin
+# slots: 10
+# limits:
+# queued:
+# files: 150
+# megabytes: 1500
+# daily: ~ # no daily limits (weekly still apply)
+# weekly:
+# files: 1500
+# megabytes: 15000
+# failures: 150
+# leechers:
+# thresholds:
+# files: 1
+# directories: 1
+# upload:
+# priority: 999
+# strategy: roundrobin
+# slots: 1
+# speed_limit: 100
+# limits:
+# queued:
+# files: 15
+# megabytes: 150
+# daily:
+# files: 30
+# megabytes: 300
+# failures: 10
+# weekly:
+# files: 150
+# megabytes: 1500
+# failures: 30
+# blacklisted:
+# members:
+# -
+# cidrs:
+# -
+# user_defined:
+# my_buddies:
+# upload:
+# priority: 250
+# strategy: firstinfirstout
+# slots: 10
+# limits:
+# queued:
+# files: 1000 # override global default
+# members:
+# - alice
+# - bob
+# blacklist:
+# enabled: true
+# file:
+# filters:
+# search:
+# request:
+# - ^.{1,2}$
+ web:
+# port: 5030
+# https:
+# disabled: false
+# port: 5031
+# force: false
+# certificate:
+# pfx: ~
+# password: ~
+# url_base: /
+# content_path: wwwroot
+# logging: false
+ authentication:
+# disabled: false
+# username: slskd
+# password: slskd
+# jwt:
+# key: ~
+# ttl: 604800000
+ api_keys:
+ my_api_key:
+ key: qwertyuiopasdfghjklzxcvbnm
+# role: readonly # readonly, readwrite, administrator
+# cidr: 0.0.0.0/0,::/0
+# retention:
+# searches: 10080 # 7 days, in minutes
+# transfers:
+# upload:
+# succeeded: 1440 # 1 day, in minutes
+# errored: 30
+# cancelled: 5
+# download:
+# succeeded: 1440 # 1 day, in minutes
+# errored: 20160 # 2 weeks, in minutes
+# cancelled: 5
+# files:
+# complete: 20160 # 2 weeks, in minutes
+# incomplete: 43200 # 30 days, in minutes
+# logs: 180 # days
+# logger:
+# disk: false
+# no_color: false
+# loki: ~
+# metrics:
+# enabled: false
+# url: /metrics
+# authentication:
+# disabled: false
+# username: slskd
+# password: slskd
+# feature:
+# swagger: false
+# soulseek:
+# address: vps.slsknet.org
+# port: 2271
+# username: ~
+# password: ~
+# description: |
+# A slskd user. https://github.com/slskd/slskd
+# listen_ip_address: 0.0.0.0
+# listen_port: 50300
+# diagnostic_level: Info
+# distributed_network:
+# disabled: false
+# disable_children: false
+# child_limit: 25
+# logging: false
+# connection:
+# timeout:
+# connect: 10000
+# inactivity: 15000
+# buffer:
+# read: 16384
+# write: 16384
+# transfer: 262144
+# write_queue: 250
+# proxy:
+# enabled: false
+# address: ~
+# port: ~
+# username: ~
+# password: ~
+# integration:
+# webhooks:
+# my_webhook:
+# on:
+# - DownloadFileComplete
+# call:
+# url: https://192.168.1.42:8080/slskd_webhook
+# headers:
+# - name: X-API-Key
+# value: foobar1234
+# - name: Authorization
+# value: Bearer eyJ...ssw5c
+# - name: User-Agent
+# value: slskd/0.0
+# ignore_certificate_errors: false
+# timeout: 5000 # in milliseconds
+# retry:
+# attempts: 3
+# scripts:
+# my_post_download_script:
+# on:
+# - DownloadFileComplete
+# - DownloadDirectoryComplete
+# run: data/my_script.sh --json-to-process $EVENT
+# my_logging_script:
+# on:
+# - All
+# run: data/log_slskd_events.sh $DATA
+# ftp:
+# enabled: false
+# address: ~
+# port: ~
+# username: ~
+# password: ~
+# remote_path: /
+# encryption_mode: auto
+# ignore_certificate_errors: false
+# overwrite_existing: true
+# connection_timeout: 5000
+# retry_attempts: 3
+# pushbullet:
+# enabled: false
+# access_token: ~
+# notification_prefix: "From slskd:"
+# notify_on_private_message: true
+# notify_on_room_mention: true
+# retry_attempts: 3
+# cooldown_time: 900000
diff --git a/stash/config/config.yml b/stash/config/config.yml
index 4800273..94f33f2 100644
--- a/stash/config/config.yml
+++ b/stash/config/config.yml
@@ -39,48 +39,48 @@ defaults:
sprites: false
transcodes: false
identify_task:
- sources:
- - source:
- stashboxindex: null
- stashboxendpoint: null
- scraperid: builtin_autotag
- options:
- fieldoptions: []
- setcoverimage: null
- setorganized: false
- includemaleperformers: null
- skipmultiplematches: true
- skipmultiplematchtag: null
- skipsinglenameperformers: true
- skipsinglenameperformertag: null
- - source:
- stashboxindex: null
- stashboxendpoint: https://stashdb.org/graphql
- scraperid: null
- options: null
options:
fieldoptions:
- - field: title
+ - createmissing: false
+ field: title
strategy: IGNORE
- createmissing: false
- - field: studio
+ - createmissing: true
+ field: studio
strategy: MERGE
- createmissing: true
- - field: performers
+ - createmissing: true
+ field: performers
strategy: MERGE
- createmissing: true
- - field: tags
+ - createmissing: true
+ field: tags
strategy: MERGE
- createmissing: true
+ includemaleperformers: true
setcoverimage: false
setorganized: false
- includemaleperformers: true
skipmultiplematches: true
skipmultiplematchtag: null
skipsinglenameperformers: true
skipsinglenameperformertag: null
- sceneids: []
paths: []
+ sceneids: []
+ sources:
+ - options:
+ fieldoptions: []
+ includemaleperformers: null
+ setcoverimage: null
+ setorganized: false
+ skipmultiplematches: true
+ skipmultiplematchtag: null
+ skipsinglenameperformers: true
+ skipsinglenameperformertag: null
+ source:
+ scraperid: builtin_autotag
+ stashboxendpoint: null
+ stashboxindex: null
+ - options: null
+ source:
+ scraperid: null
+ stashboxendpoint: https://stashdb.org/graphql
+ stashboxindex: null
scan_task:
scangenerateclippreviews: true
scangeneratecovers: true
@@ -146,8 +146,8 @@ stash:
excludevideo: false
path: /data/
stash_boxes:
- - endpoint: https://stashdb.org/graphql
- apikey: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1aWQiOiJhMmU5NTc3Ny0zOGEwLTQwMWYtYWMxNC01MjBkZmFjOWJhOTMiLCJzdWIiOiJBUElLZXkiLCJpYXQiOjE3NTk3NjAxMjV9.gOzykd_FyhgUNiircH9gE7S3nvLQrNMQ_26yzupVMkY
+ - apikey: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1aWQiOiJhMmU5NTc3Ny0zOGEwLTQwMWYtYWMxNC01MjBkZmFjOWJhOTMiLCJzdWIiOiJBUElLZXkiLCJpYXQiOjE3NTk3NjAxMjV9.gOzykd_FyhgUNiircH9gE7S3nvLQrNMQ_26yzupVMkY
+ endpoint: https://stashdb.org/graphql
name: stash-box
theme_color: '#202b33'
ui:
diff --git a/stash/docker-compose.yml b/stash/docker-compose.yml
index 0957e6e..e7b1116 100644
--- a/stash/docker-compose.yml
+++ b/stash/docker-compose.yml
@@ -32,62 +32,12 @@ services:
## Point this at your collection.
- /mnt/system:/data
## This is where your stash's metadata lives
- - ./metadata:/metadata
+ - /mnt/ssd120/stash/metadata:/metadata
## Any other cache content.
- - ./cache:/cache
+ - /mnt/ssd120/stash/cache:/cache
## Where to store binary blob data (scene covers, images)
- - ./blobs:/blobs
+ - /mnt/ssd120/stash/blobs:/blobs
## Where to store generated content (screenshots,previews,transcodes,sprites)
- - ./generated:/generated
+ #- ./generated:/generated
+ - /mnt/ssd120/stash/generated:/generated
- ./cron/15min:/etc/periodic/15min
-
- postgres:
- container_name: postgres-stash-box
- #build: ./postgres
- image: postgres:14-alpine
- restart: unless-stopped
- environment:
- POSTGRES_USER: postgres
- POSTGRES_PASSWORD: asdf1234
- POSTGRES_DB: postgres
- volumes:
- - ./pgdata:/var/lib/postgresql/data
-
- stash-box:
- container_name: stash-box
- image: stashapp/stash-box:latest
- restart: unless-stopped
- logging:
- driver: "json-file"
- options:
- max-file: "10"
- max-size: "2m"
- links:
- - postgres
- volumes:
- - ./stash-box-config:/root/.stash-box
- # labels:
- # - traefik.http.routers.stash-box.rule=Host(``)
- # - traefik.http.routers.stash-box.tls=true
- # - traefik.http.routers.stash-box.tls.certresolver=stash-box
- # - traefik.port=9998
-
- # traefik:
- # container_name: traefik
- # image: traefik:2.3
- # restart: unless-stopped
- # ports:
- # - 80:80
- # - 443:443
- # command:
- # - "--entrypoints.web.address=:80"
- # - "--entrypoints.websecure.address=:443"
- # - "--entryPoints.web.http.redirections.entryPoint.to=websecure"
- # - "--entryPoints.web.http.redirections.entryPoint.scheme=https"
- # - "--providers.docker=true"
- # - "--certificatesResolvers.stash-box.acme.email="
- # - "--certificatesResolvers.stash-box.acme.storage=/acme.json"
- # - "--certificatesresolvers.stash-box.acme.tlschallenge=true"
- # volumes:
- # - /var/run/docker.sock:/var/run/docker.sock:ro
- # - /traefik/acme.json:/acme.json