annotate web/geeqie-install-debian.sh @ 2807:7fa597d9c65b

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