Mercurial > hg > forks > geeqie
annotate web/geeqie-install-debian.sh @ 2807:7fa597d9c65b
Revised script for compiling on Debian system
Omitted dependencies
Command line option to compile commit -n
Distribution detection
author | Colin Clark <colin.clark@cclark.uk> |
---|---|
date | Thu, 02 Aug 2018 14:28:17 +0100 |
parents | c7a8c086862b |
children | 8438d30abd31 |
rev | line source |
---|---|
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
1 #!/bin/bash |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
2 version="2018-08-02" |
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) |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
17 ' |
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 # Essential for compiling |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
20 essential_array=( |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
21 "git" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
22 "build-essential" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
23 "autoconf" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
24 "libglib2.0-0" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
25 "intltool" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
26 ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
27 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
28 # Optional for both GTK2 and GTK3 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
29 optional_array=( |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
30 "LCMS (for color management)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
31 "liblcms2-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
32 "exiv2 (for exif handling)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
33 "libgexiv2-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
34 "lua (for --remote commands)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
35 "liblua5.1-0-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
36 "libffmpegthumbnailer (for mpeg thumbnails)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
37 "libffmpegthumbnailer-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
38 "libtiff (for tiff support)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
39 "libtiff-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
40 "libjpeg (for jpeg support" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
41 "libjpeg-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
42 "librsvg2 (for viewing .svg images" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
43 "librsvg2-common" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
44 "libwmf (for viewing .wmf images)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
45 "libwmf0.2-7-gtk" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
46 "exiftran (for image rotation)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
47 "exiftran" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
48 "imagemagick (for image rotation)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
49 "imagemagick" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
50 "ufraw (for RAW file handling)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
51 "ufraw" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
52 "markdown (for generating README help file)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
53 "markdown" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
54 ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
55 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
56 # Optional for GTK3 only |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
57 optional_gtk3_array=( |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
58 "libchamplain gtk (for GPS maps)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
59 "libchamplain-gtk-0.12-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
60 "libchamplain (for GPS maps)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
61 "libchamplain-0.12-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
62 "libpoppler (for pdf file preview)" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
63 "libpoppler-glib-dev" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
64 ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
65 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
66 # Optional pixbuf loaders |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
67 optional_loaders_array=( |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
68 ".webp WebP images" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
69 "webp" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
70 ".psd Photoshop images" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
71 "psd" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
72 ".xcf Gimp files" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
73 "xcf" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
74 ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
75 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
76 #################################################################### |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
77 # Get System Info |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
78 # 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
|
79 #################################################################### |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
80 lowercase() |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
81 { |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
82 echo "$1" | sed "y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/" |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
83 } |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
84 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
85 systemProfile() |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
86 { |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
87 OS=`lowercase \`uname\`` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
88 KERNEL=`uname -r` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
89 MACH=`uname -m` |
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 if [ "${OS}" == "windowsnt" ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
92 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
93 OS=windows |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
94 elif [ "${OS}" == "darwin" ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
95 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
96 OS=mac |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
97 else |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
98 OS=`uname` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
99 if [ "${OS}" = "SunOS" ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
100 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
101 OS=Solaris |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
102 ARCH=`uname -p` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
103 OSSTR="${OS} ${REV}(${ARCH} `uname -v`)" |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
104 elif [ "${OS}" = "AIX" ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
105 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
106 OSSTR="${OS} `oslevel` (`oslevel -r`)" |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
107 elif [ "${OS}" = "Linux" ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
108 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
109 if [ -f /etc/redhat-release ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
110 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
111 DistroBasedOn='RedHat' |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
112 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
|
113 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
|
114 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
|
115 elif [ -f /etc/SuSE-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='SuSe' |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
118 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
|
119 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
|
120 elif [ -f /etc/mandrake-release ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
121 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
122 DistroBasedOn='Mandrake' |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
123 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
|
124 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
|
125 elif [ -f /etc/debian_version ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
126 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
127 DistroBasedOn='Debian' |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
128 if [ -f /etc/lsb-release ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
129 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
130 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
|
131 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
|
132 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
|
133 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
134 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
135 if [ -f /etc/UnitedLinux-release ] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
136 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
137 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
|
138 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
139 OS=`lowercase $OS` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
140 DistroBasedOn=`lowercase $DistroBasedOn` |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
141 readonly OS |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
142 readonly DIST |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
143 readonly DistroBasedOn |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
144 readonly PSUEDONAME |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
145 readonly REV |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
146 readonly KERNEL |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
147 readonly MACH |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
148 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
149 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
150 } |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
151 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
152 install_essential() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
153 { |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
154 arraylength=${#essential_array[@]} |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
155 for (( i=0; i<${arraylength}; i=i+1 )); |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
156 do |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
157 package_query ${essential_array[$i]} |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
158 if [ $? != 0 ] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
159 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
160 package_install ${essential_array[$i]} |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
161 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
162 done |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
163 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
164 if [[ $1 == "GTK3" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
165 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
166 package_query "libgtk-3-dev" |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
167 if [ $? != 0 ] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
168 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
169 package_install libgtk-3-dev |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
170 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
171 else |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
172 package_query "libgtk2.0-dev" |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
173 if [ $? != 0 ] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
174 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
175 package_install libgtk2.0-dev |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
176 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
177 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
178 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
179 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
180 install_options() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
181 { |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
182 if [ -n "$options" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
183 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
184 OLDIFS=$IFS |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
185 IFS='|' |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
186 set $options |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
187 while [ $# -gt 0 ]; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
188 do |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
189 package_install $1 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
190 shift |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
191 done |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
192 IFS=$OLDIFS |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
193 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
194 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
195 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
196 install_webp() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
197 { |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
198 rm -rf webp-pixbuf-loader-master |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
199 package_install libglib2.0-dev libgdk-pixbuf2.0-dev libwebp-dev python-minimal |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
200 wget https://github.com/aruiz/webp-pixbuf-loader/archive/master.zip |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
201 unzip master.zip |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
202 cd webp-pixbuf-loader-master |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
203 ./waf configure |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
204 ./waf build |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
205 sudo ./waf install |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
206 sudo gdk-pixbuf-query-loaders --update-cache |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
207 cd - |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
208 rm -rf webp-pixbuf-loader-master |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
209 rm master.zip |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
210 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
211 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
212 install_psd() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
213 { |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
214 rm -rf gdk-pixbuf-psd |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
215 git clone https://github.com/and-rom/gdk-pixbuf-psd.git |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
216 cd gdk-pixbuf-psd |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
217 ./autogen.sh |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
218 make |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
219 sudo make install |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
220 sudo gdk-pixbuf-query-loaders --update-cache |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
221 cd - |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
222 rm -rf gdk-pixbuf-psd |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
223 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
224 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
225 install_xcf() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
226 { |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
227 rm -rf xcf-pixbuf-loader |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
228 package_install libbz2-dev |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
229 git clone https://github.com/StephaneDelcroix/xcf-pixbuf-loader.git |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
230 cd xcf-pixbuf-loader |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
231 ./autogen.sh |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
232 make |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
233 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
234 # There must be a better way... |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
235 loader_locn=$(gdk-pixbuf-query-loaders | grep "LoaderDir" | tr -d '#[:space:]') |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
236 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
237 OLDIFS=$IFS |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
238 IFS='=' |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
239 set $loader_locn |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
240 OLDIFS=$IFS |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
241 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
242 if [ -d $2 ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
243 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
244 sudo cp .libs/libioxcf.so $2 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
245 sudo gdk-pixbuf-query-loaders --update-cache |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
246 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
247 cd - |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
248 rm -rf xcf-pixbuf-loader |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
249 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
250 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
251 install_extra_loaders() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
252 { |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
253 if [ -n "$extra_loaders" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
254 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
255 OLDIFS=$IFS |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
256 IFS='|' |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
257 set $extra_loaders |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
258 while [ $# -gt 0 ]; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
259 do |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
260 case $1 in |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
261 "webp" ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
262 install_webp |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
263 ;; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
264 "psd" ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
265 install_psd |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
266 ;; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
267 "xcf" ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
268 install_xcf |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
269 ;; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
270 esac |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
271 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
272 shift |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
273 done |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
274 IFS=$OLDIFS |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
275 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
276 return |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
277 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
278 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
279 uninstall() |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
280 { |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
281 current_dir=$(basename $PWD) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
282 if [[ $current_dir == "geeqie" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
283 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
284 sudo make uninstall |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
285 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 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
286 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
287 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
288 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
289 cd .. |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
290 sudo rm -rf geeqie |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
291 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
292 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
293 zenity --title="Uninstall Geeqie" --width=370 --text="This is not a geeqie installation folder!\n\n$PWD" --warning 2>/dev/null |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
294 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
295 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
296 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
297 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
298 package_query() |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
299 { |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
300 if [[ $DistroBasedOn == "debian" ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
301 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
302 res=$(dpkg-query --show --showformat='${Status}' $1 2>&1) |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
303 if [[ "$res" == "install ok installed"* ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
304 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
305 status=0 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
306 else |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
307 status=1 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
308 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
309 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
310 return $status |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
311 } |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
312 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
313 package_install() |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
314 { |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
315 if [[ $DistroBasedOn == "debian" ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
316 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
317 sudo apt-get --assume-yes install $@ |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
318 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
319 } |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
320 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
321 # Entry point |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
322 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
323 # Check system type |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
324 systemProfile |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
325 if [[ $DistroBasedOn != "debian" ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
326 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
327 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
|
328 Operating System: $OS |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
329 Distribution: $DIST |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
330 Psuedoname: $PSUEDONAME |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
331 Revision: $REV |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
332 DistroBasedOn: $DistroBasedOn |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
333 Kernel: $KERNEL |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
334 Machine: $MACH" 2>/dev/null |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
335 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
336 exit |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
337 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
338 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
339 # Parse the comand line |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
340 OPTS=$(getopt -o vhc:t:b: --long version,help,commit:,tag:,back: -- "$@") |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
341 eval set -- "$OPTS" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
342 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
343 while true; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
344 do |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
345 case "$1" in |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
346 -v | --version ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
347 echo "$version" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
348 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
349 ;; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
350 -h | --help ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
351 echo "$description" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
352 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
353 ;; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
354 -c | --commit ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
355 COMMIT="$2" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
356 shift |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
357 shift |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
358 ;; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
359 -t | --tag ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
360 TAG="$2" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
361 shift; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
362 shift |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
363 ;; |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
364 -b | --back ) |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
365 BACK="$2" |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
366 shift; |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
367 shift |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
368 ;; |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
369 * ) break |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
370 ;; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
371 esac |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
372 done |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
373 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
374 # 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
|
375 if [ -d "geeqie" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
376 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
377 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
|
378 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
379 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
380 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
381 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
382 # 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
|
383 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
|
384 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
385 mode="update" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
386 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
387 # 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
|
388 if [ -d ".git" ] || [ -d "src" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
389 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
390 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
|
391 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
392 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
393 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
394 mode="install" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
395 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
396 fi |
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 # Use GTK3 as default |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
399 gk2_installed=FALSE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
400 gtk3_installed=TRUE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
401 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
402 if [[ $mode == "install" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
403 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
404 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
|
405 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
406 title="Install Geeqie and dependencies" |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
407 install_option=TRUE |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
408 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
409 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
|
410 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
411 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
|
412 install_option=FALSE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
413 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
414 # 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
|
415 if [[ -f config.log ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
416 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
417 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
|
418 if [[ $? != 0 ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
419 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
420 gtk2_installed=FALSE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
421 gtk3_installed=TRUE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
422 else |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
423 gtk2_installed=TRUE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
424 gtk3_installed=FALSE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
425 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
426 fi |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
427 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
428 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
429 # 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
|
430 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
431 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
|
432 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
433 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
434 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
435 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
436 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
437 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
438 if [[ $gtk_version == "Uninstall" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
439 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
440 uninstall |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
441 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
442 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
443 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
444 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
|
445 zen_pid=$! |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
446 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
447 # 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
|
448 arraylength=${#optional_array[@]} |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
449 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
|
450 do |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
451 package_query ${optional_array[$i+1]} |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
452 if [ $? != 0 ] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
453 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
454 if [ -z "$option_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
455 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
456 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
|
457 else |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
458 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
|
459 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
460 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
461 done |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
462 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
463 # 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
|
464 if [[ "$gtk_version" == "GTK3"* ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
465 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
466 arraylength=${#optional_gtk3_array[@]} |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
467 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
|
468 do |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
469 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
|
470 if [ $? != 0 ] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
471 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
472 if [ -z "$option_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
473 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
474 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
|
475 else |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
476 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
|
477 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
478 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
479 done |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
480 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
481 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
482 # Get the optional loaders not yet installed |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
483 ((i=0)) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
484 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
|
485 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
486 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
487 if [ -z "$loaders_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
488 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
489 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
|
490 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
491 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
|
492 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
493 fi |
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 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
496 ((i=i+2)) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
497 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
|
498 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
499 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
500 if [ -z "$loaders_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
501 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
502 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
|
503 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
504 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
|
505 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
506 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
507 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
508 ((i=i+2)) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
509 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
|
510 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
511 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
512 if [ -z "$loaders_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
513 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
514 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
|
515 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
516 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
|
517 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
518 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
519 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
520 kill $zen_pid 2>/dev/null |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
521 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
522 # Ask the user which options to install |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
523 if [ -n "$option_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
524 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
525 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
|
526 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
527 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
528 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
529 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
530 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
531 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
532 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
533 # 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
|
534 if [ -n "$loaders_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
535 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
536 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
|
537 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
538 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
539 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
540 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
541 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
542 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
543 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
544 install_essential $gtk_version |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
545 install_options |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
546 install_extra_loaders |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
547 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
548 if [[ $mode == "install" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
549 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
550 ret=$(git clone git://www.geeqie.org/geeqie.git 2>&1 >/dev/null) |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
551 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
552 git checkout master |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
553 if [[ $? != 0 ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
554 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
555 zenity --title="$title" --width=370 --height=400 --error --text="Git checkout master error" 2>/dev/null |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
556 exit |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
557 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
558 ret=$(git pull 2>&1 >/dev/null) |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
559 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
560 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
561 if [[ $? != 0 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
562 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
563 zenity --title="$title" --width=370 --height=400 --error --text="Git error:\n\n $ret" 2>/dev/null |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
564 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
565 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
566 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
567 if [[ $mode == "install" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
568 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
569 cd geeqie |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
570 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
571 sudo make uninstall |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
572 sudo make maintainer-clean |
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 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
575 if [[ "$BACK" ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
576 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
577 ret=$(git checkout master~"$BACK" 2>&1 >/dev/null) |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
578 if [[ $1 != 0 ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
579 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
580 zenity --title="$title" --width=370 --height=400 --error --text="Git error:\n\n $ret" 2>/dev/null |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
581 exit |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
582 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
583 elif [[ "$COMMIT" ]] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
584 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
585 ret=$(git checkout "$COMMIT" 2>&1 >/dev/null) |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
586 if [[ $1 != 0 ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
587 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
588 zenity --title="$title" --width=370 --height=400 --error --text="Git error:\n\n $ret" 2>/dev/null |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
589 exit |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
590 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
591 elif [[ "$TAG" ]] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
592 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
593 ret=$(git checkout "$TAG" 2>&1 >/dev/null) |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
594 if [[ $1 != 0 ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
595 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
596 zenity --title="$title" --width=370 --height=400 --error --text="Git error:\n\n $ret" 2>/dev/null |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
597 exit |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
598 fi |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
599 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
600 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
601 if [[ $gtk_version == "GTK3"* ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
602 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
603 ./autogen.sh |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
604 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
605 ./autogen.sh --disable-gtk3 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
606 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
607 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
608 make -j |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
609 sudo make install |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
610 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
611 exit |