From 69be43b53c88b283ee4b9fb042cb90675c8347ce Mon Sep 17 00:00:00 2001 From: Pierre-Antoine Rault Date: Wed, 28 Feb 2018 16:41:02 +0100 Subject: [PATCH 01/45] Update to latest release Instead of relying on the `develop` branch of PeerTube, rely on the releases. This implies a few changes in the way we launch PeerTube and since then, a few configuration options and dependencies have been added. --- README.md | 41 +- conf/app.src | 6 +- conf/backports.list | 1 + conf/nginx.conf | 2 +- conf/production.yaml | 21 +- conf/systemd.service | 2 +- conf/yarn.list | 1 + conf/yarn.lock | 7927 ------------------------------------------ manifest.json | 19 +- scripts/install | 72 +- 10 files changed, 107 insertions(+), 7985 deletions(-) create mode 100644 conf/backports.list create mode 100644 conf/yarn.list delete mode 100644 conf/yarn.lock diff --git a/README.md b/README.md index 54bfb4e..fe2acf5 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,24 @@ # PeerTube app for YunoHost [![Install Peertube with YunoHost](https://install-app.yunohost.org/install-with-yunohost.png)](https://install-app.yunohost.org/?app=Peertube)

-## Installation(Read it) +## Installation 1. Require dedicated domain like **peertube.domain.tld**. - 2. No LDAP support - 3. No Multi-instance - 4. No change-url possible. - 5. Peertube is under development stage,don't use it for production - 6. **Install the app by following command:** + 1. No LDAP support (blocked until upstream implements it) + 1. No Multi-instance + 1. No url change possible + 1. Peertube is under development stage, **don't use it for production** + 1. Take notice that this YunoHost package *claims* the following features: + - [x] Install + - [x] Remove + - [ ] Upgrade + - [ ] Backup + - [ ] Restore - $ yunohost app install https://github.com/YunoHost-Apps/peertube_ynh - 7. **root** is the admin username and the admin email is the email address given at the time of installation. - 8. **After installation change the password by this command:** + 1. **Install the app by following command:** + + $ sudo yunohost app install https://github.com/YunoHost-Apps/peertube_ynh + 1. **root** is the admin username and the admin email is the email address given at the time of installation. + 1. **After installation change the password by this command:** $ cd /var/www/peertube && NODE_ENV=production npm run reset-password -- -u root @@ -29,14 +36,15 @@ Decentralized video streaming platform using P2P (BitTorrent) directly in the we Want to see in action? - * [Demo server](http://peertube.cpy.re) + * [Demo](http://peertube.cpy.re) * [Video](https://peertube.cpy.re/videos/watch/f78a97f8-a142-4ce1-a5bd-154bf9386504) to see how the "decentralization feature" looks like + * [Video](https://peertube.valvin.fr/videos/watch/e510b421-92f3-4153-aaf9-baf5166f43e8) showcasing A2HS - ## Why +## Why 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 (as [Hubzilla](https://project.hubzilla.org/page/hubzilla/hubzilla-project)([Hubzilla YunoHost](https://github.com/YunoHost-Apps/hubzilla_ynh)),[Friendica](http://friendi.ca/)([Friendica YunoHost](https://github.com/YunoHost-Apps/friendica_ynh)),[Mastodon](https://github.com/tootsuite/mastodon)([Mastodon YunoHost](https://github.com/YunoHost-Apps/mastodon_ynh)),[Diaspora](https://github.com/diaspora/diaspora)([Diaspora YunoHost](https://github.com/YunoHost-Apps/diaspora_ynh))). +So we need to have a decentralized network (as [Hubzilla](https://project.hubzilla.org/page/hubzilla/hubzilla-project) ([Hubzilla YunoHost](https://github.com/YunoHost-Apps/hubzilla_ynh)), [Friendica](http://friendi.ca/) ([Friendica YunoHost](https://github.com/YunoHost-Apps/friendica_ynh)), [Mastodon](https://github.com/tootsuite/mastodon) ([Mastodon YunoHost](https://github.com/YunoHost-Apps/mastodon_ynh)), [Diaspora](https://github.com/diaspora/diaspora) ([Diaspora YunoHost](https://github.com/YunoHost-Apps/diaspora_ynh))). 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](https://github.com/feross/webtorrent), we can make P2P (thus bittorrent) inside the web browser right now. @@ -50,11 +58,6 @@ Thanks to [WebTorrent](https://github.com/feross/webtorrent), we can make P2P (t * PostgreSQL * FFmpeg +## LICENSE -## Features - -- [X] Install -- [X] Remove -- [ ] Upgrade -- [ ] Backup -- [ ] Restore +PeerTube is licensed under the GNU Affero General Public License v3.0. diff --git a/conf/app.src b/conf/app.src index 9d2ebdb..d1807f5 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,6 +1,6 @@ -SOURCE_URL=https://github.com/Chocobozzz/PeerTube/archive/develop.zip -SOURCE_SUM=f7266fc1cb2a127902707ccc0978b4ae5f7a08c1e089feb479a78e3410872ec0 +SOURCE_URL=https://github.com/Chocobozzz/PeerTube/releases/download/v0.0.29-alpha/peertube-v0.0.29-alpha.zip +SOURCE_SUM=91fff3e29c35e795bfab49f9753f8c034456e4d9bcbd8d438836071f799832c3 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=zip -SOURCE_IN_SUBDIR= +SOURCE_IN_SUBDIR=true SOURCE_FILENAME= diff --git a/conf/backports.list b/conf/backports.list new file mode 100644 index 0000000..c204862 --- /dev/null +++ b/conf/backports.list @@ -0,0 +1 @@ +deb http://httpredir.debian.org/debian jessie-backports main diff --git a/conf/nginx.conf b/conf/nginx.conf index 91aeee4..7aa8e7b 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -8,7 +8,7 @@ location / { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # For the video upload - client_max_body_size 2G; + client_max_body_size 4G; } # Bypass PeerTube webseed route for better performances diff --git a/conf/production.yaml b/conf/production.yaml index 74a1063..8102f3f 100644 --- a/conf/production.yaml +++ b/conf/production.yaml @@ -15,9 +15,15 @@ database: username: 'peertube' password: '__db_pwd__' +# Your object store +redis: + hostname: 'localhost' + port: 6379 + auth: null + # From the project root directory storage: - certs: 'certs/' + avatars: 'avatars/' videos: 'videos/' logs: 'logs/' previews: 'previews/' @@ -25,9 +31,12 @@ storage: torrents: 'torrents/' cache: 'cache/' +log: + level: 'info' # debug/info/warning/error + cache: previews: - size: 100 # Max number of previews you want to cache + size: 1 # Max number of previews you want to cache admin: email: '__email__' @@ -52,3 +61,11 @@ transcoding: 480p: true 720p: true 1080p: true + +instance: + name: 'PeerTube' + description: 'Welcome to this PeerTube instance!' # Support markdown + terms: 'No terms for now.' # Support markdown + customizations: + javascript: '' # Directly your JavaScript code (without