Updated GnuPG.
[gpg4win.git] / src / inst-gnupg2.nsi
1 # inst-gnupg2.nsi - Installer snippet for gnupg2.     -*- coding: latin-1; -*-
2 # Copyright (C) 2007 g10 Code GmbH
3
4 # This file is part of Gpg4win.
5
6 # Gpg4win is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 2 of the License, or
9 # (at your option) any later version.
10
11 # Gpg4win is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 # GNU General Public License for more details.
15
16 # You should have received a copy of the GNU General Public License
17 # along with this program; if not, write to the Free Software
18 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19 # MA 02110-1301, USA.
20
21
22 !ifdef prefix
23 !undef prefix
24 !endif
25 !define prefix ${ipdir}/gnupg2-${gpg4win_pkg_gnupg2_version}
26 !define source ${bpdir}/gnupg2-${gpg4win_pkg_gnupg2_version}
27
28
29 ${MementoSection} "GnuPG2" SEC_gnupg2
30   SectionIn RO
31
32   SetOutPath "$INSTDIR"
33 !ifdef SOURCES
34   File "${gpg4win_pkg_gnupg2}"
35 !else
36   File "${prefix}/bin/gpg2.exe"
37   File "${prefix}/bin/gpgsm.exe"
38
39   ClearErrors
40   SetOverwrite try
41   File "${prefix}/bin/gpg-agent.exe"
42   SetOverwrite lastused
43   ifErrors 0 +3
44       File /oname=gpg-agent.exe.tmp "${prefix}/bin/gpg-agent.exe"
45       Rename /REBOOTOK gpg-agent.exe.tmp gpg-agent.exe
46
47   File "${prefix}/bin/scdaemon.exe"
48   File "${prefix}/bin/gpgconf.exe"
49   File "${prefix}/bin/gpg-connect-agent.exe"
50
51
52   # As a special exception, these programs are not kept in
53   # libexec/gnupg, where they belong.  Please see the comment in
54   # gnupg/g10/keyserver.c::keyserver_spawn() for an explanation.
55   File "${prefix}/libexec/gpg2keys_finger.exe"
56   File "${prefix}/libexec/gpg2keys_hkp.exe"
57   File "${prefix}/libexec/gpg2keys_curl.exe"
58   File "${prefix}/libexec/gpg2keys_ldap.exe"
59   File "${prefix}/libexec/gpg-protect-tool.exe"
60   File "${prefix}/libexec/gpg-preset-passphrase.exe"
61
62   SetOutPath "$INSTDIR\pub"
63   File /oname=gpg2.exe      "${BUILD_DIR}/gpgwrap.exe"
64   File /oname=gpgsm.exe     "${BUILD_DIR}/gpgwrap.exe"
65   File /oname=gpg-connect-agent.exe  "${BUILD_DIR}/gpgwrap.exe"
66
67   SetOutPath "$INSTDIR\share\gnupg"
68   File "${prefix}/share/gnupg/qualified.txt"
69   # Due to problems with kleoptra we currently do not install the
70   # common certificates anymore.
71   #File "${prefix}/share/gnupg/com-certs.pem"
72   File "${prefix}/share/gnupg/gpg-conf.skel"
73
74   # Install the language files for gpg.  Note that the PO files are
75   # required to be UTF-8 encoded and that the post-install macro in
76   # Makefile.am needs to build them.  The language used is selected by
77   # using a Registry entry; see ints-gnupg.nsi.
78   File /nonfatal "${prefix}/share/gnupg/help.*.txt"
79   SetOutPath "$INSTDIR\gnupg2.nls"
80   File /nonfatal "${prefix}/share/gnupg/*.mo"
81
82
83   SetOutPath "$INSTDIR\etc\gnupg"
84   File /oname=gpgconf-conf.skel "${source}/doc/examples/gpgconf.conf"
85
86
87   # If requested, install the configuration files.
88   ReadRegStr $0 HKCU "Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" AppData
89   StrCmp $0 "" no_config_gpg_conf_files
90   CreateDirectory "$0\gnupg"
91
92   g4wihelp::config_fetch "gpg.conf"
93   StrCmp $R0 "" no_config_gpg2_conf
94     CopyFiles $R0 "$0\gnupg\gpg.conf"
95   no_config_gpg2_conf:
96
97   g4wihelp::config_fetch "gpg-agent.conf"
98   StrCmp $R0 "" no_config_gpg_agent_conf
99     CopyFiles $R0 "$0\gnupg\gpg-agent.conf"
100   no_config_gpg_agent_conf:
101
102   g4wihelp::config_fetch "scdaemon.conf"
103   StrCmp $R0 "" no_config_scdaemon_conf
104     CopyFiles $R0 "$0\gnupg\scdaemon.conf"
105   no_config_scdaemon_conf:
106
107   g4wihelp::config_fetch "trustlist.txt"
108   StrCmp $R0 "" no_config_trustlist_txt
109     CopyFiles $R0 "$0\gnupg\trustlist.txt"
110   no_config_trustlist_txt:
111
112   no_config_gpg_conf_files:
113
114 !endif
115 ${MementoSectionEnd}
116
117 LangString DESC_SEC_gnupg2 ${LANG_ENGLISH} \
118    "GNU Privacy Guard with S/MIME support"