3 ## Debian / Ubuntu and derivatives
4 1. On a fresh Debian/Ubuntu, as root user, install basic utility programs needed for the installation
7 # apt-get install curl sudo unzip vim
10 2. It would be wise to disable root access and to continue this tutorial with a user with sudoers group access
12 3. Install certbot (choose instructions for nginx and your distribution) :
13 [https://certbot.eff.org/all-instructions](https://certbot.eff.org/all-instructions)
14 4. Install NodeJS 8.x (current LTS):
15 [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)
17 [https://yarnpkg.com/en/docs/install#linux-tab](https://yarnpkg.com/en/docs/install#linux-tab)
22 $ sudo apt install nginx ffmpeg postgresql openssl g++ make redis-server git
23 $ ffmpeg -version # Should be >= 3.x
24 $ g++ -v # Should be >= 5.x
27 If you still have a 2.x version of FFmpeg on Ubuntu:
29 $ sudo add-apt-repository ppa:jonathonf/ffmpeg-3
31 $ sudo apt install ffmpeg
39 $ sudo pacman -S nodejs yarn ffmpeg postgresql openssl redis git wget unzip python2 base-devel npm nginx
44 1. Install NodeJS 8.x (current LTS):
45 [https://nodejs.org/en/download/package-manager/#enterprise-linux-and-fedora](https://nodejs.org/en/download/package-manager/#enterprise-linux-and-fedora)
47 [https://yarnpkg.com/en/docs/install](https://yarnpkg.com/en/docs/install)
48 3. Install or compile ffmpeg:
49 * Install - [https://linoxide.com/linux-how-to/install-ffmpeg-centos-7/](https://linoxide.com/linux-how-to/install-ffmpeg-centos-7/)
50 * Compile - [https://gist.github.com/mustafaturan/7053900#file-latest-ffmpeg-centos6-sh](https://gist.github.com/mustafaturan/7053900#file-latest-ffmpeg-centos6-sh)
55 $ sudo yum install epel-release centos-release-scl
57 $ sudo yum install nginx postgresql postgresql-server openssl gcc-c++ make redis git devtoolset-6
60 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.
62 $ sudo scl devtoolset-6 bash
67 On a fresh install of [FreeBSD](https://www.freebsd.org), new system or new jail:
69 1. edit `/etc/pkg/FreeBSD.conf` to use latest instead quaterly (installation was tested with the latest repository), as root:
71 # ee /etc/pkg/FreeBSD.conf
74 change this line (11):
76 url: "pkg+http://pkg.FreeBSD.org/${ABI}/quaterly",
81 url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest",
84 2. bootsrap pkg, initialize db and install peertube's dependencies, always as root (sudo not yet installed):
88 # pkg install -y sudo bash wget git python nginx pkgconf vips postgresql96-server redis openssl node npm yarn ffmpeg unzip
91 3. Allow users in the wheel group (hope you don't forgot to add your user on wheel group!) to use sudo
101 4. Enable nginx, redis, postgresql services and initialize database
106 Add the following lines
108 postgresql_enable="YES"
113 Initialize database and start services
115 # service postgresql initdb
116 # service postgresql start
117 # service redis start
118 # service nginx start
121 ## Other distributions
123 Feel free to update this file in a pull request!