This commit is contained in:
2025-09-22 13:19:41 +02:00
parent 53668e986b
commit a5607c450b
16 changed files with 245 additions and 0 deletions

View File

@@ -0,0 +1,9 @@
widefrog
hub.pi-farm.home64.de
0
63
linux/amd64,linux/arm64
yes
no
yes
yes

3
projects/widefrog/.vscode/settings.json vendored Executable file
View File

@@ -0,0 +1,3 @@
{
"DockerRun.DisableDockerrc": true
}

View File

@@ -0,0 +1,20 @@
FROM python:3.12-slim-bookworm
WORKDIR /build
COPY scripts/* /build/
RUN pip install --upgrade pip && \
chmod +x entrypoint.sh && bash ./install.sh && \
apt-get -y autoremove && \
apt-get clean && \
rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/* \
/var/log/* \
/usr/share/man
VOLUME /build/media
VOLUME /build/app_files
ENTRYPOINT ["python", "/build/widefrog.py"]
##ENTRYPOINT [ "tail -f /dev/null" ]
##CMD [ "tail -f /dev/null" ]
## && tail -f /dev/null"]

38
projects/widefrog/README Normal file
View File

@@ -0,0 +1,38 @@
docker buildx build --load --platform=linux/arm64 --platform=linux/amd64 -t hub.pi-farm.home64.de/widefrog:0.63 -t hub.pi-farm.home64.de/widefrog:latest -f projects/widefrog/Dockerfile .
1. docker-compose.yml:
---------------------------------------------------------------
version: "3.8"
services:
widefrog:
volumes:
- /path/for/your/downloaded/videos/:/build/media
- /path/for/your/config:/build/app_files
container_name: widefrog
entrypoint: ["/bin/bash"]
image: hub.pi-farm.home64.de/widefrog:latest
---------------------------------------------------------------
2. run the container with following command:
docker compose run --rm widefrog
3. after container start, run widefrog:
3.1: only on first container start:
python widefrog.py && chown -R 1000:1000 .
to create app_files, edit the config.json for your needs
3.2
python widefrog.py <URL>
4. after downloading type following command:
chown -R 1000:1000 . && exit
--root-user-action
apt-get install -y `apt-cache depends openssh-client | awk '/Depends:/{print$2}'`
apt-get download openssh-client
dpkg --unpack openssh-client*.deb
rm /var/lib/dpkg/info/openssh-client.postinst -f
dpkg --configure openssh-client

View File

@@ -0,0 +1,9 @@
version: "3.8"
services:
widefrog:
volumes:
- /home/pi/widefrog-docker/data:/build/media
- /home/pi/widefrog-docker/config:/build/app_files
container_name: widefrog
entrypoint: ["/bin/bash"]
image: hub.pi-farm.home64.de/widefrog:0.63

View File

@@ -0,0 +1,20 @@
#!/bin/bash
folder="/app"
echo "---------------------------------------"
echo "Checking WideFrog installation..."
echo ""
if [ -z "$(ls -A "$folder")" ]; then
echo "Installing WideFrog..."
echo ""
cp -r /build/* /app/
else
echo "WideFrog already installed..."
fi
echo ""
echo "WideFrog-container start complete..."
echo ""
echo "---------------------------------------"
echo ""
echo ""

View File

@@ -0,0 +1,81 @@
#!/bin/bash
apt-get update && apt-get install -y \
wget \
unzip \
nano \
git \
ffmpeg
wget -O widefrog.zip https://files.videohelp.com/u/308780/widefrog_v2_9_0_python_source_code.zip && \
unzip widefrog.zip && \
rm widefrog.zip && \
grep -v '^#' requirements.txt | xargs -n 1 pip install && \
pip install urllib3 --upgrade && \
playwright install && \
chmod +x terminal/*
arch=$(uname -m) && \
if [[ "$arch" == "x86_64" ]]; then
wget https://github.com/nilaoda/N_m3u8DL-RE/releases/download/v0.2.1-beta/N_m3u8DL-RE_Beta_linux-x64_20240828.tar.gz && \
tar -xzf N_m3u8DL-RE_Beta_linux-x64_20240828.tar.gz && \
cp ./N_m3u8DL-RE_Beta_linux-x64/N_m3u8DL-RE . && \
chmod +x N_m3u8DL-RE && \
rm -r N_m3u8DL-RE_Beta_linux-x64 && \
rm N_m3u8DL-RE_Beta_linux-x64_20240828.tar.gz
wget https://github.com/shaka-project/shaka-packager/releases/download/v3.3.0/packager-linux-x64 && \
mv packager-linux-x64 shaka-packager && \
chmod +x shaka-packager
wget https://www.bok.net/Bento4/binaries/Bento4-SDK-1-6-0-641.x86_64-unknown-linux.zip && \
unzip Bento4-SDK-1-6-0-641.x86_64-unknown-linux.zip && \
mv Bento4-SDK-1-6-0-641.x86_64-unknown-linux/bin/mp4decrypt mp4decrypt && \
chmod +x mp4decrypt && \
rm -r Bento4-SDK-1-6-0-641.x86_64-unknown-linux && \
rm Bento4-SDK-1-6-0-641.x86_64-unknown-linux.zip
apt-get install -y mkvtoolnix
elif [[ "$arch" == "aarch64" ]]; then
wget https://github.com/nilaoda/N_m3u8DL-RE/releases/download/v0.2.1-beta/N_m3u8DL-RE_Beta_linux-arm64_20240828.tar.gz && \
tar -xzf N_m3u8DL-RE_Beta_linux-arm64_20240828.tar.gz && \
cp ./N_m3u8DL-RE_Beta_linux-arm64/N_m3u8DL-RE . && \
chmod +x N_m3u8DL-RE && \
rm -r N_m3u8DL-RE_Beta_linux-arm64 && \
rm N_m3u8DL-RE_Beta_linux-arm64_20240828.tar.gz
wget https://github.com/shaka-project/shaka-packager/releases/download/v3.3.0/packager-linux-arm64 && \
mv packager-linux-arm64 shaka-packager && \
chmod +x shaka-packager
cd /tmp/ && \
git clone https://github.com/axiomatic-systems/Bento4.git bento4 && \
cd bento4 && \
apt-get install -y \
ca-certificates \
make \
cmake \
gcc \
g++ && \
rm -rf /tmp/bento4/cmakebuild && \
mkdir -p /tmp/bento4/cmakebuild/arm64-unknown-linux && \
cd /tmp/bento4/cmakebuild/arm64-unknown-linux && \
cmake -DCMAKE_BUILD_TYPE=Release ../.. && \
make -j$(nproc) && \
cp mp4decrypt /build/ && \
cd /build && \
rm -r /tmp/bento4 && \
apt-get install -y mkvtoolnix
fi
echo "export PATH=\$PATH:/build" >> /root/.bashrc
#python widefrog.py
mkdir /build/media
mkdir /build/app_files
apt-get purge -y \
make \
cmake \
gcc \
g++ \
wget \
unzip \
nano \
git