diff --git a/v4-Installation.md b/v4-Installation.md
index b9a589a..59c8bfb 100644
--- a/v4-Installation.md
+++ b/v4-Installation.md
@@ -1,5 +1,161 @@
v4 installation guides
+# Host Invoice Ninja on FreeNAS with a self signed cert
+
+First lets create the iocage jail, you can do this through the new UI but its waaay faster to use CLI. ssh into freenas and lets get going.
+
+### Create the iocage jail (Replace the ip and router ip with what works for you):
+
+`iocage create -n InvoiceNinja -r 11.2-RELEASE ip4_addr="vnet0|192.168.1.23/24" defaultrouter="192.168.1.1" vnet="on" allow_raw_sockets="1" boot="on"`
+
+### Lets log into the jail:
+
+`iocage console InvoiceNinja`
+
+
+### Install all the dependencies:
+
+`pkg install -y nginx nano git curl openssl mariadb103-server php71 php71-ctype php71-pdo php71-pdo_mysql php71-session php71-iconv php71-filter php71-openssl php71-phar php71-mysqli aws-sdk-php php71-simplexml php72-xmlreader php72-xmlwriter php72-fileinfo php72-pear-PHP_Parser php72-tokenizer php72-gd php72-curl php72-gmp php72-json php72-zip php72-xml php72-readline php72-opcache php72-mbstring php72-iconv-7.2.31 php72-simplexml-7.2.31`
+
+
+### AutoStart php, mysql and nginx:
+
+`sysrc mysql_enable=YES`
+`sysrc nginx_enable=YES`
+`sysrc php_fpm_enable=YES`
+`service nginx start`
+`service mysql-server start`
+`service php-fpm start`
+
+### Modify php files to host the web server using user www:
+
+`sed -i '' -e 's?listen = 127.0.0.1:9000?listen = /var/run/php-fpm.sock?g' /usr/local/etc/php-fpm.d/www.conf`
+`sed -i '' -e 's/;listen.owner = www/listen.owner = www/g' /usr/local/etc/php-fpm.d/www.conf`
+`sed -i '' -e 's/;listen.group = www/listen.group = www/g' /usr/local/etc/php-fpm.d/www.conf`
+`sed -i '' -e 's/;listen.mode = 0660/listen.mode = 0600/g' /usr/local/etc/php-fpm.d/www.conf`
+`cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini`
+`sed -i '' -e 's?;cgi.fix_pathinfo=1?cgi.fix_pathinfo=0?g' /usr/local/etc/php.ini`
+
+### Create the MySQL database for invoice ninja:
+
+`mysql -u root -e "CREATE DATABASE ninja;"`
+`mysql -u root -e "CREATE USER 'ninja'@'localhost' IDENTIFIED BY 'ninja';"`
+`mysql -u root -e "GRANT ALL PRIVILEGES ON ninja.* TO 'ninja'@'localhost';"`
+`mysql -u root -e "FLUSH PRIVILEGES;"`
+
+### Secure the database:
+
+Answer most of the questions with yes. Read them.
+
+`mysql_secure_installation`
+
+### Install Invoice Ninja (Installed to /usr/local/ninja):
+
+`curl -sS https://getcomposer.org/installer | php`
+`mv composer.phar /usr/local/bin/composer`
+`mkdir /usr/local/ninja`
+`git clone https://github.com/hillelcoren/invoice-ninja.git /usr/local/ninja`
+`cd /usr/local/ninja && composer install --no-dev -o `
+
+### Generate a self signed cert named "ininja":
+
+`mkdir -p /etc/nginx/ssl`
+`openssl genrsa -des3 -passout pass:x -out /etc/nginx/ssl/ininja.pass.key 2048`
+`openssl rsa -passin pass:x -in /etc/nginx/ssl/ininja.pass.key -out /etc/nginx/ssl/ininja.key`
+`rm /etc/nginx/ssl/ininja.pass.key`
+`openssl req -new -key /etc/nginx/ssl/ininja.key -out /etc/nginx/ssl/ininja.csr`
+`openssl x509 -req -days 365 -in /etc/nginx/ssl/ininja.csr -signkey /etc/nginx/ssl/ininja.key -out /etc/nginx/ssl/ininja.crt`
+
+### Set correct permissions for invoice ninja:
+
+`touch /usr/local/ninja/.env`
+`chown www:www /usr/local/ninja/.env`
+`chmod -R 755 /usr/local/ninja/storage`
+`cd /usr/local/ninja && chown -R www:www storage bootstrap public/logo`
+
+### Now lets create the nginx config. Replace the server_name with your IP or domain name:
+
+`rm /usr/local/etc/nginx/nginx.conf`
+`nano /usr/local/etc/nginx/nginx.conf`
+
+Copy the contents below and replace ip the wiki formatted it weird, copy everything after nginx.conf till the next heading:
+
+### nginx.conf
+events {
+ worker_connections 1024;
+}
+
+
+http {
+ include mime.types;
+ default_type application/octet-stream;
+
+ sendfile on;
+
+ keepalive_timeout 65;
+
+
+ server {
+ listen 443 default;
+ server_name 192.168.1.23;
+ ssl on;
+ ssl_certificate /etc/nginx/ssl/ininja.crt;
+ ssl_certificate_key /etc/nginx/ssl/ininja.key;
+ ssl_session_timeout 5m;
+ ssl_ciphers 'AES128+EECDH:AES128+EDH:!aNULL';
+ ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
+ ssl_prefer_server_ciphers on;
+ root /usr/local/ninja/public;
+ index index.html index.htm index.php;
+ charset utf-8;
+ location / {
+ try_files $uri $uri/ /index.php?$query_string;
+ }
+ location = /favicon.ico { access_log off; log_not_found off; }
+ location = /robots.txt { access_log off; log_not_found off; }
+ access_log /var/log/nginx/ininja.access.log;
+ error_log /var/log/nginx/ininja.error.log;
+ sendfile off;
+ location ~ \.php$ {
+ fastcgi_split_path_info ^(.+\.php)(/.+)$;
+ fastcgi_pass unix:/var/run/php-fpm.sock;
+ fastcgi_index index.php;
+ include fastcgi_params;
+ fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
+ fastcgi_intercept_errors off;
+ fastcgi_buffer_size 16k;
+ fastcgi_buffers 4 16k;
+ }
+ location ~ /\.ht {
+ deny all;
+ }
+ }
+ server {
+ listen 80;
+ server_name 192.168.1.23;
+ add_header Strict-Transport-Security max-age=2592000;
+ rewrite ^ https://$server_name$request_uri? permanent;
+ }
+}
+
+### Ok lets restart all the services you should be able to access the GUI setup on https://yourip
+
+**HTTPS!**
+
+`service mysql-server restart`
+`service php-fpm restart`
+`service nginx restart`
+
+
+
+
+
+
+
+
+
+
+
# InvoiceNinja Self Hosted on Debain 8