Package Details: peertube 4.1.1-1

Git Clone URL: (read-only, click to copy)
Package Base: peertube
Description: ActivityPub-federated video streaming platform using P2P directly in your web browser
Upstream URL:
Keywords: hls p2p self-hosted torrent video
Licenses: AGPL
Submitter: daftaupe
Maintainer: daftaupe (rigelk)
Last Packager: daftaupe
Votes: 24
Popularity: 0.30
First Submitted: 2018-04-11 19:46 (UTC)
Last Updated: 2022-03-18 15:18 (UTC)

Pinned Comments

daftaupe commented on 2021-12-14 22:09 (UTC)

The following migration script has to be run on a running instance after moving to 4.0.0 cd /usr/share/webapps/peertube/ && sudo -u peertube NODE_CONFIG_DIR=/etc/peertube NODE_ENV=production node dist/scripts/migrations/peertube-4.0.js

Adapted from the official release announce

rigelk commented on 2020-06-18 13:32 (UTC)

Please note that the package now verifies the release signature against the lead developer's key, which you can find here:

Latest Comments

Ta180m commented on 2022-04-19 21:44 (UTC)

I have the same issue. nginx is unable to access any of the PeerTube files so all the images on my instance are not loading. The peertube.tmpfiles file was introduced in this commit and should probably modified to mode 0755 or at least 0750. (With mode 0750, you can add nginx to the peertube group)

kauron commented on 2022-04-13 12:59 (UTC)

I think that there is an error with my configuration or with peertube.tmpfiles: the folders within /var/lib/peertube/storage have mode 0700 and are inaccessible to nginx. Is nginx supposed to run under the peertube user? Or should the tmpfiles configuration set the mode to 0701?

daftaupe commented on 2021-12-20 08:55 (UTC)

It should now be possible to use latest nodejs instead of the lts versions only. That message makes it more obvious than just bumping the release version of the package, I realize.

rcrath commented on 2021-12-16 04:44 (UTC)

Thanks for maintaining this important package @daftaupe. Since it actually compiles under 17, and it is arch, which always uses the latest pretty quickly, as opposed to Debian, etc, would it be possible to bump the release number? I hated replacing my whole nodejs with the LTS as it does not seem to be within my skills to install and run both. So far, it has not broken anything but since arch is bleeding edge, maybe you would consider an exception to upstream since it does in fact compile with 17 according to @Ta180m? Thanks for considering.

daftaupe commented on 2021-12-15 09:01 (UTC)

The documentation at states the following only LTS versions of external dependencies are supported.

Ta180m commented on 2021-12-15 01:06 (UTC)

Is there any reason why this package requires an LTS version of Node.js? I compiled it with Node.js 17 and it seems to work fine and I'm pretty sure upstream supports all Node versions above and including 12.

daftaupe commented on 2021-12-14 22:09 (UTC)

The following migration script has to be run on a running instance after moving to 4.0.0 cd /usr/share/webapps/peertube/ && sudo -u peertube NODE_CONFIG_DIR=/etc/peertube NODE_ENV=production node dist/scripts/migrations/peertube-4.0.js

Adapted from the official release announce

cgirard commented on 2021-03-25 15:45 (UTC)

Seems it needs nodejs<16 instead of nodejs<=15 for dependency resolution to correctly works.

mathben commented on 2021-03-12 06:41 (UTC) (edited on 2021-03-12 06:41 (UTC) by mathben)

[localhost:443] 2021-03-12 01:39:15.518 info: Database peertube_prod is ready. [localhost:443] 2021-03-12 01:39:15.526 error: Cannot install application. { "err": { "stack": "Error: ENOENT: no such file or directory, mkdir", "message": "ENOENT: no such file or directory, mkdir", "errno": -2, "code": "ENOENT", "syscall": "mkdir" } }

mathben commented on 2021-03-12 06:20 (UTC) (edited on 2021-03-12 06:57 (UTC) by mathben)

There is no folder /var/lib/peertube/storage/logs got Error: ENOENT: no such file or directory, mkdir '/var/lib/peertube/storage/logs'

peter.babic commented on 2021-02-20 11:39 (UTC)

There is no folder /usr/share/webapps/peertube/dist/server/tools/, consequently the file /usr/bin/peertube won't run, because it wants to run peertube.js from that folder.

daftaupe commented on 2020-09-19 18:01 (UTC)

@rcrath, nodejs 14 is not supported yet so we have to keep the check in the package.

rcrath commented on 2020-09-15 04:20 (UTC)

fails because of conflict between need for "nodejs<13" and my installed version, nodejs 14, which will break other things if uninstalled.

rigelk commented on 2020-06-18 13:32 (UTC)

Please note that the package now verifies the release signature against the lead developer's key, which you can find here:

rigelk commented on 2020-06-18 13:30 (UTC) (edited on 2020-07-01 00:13 (UTC) by rigelk)

@cgirard @ChrisMorgan thanks for your suggestions, I had not considered that possibility - I just updated the PKGBUILD to reflect the current support of PeerTube for nodejs versions.

ChrisMorgan commented on 2020-06-18 09:07 (UTC) (edited on 2020-06-18 09:07 (UTC) by ChrisMorgan)

It would be better for it to depend not on nodejs-lts-dubnium or nodejs-lts-erbium, but on nodejs>=10, nodejs<13.

cgirard commented on 2020-06-18 09:05 (UTC)

Could you consider switching to nodejs-lts-erbium? It works fine as far as I can tell.

rigelk commented on 2020-05-30 08:36 (UTC)

@daftaupe @ChrisMorgan, we might just split have a second package peertube-dev to differentiate both options, if that sounds better.

daftaupe commented on 2020-05-30 08:19 (UTC) (edited on 2020-05-30 08:36 (UTC) by daftaupe)


rigelk removed the --production flag because "CLI dependencies are part of the development dependencies" and this is a really good reason. I haven't had the time to check if it's still needed now to get the admin tools to build (I'm only maintaining the package, I don't own an instance at the moment).

I didn't use .tar.xz because, for some reason, I couldn't build properly from it at the beginning, I can't remember what was wrong though.

I'll see about the !strip option when the next release is out.

Also I'm aware that there are issue with applying the configuration from the web interface, no need to add a comment on that.

ChrisMorgan commented on 2020-05-29 19:22 (UTC)

This package is positively enormous at present (approaching 2GB), and it doesn’t need to be.

Steps that should be taken:

  1. On the yarn install invocation, add --production per the official instructions. This saves a lot of download and installation time and 1GB of package size. That still leaves it at around 600MB, which is in my opinion atrociously large, but is what upstream gives you.

  2. Add options=('!strip'), because there are no binaries for it to strip but it takes ages going through all the zillions of files. (Sure, there are less after the previous step, but still a lot, and it takes a lot of time.)

There are other major opportunities for space savings which I’ve written up at

For the next release, I also believe you should be able to use the .tar.xz source instead of .zip, which halves the source download (saving 50MB). I’m guessing this wasn’t done in the past because the 2.1.1 .tar.xz looks too small to be realistic, so is something missing? Well, the 2.2.0-rc.1 release .tar.xz looks a realistic size relative to the zip file.

cgirard commented on 2020-03-03 16:03 (UTC)

Thank you. I have just tested to build and run it with nodejs-lts-erbium and everything seems to work fine.

rigelk commented on 2020-03-02 14:03 (UTC)

@cgirard: I found time to update the package - directly to 2.1.1 - sorry about the delay!

cgirard commented on 2020-02-27 13:13 (UTC)

@rigelk: OK, no problem. If you need any help, let me know. In the meantime, 2.1.1 has been released

rigelk commented on 2020-02-24 17:07 (UTC)

@cgirard I simply didn't find time to update it yet.

cgirard commented on 2020-02-24 15:13 (UTC)

Hello @daftaupe and @rigelk is there anything blocking the update?

ne-vlezay80 commented on 2019-07-11 16:40 (UTC) (edited on 2019-07-11 16:41 (UTC) by ne-vlezay80)

`[peertube@peertube peertube]$ export NODE_CONFIG_DIR=/etc/peertube/
[peertube@peertube peertube]$ npm start

peertube@1.3.1 start /usr/share/webapps/peertube node dist/server

WARNING: No configurations found in configuration directory:/etc/peertube/ WARNING: To disable this warning set SUPPRESS_NO_CONFIG_WARNING in the environment. /usr/share/webapps/peertube/dist/server/initializers/config.js:211 throw new Error('Invalid config source.'); ^

Error: Invalid config source. at getLocalConfigFilePath (/usr/share/webapps/peertube/dist/server/initializers/config.js:211:15) at Object.<anonymous> (/usr/share/webapps/peertube/dist/server/initializers/config.js:9:18) at Module._compile (module.js:653:30) at Object.Module._extensions..js (module.js:664:10) at Module.load (module.js:566:32) at tryModuleLoad (module.js:506:12) at Function.Module._load (module.js:498:3) at Module.require (module.js:597:17) at require (internal/module.js:11:18) at Object.<anonymous> (/usr/share/webapps/peertube/dist/server/helpers/logger.js:6:18) npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! peertube@1.3.1 start: node dist/server npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the peertube@1.3.1 start script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above.`

rigelk commented on 2019-02-25 15:09 (UTC) (edited on 2019-02-25 15:11 (UTC) by rigelk)

I just added dependencies required for the remote tools to work. Sadly, it increases the package size a lot (since CLI dependencies are part of the development dependencies), but until that is mitigated upstream, that is the only way.

Now at least we can all use the CLI :)

daftaupe commented on 2019-02-20 14:28 (UTC)

@ALSimon, last push should fix your issue.

ALSimon commented on 2019-02-15 09:59 (UTC)

@daftaupe, on upstream source, the configuration file is in peertube directory, not in /etc. So they don't need to access /etc and can use ProtectSystem=full. It's arch's PKGBUILD which ask to move the config file to /etc and may change ProtectSystem for this working.

daftaupe commented on 2019-02-06 22:13 (UTC)

@ALSimon, the service file comes from upstream. You better check with the Peertube project directly.

ALSimon commented on 2019-02-06 22:03 (UTC) (edited on 2019-02-06 22:05 (UTC) by ALSimon)

Please change ProtectSystem=full to ProtectSystem=true in /usr/lib/systemd/system/peertube.service. With this package, configuration is intalled in /etc/peertube. With ProtectSystem=full, /etc/ is mounted as readonly and cannot be updated in admin UI.

rigelk commented on 2019-02-06 13:32 (UTC)

please double check the breaking changes present in the 1.2.0 release (mainly new configurations to add to your production.yaml):

mkoppmann commented on 2018-09-13 19:46 (UTC)

@rigelk: Awesome, thank you very much :)

rigelk commented on 2018-09-13 10:08 (UTC)

@mkoppmann: now fixed upstream - it was an incompatibility of bcrypt >= 3.x with Node 8.12 specifically (downgrading to Node 8.11.x solved the problem) - they made a new release and I updated accordingly.

mkoppmann commented on 2018-09-11 21:31 (UTC)

Can’t install this package currently. It fails at installing the bcrypt@3.0.0 module. This is because Nodejs 10 is required for that.

flacks commented on 2018-07-13 21:17 (UTC)

@daftaupe, You're welcome, thank you! :)

daftaupe commented on 2018-07-12 18:51 (UTC)

@flacks, this should be fixed now, thanks for reporting these issues :)

flacks commented on 2018-07-12 08:32 (UTC)

The peertube user should also own all of /etc/peertube so that the web UI can write to production.yml.

flacks commented on 2018-07-12 06:48 (UTC) (edited on 2018-07-12 08:30 (UTC) by flacks)

Nice! npm is also a missing run-time dependency.

daftaupe commented on 2018-07-11 09:17 (UTC)

@flacks : I've added git as a makedepend and removed nginx as a dependency as people could choose another reverse-proxy.

flacks commented on 2018-06-29 20:39 (UTC)

Git is a missing makedepend

flacks commented on 2018-06-28 19:01 (UTC)

Any particular reason why nginx-mainline is required instead of regular nginx?

daftaupe commented on 2018-06-19 20:52 (UTC)

@sapient, it should be ok now.

sapient commented on 2018-06-19 18:02 (UTC)

the sha256sum for peertube.install needs to be updated.