Skip to content

Commit

Permalink
Release v24.4
Browse files Browse the repository at this point in the history
## Description

  - Features:
    - Replaced the `Par2` library with `Par2-turbo` which provides faster file recovery on x86/ARM platforms 
    - Better UTF-8 support
    - FreeBSD packaging support
    - the macOS package is now signed and notarized which solves the problem with removable media and excessive permission requests, and also now shipped in .dmg format

  - Bug fixes:
    - Fixed excessive CPU usage by decreasing `cert.pem` certificate loading for TLS connections
    - Fixed password-protected unpacking when the nzb file was added to the queue via command line
    - STATUS page now shows the correct Windows version Windows 7 instead of incorrectly showing Windows XP
    - Fixed duplications on the STATUS page
    - Fixed `nzbget.conf.template` installation path on POSIX
    - Fixed `DaemonUsername` check on QNAP

  - For developers:
    - Fixed `postprocess` tests
    - Removed `Par2` source files from the repository. `CMake` now pulls and builds `Par2-turbo` directly from its repository
  • Loading branch information
dnzbk authored Nov 19, 2024
2 parents 885cfc1 + ce9ac03 commit 1eece59
Show file tree
Hide file tree
Showing 133 changed files with 2,324 additions and 11,891 deletions.
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ nzbget-setup.nsi eol=crlf
windows/package-info.json eol=crlf
windows/resources/resource.h eol=crlf
windows/resources/nzbget.rc eol=crlf
tests/testdata/**/* binary

# Configure GitHub's language detector
lib/* linguist-vendored linguist-language=C++
Expand Down
3 changes: 2 additions & 1 deletion .github/ISSUE_TEMPLATE/01_bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ body:
label: NZBGet Version
description: Which version of NZBGet has this bug?
options:
- v24.4-testing
- v24.5-testing
- v24.4-stable
- v24.3-stable
- v24.2-stable
- v24.1-stable
Expand Down
2 changes: 2 additions & 0 deletions .github/ISSUE_TEMPLATE/02_feature_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ body:
- macOS
- NAS/Synology/QNAP
- Linux/Docker
- FreeBSD
- Android
validations:
required: true
- type: textarea
Expand Down
5 changes: 4 additions & 1 deletion .github/ISSUE_TEMPLATE/03_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ body:
label: NZBGet Version
description: Version of NZBGet for the scope of this issue
options:
- v24.4-testing
- v24.5-testing
- v24.4-stable
- v24.3-stable
- v24.2-stable
- v24.1-stable
Expand All @@ -29,6 +30,8 @@ body:
- macOS
- NAS/Synology/QNAP
- Linux/Docker
- FreeBSD
- Android
validations:
required: true
- type: textarea
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/android.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: android build
name: android build

on:
workflow_call:
Expand All @@ -9,7 +9,7 @@ jobs:
runs-on: [self-hosted, nzbget-android]

steps:

- name: Checkout
uses: actions/checkout@v4
with:
Expand Down
10 changes: 8 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,14 @@ jobs:
build-android:
uses: ./.github/workflows/android.yml

build-freebsd:
uses: ./.github/workflows/freebsd.yml

build-osx:
uses: ./.github/workflows/osx.yml
permissions:
actions: write
secrets: inherit

build-linux-pkg:
uses: ./.github/workflows/linux-pkg.yml
Expand All @@ -42,7 +46,7 @@ jobs:
env:
PRIVATE_KEY: ${{ secrets.PRIVATE_KEY }}
runs-on: ubuntu-latest
needs: [build-windows, build-linux, build-osx, build-android, repack-qnap, build-linux-pkg]
needs: [build-windows, build-linux, build-osx, build-android, build-freebsd, repack-qnap, build-linux-pkg]
permissions:
actions: write
steps:
Expand All @@ -56,6 +60,7 @@ jobs:
mv nzbget-windows-installers/* builds || true
mv nzbget-linux-installers/* builds || true
mv nzbget-android-installers/* builds || true
mv nzbget-freebsd-installers/* builds || true
mv nzbget-osx-installers/* builds || true
mv nzbget-qnap-packages/* builds || true
mv nzbget-deb-packages/* builds || true
Expand All @@ -71,7 +76,7 @@ jobs:
echo "nzbget_signatures({" | tee $SIGS_FILE
echo | tee -a $SIGS_FILE
for FILE in *.exe *.run *.zip *.spk *.qpkg *.deb *.rpm; do
for FILE in *.exe *.run *.zip *.spk *.qpkg *.deb *.rpm *.dmg; do
[ -f $FILE ] || continue
MD5=$(openssl dgst -md5 $FILE | cut -d ' ' -f 2)
Expand Down Expand Up @@ -107,6 +112,7 @@ jobs:
nzbget-windows-installers
nzbget-linux-installers
nzbget-android-installers
nzbget-freebsd-installers
nzbget-osx-installers
nzbget-qnap-packages
Expand Down
47 changes: 47 additions & 0 deletions .github/workflows/freebsd.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: freebsd build

on:
workflow_call:
workflow_dispatch:

jobs:
build:
runs-on: [self-hosted, nzbget-freebsd]

steps:

- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Build
run: |
BUILD_PARAMS="freebsd bin installer"
if [ "$GITHUB_REF_NAME" == "develop" ] || [ "$GITHUB_REF_NAME" == "main" ]; then
BUILD_PARAMS="$BUILD_PARAMS debug release"
else
BUILD_PARAMS="$BUILD_PARAMS release"
fi
if [ "$GITHUB_REF_NAME" != "main" ]; then
BUILD_PARAMS="$BUILD_PARAMS testing"
fi
bash linux/build-nzbget.sh $BUILD_PARAMS
- name: Rename build artifacts
if: github.ref_name != 'main' && github.ref_name != 'develop'
run: |
cd build
SUFFIX="-${GITHUB_REF_NAME/\//-}-bin-freebsd.run"
for FILE in *.run; do
[ -f $FILE ] || continue
NEW_FILE=${FILE/-bin-freebsd.run/$SUFFIX}
mv $FILE $NEW_FILE
done
- name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: nzbget-freebsd-installers
path: build/*.run
retention-days: 5
54 changes: 45 additions & 9 deletions .github/workflows/osx.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,12 @@ jobs:
runs-on: [self-hosted, macos, x64]

steps:

- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Build
run: |
if [ "$GITHUB_REF_NAME" != "main" ]; then
Expand Down Expand Up @@ -45,12 +45,12 @@ jobs:
runs-on: [self-hosted, macos, arm64]

steps:

- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Build
run: |
if [ "$GITHUB_REF_NAME" != "main" ]; then
Expand All @@ -77,23 +77,58 @@ jobs:
path: build/*-universal.zip
retention-days: 5

sign-universal:
runs-on: [self-hosted, macos, arm64]
needs: [build-universal]

steps:

- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Download build artifacts
uses: actions/download-artifact@v4

- name: Sign and notarize
env:
NOTARIZE: ${{ vars.OSX_NOTARIZE }}
KEYCHAIN_PASSWORD: ${{ secrets.OSX_KEYCHAIN_PASSWORD }}
DEVELOPER_IDENTITY: ${{ secrets.OSX_DEVELOPER_IDENTITY }}
NOTARY_KEY_ID: ${{ secrets.OSX_NOTARY_KEY_ID }}
NOTARY_KEY_ISSUER: ${{ secrets.OSX_NOTARY_KEY_ISSUER }}
run: |
mkdir -p build
cp osx/sign/* build
cp nzbget-osx-installers-universal/*.zip build/
cd build
bash nzbget-sign.sh *.zip
- name: Upload signed build artifacts
uses: actions/upload-artifact@v4
with:
name: nzbget-osx-installers-universal-signed
path: build/*.dmg
retention-days: 5

combine-osx-artifacts:
runs-on: ubuntu-latest
needs: [build-x64, build-universal]
needs: [build-x64, sign-universal]
permissions:
actions: write
steps:

- name: Download build artifacts
uses: actions/download-artifact@v4

- name: Combine artifacts
run: |
mkdir -p nzbget-osx-installers
mv nzbget-osx-installers-x64/* nzbget-osx-installers
mv nzbget-osx-installers-universal/* nzbget-osx-installers
mv nzbget-osx-installers-universal-signed/* nzbget-osx-installers
- name: Upload build artifacts with signatures
- name: Upload combined build artifacts
uses: actions/upload-artifact@v4
with:
name: nzbget-osx-installers
Expand All @@ -106,3 +141,4 @@ jobs:
name: |
nzbget-osx-installers-x64
nzbget-osx-installers-universal
nzbget-osx-installers-universal-signed
1 change: 0 additions & 1 deletion .github/workflows/windows-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ name: windows tests
on:
push:
branches:
- feature/*
- develop
- main
pull_request:
Expand Down
Loading

0 comments on commit 1eece59

Please sign in to comment.