summaryrefslogtreecommitdiffstats
path: root/packaging/headless/Setting-up-downloader
blob: 1c2ee155ec2de08c3e46ddb309f9503338c41edd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
How to set up a Raspberry Pi to use as a Subsurface downloader

1) Get an image file for RaspianPi

2) Set up your local network according to https://www.raspberrypi.org/documentation/configuration/wireless/headless.md
You also need to create a file named "ssh" in the boot partition to enable the ssh server. Set the hostname to subsurfacepi

3) Install additional packages with their dependencies

sudo apt-get install cmake-curses-gui debsums gvfs-bin ifuse ipheth-utils libcrypto++-dev libcurl4-openssl-dev libgit2-dev \
libimobiledevice-utils libmtp-dev libqt5svg5-dev libqt5webkit5-dev libxslt1-dev libzip-dev qml-module-qtlocation \
qml-module-qtpositioning qml-module-qtquick2 qt5-default qtconnectivity5-dev qtdeclarative5-private-dev qtpositioning5-dev qtscript5-dev 

4) Clone the subsurface repository and build it as for any Debian based system: Run build.sh, then cd to the build directory, run
ccamke .
and select SUBSURFACE_TARGET_EXECUTABLE as DownloaderExecutable and make once more

5) Add the following lines to /etc/apache2/sites-available/000-default.conf

        ScriptAlias /pi-cgi-bin/ /home/pi/cgi-bin/
        <Directory "/home/pi/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Require all granted
        </Directory>
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>
	ScriptAlias / /usr/lib/cgi-bin/downloader.pl

activate the CGI Modules

sudo ln -s /etc/apache2/mods-available/cgi* /etc/apache2/mods-enabled/

and restart apache2

6) copy ~/src/subsurface/scripts/downloader.pl to /usr/lib/cgi-bin and run
sudo chmod a+x /usr/lib/cgi-bin/downloader.pl
It should then be there when you direct your browser to
subsurfacepi.local/cgi-bin/downloader.pl

7) Give the www user access to the serial interface
sudo adduser pi dialout
and restart apache2

8) Create a directory to store the data
sudo mkdir /opt/ssrf/
sudo touch /opt/ssrf/ssrf.conf
sudo chown -R www-data.www-data /opt/ssrf

9) If you want to use the pi with an iPhone where the iPhone provides the internet connectivity, follow https://gist.github.com/antronic/157e047cdefa98b3150195c2eacb56b8