NCDownloader is broken on Nextcloud 33 due to deprecated API calls. I've fixed the compatibility issues for Youtube-dl

NCDownloader is broken on Nextcloud 33 due to deprecated API calls. I’ve fixed the compatibility issues and published a working fork at https://github.com/wolfravenous/ncdownloader — tested on Ubuntu 22, PHP 8.3, Nextcloud 33.

This code is tested to work for Youtube-DL and m4a. files. I have not tested anything to do with Aria2, HTTP/MAGNET, or Search Torrents, as I do not use those features of the app. Any one is welcome to download and test and provide feedback. Also, I had to manually install the youtube-dl binary using the commands below:

mkdir -p /var/www/nextcloud/apps/ncdownloader/bin

wget -O /var/www/nextcloud/apps/ncdownloader/bin/yt-dlp https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp

chmod 755 /var/www/nextcloud/apps/ncdownloader/bin/yt-dlp

sudo chown www-data:www-data /var/www/nextcloud/apps/ncdownloader/bin/yt-dlp

ls -la /var/www/nextcloud/apps/ncdownloader/bin/

Hi,

I’m interested in using your fork! Im still on Nextcloud 32 but I’d like to think ahead.
How can i set this up? Do i install the normal ncdownloader first?

Im not sure how i can install a fork directly.

Thanks in advance!

Hi @iewl , First let me state there might be other ways than how I do things. But below is what I would do, I am also going to update the ReadMe file on my Github fork with the below instructions.

Here’s a clean install guide for your fork:


Installing wolfravenous/ncdownloader on Nextcloud 33

Requirements

  • Nextcloud 33

  • Ubuntu 22.04

  • PHP 8.3

  • Command line access with sudo

Installation

1. Navigate to your Nextcloud apps directory and clone the fork:

cd /var/www/nextcloud/apps
sudo git clone https://github.com/wolfravenous/ncdownloader.git

2. Set correct ownership:

sudo chown -R www-data:www-data /var/www/nextcloud/apps/ncdownloader

3. Create the bin directory and download yt-dlp:

sudo mkdir -p /var/www/nextcloud/apps/ncdownloader/bin
sudo wget -O /var/www/nextcloud/apps/ncdownloader/bin/yt-dlp https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp
sudo chmod 755 /var/www/nextcloud/apps/ncdownloader/bin/yt-dlp
sudo chown www-data:www-data /var/www/nextcloud/apps/ncdownloader/bin/yt-dlp

4. Install Node.js if not already installed:

curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install -y nodejs

5. Build the frontend assets:

cd /var/www/nextcloud/apps/ncdownloader
sudo npm install
sudo npm run build

6. Enable the app:

sudo -u www-data php8.3 /var/www/nextcloud/occ app:enable ncdownloader

Scanning downloaded files

After downloading files, run this to make them visible in Nextcloud — replace yourusername and the path with your own:

sudo -u www-data php8.3 /var/www/nextcloud/occ files:scan yourusername --path="/yourusername/files/Music"

Updating yt-dlp manually

If the in-app update button doesn’t work, update yt-dlp manually:

sudo wget -O /var/www/nextcloud/apps/ncdownloader/bin/yt-dlp https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp
sudo chmod 755 /var/www/nextcloud/apps/ncdownloader/bin/yt-dlp
sudo chown www-data:www-data /var/www/nextcloud/apps/ncdownloader/bin/yt-dlp


Hi Lus,

Many thanks for fixing the app. But since I’ve moved to the AIO version of Nextcloud, your guide does not quite work. I’m not a programmer at all…
I wonder if you can make a “workable” and “installable” app for the NC store (replacing the current broken app: NCDownloader - Apps - App Store - Nextcloud ) from your changes, so all could again benefit easily from your work.
many thanks for your good work and I’m looking forward to your ideas..
roman

Hi Roman,
We have recently added the app to the online app store. You can find it here.

We are still working on trying to improve the app, with il10n and in app instructions, however, the current app has been tested and works with NC 34.0.1 and php8.4 on a Debian based Linux system (Ubuntu 22.04 LTS).