Skip to content

Commit

Permalink
Initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
thespad committed Apr 1, 2022
0 parents commit 5ff30e0
Show file tree
Hide file tree
Showing 13 changed files with 276 additions and 0 deletions.
6 changes: 6 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
.git
.gitignore
.github
.gitattributes
READMETEMPLATE.md
README.md
11 changes: 11 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates

version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"
16 changes: 16 additions & 0 deletions .github/workflows/call-baseimage-update.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: Check for base image updates
on:
workflow_dispatch:
schedule:
- cron: '0 0 * * 0'

jobs:
call-workflow:
uses: thespad/actions/.github/workflows/check-baseimage-update.yml@v5
with:
repo_owner: ${{ github.repository_owner }}
baseimage: "alpine"
basebranch: "3.15"
app_name: "whisparr"
secrets:
repo_scoped_token: ${{ secrets.repo_scoped_token }}
17 changes: 17 additions & 0 deletions .github/workflows/call-build-image.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: Build Image On Release

on:
release:
types: [ published ]
pull_request:

jobs:
call-workflow:
uses: thespad/actions/.github/workflows/build-image.yml@v5
with:
repo_owner: ${{ github.repository_owner }}
app_name: "whisparr"
release_type: "script"
dockerhub_user: "thespad"
secrets:
dockerhub_password: ${{ secrets.DOCKER_PASSWORD }}
16 changes: 16 additions & 0 deletions .github/workflows/call-check-and-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: Check for update and release

on:
workflow_dispatch:
schedule:
- cron: '0 11 * * *'

jobs:
call-workflow:
uses: thespad/actions/.github/workflows/check-and-release.yml@v5
with:
repo_owner: ${{ github.repository_owner }}
app_name: "whisparr"
release_type: "script"
secrets:
repo_scoped_token: ${{ secrets.repo_scoped_token }}
44 changes: 44 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# Windows image file caches
Thumbs.db
ehthumbs.db

# Folder config file
Desktop.ini

# Recycle Bin used on file shares
$RECYCLE.BIN/

# Windows Installer files
*.cab
*.msi
*.msm
*.msp

# Windows shortcuts
*.lnk

# =========================
# Operating System Files
# =========================

# OSX
# =========================

.DS_Store
.AppleDouble
.LSOverride

# Thumbnails
._*

# Files that might appear on external disk
.Spotlight-V100
.Trashes

# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk
.jenkins-external
45 changes: 45 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
FROM ghcr.io/linuxserver/baseimage-alpine:3.15

# set version label
ARG BUILD_DATE
ARG VERSION
ARG APP_VERSION
LABEL build_version="Version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="thespad"

# environment settings
ARG APP_BRANCH="nightly"
ENV XDG_CONFIG_HOME="/config/xdg"

RUN \
echo "**** install packages ****" && \
apk add -U --upgrade --no-cache \
curl \
jq \
icu-libs \
sqlite-libs && \
echo "**** install whisparr ****" && \
mkdir -p /app/whisparr/bin && \
if [ -z ${APP_VERSION+x} ]; then \
APP_VERSION=$(curl -sL "https://whisparr.servarr.com/v1/update/${APP_BRANCH}/changes?runtime=netcore&os=linuxmusl" \
| jq -r '.[0].version'); \
fi && \
curl -o \
/tmp/whisparr.tar.gz -L \
"https://whisparr.servarr.com/v1/update/${APP_BRANCH}/updatefile?version=${APP_VERSION}&os=linuxmusl&runtime=netcore&arch=x64" && \
tar xzf \
/tmp/whisparr.tar.gz -C \
/app/whisparr/bin --strip-components=1 && \
echo -e "UpdateMethod=docker\nBranch=${APP_BRANCH}\nPackageVersion=${VERSION}\nPackageAuthor=[thespad](https://github.com/thespad)" > /app/whisparr/package_info && \
echo "**** cleanup ****" && \
rm -rf \
/app/whisparr/bin/Whisparr.Update \
/tmp/* \
/var/tmp/*

# copy local files
COPY root/ /

# ports and volumes
EXPOSE 6969
VOLUME /config
30 changes: 30 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# [thespad/whisparr](https://github.com/thespad/docker-whisparr)

[![GitHub Release](https://img.shields.io/github/release/thespad/docker-whisparr.svg?color=26689A&labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=github)](https://github.com/thespad/docker-whisparr/releases)
![Commits](https://img.shields.io/github/commits-since/thespad/docker-whisparr/latest?color=26689A&include_prereleases&logo=github&style=for-the-badge)
![Image Size](https://img.shields.io/docker/image-size/thespad/whisparr/latest?color=26689A&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=Size)
[![Docker Pulls](https://img.shields.io/docker/pulls/thespad/whisparr.svg?color=26689A&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=pulls&logo=docker)](https://hub.docker.com/r/thespad/whisparr)
[![GitHub Stars](https://img.shields.io/github/stars/thespad/docker-whisparr.svg?color=26689A&labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=github)](https://github.com/thespad/docker-whisparr)
[![Docker Stars](https://img.shields.io/docker/stars/thespad/whisparr.svg?color=26689A&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=stars&logo=docker)](https://hub.docker.com/r/thespad/whisparr)

[![ci](https://img.shields.io/github/workflow/status/thespad/docker-whisparr/Check%20for%20update%20and%20release.svg?labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=github&label=Check%20For%20Upstream%20Updates)](https://github.com/thespad/docker-whisparr/actions/workflows/called-ci.yml)
[![ci](https://img.shields.io/github/workflow/status/thespad/docker-whisparr/Check%20for%20base%20image%20updates.svg?labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=github&label=Check%20For%20Baseimage%20Updates)](https://github.com/thespad/docker-whisparr/actions/workflows/called-baseimage-update.yml)
[![ci](https://img.shields.io/github/workflow/status/thespad/docker-whisparr/Build%20Image%20On%20Release.svg?labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=github&label=Build%20Image)](https://github.com/thespad/docker-whisparr/actions/workflows/called-bakebuild.yml)

[whisparr](https://github.com/whisparr/whisparr) is an adult movie collection manager for Usenet and BitTorrent users. It can monitor multiple RSS feeds for new movies and will interface with clients and indexers to grab, sort, and rename them. It can also be configured to automatically upgrade the quality of existing files in the library when a better quality format becomes available.

## Supported Architectures

Our images support multiple architectures and simply pulling `ghcr.io/thespad/whisparr:latest` should retrieve the correct image for your arch.

The architectures supported by this image are:

| Architecture | Available | Tag |
| :----: | :----: | ---- |
| x86-64 || latest |
| arm64 || latest |
| armhf || latest |

## Versions

* **01.04.22:** - Initial Release.
21 changes: 21 additions & 0 deletions docker-bake.hcl
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
target "docker-metadata-action" {}

group "default" {
targets = ["image-local"]
}

target "image" {
inherits = ["docker-metadata-action"]
}

target "image-local" {
inherits = ["image"]
output = ["type=docker"]
}

target "image-all" {
inherits = ["image"]
platforms = [
"linux/amd64"
]
}
5 changes: 5 additions & 0 deletions get-version.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#! /bin/bash

APP_VERSION=$(curl -sL "https://whisparr.servarr.com/v1/update/nightly/changes?runtime=netcore&os=linuxmusl" | jq -r '.[0].version');

printf "%s" "${APP_VERSION}"
55 changes: 55 additions & 0 deletions root/etc/cont-init.d/10-adduser
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
#!/usr/bin/with-contenv bash

PUID=${PUID:-911}
PGID=${PGID:-911}

groupmod -o -g "$PGID" abc
usermod -o -u "$PUID" abc

echo '
-------------------------------------
_ ()
| | ___ _ __
| | / __| | | / \
| | \__ \ | | | () |
|_| |___/ |_| \__/


Base image provided by linuxserver.io
-------------------------------------'
if [[ -f /donate.txt ]]; then
echo '
To support the app dev(s) visit:'
cat /donate.txt
fi
echo '
To support LSIO projects visit:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------'
echo "
User uid: $(id -u abc)
User gid: $(id -g abc)
-------------------------------------
"

time32="$(date +%Y)"

if [[ "${time32}" == "1970" || "${time32}" == "1969" ]] && [ "$(uname -m)" == "armv7l" ]; then
echo '
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

Your DockerHost is most likely running an outdated version of libseccomp

To fix this, please visit https://docs.linuxserver.io/faq#libseccomp

Some apps might not behave correctly without this

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
'
fi

chown abc:abc /app
chown abc:abc /config
chown abc:abc /defaults
5 changes: 5 additions & 0 deletions root/etc/cont-init.d/30-config
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#!/usr/bin/with-contenv bash

# permissions
chown -R abc:abc \
/config
5 changes: 5 additions & 0 deletions root/etc/services.d/whisparr/run
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#!/usr/bin/with-contenv bash

exec \
s6-setuidgid abc /app/whisparr/bin/Whisparr \
-nobrowser -data=/config

0 comments on commit 5ff30e0

Please sign in to comment.