Mercurial > hg > forks > geeqie
annotate web/geeqie-install-debian.sh @ 2848:ed4e22060177
Fix #635: Export in JPG
https://github.com/BestImageViewer/geeqie/issues/635
Implemented via plugin
author | Colin Clark <colin.clark@cclark.uk> |
---|---|
date | Sun, 14 Oct 2018 12:40:03 +0100 |
parents | ce8f3b3e1f95 |
children | 8521d2405863 |
rev | line source |
---|---|
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
1 #!/bin/bash |
2848
ed4e22060177
Fix #635: Export in JPG
Colin Clark <colin.clark@cclark.uk>
parents:
2828
diff
changeset
|
2 version="2018-10-14" |
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" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
60 ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
61 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
62 # Optional for GTK3 only |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
63 optional_gtk3_array=( |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
64 "libchamplain gtk (for GPS maps)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
65 "libchamplain-gtk-0.12-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
66 "libchamplain (for GPS maps)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
67 "libchamplain-0.12-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
68 "libpoppler (for pdf file preview)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
69 "libpoppler-glib-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
70 ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
71 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
72 # Optional pixbuf loaders |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
73 optional_loaders_array=( |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
74 ".webp WebP images" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
75 "webp" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
76 ".psd Photoshop images" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
77 "psd" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
78 ".xcf Gimp files" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
79 "xcf" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
80 ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
81 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
82 #################################################################### |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
83 # Get System Info |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
84 # 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
|
85 #################################################################### |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
86 lowercase() |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
87 { |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
88 echo "$1" | sed "y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/" |
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 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
91 systemProfile() |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
92 { |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
93 OS=`lowercase \`uname\`` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
94 KERNEL=`uname -r` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
95 MACH=`uname -m` |
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 if [ "${OS}" == "windowsnt" ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
98 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
99 OS=windows |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
100 elif [ "${OS}" == "darwin" ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
101 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
102 OS=mac |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
103 else |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
104 OS=`uname` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
105 if [ "${OS}" = "SunOS" ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
106 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
107 OS=Solaris |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
108 ARCH=`uname -p` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
109 OSSTR="${OS} ${REV}(${ARCH} `uname -v`)" |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
110 elif [ "${OS}" = "AIX" ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
111 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
112 OSSTR="${OS} `oslevel` (`oslevel -r`)" |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
113 elif [ "${OS}" = "Linux" ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
114 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
115 if [ -f /etc/redhat-release ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
116 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
117 DistroBasedOn='RedHat' |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
118 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
|
119 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
|
120 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
|
121 elif [ -f /etc/SuSE-release ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
122 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
123 DistroBasedOn='SuSe' |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
124 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
|
125 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
|
126 elif [ -f /etc/mandrake-release ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
127 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
128 DistroBasedOn='Mandrake' |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
129 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
|
130 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
|
131 elif [ -f /etc/debian_version ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
132 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
133 DistroBasedOn='Debian' |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
134 if [ -f /etc/lsb-release ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
135 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
136 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
|
137 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
|
138 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
|
139 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
140 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
141 if [ -f /etc/UnitedLinux-release ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
142 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
143 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
|
144 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
145 OS=`lowercase $OS` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
146 DistroBasedOn=`lowercase $DistroBasedOn` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
147 readonly OS |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
148 readonly DIST |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
149 readonly DistroBasedOn |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
150 readonly PSUEDONAME |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
151 readonly REV |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
152 readonly KERNEL |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
153 readonly MACH |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
154 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
155 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
156 } |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
157 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
158 install_essential() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
159 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
160 arraylength=${#essential_array[@]} |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
161 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
|
162 do |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
163 package_query ${essential_array[$i]} |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
164 if [ $? != 0 ] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
165 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
166 package_install ${essential_array[$i]} |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
167 fi |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
168 done |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
169 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
170 if [[ $1 == "GTK3" ]] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
171 then |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
172 package_query "libgtk-3-dev" |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
173 if [ $? != 0 ] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
174 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
175 package_install libgtk-3-dev |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
176 fi |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
177 else |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
178 package_query "libgtk2.0-dev" |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
179 if [ $? != 0 ] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
180 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
181 package_install libgtk2.0-dev |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
182 fi |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
183 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
184 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
185 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
186 install_options() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
187 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
188 if [ -n "$options" ] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
189 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
190 OLDIFS=$IFS |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
191 IFS='|' |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
192 set $options |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
193 while [ $# -gt 0 ]; |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
194 do |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
195 package_install $1 |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
196 shift |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
197 done |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
198 IFS=$OLDIFS |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
199 fi |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
200 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
201 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
202 install_webp() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
203 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
204 rm -rf webp-pixbuf-loader-master |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
205 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
|
206 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
|
207 unzip master.zip |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
208 cd webp-pixbuf-loader-master |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
209 ./waf configure |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
210 ./waf build |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
211 sudo --askpass ./waf install |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
212 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
|
213 cd - |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
214 rm -rf webp-pixbuf-loader-master |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
215 rm master.zip |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
216 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
217 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
218 install_psd() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
219 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
220 rm -rf gdk-pixbuf-psd |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
221 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
|
222 cd gdk-pixbuf-psd |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
223 ./autogen.sh |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
224 make |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
225 sudo --askpass make install |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
226 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
|
227 cd - |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
228 rm -rf gdk-pixbuf-psd |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
229 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
230 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
231 install_xcf() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
232 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
233 rm -rf xcf-pixbuf-loader |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
234 package_install libbz2-dev |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
235 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
|
236 cd xcf-pixbuf-loader |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
237 ./autogen.sh |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
238 make |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
239 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
240 # There must be a better way... |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
241 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
|
242 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
243 OLDIFS=$IFS |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
244 IFS='=' |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
245 set $loader_locn |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
246 OLDIFS=$IFS |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
247 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
248 if [ -d $2 ] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
249 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
250 sudo --askpass cp .libs/libioxcf.so $2 |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
251 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
|
252 fi |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
253 cd - |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
254 rm -rf xcf-pixbuf-loader |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
255 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
256 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
257 install_extra_loaders() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
258 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
259 if [ -n "$extra_loaders" ] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
260 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
261 OLDIFS=$IFS |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
262 IFS='|' |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
263 set $extra_loaders |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
264 while [ $# -gt 0 ]; |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
265 do |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
266 case $1 in |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
267 "webp" ) |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
268 install_webp |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
269 ;; |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
270 "psd" ) |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
271 install_psd |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
272 ;; |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
273 "xcf" ) |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
274 install_xcf |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
275 ;; |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
276 esac |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
277 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
278 shift |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
279 done |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
280 IFS=$OLDIFS |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
281 fi |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
282 return |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
283 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
284 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
285 uninstall() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
286 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
287 current_dir=$(basename $PWD) |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
288 if [[ $current_dir == "geeqie" ]] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
289 then |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
290 sudo --askpass make uninstall |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
291 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
|
292 |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
293 if [[ $? == 1 ]] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
294 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
295 cd .. |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
296 sudo --askpass rm -rf geeqie |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
297 fi |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
298 else |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
299 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
|
300 fi |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
301 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
302 exit_install |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
303 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
304 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
305 package_query() |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
306 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
307 if [[ $DistroBasedOn == "debian" ]] |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
308 then |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
309 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
|
310 if [[ "$res" == "install ok installed"* ]] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
311 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
312 status=0 |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
313 else |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
314 status=1 |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
315 fi |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
316 fi |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
317 return $status |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
318 } |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
319 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
320 package_install() |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
321 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
322 if [[ $DistroBasedOn == "debian" ]] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
323 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
324 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
|
325 fi |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
326 } |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
327 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
328 exit_install() |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
329 { |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
330 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
|
331 #~ 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
|
332 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
333 if [[ -p $zen_pipe ]] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
334 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
335 echo "100" > $zen_pipe |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
336 echo "#End" > $zen_pipe |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
337 fi |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
338 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
339 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
|
340 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
341 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
|
342 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
343 exit 1 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
344 } |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
345 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
346 # Entry point |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
347 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
348 # 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
|
349 ls $PWD >/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
350 if [[ $? != 0 ]] |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
351 then |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
352 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
|
353 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
354 exit |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
355 fi |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
356 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
357 # Check system type |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
358 systemProfile |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
359 if [[ $DistroBasedOn != "debian" ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
360 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
361 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
|
362 Operating System: $OS |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
363 Distribution: $DIST |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
364 Psuedoname: $PSUEDONAME |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
365 Revision: $REV |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
366 DistroBasedOn: $DistroBasedOn |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
367 Kernel: $KERNEL |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
368 Machine: $MACH" 2>/dev/null |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
369 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
370 exit |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
371 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
372 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
373 # Parse the comand line |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
374 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
|
375 eval set -- "$OPTS" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
376 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
377 while true; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
378 do |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
379 case "$1" in |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
380 -v | --version ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
381 echo "$version" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
382 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
383 ;; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
384 -h | --help ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
385 echo "$description" |
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 -c | --commit ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
389 COMMIT="$2" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
390 shift |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
391 shift |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
392 ;; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
393 -t | --tag ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
394 TAG="$2" |
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 shift |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
397 ;; |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
398 -b | --back ) |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
399 BACK="$2" |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
400 shift; |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
401 shift |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
402 ;; |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
403 -d | --debug ) |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
404 DEBUG="$2" |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
405 shift; |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
406 shift |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
407 ;; |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
408 * ) break |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
409 ;; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
410 esac |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
411 done |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
412 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
413 # 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
|
414 if [ -d "geeqie" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
415 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
416 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
|
417 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
418 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
419 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
420 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
421 # 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
|
422 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
|
423 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
424 mode="update" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
425 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
426 # 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
|
427 if [ -d ".git" ] || [ -d "src" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
428 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
429 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
|
430 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
431 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
432 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
433 mode="install" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
434 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
435 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
436 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
437 # Use GTK3 as default |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
438 gk2_installed=FALSE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
439 gtk3_installed=TRUE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
440 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
441 if [[ $mode == "install" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
442 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
443 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
|
444 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
445 title="Install Geeqie and dependencies" |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
446 install_option=TRUE |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
447 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
448 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
|
449 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
450 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
|
451 install_option=FALSE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
452 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
453 # 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
|
454 if [[ -f config.log ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
455 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
456 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
|
457 if [[ $? != 0 ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
458 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
459 gtk2_installed=FALSE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
460 gtk3_installed=TRUE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
461 else |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
462 gtk2_installed=TRUE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
463 gtk3_installed=FALSE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
464 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
465 fi |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
466 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
467 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
468 # 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
|
469 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
470 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
|
471 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
472 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
473 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
474 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
475 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
476 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
477 # 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
|
478 # 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
|
479 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
|
480 echo $'#!/bin/bash |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
481 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
|
482 if [[ $? > 0 ]] |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
483 then |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
484 exit 1 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
485 fi |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
486 \n' > $install_pass_script |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
487 chmod +x $install_pass_script |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
488 export SUDO_ASKPASS=$install_pass_script |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
489 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
490 if [[ $gtk_version == "Uninstall" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
491 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
492 uninstall |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
493 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
494 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
495 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
496 # 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
|
497 rm install.log 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
498 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
|
499 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
500 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
|
501 zen_pid=$! |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
502 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
503 # 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
|
504 arraylength=${#optional_array[@]} |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
505 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
|
506 do |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
507 package_query ${optional_array[$i+1]} |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
508 if [ $? != 0 ] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
509 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
510 if [ -z "$option_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
511 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
512 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
|
513 else |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
514 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
|
515 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
516 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
517 done |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
518 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
519 # 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
|
520 if [[ "$gtk_version" == "GTK3"* ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
521 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
522 arraylength=${#optional_gtk3_array[@]} |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
523 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
|
524 do |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
525 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
|
526 if [ $? != 0 ] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
527 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
528 if [ -z "$option_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
529 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
530 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
|
531 else |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
532 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
|
533 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
534 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
535 done |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
536 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
537 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
538 # Get the optional loaders not yet installed |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
539 ((i=0)) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
540 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
|
541 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
542 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
543 if [ -z "$loaders_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
544 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
545 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
|
546 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
547 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
|
548 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
549 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
550 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
551 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
552 ((i=i+2)) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
553 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
|
554 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
555 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
556 if [ -z "$loaders_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
557 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
558 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
|
559 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
560 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
|
561 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
562 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
563 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
564 ((i=i+2)) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
565 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
|
566 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
567 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
568 if [ -z "$loaders_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
569 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
570 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
|
571 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
572 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
|
573 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
574 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
575 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
576 kill $zen_pid 2>/dev/null |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
577 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
578 # Ask the user which options to install |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
579 if [ -n "$option_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
580 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
581 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
|
582 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
583 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
584 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
585 exit_install |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
586 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
587 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
588 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
589 # 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
|
590 if [ -n "$loaders_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
591 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
592 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
|
593 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
594 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
595 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
596 exit_install |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
597 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
598 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
599 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
600 # Start of Zenity progress section |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
601 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
|
602 mkfifo $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
603 (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
|
604 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
605 echo "2" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
606 echo "#Installing essential libraries..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
607 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
608 install_essential $gtk_version |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
609 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
610 echo "4" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
611 echo "#Installing options..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
612 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
613 install_options |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
614 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
615 echo "6" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
616 echo "#Installing extra loaders..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
617 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
618 install_extra_loaders |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
619 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
620 echo "10" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
621 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
|
622 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
623 if [[ $mode == "install" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
624 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
625 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
|
626 else |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
627 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
|
628 if [[ $? != 0 ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
629 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
630 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
|
631 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
|
632 exit_install |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
633 fi |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
634 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
|
635 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
636 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
637 if [[ $? != 0 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
638 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
639 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
|
640 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
|
641 exit_install |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
642 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
643 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
644 echo "20" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
645 echo "#Cleaning installed version..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
646 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
647 if [[ $mode == "install" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
648 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
649 cd geeqie |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
650 else |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
651 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
|
652 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
|
653 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
654 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
655 echo "30" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
656 echo "#Checkout required version..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
657 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
658 if [[ "$BACK" ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
659 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
660 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
|
661 if [[ $? != 0 ]] |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
662 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
663 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
|
664 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
|
665 exit_install |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
666 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
667 elif [[ "$COMMIT" ]] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
668 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
669 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
|
670 if [[ $? != 0 ]] |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
671 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
672 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
|
673 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
|
674 exit_install |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
675 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
676 elif [[ "$TAG" ]] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
677 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
678 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
|
679 if [[ $? != 0 ]] |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
680 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
681 echo "error" |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
682 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
|
683 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
|
684 exit_install |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
685 exit |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
686 fi |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
687 fi |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
688 if [[ "$DEBUG" == "yes" ]] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
689 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
690 debug_opt="" |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
691 else |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
692 debug_opt="--disable-debug-log" |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
693 fi |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
694 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
695 echo "40" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
696 echo "#Creating configuration files..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
697 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
698 if [[ $gtk_version == "GTK3"* ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
699 then |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
700 ./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
|
701 else |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
702 ./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
|
703 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
704 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
705 echo "60" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
706 echo "#Compiling..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
707 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
708 export CFLAGS=$CFLAGS" -Wno-deprecated-declarations" |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
709 export CXXFLAGS=$CXXFLAGS" -Wno-deprecated-declarations" |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
710 make -j >>$install_log 2>&1 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
711 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
712 if [[ $? != 0 ]] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
713 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
714 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
|
715 exit_install |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
716 exit |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
717 fi |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
718 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
719 echo "90 " > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
720 echo "#Installing Geeqie..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
721 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
722 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
|
723 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
724 # 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
|
725 zonedetect_message="ZoneDetect database not loaded" |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
726 if [[ -d "/usr/local/lib/geeqie" ]] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
727 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
728 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
|
729 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
730 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
|
731 if [[ $? == 0 ]] |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
732 then |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
733 zonedetect_message="" |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
734 fi |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
735 else |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
736 zonedetect_message="" |
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
737 fi |
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 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
740 rm $install_pass_script |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
741 mv -f $install_log install.log; |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
742 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
743 echo "100 " > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
744 rm $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
745 |
2821
0c4659cd6d32
Remove ZoneDetect .bin file from repository
Colin Clark <colin.clark@cclark.uk>
parents:
2810
diff
changeset
|
746 (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
|
747 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
748 exit |