Mercurial > hg > forks > geeqie
annotate web/geeqie-install-debian.sh @ 2810:8438d30abd31
Script for compiling on Debian systems
Several improvements
author | Colin Clark <colin.clark@cclark.uk> |
---|---|
date | Mon, 06 Aug 2018 12:55:46 +0100 |
parents | 7fa597d9c65b |
children | 0c4659cd6d32 |
rev | line source |
---|---|
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
1 #!/bin/bash |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
2 version="2018-08-06" |
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 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
205 sudo --askpass ./waf install |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
206 sudo --askpass gdk-pixbuf-query-loaders --update-cache |
2804
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 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
219 sudo --askpass make install |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
220 sudo --askpass gdk-pixbuf-query-loaders --update-cache |
2804
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... |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
235 loader_locn=$(gdk-pixbuf-query-loaders | grep "LoaderDir" | tr -d '#[:space:]') |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
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 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
244 sudo --askpass cp .libs/libioxcf.so $2 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
245 sudo --askpass gdk-pixbuf-query-loaders --update-cache |
2804
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 - |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
248 rm -rf xcf-pixbuf-loader |
2804
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 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
284 sudo --askpass make uninstall |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
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 |
2804
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 .. |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
290 sudo --askpass rm -rf geeqie |
2804
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 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
293 zenity --title="Uninstall Geeqie" --width=370 --text="This is not a geeqie installation folder!\n\n$PWD" --warning 2>/dev/null |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
294 fi |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
295 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
296 exit_install |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
297 } |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
298 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
299 package_query() |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
300 { |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
301 if [[ $DistroBasedOn == "debian" ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
302 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
303 res=$(dpkg-query --show --showformat='${Status}' $1 2>>$install_log) |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
304 if [[ "$res" == "install ok installed"* ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
305 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
306 status=0 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
307 else |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
308 status=1 |
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 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
311 return $status |
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 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
314 package_install() |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
315 { |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
316 if [[ $DistroBasedOn == "debian" ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
317 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
318 sudo --askpass apt-get --assume-yes install $@ >>$install_log 2>&1 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
319 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
320 } |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
321 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
322 exit_install() |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
323 { |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
324 rm $install_pass_script >/dev/null 2>&1 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
325 #~ rm $install_log >/dev/null 2>&1 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
326 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
327 if [[ -p $zen_pipe ]] |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
328 then |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
329 echo "100" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
330 echo "#End" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
331 fi |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
332 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
333 zenity --title="$title" --width=370 --text=$'Geeqie is not installed\nLog file: '$install_log --info 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
334 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
335 rm $zen_pipe >/dev/null 2>&1 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
336 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
337 exit 1 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
338 } |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
339 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
340 # Entry point |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
341 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
342 # If uninstall has been run, maybe the current directory no longer exists |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
343 ls $PWD >/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
344 if [[ $? != 0 ]] |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
345 then |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
346 zenity --error --title="Install Geeqie and dependencies" --width=370 --text="Folder $PWD does not exist!" 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
347 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
348 exit |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
349 fi |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
350 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
351 # Check system type |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
352 systemProfile |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
353 if [[ $DistroBasedOn != "debian" ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
354 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
355 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
|
356 Operating System: $OS |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
357 Distribution: $DIST |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
358 Psuedoname: $PSUEDONAME |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
359 Revision: $REV |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
360 DistroBasedOn: $DistroBasedOn |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
361 Kernel: $KERNEL |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
362 Machine: $MACH" 2>/dev/null |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
363 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
364 exit |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
365 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
366 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
367 # Parse the comand line |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
368 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
|
369 eval set -- "$OPTS" |
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 while true; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
372 do |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
373 case "$1" in |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
374 -v | --version ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
375 echo "$version" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
376 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
377 ;; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
378 -h | --help ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
379 echo "$description" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
380 exit |
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 -c | --commit ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
383 COMMIT="$2" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
384 shift |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
385 shift |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
386 ;; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
387 -t | --tag ) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
388 TAG="$2" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
389 shift; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
390 shift |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
391 ;; |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
392 -b | --back ) |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
393 BACK="$2" |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
394 shift; |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
395 shift |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
396 ;; |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
397 * ) break |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
398 ;; |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
399 esac |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
400 done |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
401 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
402 # 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
|
403 if [ -d "geeqie" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
404 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
405 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
|
406 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
407 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
408 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
409 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
410 # 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
|
411 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
|
412 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
413 mode="update" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
414 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
415 # 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
|
416 if [ -d ".git" ] || [ -d "src" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
417 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
418 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
|
419 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
420 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
421 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
422 mode="install" |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
423 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
424 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
425 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
426 # Use GTK3 as default |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
427 gk2_installed=FALSE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
428 gtk3_installed=TRUE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
429 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
430 if [[ $mode == "install" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
431 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
432 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
|
433 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
434 title="Install Geeqie and dependencies" |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
435 install_option=TRUE |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
436 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
437 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
|
438 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
439 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
|
440 install_option=FALSE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
441 |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
442 # 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
|
443 if [[ -f config.log ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
444 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
445 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
|
446 if [[ $? != 0 ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
447 then |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
448 gtk2_installed=FALSE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
449 gtk3_installed=TRUE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
450 else |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
451 gtk2_installed=TRUE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
452 gtk3_installed=FALSE |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
453 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
454 fi |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
455 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
456 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
457 # 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
|
458 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
459 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
|
460 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
461 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
462 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
463 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
464 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
465 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
466 # Environment variable SUDO_ASKPASS cannot be "zenity --password", |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
467 # so create a temporary script containing the command |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
468 install_pass_script=$(mktemp --tmpdir geeqie_install_XXXXXX.sh) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
469 echo $'#!/bin/bash |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
470 zenity --password --title=\"'$title$'\" --width=370 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
471 if [[ $? > 0 ]] |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
472 then |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
473 exit 1 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
474 fi |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
475 \n' > $install_pass_script |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
476 chmod +x $install_pass_script |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
477 export SUDO_ASKPASS=$install_pass_script |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
478 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
479 if [[ $gtk_version == "Uninstall" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
480 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
481 uninstall |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
482 exit |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
483 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
484 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
485 # Put the install log in tmp, to avoid writing to PWD during a new install |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
486 rm install.log 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
487 install_log=$(mktemp --tmpdir geeqie_install_XXXXXX.log) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
488 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
489 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
|
490 zen_pid=$! |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
491 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
492 # 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
|
493 arraylength=${#optional_array[@]} |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
494 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
|
495 do |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
496 package_query ${optional_array[$i+1]} |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
497 if [ $? != 0 ] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
498 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
499 if [ -z "$option_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
500 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
501 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
|
502 else |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
503 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
|
504 fi |
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 done |
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 # 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
|
509 if [[ "$gtk_version" == "GTK3"* ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
510 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
511 arraylength=${#optional_gtk3_array[@]} |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
512 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
|
513 do |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
514 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
|
515 if [ $? != 0 ] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
516 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
517 if [ -z "$option_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
518 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
519 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
|
520 else |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
521 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
|
522 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
523 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
524 done |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
525 fi |
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 # Get the optional loaders not yet installed |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
528 ((i=0)) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
529 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
|
530 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
531 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
532 if [ -z "$loaders_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
533 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
534 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
|
535 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
536 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
|
537 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
538 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
539 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
540 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
541 ((i=i+2)) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
542 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
|
543 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
544 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
545 if [ -z "$loaders_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
546 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
547 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
|
548 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
549 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
|
550 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
551 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
552 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
553 ((i=i+2)) |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
554 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
|
555 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
556 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
557 if [ -z "$loaders_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
558 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
559 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
|
560 else |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
561 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
|
562 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
563 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
564 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
565 kill $zen_pid 2>/dev/null |
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 # Ask the user which options to install |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
568 if [ -n "$option_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
569 then |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
570 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
|
571 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
572 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
573 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
574 exit_install |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
575 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
576 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
577 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
578 # Ask the user which extra loaders to install |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
579 if [ -n "$loaders_string" ] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
580 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
581 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
|
582 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
583 if [[ $? == 1 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
584 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
585 exit_install |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
586 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
587 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
588 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
589 # Start of Zenity progress section |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
590 zen_pipe=$(mktemp --dry-run --tmpdir geeqie_install_pipe_XXXXXX) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
591 mkfifo $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
592 (tail -f $zen_pipe 2>/dev/null) | zenity --progress --title="$title" --width=370 --text="Installing options..." --auto-close --auto-kill --percentage=0 2>/dev/null & |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
593 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
594 echo "2" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
595 echo "#Installing essential libraries..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
596 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
597 install_essential $gtk_version |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
598 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
599 echo "4" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
600 echo "#Installing options..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
601 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
602 install_options |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
603 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
604 echo "6" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
605 echo "#Installing extra loaders..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
606 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
607 install_extra_loaders |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
608 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
609 echo "10" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
610 echo "#Getting new sources from server..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
611 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
612 if [[ $mode == "install" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
613 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
614 ret=$(git clone git://www.geeqie.org/geeqie.git >>$install_log 2>&1) |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
615 else |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
616 git checkout master >>$install_log 2>&1 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
617 if [[ $? != 0 ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
618 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
619 git_error=$(tail -n5 $install_log 2>&1) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
620 zenity --title="$title" --width=370 --height=400 --error --text=$'Git error:\n\n'"$git_error" 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
621 exit_install |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
622 fi |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
623 ret=$(git pull >>$install_log 2>&1) |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
624 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
625 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
626 if [[ $? != 0 ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
627 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
628 git_error=$(tail -n5 $install_log 2>&1) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
629 zenity --title="$title" --width=370 --height=400 --error --text=$'Git error:\n\n'"$git_error" 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
630 exit_install |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
631 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
632 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
633 echo "20" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
634 echo "#Cleaning installed version..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
635 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
636 if [[ $mode == "install" ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
637 then |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
638 cd geeqie |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
639 else |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
640 sudo --askpass make uninstall >>$install_log 2>&1 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
641 sudo --askpass make maintainer-clean >>$install_log 2>&1 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
642 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
643 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
644 echo "30" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
645 echo "#Checkout required version..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
646 |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
647 if [[ "$BACK" ]] |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
648 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
649 ret=$(git checkout master~"$BACK" >>$install_log 2>&1) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
650 if [[ $? != 0 ]] |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
651 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
652 git_error=$(tail -n5 $install_log 2>&1) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
653 zenity --title="$title" --width=370 --height=400 --error --text=$'Git error:\n\n'"$git_error" 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
654 exit_install |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
655 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
656 elif [[ "$COMMIT" ]] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
657 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
658 ret=$(git checkout "$COMMIT" >>$install_log 2>&1) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
659 if [[ $? != 0 ]] |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
660 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
661 git_error=$(tail -n5 $install_log 2>&1) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
662 zenity --title="$title" --width=370 --height=400 --error --text=$'Git error:\n\n'"$git_error" 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
663 exit_install |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
664 fi |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
665 elif [[ "$TAG" ]] |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
666 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
667 ret=$(git checkout "$TAG" >>$install_log 2>&1) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
668 if [[ $? != 0 ]] |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
669 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
670 echo "error" |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
671 git_error=$(tail -n5 $install_log 2>&1) |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
672 zenity --title="$title" --width=370 --height=400 --error --text=$'Git error:\n\n'"$git_error" 2>/dev/null |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
673 exit_install |
2807
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
674 exit |
7fa597d9c65b
Revised script for compiling on Debian system
Colin Clark <colin.clark@cclark.uk>
parents:
2804
diff
changeset
|
675 fi |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
676 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
677 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
678 echo "40" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
679 echo "#Creating configuration files..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
680 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
681 if [[ $gtk_version == "GTK3"* ]] |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
682 then |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
683 ./autogen.sh >>$install_log 2>&1 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
684 else |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
685 ./autogen.sh --disable-gtk3 >>$install_log 2>&1 |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
686 fi |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
687 |
2810
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
688 echo "60" > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
689 echo "#Compiling..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
690 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
691 export CFLAGS=$CFLAGS" -Wno-deprecated-declarations" |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
692 export CXXFLAGS=$CXXFLAGS" -Wno-deprecated-declarations" |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
693 make -j >>$install_log 2>&1 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
694 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
695 echo "90 " > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
696 echo "#Installing Geeqie..." > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
697 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
698 sudo --askpass make install >>$install_log 2>&1 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
699 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
700 rm $install_pass_script |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
701 mv -f $install_log install.log; |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
702 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
703 echo "100 " > $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
704 rm $zen_pipe |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
705 |
8438d30abd31
Script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
2807
diff
changeset
|
706 (for i in $(seq 0 4 100); do echo "$i"; sleep 0.1; done) | zenity --progress --title="$title" --width=370 --text="Geeqie installation complete...\n" --auto-close 2>/dev/null |
2804
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
707 |
c7a8c086862b
Enhanced script for compiling on Debian systems
Colin Clark <colin.clark@cclark.uk>
parents:
diff
changeset
|
708 exit |