@@ -7,19 +7,38 @@ If you need to compile the binaries, a C++ compiler, this is usually not needed
#### If you don't actually need the source code/need to compile GIGI2
###### As a SNAP
THE GIGI2 SNAP IS NOT WORKING AS IT NEEDS TO BE ABLE TO WRITE TO ARBITRARY USER SPECIFIED LOCATIONS TO WRITE THE DATA, THIS REQUIRES THE SNAP TO USE CLASSIC CONFINEMENT.
FOR CLASSIC CONFINEMENT TO BE ALLOWED IN AN APP ON THE STORE IT NEEDS TO GO THROUGH AN APPROVAL PROCESS, AS DESCRIBED HERE: https://forum.snapcraft.io/t/process-for-reviewing-classic-confinement-snaps/1460
WE HAVE STARTED THAT PROCESS: https://forum.snapcraft.io/t/classic-confinement-request-for-gigi2/8532
IF THIS DOESN'T WORK OUT, THEN WE WILL MAKE THE SNAP AVAILABLE DIRECTLY OR ON THE BETA CHANNEL AND USERS WILL NEED TO USE IT IN DEVMODE AND/OR WITH THE --DANGEROUS FLAG
In this case consider installing GIGI2 as a snap, e.g. on Ubuntu:
```sudo snap install gigi2```
```snap install gigi2```
There a difference in this case, we follow the Snap binary name convention, so the program is named 'gigi2' instead of the 'GIGI2' you see in the examples below, and to use
Snaps use a system of plugs and slots for their file permissions. By default when installing GIGI2 as a snap it is likely that you are only able to write to your home directory.
To see which interfaces the plugs and slots of GIGI2 are connected to, run:
```snap interfaces gigi2```
It is likely that the gigi2:home plug is attached to the system :home slot, but gigi2:removable-media will not be attached by default. This interface is needed in order to write
to volumes mounted to /mnt and /media. You can attach it as follows:
Now the GIGI2 snap can read and write to your home director and to volumes mounted in /mnt and /media. Sometimes you need to read and write to other places though. Some of these
do not have snap interfaces supporting them right now. To install the GIGI2 snap without any of the default restrictions, you can install it in developer mode. We recommend
first removing the currently installed version via 'snap remove gigi2' if you are going to install it in developer mode. To install it this way:
```snap install --devmode gigi2```
We follow the Snap binary name convention, so the program is named 'gigi2' instead of the 'GIGI2' you see in the examples below, and to use
the Wide2Long utility the binary is 'gigi2.wide2long' instead of 'Wide2Long'.
This should install and add gigi2 and gigi2.wide2long to your path.
You can remove the snap package at any time via:
```snap remove gigi2```
Further information on using snaps can be found here: https://docs.snapcraft.io/getting-started/3876
And installation instructions for snapd (the snap daemon, prerequisite for using snaps) on many OSs can be found here: https://docs.snapcraft.io/installing-snapd/6735
###### Use our server
Probably the easiest way one could run the computation is on our server here: https://imputation.qcri.org