-
Notifications
You must be signed in to change notification settings - Fork 18
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
30 changed files
with
842 additions
and
18 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
name: qnap repack | ||
|
||
on: | ||
workflow_call: | ||
inputs: | ||
external_call: | ||
description: 'To distinguish workflow_call from regular push / workflow_dispatch' | ||
type: boolean | ||
required: false | ||
default: false | ||
workflow_dispatch: | ||
|
||
jobs: | ||
build-linux: | ||
uses: ./.github/workflows/linux.yml | ||
if: ${{ inputs.external_call == false }} | ||
|
||
repack: | ||
runs-on: [self-hosted, linux] | ||
needs: [build-linux] | ||
if: always() | ||
permissions: | ||
actions: write | ||
|
||
steps: | ||
|
||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: 0 | ||
|
||
- name: Download build artifacts | ||
uses: actions/download-artifact@v4 | ||
|
||
- name: Repack linux installer for QNAP | ||
run: | | ||
export PATH="$PATH:/usr/share/QDK/bin" | ||
bash qnap/repack-nzbget.sh | ||
- name: Rename build artifacts | ||
if: github.ref_name != 'main' | ||
run: | | ||
VERSION=$(cat configure.ac | grep AC_INIT | cut -d , -f 2 | xargs) | ||
NEW_VERSION="$VERSION-testing-$(date '+%Y%m%d')" | ||
cd /qnap/nzbget/build/ | ||
for FILE in *.qpkg; do | ||
[ -f $FILE ] || continue | ||
NEW_FILE=${FILE/$VERSION/$NEW_VERSION} | ||
sudo mv $FILE $NEW_FILE | ||
done | ||
- name: Upload build artifacts | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: nzbget-qnap-packages | ||
path: /qnap/nzbget/build/*.qpkg | ||
retention-days: 5 | ||
|
||
- name: Delete unneded linux artifacts | ||
if: ${{ inputs.external_call == false }} | ||
uses: geekyeggo/delete-artifact@v4 | ||
with: | ||
name: | | ||
nzbget-linux-installers |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
name: qnap build | ||
|
||
on: | ||
workflow_call: | ||
workflow_dispatch: | ||
|
||
jobs: | ||
build: | ||
runs-on: [self-hosted, linux] | ||
|
||
steps: | ||
|
||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: 0 | ||
|
||
- name: Save version for non-release to env | ||
if: github.ref_name != 'main' | ||
run: | | ||
VERSION=$(cat configure.ac | grep AC_INIT | cut -d , -f 2 | xargs) | ||
echo VERSION=$VERSION >> $GITHUB_ENV | ||
- name: Build | ||
run: | | ||
export PATH="$PATH:/usr/share/QDK/bin" | ||
bash qnap/build-nzbget.sh | ||
- name: Rename build artifacts | ||
if: github.ref_name != 'main' | ||
run: | | ||
cd /qnap/nzbget/build/ | ||
NEW_VERSION="$VERSION-testing-$(date '+%Y%m%d')" | ||
for FILE in *.qpkg; do | ||
[ -f $FILE ] || continue | ||
NEW_FILE=${FILE/$VERSION/$NEW_VERSION} | ||
sudo mv $FILE $NEW_FILE | ||
done | ||
- name: Upload build artifacts | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: nzbget-qnap-native-packages | ||
path: /qnap/nzbget/build/*.qpkg | ||
retention-days: 5 | ||
|
||
- name: Cleanup | ||
run: | | ||
rm -rf /qnap/nzbget/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
# QNAP nzbget packages | ||
|
||
We support QNAP via native qpkg packages, built with QNAP toolchains (only x86/x86_64/arm_64 QNAP architectures) and buildroot qpkg, repacked from linux installer (all QNAP architectures) | ||
|
||
## Installing | ||
|
||
Prerequsites: Enable installation of applications without digital signature (`AppCenter` - `Settings` - `Allow installation of applications without a valid digital signature`) | ||
|
||
To install nzbget for QNAP download qpkg for your architecture, then from QNAP AppCenter select `Install Manually` - browse for downloaded qpkg and press `Install` | ||
For digital signature warning select `I understand the risks and want to install this application` and press `Install`. | ||
After installation - Press `Open` in AppCenter or click NZBGet icon on desktop. Default login/password for WebUI | ||
``` | ||
Login: nzbget | ||
Password: tegbzn6789 | ||
``` | ||
|
||
## Configuring | ||
|
||
Change `PATHS` - `MainDir` to point to shared folder location, for example | ||
``` | ||
/share/CACHEDEV1_DATA/Public/nzbget | ||
``` | ||
By default, nzbget will download all files to package directory, inaccessible from shares. | ||
|
||
## Extensions | ||
|
||
QNAP packaged with python2. To support python3 extensions, need to install Python3 package from QNAP Store, and add to `EXTENSION SCRIPTS` - `ShellOverride` path to python3 executable like this: | ||
``` | ||
.py=/share/CACHEDEV1_DATA/.qpkg/Python3/python3/bin/python3; | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
# About | ||
|
||
"build-nzbget.sh" is a bash script which is used to build nzbget QNAP packages. | ||
|
||
|
||
# Prerequisites | ||
|
||
- linux x86_64 host (Ubuntu 22.04 LTS for example) | ||
|
||
We support building nzbget for QNAP for x86 / x86_64 / arm_64 architectures only, because other platforms toolchains is too old (nzbget need gcc 4.9+ for building). | ||
|
||
- download x86/x86_64 toolchains from http://download.qnap.com/dev/Toolchain/QNAP_cross_toolchains_64.20160606.tar | ||
- download arm_64 toolchain from http://download.qnap.com/dev/Toolchain/aarch64-QNAP-linux-gnu.tgz | ||
- extract toolchains to $QNAP_ROOT/toolchain (default - /qnap/toolchain), needed directory structure for script: | ||
``` | ||
/qnap/toolchain | ||
├── aarch64 | ||
│ └── cross-tools | ||
├── i686 | ||
│ ├── cross-tools | ||
│ └── fs | ||
└── x86_64 | ||
├── cross-tools | ||
└── fs | ||
``` | ||
- install QDK from `https://github.com/qnap-dev/QDK` | ||
``` | ||
git clone https://github.com/qnap-dev/QDK | ||
cd QDK | ||
sed 's|python|python3|' -i InstallToUbuntu.sh | ||
sudo ./InstallToUbuntu.sh install | ||
``` | ||
|
||
# Building NZBGet | ||
|
||
From cloned repository run | ||
``` | ||
bash qnap/build-nzbget.sh | ||
``` | ||
|
||
# Output files | ||
|
||
- /qnap/nzbget/build/*.qpkg - one file per platform |
Oops, something went wrong.