Mercurial > hg > forks > geeqie
annotate web/geeqie-install-debian.sh @ 2865:cb5326e72117
Ref #631: Compilation script for all distributions
https://github.com/BestImageViewer/geeqie/issues/631
Reference to all-distros script included in README.
Full list of dependencies still not included.
author | Colin Clark <colin.clark@cclark.uk> |
---|---|
date | Sun, 18 Nov 2018 17:38:10 +0000 |
parents | 8521d2405863 |
children |
rev | line source |
---|---|
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
1 #!/bin/bash |
2856
8521d2405863
Plugin for tethered photography
Colin Clark <colin.clark@cclark.uk>
parents:
2848
diff
changeset
|
2 version="2018-10-23" |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
3 description=$' |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
4 Geeqie is an image viewer. |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
5 This script will download, compile, and install Geeqie on Debian-based systems. |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
6 If run from a folder that already contains the Geeqie sources, the source |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
7 code will be updated from the repository. |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
8 Dialogs allow the user to install additional features, including |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
9 additional pixbuf loaders. |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
10 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
11 Command line options are: |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
12 -v --version The version of this file |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
13 -h --help Output this text |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
14 -c --commit=ID Checkout and compile commit ID |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
15 -t --tag=TAG Checkout and compile TAG (e.g. v1.4 or v1.3) |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
16 -b --back=N Checkout commit -N (e.g. "-b 1" for last-but-one commit) |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
17 -d --debug=yes Compile with debug output |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
18 ' |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
19 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
20 # Essential for compiling |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
21 essential_array=( |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
22 "git" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
23 "build-essential" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
24 "autoconf" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
25 "libglib2.0-0" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
26 "intltool" |
2828
ce8f3b3e1f95
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2821
diff
changeset
|
27 "libtool" |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
28 ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
29 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
30 # Optional for both GTK2 and GTK3 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
31 optional_array=( |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
32 "LCMS (for color management)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
33 "liblcms2-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
34 "exiv2 (for exif handling)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
35 "libgexiv2-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
36 "lua (for --remote commands)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
37 "liblua5.1-0-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
38 "libffmpegthumbnailer (for mpeg thumbnails)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
39 "libffmpegthumbnailer-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
40 "libtiff (for tiff support)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
41 "libtiff-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
42 "libjpeg (for jpeg support" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
43 "libjpeg-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
44 "librsvg2 (for viewing .svg images" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
45 "librsvg2-common" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
46 "libwmf (for viewing .wmf images)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
47 "libwmf0.2-7-gtk" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
48 "exiftran (for image rotation)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
49 "exiftran" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
50 "imagemagick (for image rotation)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
51 "imagemagick" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
52 "ufraw (for RAW file handling)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
53 "ufraw" |
2848
ed4e22060177
Fix #635: Export in JPG
Colin Clark <colin.clark@cclark.uk>
parents:
2828
diff
changeset
|
54 "exiv2 command line (for jpeg export)" |
ed4e22060177
Fix #635: Export in JPG
Colin Clark <colin.clark@cclark.uk>
parents:
2828
diff
changeset
|
55 "exiv2" |
ed4e22060177
Fix #635: Export in JPG
Colin Clark <colin.clark@cclark.uk>
parents:
2828
diff
changeset
|
56 "jpgicc (for jpeg export color correction)" |
ed4e22060177
Fix #635: Export in JPG
Colin Clark <colin.clark@cclark.uk>
parents:
2828
diff
changeset
|
57 "liblcms2-utils" |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
58 "markdown (for generating README help file)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
59 "markdown" |
2865
cb5326e72117
Ref #631: Compilation script for all distributions
Colin Clark <colin.clark@cclark.uk>
parents:
2856
diff
changeset
|
60 "gphoto2 (for tethered photography and camera download plugins)" |
2856
8521d2405863
Plugin for tethered photography
Colin Clark <colin.clark@cclark.uk>
parents:
2848
diff
changeset
|
61 "gphoto2" |
2865
cb5326e72117
Ref #631: Compilation script for all distributions
Colin Clark <colin.clark@cclark.uk>
parents:
2856
diff
changeset
|
62 "libimage-exiftool-perl (for jpeg extraction plugin)" |
cb5326e72117
Ref #631: Compilation script for all distributions
Colin Clark <colin.clark@cclark.uk>
parents:
2856
diff
changeset
|
63 "libimage-exiftool-perl" |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
64 ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
65 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
66 # Optional for GTK3 only |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
67 optional_gtk3_array=( |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
68 "libchamplain gtk (for GPS maps)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
69 "libchamplain-gtk-0.12-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
70 "libchamplain (for GPS maps)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
71 "libchamplain-0.12-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
72 "libpoppler (for pdf file preview)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
73 "libpoppler-glib-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
74 ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
75 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
76 # Optional pixbuf loaders |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
77 optional_loaders_array=( |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
78 ".webp WebP images" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
79 "webp" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
80 ".psd Photoshop images" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
81 "psd" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
82 ".xcf Gimp files" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
83 "xcf" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
84 ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
85 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
86 #################################################################### |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
87 # Get System Info |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
88 # Derived from: https://github.com/coto/server-easy-install (GPL) |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
89 #################################################################### |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
90 lowercase() |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
91 { |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
92 echo "$1" | sed "y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/" |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
93 } |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
94 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
95 systemProfile() |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
96 { |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
97 OS=`lowercase \`uname\`` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
98 KERNEL=`uname -r` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
99 MACH=`uname -m` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
100 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
101 if [ "${OS}" == "windowsnt" ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
102 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
103 OS=windows |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
104 elif [ "${OS}" == "darwin" ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
105 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
106 OS=mac |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
107 else |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
108 OS=`uname` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
109 if [ "${OS}" = "SunOS" ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
110 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
111 OS=Solaris |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
112 ARCH=`uname -p` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
113 OSSTR="${OS} ${REV}(${ARCH} `uname -v`)" |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
114 elif [ "${OS}" = "AIX" ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
115 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
116 OSSTR="${OS} `oslevel` (`oslevel -r`)" |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
117 elif [ "${OS}" = "Linux" ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
118 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
119 if [ -f /etc/redhat-release ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
120 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
121 DistroBasedOn='RedHat' |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
122 DIST=`cat /etc/redhat-release |sed s/\ release.*//` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
123 PSUEDONAME=`cat /etc/redhat-release | sed s/.*\(// | sed s/\)//` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
124 REV=`cat /etc/redhat-release | sed s/.*release\ // | sed s/\ .*//` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
125 elif [ -f /etc/SuSE-release ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
126 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
127 DistroBasedOn='SuSe' |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
128 PSUEDONAME=`cat /etc/SuSE-release | tr "\n" ' '| sed s/VERSION.*//` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
129 REV=`cat /etc/SuSE-release | tr "\n" ' ' | sed s/.*=\ //` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
130 elif [ -f /etc/mandrake-release ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
131 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
132 DistroBasedOn='Mandrake' |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
133 PSUEDONAME=`cat /etc/mandrake-release | sed s/.*\(// | sed s/\)//` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
134 REV=`cat /etc/mandrake-release | sed s/.*release\ // | sed s/\ .*//` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
135 elif [ -f /etc/debian_version ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
136 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
137 DistroBasedOn='Debian' |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
138 if [ -f /etc/lsb-release ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
139 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
140 DIST=`cat /etc/lsb-release | grep '^DISTRIB_ID' | awk -F= '{ print $2 }'` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
141 PSUEDONAME=`cat /etc/lsb-release | grep '^DISTRIB_CODENAME' | awk -F= '{ print $2 }'` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
142 REV=`cat /etc/lsb-release | grep '^DISTRIB_RELEASE' | awk -F= '{ print $2 }'` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
143 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
144 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
145 if [ -f /etc/UnitedLinux-release ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
146 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
147 DIST="${DIST}[`cat /etc/UnitedLinux-release | tr "\n" ' ' | sed s/VERSION.*//`]" |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
148 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
149 OS=`lowercase $OS` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
150 DistroBasedOn=`lowercase $DistroBasedOn` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
151 readonly OS |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
152 readonly DIST |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
153 readonly DistroBasedOn |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
154 readonly PSUEDONAME |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
155 readonly REV |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
156 readonly KERNEL |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
157 readonly MACH |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
158 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
159 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
160 } |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
161 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
162 install_essential() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
163 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
164 arraylength=${#essential_array[@]} |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
165 for (( i=0; i<${arraylength}; i=i+1 )); |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
166 do |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
167 package_query ${essential_array[$i]} |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
168 if [ $? != 0 ] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
169 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
170 package_install ${essential_array[$i]} |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
171 fi |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
172 done |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
173 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
174 if [[ $1 == "GTK3" ]] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
175 then |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
176 package_query "libgtk-3-dev" |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
177 if [ $? != 0 ] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
178 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
179 package_install libgtk-3-dev |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
180 fi |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
181 else |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
182 package_query "libgtk2.0-dev" |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
183 if [ $? != 0 ] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
184 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
185 package_install libgtk2.0-dev |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
186 fi |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
187 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
188 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
189 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
190 install_options() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
191 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
192 if [ -n "$options" ] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
193 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
194 OLDIFS=$IFS |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
195 IFS='|' |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
196 set $options |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
197 while [ $# -gt 0 ]; |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
198 do |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
199 package_install $1 |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
200 shift |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
201 done |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
202 IFS=$OLDIFS |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
203 fi |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
204 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
205 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
206 install_webp() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
207 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
208 rm -rf webp-pixbuf-loader-master |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
209 package_install libglib2.0-dev libgdk-pixbuf2.0-dev libwebp-dev python-minimal |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
210 wget https://github.com/aruiz/webp-pixbuf-loader/archive/master.zip |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
211 unzip master.zip |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
212 cd webp-pixbuf-loader-master |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
213 ./waf configure |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
214 ./waf build |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
215 sudo --askpass ./waf install |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
216 sudo --askpass gdk-pixbuf-query-loaders --update-cache |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
217 cd - |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
218 rm -rf webp-pixbuf-loader-master |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
219 rm master.zip |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
220 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
221 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
222 install_psd() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
223 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
224 rm -rf gdk-pixbuf-psd |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
225 git clone https://github.com/and-rom/gdk-pixbuf-psd.git |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
226 cd gdk-pixbuf-psd |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
227 ./autogen.sh |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
228 make |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
229 sudo --askpass make install |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
230 sudo --askpass gdk-pixbuf-query-loaders --update-cache |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
231 cd - |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
232 rm -rf gdk-pixbuf-psd |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
233 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
234 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
235 install_xcf() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
236 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
237 rm -rf xcf-pixbuf-loader |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
238 package_install libbz2-dev |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
239 git clone https://github.com/StephaneDelcroix/xcf-pixbuf-loader.git |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
240 cd xcf-pixbuf-loader |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
241 ./autogen.sh |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
242 make |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
243 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
244 # There must be a better way... |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
245 loader_locn=$(gdk-pixbuf-query-loaders | grep "LoaderDir" | tr -d '#[:space:]') |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
246 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
247 OLDIFS=$IFS |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
248 IFS='=' |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
249 set $loader_locn |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
250 OLDIFS=$IFS |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
251 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
252 if [ -d $2 ] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
253 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
254 sudo --askpass cp .libs/libioxcf.so $2 |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
255 sudo --askpass gdk-pixbuf-query-loaders --update-cache |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
256 fi |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
257 cd - |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
258 rm -rf xcf-pixbuf-loader |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
259 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
260 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
261 install_extra_loaders() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
262 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
263 if [ -n "$extra_loaders" ] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
264 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
265 OLDIFS=$IFS |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
266 IFS='|' |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
267 set $extra_loaders |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
268 while [ $# -gt 0 ]; |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
269 do |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
270 case $1 in |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
271 "webp" ) |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
272 install_webp |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
273 ;; |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
274 "psd" ) |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
275 install_psd |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
276 ;; |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
277 "xcf" ) |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
278 install_xcf |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
279 ;; |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
280 esac |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
281 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
282 shift |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
283 done |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
284 IFS=$OLDIFS |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
285 fi |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
286 return |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
287 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
288 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
289 uninstall() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
290 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
291 current_dir=$(basename $PWD) |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
292 if [[ $current_dir == "geeqie" ]] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
293 then |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
294 sudo --askpass make uninstall |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
295 zenity --title="Uninstall Geeqie" --width=370 --text="WARNING.\nThis will delete folder:\n\n$PWD\n\nand all sub-folders!" --question --ok-label="Cancel" --cancel-label="OK" 2>/dev/null |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
296 |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
297 if [[ $? == 1 ]] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
298 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
299 cd .. |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
300 sudo --askpass rm -rf geeqie |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
301 fi |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
302 else |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
303 zenity --title="Uninstall Geeqie" --width=370 --text="This is not a geeqie installation folder!\n\n$PWD" --warning 2>/dev/null |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
304 fi |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
305 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
306 exit_install |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
307 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
308 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
309 package_query() |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
310 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
311 if [[ $DistroBasedOn == "debian" ]] |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
312 then |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
313 res=$(dpkg-query --show --showformat='${Status}' $1 2>>$install_log) |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
314 if [[ "$res" == "install ok installed"* ]] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
315 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
316 status=0 |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
317 else |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
318 status=1 |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
319 fi |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
320 fi |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
321 return $status |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
322 } |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
323 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
324 package_install() |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
325 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
326 if [[ $DistroBasedOn == "debian" ]] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
327 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
328 sudo --askpass apt-get --assume-yes install $@ >>$install_log 2>&1 |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
329 fi |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
330 } |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
331 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
332 exit_install() |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
333 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
334 rm $install_pass_script >/dev/null 2>&1 |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
335 #~ rm $install_log >/dev/null 2>&1 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
336 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
337 if [[ -p $zen_pipe ]] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
338 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
339 echo "100" > $zen_pipe |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
340 echo "#End" > $zen_pipe |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
341 fi |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
342 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
343 zenity --title="$title" --width=370 --text=$'Geeqie is not installed\nLog file: '$install_log --info 2>/dev/null |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
344 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
345 rm $zen_pipe >/dev/null 2>&1 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
346 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
347 exit 1 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
348 } |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
349 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
350 # Entry point |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
351 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
352 # If uninstall has been run, maybe the current directory no longer exists |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
353 ls $PWD >/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
354 if [[ $? != 0 ]] |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
355 then |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
356 zenity --error --title="Install Geeqie and dependencies" --width=370 --text="Folder $PWD does not exist!" 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
357 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
358 exit |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
359 fi |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
360 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
361 # Check system type |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
362 systemProfile |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
363 if [[ $DistroBasedOn != "debian" ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
364 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
365 zenity --error --title="Install Geeqie and dependencies" --width=370 --text="Unknown operating system:\n |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
366 Operating System: $OS |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
367 Distribution: $DIST |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
368 Psuedoname: $PSUEDONAME |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
369 Revision: $REV |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
370 DistroBasedOn: $DistroBasedOn |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
371 Kernel: $KERNEL |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
372 Machine: $MACH" 2>/dev/null |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
373 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
374 exit |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
375 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
376 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
377 # Parse the comand line |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
378 OPTS=$(getopt -o vhc:t:b:d: --long version,help,commit:,tag:,back:,debug: -- "$@") |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
379 eval set -- "$OPTS" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
380 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
381 while true; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
382 do |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
383 case "$1" in |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
384 -v | --version ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
385 echo "$version" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
386 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
387 ;; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
388 -h | --help ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
389 echo "$description" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
390 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
391 ;; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
392 -c | --commit ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
393 COMMIT="$2" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
394 shift |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
395 shift |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
396 ;; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
397 -t | --tag ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
398 TAG="$2" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
399 shift; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
400 shift |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
401 ;; |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
402 -b | --back ) |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
403 BACK="$2" |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
404 shift; |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
405 shift |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
406 ;; |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
407 -d | --debug ) |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
408 DEBUG="$2" |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
409 shift; |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
410 shift |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
411 ;; |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
412 * ) break |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
413 ;; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
414 esac |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
415 done |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
416 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
417 # If a Geeqie folder already exists here, warn the user |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
418 if [ -d "geeqie" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
419 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
420 zenity --info --title="Install Geeqie and dependencies" --width=370 --text="This script is for use on Ubuntu and other\nDebian-based installations.\nIt will download, compile, and install Geeqie source\ncode and its dependencies.\n\nA sub-folder named \"geeqie\" will be created in the\nfolder this script is run from, and the source code\nwill be downloaded to that sub-folder.\n\nA sub-folder of that name already exists.\nPlease try another folder." 2>/dev/null |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
421 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
422 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
423 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
424 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
425 # If it looks like a Geeqie download folder, assume an update |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
426 if [ -d ".git" ] && [ -d "src" ] && [ -f "geeqie.1" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
427 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
428 mode="update" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
429 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
430 # If it looks like something else is already installed here, warn the user |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
431 if [ -d ".git" ] || [ -d "src" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
432 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
433 zenity --info --title="Install Geeqie and dependencies" --width=370 --text="This script is for use on Ubuntu and other\nDebian-based installations.\nIt will download, compile, and install Geeqie source\ncode and its dependencies.\n\nIt looks like you are running this script from a folder which already has software installed.\n\nPlease try another folder." 2>/dev/null |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
434 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
435 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
436 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
437 mode="install" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
438 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
439 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
440 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
441 # Use GTK3 as default |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
442 gk2_installed=FALSE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
443 gtk3_installed=TRUE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
444 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
445 if [[ $mode == "install" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
446 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
447 message="This script is for use on Ubuntu and other\nDebian-based installations.\nIt will download, compile, and install Geeqie source\ncode and its dependencies.\n\nA sub-folder named \"geeqie\" will be created in the\nfolder this script is run from, and the source code\nwill be downloaded to that sub-folder.\n\nIn this dialog you must select whether to compile\nfor GTK2 or GTK3.\nIf you want to use GPS maps or pdf preview,\nyou must choose GTK3.\nThe GTK2 version has a slightly different\nlook-and-feel compared to the GTK3 version,\nbut otherwise has the same features.\nYou may easily switch between the two after\ninstallation.\n\nIn subsequent dialogs you may choose which\noptional features to install." |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
448 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
449 title="Install Geeqie and dependencies" |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
450 install_option=TRUE |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
451 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
452 message="This script is for use on Ubuntu and other\nDebian-based installations.\nIt will update the Geeqie source code and its\ndependencies, and will compile and install Geeqie.\n\nYou may also switch the installed version from\nGTK2 to GTK3 and vice versa.\n\nIn this dialog you must select whether to compile\nfor GTK2 or GTK3.\nIf you want to use GPS maps or pdf preview,\nyou must choose GTK3.\nThe GTK2 version has a slightly different\nlook-and-feel compared to the GTK3 version,\nbut otherwise has the same features.\n\nIn subsequent dialogs you may choose which\noptional features to install." |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
453 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
454 title="Update Geeqie and re-install" |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
455 install_option=FALSE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
456 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
457 # When updating, use previous installation as default |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
458 if [[ -f config.log ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
459 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
460 grep gtk-2.0 config.log >/dev/null |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
461 if [[ $? != 0 ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
462 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
463 gtk2_installed=FALSE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
464 gtk3_installed=TRUE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
465 else |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
466 gtk2_installed=TRUE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
467 gtk3_installed=FALSE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
468 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
469 fi |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
470 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
471 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
472 # Ask whether to install GTK2 or GTK3 or uninstall |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
473 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
474 gtk_version=$(zenity --title="$title" --width=370 --text="$message" --list --radiolist --column "" --column "" "$gtk3_installed" "GTK3 (required for GPS maps and pdf preview)" "$gtk2_installed" "GTK2" FALSE "Uninstall" --cancel-label="Cancel" --ok-label="OK" --hide-header 2>/dev/null) |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
475 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
476 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
477 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
478 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
479 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
480 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
481 # Environment variable SUDO_ASKPASS cannot be "zenity --password", |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
482 # so create a temporary script containing the command |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
483 install_pass_script=$(mktemp --tmpdir geeqie_install_XXXXXX.sh) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
484 echo $'#!/bin/bash |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
485 zenity --password --title=\"'$title$'\" --width=370 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
486 if [[ $? > 0 ]] |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
487 then |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
488 exit 1 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
489 fi |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
490 \n' > $install_pass_script |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
491 chmod +x $install_pass_script |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
492 export SUDO_ASKPASS=$install_pass_script |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
493 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
494 if [[ $gtk_version == "Uninstall" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
495 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
496 uninstall |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
497 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
498 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
499 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
500 # Put the install log in tmp, to avoid writing to PWD during a new install |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
501 rm install.log 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
502 install_log=$(mktemp --tmpdir geeqie_install_XXXXXX.log) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
503 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
504 sleep 100 | zenity --title="$title" --text="Checking for installed files" --width=370 --progress --pulsate 2>/dev/null & |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
505 zen_pid=$! |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
506 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
507 # Get the standard options that are not yet installed |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
508 arraylength=${#optional_array[@]} |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
509 for (( i=0; i<${arraylength}; i=i+2 )); |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
510 do |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
511 package_query ${optional_array[$i+1]} |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
512 if [ $? != 0 ] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
513 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
514 if [ -z "$option_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
515 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
516 option_string="$install_option"$'\n'"${optional_array[$i]}"$'\n'"${optional_array[$i+1]}" |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
517 else |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
518 option_string="$option_string"$'\n'"$install_option"$'\n'"${optional_array[$i]}"$'\n'"${optional_array[$i+1]}" |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
519 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
520 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
521 done |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
522 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
523 # If GTK3 required, get the GTK3 options not yet installed |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
524 if [[ "$gtk_version" == "GTK3"* ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
525 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
526 arraylength=${#optional_gtk3_array[@]} |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
527 for (( i=0; i<${arraylength}; i=i+2 )); |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
528 do |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
529 package_query ${optional_gtk3_array[$i+1]} |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
530 if [ $? != 0 ] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
531 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
532 if [ -z "$option_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
533 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
534 option_string="$install_option"$'\n'"${optional_gtk3_array[$i]}"$'\n'"${optional_gtk3_array[$i+1]}" |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
535 else |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
536 option_string="$option_string"$'\n'"$install_option"$'\n'"${optional_gtk3_array[$i]}"$'\n'"${optional_gtk3_array[$i+1]}" |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
537 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
538 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
539 done |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
540 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
541 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
542 # Get the optional loaders not yet installed |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
543 ((i=0)) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
544 gdk-pixbuf-query-loaders | grep WebP >/dev/null |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
545 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
546 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
547 if [ -z "$loaders_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
548 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
549 loaders_string=$'FALSE\n'"${optional_loaders_array[$i]}"$'\n'"${optional_loaders_array[$i+1]}" |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
550 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
551 loaders_string="$loaders_string"$'\nFALSE\n'"${optional_loaders_array[$i]}"$'\n'"${optional_loaders_array[$i+1]}" |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
552 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
553 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
554 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
555 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
556 ((i=i+2)) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
557 gdk-pixbuf-query-loaders | grep psd >/dev/null |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
558 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
559 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
560 if [ -z "$loaders_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
561 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
562 loaders_string=$'FALSE\n'"${optional_loaders_array[$i]}"$'\n'"${optional_loaders_array[$i+1]}" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
563 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
564 loaders_string="$loaders_string"$'\nFALSE\n'"${optional_loaders_array[$i]}"$'\n'"${optional_loaders_array[$i+1]}" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
565 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
566 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
567 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
568 ((i=i+2)) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
569 gdk-pixbuf-query-loaders | grep xcf >/dev/null |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
570 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
571 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
572 if [ -z "$loaders_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
573 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
574 loaders_string=$'FALSE\n'"${optional_loaders_array[$i]}"$'\n'"${optional_loaders_array[$i+1]}" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
575 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
576 loaders_string="$loaders_string"$'\nFALSE\n'"${optional_loaders_array[$i]}"$'\n'"${optional_loaders_array[$i+1]}" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
577 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
578 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
579 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
580 kill $zen_pid 2>/dev/null |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
581 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
582 # Ask the user which options to install |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
583 if [ -n "$option_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
584 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
585 options=$(echo "$option_string" | zenity --title="$title" --width=400 --height=500 --list --checklist --text 'Select which library files to install:' --column='Select' --column='Library files' --column='Library' --hide-column=3 --print-column=3 2>/dev/null) |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
586 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
587 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
588 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
589 exit_install |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
590 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
591 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
592 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
593 # Ask the user which extra loaders to install |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
594 if [ -n "$loaders_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
595 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
596 extra_loaders=$(echo "$loaders_string" | zenity --title="$title" --width=370 --height=400 --list --checklist --text 'These loaders are not part of the main repository,\nbut are known to work to some extent.' --column='Select' --column='Library files' --column='Library' --hide-column=3 --print-column=3 2>/dev/null) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
597 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
598 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
599 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
600 exit_install |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
601 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
602 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
603 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
604 # Start of Zenity progress section |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
605 zen_pipe=$(mktemp --dry-run --tmpdir geeqie_install_pipe_XXXXXX) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
606 mkfifo $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
607 (tail -f $zen_pipe 2>/dev/null) | zenity --progress --title="$title" --width=370 --text="Installing options..." --auto-close --auto-kill --percentage=0 2>/dev/null & |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
608 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
609 echo "2" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
610 echo "#Installing essential libraries..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
611 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
612 install_essential $gtk_version |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
613 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
614 echo "4" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
615 echo "#Installing options..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
616 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
617 install_options |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
618 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
619 echo "6" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
620 echo "#Installing extra loaders..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
621 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
622 install_extra_loaders |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
623 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
624 echo "10" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
625 echo "#Getting new sources from server..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
626 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
627 if [[ $mode == "install" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
628 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
629 ret=$(git clone git://www.geeqie.org/geeqie.git >>$install_log 2>&1) |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
630 else |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
631 git checkout master >>$install_log 2>&1 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
632 if [[ $? != 0 ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
633 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
634 git_error=$(tail -n5 $install_log 2>&1) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
635 zenity --title="$title" --width=370 --height=400 --error --text=$'Git error:\n\n'"$git_error" 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
636 exit_install |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
637 fi |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
638 ret=$(git pull >>$install_log 2>&1) |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
639 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
640 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
641 if [[ $? != 0 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
642 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
643 git_error=$(tail -n5 $install_log 2>&1) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
644 zenity --title="$title" --width=370 --height=400 --error --text=$'Git error:\n\n'"$git_error" 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
645 exit_install |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
646 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
647 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
648 echo "20" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
649 echo "#Cleaning installed version..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
650 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
651 if [[ $mode == "install" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
652 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
653 cd geeqie |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
654 else |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
655 sudo --askpass make uninstall >>$install_log 2>&1 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
656 sudo --askpass make maintainer-clean >>$install_log 2>&1 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
657 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
658 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
659 echo "30" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
660 echo "#Checkout required version..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
661 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
662 if [[ "$BACK" ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
663 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
664 ret=$(git checkout master~"$BACK" >>$install_log 2>&1) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
665 if [[ $? != 0 ]] |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
666 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
667 git_error=$(tail -n5 $install_log 2>&1) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
668 zenity --title="$title" --width=370 --height=400 --error --text=$'Git error:\n\n'"$git_error" 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
669 exit_install |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
670 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
671 elif [[ "$COMMIT" ]] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
672 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
673 ret=$(git checkout "$COMMIT" >>$install_log 2>&1) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
674 if [[ $? != 0 ]] |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
675 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
676 git_error=$(tail -n5 $install_log 2>&1) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
677 zenity --title="$title" --width=370 --height=400 --error --text=$'Git error:\n\n'"$git_error" 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
678 exit_install |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
679 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
680 elif [[ "$TAG" ]] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
681 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
682 ret=$(git checkout "$TAG" >>$install_log 2>&1) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
683 if [[ $? != 0 ]] |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
684 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
685 echo "error" |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
686 git_error=$(tail -n5 $install_log 2>&1) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
687 zenity --title="$title" --width=370 --height=400 --error --text=$'Git error:\n\n'"$git_error" 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
688 exit_install |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
689 exit |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
690 fi |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
691 fi |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
692 if [[ "$DEBUG" == "yes" ]] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
693 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
694 debug_opt="" |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
695 else |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
696 debug_opt="--disable-debug-log" |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
697 fi |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
698 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
699 echo "40" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
700 echo "#Creating configuration files..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
701 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
702 if [[ $gtk_version == "GTK3"* ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
703 then |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
704 ./autogen.sh "$debug_opt" >>$install_log 2>&1 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
705 else |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
706 ./autogen.sh "$debug_opt" --disable-gtk3 >>$install_log 2>&1 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
707 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
708 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
709 echo "60" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
710 echo "#Compiling..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
711 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
712 export CFLAGS=$CFLAGS" -Wno-deprecated-declarations" |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
713 export CXXFLAGS=$CXXFLAGS" -Wno-deprecated-declarations" |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
714 make -j >>$install_log 2>&1 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
715 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
716 if [[ $? != 0 ]] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
717 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
718 zenity --title="$title" --width=370 --height=400 --error --text=$'Compile error' 2>/dev/null |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
719 exit_install |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
720 exit |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
721 fi |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
722 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
723 echo "90 " > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
724 echo "#Installing Geeqie..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
725 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
726 sudo --askpass make install >>$install_log 2>&1 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
727 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
728 # This is a temporary fix until the ZoneDetect project releases its source code |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
729 zonedetect_message="ZoneDetect database not loaded" |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
730 if [[ -d "/usr/local/lib/geeqie" ]] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
731 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
732 if [[ ! -f "/usr/local/lib/geeqie/timezone21.bin" ]] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
733 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
734 sudo --askpass wget --directory-prefix=/usr/local/lib/geeqie/ https://github.com/BertoldVdb/ZoneDetect/raw/master/database/timezone21.bin >>$install_log 2>&1 |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
735 if [[ $? == 0 ]] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
736 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
737 zonedetect_message="" |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
738 fi |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
739 else |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
740 zonedetect_message="" |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
741 fi |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
742 fi |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
743 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
744 rm $install_pass_script |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
745 mv -f $install_log install.log; |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
746 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
747 echo "100 " > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
748 rm $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
749 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
750 (for i in $(seq 0 4 100); do echo "$i"; sleep 0.1; done) | zenity --progress --title="$title" --width=370 --text="Geeqie installation complete...\n$zonedetect_message" --auto-close --percentage=0 2>/dev/null |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
751 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
752 exit |