1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/peertube_ynh.git synced 2024-09-03 19:56:29 +02:00
Federated (ActivityPub) video streaming platform using P2P for YunoHost
Find a file
2019-06-18 00:23:58 +02:00
conf Upgrade to 1.3.1 2019-06-17 21:08:10 +02:00
scripts Merge pull request #99 from YunoHost-Apps/testing 2019-06-12 21:05:40 +02:00
.travis.yml Adding automations 2019-05-22 17:55:10 +02:00
check_process Update check_process 2019-06-16 16:05:09 +02:00
LICENSE commits to make the app in working state 2017-12-11 09:58:25 +05:30
manifest.json Upgrade to 1.3.1 2019-06-17 21:08:10 +02:00
pull_request_template.md Update pull_request_template.md 2019-06-13 23:52:30 +02:00
README.md Merge pull request #106 from YunoHost-Apps/testing 2019-06-18 00:23:58 +02:00

PeerTube app for YunoHost

Integration level
Install PeerTube with YunoHost

Overview

What is PeerTube ?

PeerTube is a federated (ActivityPub) video streaming platform using P2P (BitTorrent) directly in the web browser, using WebTorrent.

Why PeerTube ?

We can't build a FOSS video streaming alternatives to YouTube, Dailymotion, Vimeo... with a centralized software. One organization alone cannot have enough money to pay bandwidth and video storage of its server.

So we need to have a decentralized network of servers seeding videos (as Hubzilla YunoHost, Friendica YunoHost,Mastodon YunoHost), Diaspora (Diaspora YunoHost),Funkwhale (Funkwhale YunoHost)). But it's not enough because one video could become famous and overload the server. It's the reason why we need to use a P2P protocol to limit the server load. Thanks to WebTorrent, we can make P2P (thus BitTorrent) inside the web browser, as of today.

Why is that cool ?

Servers are run independently by different people and organizations. They can apply wildly different moderation policies, so you can find or make one that fits your taste perfectly.

By watching a video, you help the hosting provider to broadcast it by becoming a broadcaster of the video yourself. Each instance doesnt need much money to broadcast the videos of its users.

Shipped version: 1.3.1

Screenshots

Demo

Want to see in action?

  • Here are the list of instances ran by people around the world. Be a part of it.

Installation

Following command line examples have been updated for ovh virtual machine, according to indications in Chocobozzz/PeerTube#830 (comment)

If you are NOT hosted on OVH virtual machine or experiencing gyp ERR! configure error, please switch back to master branch

Guidelines

  1. Require dedicated domain like peertube.domain.tld.

  2. No LDAP support (blocked until PeerTube core upstream implements it)

  3. URL can not be changed once selected. Choose the domain wisely.

  4. You need more then 1GB of ram. If you don't have it, please create a swap memory.

    $ dd if=/dev/zero of=/swapfile bs=1024 count=1048576
    $ mkswap /swapfile
    $ swapon /swapfile
    $ echo "/swapfile swap swap defaults 0 0" >> /etc/fstab
    
  5. This app is multi-instance (you can have more then one PeerTube instance running on a YunoHost server)

Installing guide

  1. App can be installed by running following commands:

     $ sudo yunohost app install https://github.com/YunoHost-Apps/peertube_ynh/tree/ovh_fix
     $ cd /var/www/peertube && sudo yarn install --production --pure-lockfile
     $ sudo systemctl restart peertube
    
  2. Admin username is : root.

  3. Admin password will be sent to the email address given at the time of the installation.

  4. TLS and starttls are disabled for the outgoing mails. If you intent to use email address not hosted on your local server,it's advised to have a proper SMTP configured with tls and starttls settings by editing /var/www/peertube/config/production.yml.

Update Guide

  1. App can be updated with the following commands:

      $ sudo yunohost app upgrade -u https://github.com/YunoHost-Apps/peertube_ynh/tree/ovh_fix peertube
      $ cd /var/www/peertube && sudo yarn install --production --pure-lockfile
      $ sudo systemctl restart peertube
    

Dependencies

  • NodeJS, PostgreSQL.
  • On Debian Jessie,backport is added for the ffmpeg package.

Documentation

YunoHost specific features

Supported architectures

  • x86-64b - Build Status
  • ARMv8-A - Build Status
  • Jessie x86-64b - Build Status

Developers info

Only if you want to use a testing branch for coding, instead of merging directly into master. Please do your pull request to the testing branch.

To try the testing branch, please proceed like that.

sudo yunohost app install https://github.com/YunoHost-Apps/peertube_ynh/tree/testing --debug
or
sudo yunohost app upgrade peertube -u https://github.com/YunoHost-Apps/peertube_ynh/tree/testing --debug