Login | ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/vgwhois/trunk/install.sh
Revision: 11
Committed: Tue May 21 10:38:39 2019 UTC (12 months, 2 weeks ago) by daniel-marschall
Content type: text/x-sh
File size: 2912 byte(s)
Log Message:
Project renamed into VGWhoIs

File Contents

# Content
1 #!/bin/bash
2
3 #
4 # VGWhoIs (ViaThinkSoft Global WhoIs, a fork of generic Whois / gwhois)
5 # Installer / Uninstaller
6 #
7 # (c) 2019 by Daniel Marschall, ViaThinkSoft <info@daniel-marschall.de>
8 #
9 # License: https://www.gnu.org/licenses/gpl-2.0.html (GPL version 2)
10 #
11
12 DIR=$( dirname "$0" )
13 REAL_DIR=$( cd "$DIR" && pwd )
14
15 # --- STEP 0: Are we root?
16
17 if [[ $EUID > 0 ]]; then
18 >&2 echo "You need to be root to execute this program."
19 exit 1
20 fi
21
22 # --- STEP 1: Install required packages
23
24 # Required for the program itself:
25 # - perl (used by vgwhois main program. used by 6to4 and Teredo subprogram)
26 # - libwww-perl (cpan LWP::Simple; used by vgwhois main program)
27 # - libnet-libidn-perl (cpan Net::LibIDN; used by vgwhois main program)
28 # - (commented out) libencode-detect-perl (cpan Encode::Detect; used by vgwhois main program)
29 # - curl (used by some parts of the vgwhois main program. used by pattern generator and subprograms)
30 # - lynx-cur (used by some parts of the vgwhois main program)
31 # - libnet-ip-perl (cpan Net::IP; used for IPv6 interpretation by Teredo subprogram and vgwhois main program)
32 # - libnet-dns-perl (cpan Net::DNS; used by Teredo subprogram)
33 # - libmath-bigint-gmp-perl (cpan Math::BigInt; used for IPv6 masking by vgwhois main program)
34 # - php7.0-cli (used by subprograms and pattern-generator)
35 #
36 # Required for the maintenance tools
37 # - php7.0-gmp (used by IPv6 pattern generator)
38 # - netcat (used by the whois-ping maintainance program)
39 # - php7.0-sqlite3 (used by the whois-ping maintainance program)
40 #
41 # TODO: how can be avoid the "php7.0" name? are there generic package names?
42 # TODO: How to make the installation of the packages fit to most distros?
43
44 apt-get update
45 apt-get install perl libwww-perl libnet-libidn-perl curl lynx-cur libnet-ip-perl libnet-dns-perl libmath-bigint-gmp-perl php7.0-cli php7.0-gmp netcat php7.0-sqlite3
46
47 # --- STEP 2: "Install" symlinks
48
49 if [ -L /usr/bin/vgwhois ]; then
50 rm /usr/bin/vgwhois
51 fi
52 ln -s "$REAL_DIR"/main/vgwhois /usr/bin/vgwhois
53 echo "Symlink /usr/bin/vgwhois created"
54
55 # ---
56
57 if [ -L /usr/sbin/vgwhois-pattern-update ]; then
58 rm /usr/sbin/vgwhois-pattern-update
59 fi
60 ln -s "$REAL_DIR"/maintenance/pattern-generator/vgwhois-pattern-update /usr/sbin/vgwhois-pattern-update
61 echo "Symlink /usr/sbin/vgwhois-pattern-update created"
62
63 # ---
64
65 if [ -L /usr/sbin/vgwhois-qa-check ]; then
66 rm /usr/sbin/vgwhois-qa-check
67 fi
68 ln -s "$REAL_DIR"/maintenance/qa-monitor/run /usr/sbin/vgwhois-qa-check
69 echo "Symlink /usr/sbin/vgwhois-qa-check created"
70
71 # ---
72
73 if [ -L /usr/sbin/vgwhois-update ]; then
74 rm /usr/sbin/vgwhois-update
75 fi
76 ln -s "$REAL_DIR"/update.sh /usr/sbin/vgwhois-update
77 echo "Symlink /usr/sbin/vgwhois-update created"
78
79 # ---
80
81 if [ -L /usr/share/man/man1/vgwhois.1 ]; then
82 rm /usr/share/man/man1/vgwhois.1
83 fi
84 ln -s "$REAL_DIR"/man/man1/vgwhois.1 /usr/share/man/man1/vgwhois.1
85 echo "Symlink /usr/share/man/man1/vgwhois.1 created"
86

Properties

Name Value
svn:executable *