X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=support%2Fdoc%2Fdependencies.md;h=c551b669d9322406477e794d651bd89e68e980d6;hb=9a12f169c15b638fe78cf6e85a1993550a25e404;hp=66b9190eb744313fc9cc0b4fe9a8ea7c52b5d408;hpb=4c86a254a5d315ebcfdbc88927b42c2d06e8f1c7;p=github%2FChocobozzz%2FPeerTube.git diff --git a/support/doc/dependencies.md b/support/doc/dependencies.md index 66b9190eb..c551b669d 100644 --- a/support/doc/dependencies.md +++ b/support/doc/dependencies.md @@ -13,13 +13,13 @@ [https://certbot.eff.org/all-instructions](https://certbot.eff.org/all-instructions) 4. Install NodeJS 8.x (current LTS): [https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions](https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions) - 5. Install yarn: + 5. Install yarn, and be sure to have a recent version (>= 1.5.1, the latest release): [https://yarnpkg.com/en/docs/install#linux-tab](https://yarnpkg.com/en/docs/install#linux-tab) 6. Run: ``` $ sudo apt update -$ sudo apt install nginx ffmpeg postgresql openssl g++ make redis-server git +$ sudo apt install nginx ffmpeg postgresql postgresql-contrib openssl g++ make redis-server git $ ffmpeg -version # Should be >= 3.x $ g++ -v # Should be >= 5.x ``` @@ -54,79 +54,108 @@ $ sudo pacman -S nodejs yarn ffmpeg postgresql openssl redis git wget unzip pyth $ sudo yum update $ sudo yum install epel-release centos-release-scl $ sudo yum update -$ sudo yum install nginx postgresql postgresql-server openssl gcc-c++ make redis git devtoolset-6 +$ sudo yum install nginx postgresql postgresql-server postgresql-contrib openssl gcc-c++ make redis git devtoolset-7 ``` - 5. You need to use a more up to date version of G++ in order to run the yarn install command, hence the installation of devtoolset-6. + 5. You need to use a more up to date version of G++ in order to run the yarn install command, hence the installation of devtoolset-7. ``` -$ sudo scl devtoolset-6 bash +$ sudo scl enable devtoolset-7 bash ``` -## FreeBSD - -On a fresh install of [FreeBSD](https://www.freebsd.org), new system or new jail: - - 1. edit `/etc/pkg/FreeBSD.conf` to use latest instead quaterly (installation was tested with the latest repository), as root: +Later when you invoke any node command, please prefix them with `CC=/opt/rh/devtoolset-7/root/usr/bin/gcc CXX=/opt/rh/devtoolset-7/root/usr/bin/g++`, such as with: ``` -# ee /etc/pkg/FreeBSD.conf +$ sudo -H -u peertube CC=/opt/rh/devtoolset-7/root/usr/bin/gcc CXX=/opt/rh/devtoolset-7/root/usr/bin/g++ yarn install --production --pure-lockfile ``` - change this line (11): - -``` - url: "pkg+http://pkg.FreeBSD.org/${ABI}/quaterly", -``` - - to: - -``` - url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest", -``` +## FreeBSD - 2. bootsrap pkg, initialize db and install peertube's dependencies, always as root (sudo not yet installed): +On a fresh install of [FreeBSD](https://www.freebsd.org), new system or new jail: + 1. bootstrap pkg, initialize db and install peertube's dependencies, always as root (sudo not yet installed): ``` # pkg # pkg update # pkg install -y sudo bash wget git python nginx pkgconf vips postgresql96-server redis openssl node npm yarn ffmpeg unzip ``` - 3. Allow users in the wheel group (hope you don't forgot to add your user on wheel group!) to use sudo - + 2. Allow users in the wheel group (hope you don't forgot to add your user on wheel group!) to use sudo ``` # visudo ``` - Uncomment the line 90 - + Uncomment the line 90 ``` %wheel ALL=(ALL) ALL ``` - 4. Enable nginx, redis, postgresql services and initialize database + 3. Enable nginx, redis, postgresql services and initialize database + +``` +# sysrc postgresql_enable="YES" +# sysrc redis_enable="YES" +# sysrc nginx_enable="YES" +``` + Initialize database and start services ``` -# ee /etc/rc.conf +# service postgresql initdb +# service postgresql start +# service redis start +# service nginx start ``` - Add the following lines +## macOS +* Add the packages: + ``` + brew install ffmpeg nginx postgresql openssl gcc make redis git yarn + ``` +* Run the services: + + ``` + brew services run postgresql + brew services run redis + ``` + +## Gentoo + +* Add this to ``/etc/portage/sets/peertube``: ``` -postgresql_enable="YES" -redis_enable="YES" -nginx_enable="YES" +net-libs/nodejs +sys-apps/yarn +media-video/ffmpeg[x264] # Optionnally add vorbis,vpx +dev-db/postgresql +dev-db/redis +dev-vcs/git +app-arch/unzip +dev-lang/python:2.7 +www-servers/nginx +media-libs/vips[jpeg,png,exif] + +# Optionnal, client for Let’s Encrypt: +# app-crypt/certbot +# app-crypt/certbot-nginx ``` - Initialize database and start services +* Compile the peertube set: +``` +emerge -a @peertube +``` +* Initialize the PostgreSQL database if you just merged it: ``` -# service postgresql initdb -# service postgresql start -# service redis start -# service nginx start +emerge --config postgresql ``` +* (For OpenRC) Enable and then start the services (replace with the correct PostgreSQL slot): +``` +rc-update add redis +rc-update add postgresql-10 +rc-service redis start +rc-service postgresql-10 start +``` + ## Other distributions Feel free to update this file in a pull request!