GTK2 no longer supported
[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 meson setup appimage-build
48 meson configure -Dprefix=/usr appimage-build
49 DESTDIR=<full path to target dir>/AppDir ninja -C build-appimage install
50 ```
51
52 ## Generate the AppImage
53
54 ```sh
55 cd <target dir>
56 linuxdeploy-x86_64.AppImage \
57     --appdir ./AppDir --output appimage \
58     --desktop-file ./AppDir/usr/share/applications/geeqie.desktop \
59     --icon-file ./AppDir/usr/share/pixmaps/geeqie.png \
60     --plugin gtk \
61     --executable ./AppDir/usr/bin/geeqie`
62 ```
63
64 ## Rename AppImage
65
66 If required, rename the AppImage executable - e.g.:
67
68 ```sh
69 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
70 ```
71
72 ## Automation script
73
74 The script `./scripts/generate-appimage.sh` automates this process.