Use linuxdeploy GTK plugin
[geeqie.git] / appimages / README.md
1 # How to create AppImages for Geeqie
2
3 ## Download the required tools
4
5 Download the `linuxdeploy` tools. At the time of writing, these are:
6
7 ```sh
8 wget -c https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage
9 chmod +x linuxdeploy-x86_64.AppImage
10 wget -c https://raw.githubusercontent.com/linuxdeploy/linuxdeploy-plugin-gtk/master/linuxdeploy-plugin-gtk.sh
11 chmod +x linuxdeploy-plugin-gtk.sh
12 sudo apt install patchelf
13 sudo apt install librsvg2-dev
14 ```
15
16 The first two of these files must be in your `$PATH` environment variable.
17
18 ## Generate the executable
19
20 ```sh
21 cd <your working area>
22 ```
23
24 Download Geeqie sources:
25
26 ```sh
27 git clone git://www.geeqie.org/geeqie.git
28 cd geeqie
29 ```
30
31 If a run has already been made, remove any existing targets:
32
33 ```sh
34 rm -r  <target dir>/AppDir
35 sudo rm -rf doc/html
36 ```
37
38 Create a fresh target directory:
39
40 ```sh
41 mkdir <target dir>/AppDir
42 ```
43
44 Generate the Geeqie executable:
45
46 ```sh
47 sudo make maintainer-clean
48 ./autogen.sh --prefix="/usr/"
49 make -j
50 make install DESTDIR=<full path to target dir>/AppDir
51 ```
52
53 ## Generate the AppImage
54
55 ```sh
56 cd <target dir>
57 linuxdeploy-x86_64.AppImage \
58     --appdir ./AppDir --output appimage \
59     --desktop-file ./AppDir/usr/share/applications/geeqie.desktop \
60     --icon-file ./AppDir/usr/share/pixmaps/geeqie.png \
61     --plugin gtk \
62     --executable ./AppDir/usr/bin/geeqie`
63 ```
64
65 ## Rename AppImage
66
67 If required, rename the AppImage executable - e.g.:
68
69 ```sh
70 mv ./Geeqie-v1.6-x86_64.AppImage $(./Geeqie-v1.6-x86_64.AppImage -v | sed 's/git//' | sed 's/-.* /-/' | sed 's/ /-v/' | sed 's/-GTK3//').AppImage
71 ```
72
73 ## Automation script
74
75 The script `./scripts/generate-appimage.sh` automates this process.