Debian buster compatibility?


Is peertube compatible with debian buster ?
Anything to know before upgrading from stretch to buster ?

Best regards.


We just upgraded the server of It seems to run well on Buster. You just need to follow four extra steps:

First, before the upgrade, to tell Debian to always use NodeJs from nodejs repository, put this in /etc/apt/preferences.d/00Pinning:

Package: nodejs*
Pin: origin
Pin-Priority: 900

Then, change /etc/apt/sources.list.d/nodesource.list from

deb stretch main


deb buster main

(don’t worry, PeerTube is compatible with NodeJs10)

After the upgrade (and a reboot), upgrade your PostgreSQL cluster to version 11. If you can read french, you can look at If you can’t read french, sorry, I didn’t found instructions in english.
It’s basically (use this at your own risks, since there is no explanation here):

pg_dropcluster --stop 11 main
pg_upgradecluster -m dump 9.6 main

Then test and if it works, you can remove PostgreSQL 9.6:

pg_dropcluster 9.6 main --stop
apt-get autoremove --purge postgresql-9.6 

If you use pg_upgradecluster -m upgrade 9.6 main instead of -m dump, you have to do sudo -u postgres reindexdb --all right after it (you may need to start PostgreSQL before the reindexation).

Finally, reinstall the js modules:

sudo systemctl stop peertube && cd /var/www/peertube/peertube-latest/ && sudo -u peertube rm -r node_modules/ && sudo -u peertube yarn install --pure-lockfile && sudo systemctl start peertube

My advice: stop and disable peertube before the upgrade, then enable it after all the extra steps (the fourth one will start it):

# before the upgrade
systemctl stop peertube
systemctl disable peertube
# after the upgrade and all extra steps
systemctl enable peertube

Thanks for your answer !
(and yes, I can read french)


i recently tried to install peertube 3.0.1 on debian 10, but it could when starting peertube, with these lines in journaled:

  > peertube@3.0.1 start /var/www/peertube/versions/peertube-v3.0.1
  > node dist/server
      throw err;
  Error: Cannot find module 'tslib'
      at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
      at Function.Module._load (internal/modules/cjs/loader.js:562:25)
      at Module.require (internal/modules/cjs/loader.js:692:17)
      at require (internal/modules/cjs/helpers.js:25:18)
      at Object.<anonymous> (/var/www/peertube/versions/peertube-v3.0.1/dist/server.js:3:17)
      at Module._compile (internal/modules/cjs/loader.js:778:30)
      at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
      at Module.load (internal/modules/cjs/loader.js:653:32)
      at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
      at Function.Module._load (internal/modules/cjs/loader.js:585:3)
  npm ERR! code ELIFECYCLE
  npm ERR! errno 1
  npm ERR! peertube@3.0.1 start: `node dist/server`

So at first a was running on NodeJS 12, switched back to 10, according to this posting, but that didn’t help either.

So i’m a little sceptical, if debian is the right plattform or maybe i switch back to ubuntu-server 20.04.

But in case there’s is someone here from dev, please have a look at it, maybe there’s an easy fix for porting peertube to debian.

Best regards


I’m running Peertube without problem on debian buster since 2019.


Please reinstall PeerTube using It seems you missed a step