mirror of
https://github.com/monero-project/monero-gui.git
synced 2024-11-16 15:58:11 +00:00
GUI Wallet Beta 2 installer for Windows, initial version
This commit is contained in:
parent
5043250a2a
commit
b8a4dab9b2
10 changed files with 602 additions and 0 deletions
2
installers/windows/.gitignore
vendored
Normal file
2
installers/windows/.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
# Ignore the subdirectory with the individual GUI Wallet files
|
||||||
|
bin/
|
BIN
installers/windows/FinishImage.bmp
Normal file
BIN
installers/windows/FinishImage.bmp
Normal file
Binary file not shown.
After Width: | Height: | Size: 151 KiB |
31
installers/windows/LICENSE
Normal file
31
installers/windows/LICENSE
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
Copyright (c) 2014-2017, The Monero Project
|
||||||
|
|
||||||
|
All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions are met:
|
||||||
|
|
||||||
|
1. Redistributions of source code must retain the above copyright notice, this
|
||||||
|
list of conditions and the following disclaimer.
|
||||||
|
|
||||||
|
2. Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer in the documentation
|
||||||
|
and/or other materials provided with the distribution.
|
||||||
|
|
||||||
|
3. Neither the name of the copyright holder nor the names of its contributors
|
||||||
|
may be used to endorse or promote products derived from this software without
|
||||||
|
specific prior written permission.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||||
|
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
|
||||||
|
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||||
|
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||||
|
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
|
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||||
|
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||||
|
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
Parts of the project are originally copyright (c) 2012-2013 The Cryptonote
|
||||||
|
developers
|
351
installers/windows/Monero.iss
Normal file
351
installers/windows/Monero.iss
Normal file
|
@ -0,0 +1,351 @@
|
||||||
|
; Monero GUI Wallet Beta 2 Installer for Windows
|
||||||
|
; Copyright (c) 2014-2017, The Monero Project
|
||||||
|
; See LICENSE
|
||||||
|
|
||||||
|
[Setup]
|
||||||
|
AppName=Monero Core + GUI Wallet
|
||||||
|
AppVersion=0.10.3.1
|
||||||
|
DefaultDirName={pf}\Monero Core
|
||||||
|
DefaultGroupName=Monero Core + GUI Wallet
|
||||||
|
UninstallDisplayIcon={app}\monero-wallet-gui.exe
|
||||||
|
PrivilegesRequired=admin
|
||||||
|
ArchitecturesInstallIn64BitMode=x64
|
||||||
|
ArchitecturesAllowed=x64
|
||||||
|
WizardSmallImageFile=WizardSmallImage.bmp
|
||||||
|
WizardImageFile=WelcomeImage.bmp
|
||||||
|
DisableWelcomePage=no
|
||||||
|
LicenseFile=LICENSE
|
||||||
|
|
||||||
|
|
||||||
|
[Languages]
|
||||||
|
Name: "en"; MessagesFile: "compiler:Default.isl"
|
||||||
|
; Without localized versions of special forms, messages etc. of the installer, and without translated ReadMe's
|
||||||
|
; it probably does not make much sense to offer other install-time languages beside English
|
||||||
|
; Name: "fr"; MessagesFile: "compiler:Languages\French.isl"
|
||||||
|
; Name: "it"; MessagesFile: "compiler:Languages\Italian.isl"
|
||||||
|
; Name: "jp"; MessagesFile: "compiler:Languages\Japanese.isl"
|
||||||
|
; Name: "nl"; MessagesFile: "compiler:Languages\Dutch.isl"
|
||||||
|
; Name: "pt"; MessagesFile: "compiler:Languages\Portuguese.isl"
|
||||||
|
|
||||||
|
|
||||||
|
[Files]
|
||||||
|
Source: "ReadMe.htm"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
Source: "FinishImage.bmp"; Flags: dontcopy
|
||||||
|
|
||||||
|
; Monero GUI wallet
|
||||||
|
Source: "bin\monero-wallet-gui.exe"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; Monero GUI wallet log file
|
||||||
|
; Beta 2 does not have the "--log-file" command-line option of the CLI wallet and insists to put the .log beside the .exe
|
||||||
|
; so pre-create the file and give the necessary permissions to the wallet to write into it
|
||||||
|
Source: "monero-wallet-gui.log"; DestDir: "{app}"; Flags: comparetimestamp; Permissions: users-modify
|
||||||
|
|
||||||
|
; Monero CLI wallet
|
||||||
|
Source: "bin\monero-wallet-cli.exe"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; Monero wallet RPC interface implementation
|
||||||
|
Source: "bin\monero-wallet-rpc.exe"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; Monero daemon
|
||||||
|
Source: "bin\monerod.exe"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; Monero daemon wrapped in a batch file that stops before the text window closes, to see any error messages
|
||||||
|
Source: "monero-daemon.bat"; DestDir: "{app}"; Flags: comparetimestamp;
|
||||||
|
|
||||||
|
; Monero blockchain utilities
|
||||||
|
Source: "bin\monero-blockchain-export.exe"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
Source: "bin\monero-blockchain-import.exe"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
Source: "bin\monero-utils-deserialize.exe"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; Various .qm files for translating the wallet UI "on the fly" into all supported languages
|
||||||
|
Source: "bin\translations\*"; DestDir: "{app}\translations"; Flags: recursesubdirs comparetimestamp
|
||||||
|
|
||||||
|
; Core Qt runtime
|
||||||
|
Source: "bin\Qt5Core.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
Source: "bin\Qt5Gui.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
Source: "bin\Qt5Multimedia.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
Source: "bin\Qt5MultimediaQuick_p.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
Source: "bin\Qt5Network.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
Source: "bin\Qt5Qml.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
Source: "bin\Qt5Quick.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
Source: "bin\Qt5Svg.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
Source: "bin\Qt5Widgets.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
Source: "bin\Qt5XmlPatterns.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; Qt QML elements like the local files selector "FolderListModel" and "Settings"
|
||||||
|
Source: "bin\Qt\*"; DestDir: "{app}\Qt"; Flags: recursesubdirs comparetimestamp
|
||||||
|
|
||||||
|
; Qt audio support
|
||||||
|
Source: "bin\audio\*"; DestDir: "{app}\audio"; Flags: recursesubdirs comparetimestamp
|
||||||
|
|
||||||
|
; Qt bearer / network connection management
|
||||||
|
Source: "bin\bearer\*"; DestDir: "{app}\bearer"; Flags: recursesubdirs comparetimestamp
|
||||||
|
|
||||||
|
; Qt Windows platform plugin
|
||||||
|
Source: "bin\platforms\qwindows.dll"; DestDir: "{app}\platforms"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; Qt support for SVG icons
|
||||||
|
Source: "bin\iconengines\*"; DestDir: "{app}\iconengines"; Flags: recursesubdirs comparetimestamp
|
||||||
|
|
||||||
|
; Qt support for various image formats (JPEG, BMP, SVG etc)
|
||||||
|
Source: "bin\imageformats\*"; DestDir: "{app}\imageformats"; Flags: recursesubdirs comparetimestamp
|
||||||
|
|
||||||
|
; Qt multimedia support
|
||||||
|
Source: "bin\QtMultimedia\*"; DestDir: "{app}\QtMultimedia"; Flags: recursesubdirs comparetimestamp
|
||||||
|
Source: "bin\mediaservice\*"; DestDir: "{app}\mediaservice"; Flags: recursesubdirs comparetimestamp
|
||||||
|
|
||||||
|
; Qt support for "m3u" playlists
|
||||||
|
; candidate for elimination? Don't think the GUI wallet needs such playlists
|
||||||
|
Source: "bin\playlistformats\*"; DestDir: "{app}\playlistformats"; Flags: recursesubdirs comparetimestamp
|
||||||
|
|
||||||
|
; Qt graphical effects as part of the core runtime, effects like blurring and blending
|
||||||
|
Source: "bin\QtGraphicalEffects\*"; DestDir: "{app}\QtGraphicalEffects"; Flags: recursesubdirs comparetimestamp
|
||||||
|
|
||||||
|
; Some more Qt graphical effects
|
||||||
|
; "private" as a name for this directory looks a little strange. Historical reasons?
|
||||||
|
Source: "bin\private\*"; DestDir: "{app}\private"; Flags: recursesubdirs comparetimestamp
|
||||||
|
|
||||||
|
; Qt QML files
|
||||||
|
Source: "bin\QtQml\*"; DestDir: "{app}\QtQml"; Flags: recursesubdirs comparetimestamp
|
||||||
|
|
||||||
|
; Qt Quick files
|
||||||
|
Source: "bin\QtQuick\*"; DestDir: "{app}\QtQuick"; Flags: recursesubdirs comparetimestamp
|
||||||
|
Source: "bin\QtQuick.2\*"; DestDir: "{app}\QtQuick.2"; Flags: recursesubdirs comparetimestamp
|
||||||
|
|
||||||
|
; Qt Quick 2D Renderer fallback for systems / environments with "low-level graphics" i.e. without 3D support
|
||||||
|
Source: "bin\scenegraph\*"; DestDir: "{app}\scenegraph"; Flags: recursesubdirs comparetimestamp
|
||||||
|
Source: "bin\start-low-graphics-mode.bat"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; Mesa, open-source OpenGL implementation; part of "low-level graphics" support
|
||||||
|
Source: "bin\opengl32sw.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; Left out subdirectory "qmltooling" with the Qt QML debugger: Probably not relevant in an end-user package
|
||||||
|
|
||||||
|
; Microsoft Direct3D runtime
|
||||||
|
Source: "bin\D3Dcompiler_47.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; bzip2 support
|
||||||
|
Source: "bin\libbz2-1.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; ANGLE ("Almost Native Graphics Layer Engine") support, as used by Qt
|
||||||
|
Source: "bin\libEGL.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
Source: "bin\libGLESV2.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; FreeType font engine, as used by Qt
|
||||||
|
Source: "bin\libfreetype-6.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; GCC runtime, x64 version
|
||||||
|
Source: "bin\libgcc_s_seh-1.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; GLib, low level core library e.g. for GNOME and GTK+
|
||||||
|
; Really needed under Windows?
|
||||||
|
Source: "bin\libglib-2.0-0.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; Graphite font support
|
||||||
|
; Really needed?
|
||||||
|
Source: "bin\libgraphite2.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; HarfBuzz OpenType text shaping engine
|
||||||
|
; Really needed?
|
||||||
|
Source: "bin\libharfbuzz-0.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; LibIconv, conversions between character encodings
|
||||||
|
Source: "bin\libiconv-2.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; Part of cygwin? Needed by Qt somehow?
|
||||||
|
Source: "bin\libicudt57.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
Source: "bin\libicuin57.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
Source: "bin\libicuuc57.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; Library for native language support, part of GNU gettext
|
||||||
|
Source: "bin\libintl-8.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; JasPer, support for JPEG-2000
|
||||||
|
Source: "bin\libjasper-1.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; libjpeg, C library for reading and writing JPEG image files
|
||||||
|
Source: "bin\libjpeg-8.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; Little CMS, color management system
|
||||||
|
Source: "bin\liblcms2-2.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; XZ Utils, LZMA compression library
|
||||||
|
Source: "bin\liblzma-5.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; MNG / Portable Network Graphics ("animated PNG")
|
||||||
|
Source: "bin\libmng-2.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; PCRE, Perl Compatible Regular Expressions
|
||||||
|
Source: "bin\libpcre-1.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
Source: "bin\libpcre16-0.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; libpng, the official PNG reference library
|
||||||
|
Source: "bin\libpng16-16.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; libstdc++, GNU Standard C++ Library
|
||||||
|
Source: "bin\libstdc++-6.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; LibTIFF, TIFF Library and Utilities
|
||||||
|
Source: "bin\libtiff-5.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; C++ threading support
|
||||||
|
Source: "bin\libwinpthread-1.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
; zlib compression library
|
||||||
|
Source: "bin\zlib1.dll"; DestDir: "{app}"; Flags: comparetimestamp
|
||||||
|
|
||||||
|
|
||||||
|
[Run]
|
||||||
|
Filename: "{app}\ReadMe.htm"; Description: "Show ReadMe"; Flags: postinstall shellexec skipifsilent
|
||||||
|
|
||||||
|
; DON'T offer to run the wallet right away, let the people read about initial blockchain download first in the ReadMe
|
||||||
|
; Filename: "{app}\monero-wallet-gui.exe"; Description: "Run GUI Wallet now"; Flags: postinstall nowait skipifsilent
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
var
|
||||||
|
BlockChainDirPage: TInputDirWizardPage;
|
||||||
|
blockChainDefaultDir: String;
|
||||||
|
|
||||||
|
procedure InitializeWizard;
|
||||||
|
var s: String;
|
||||||
|
width: Integer;
|
||||||
|
begin
|
||||||
|
// Large image for the "Welcome" page, with page reconfigured
|
||||||
|
WizardForm.WelcomeLabel1.Visible := false;
|
||||||
|
WizardForm.WelcomeLabel2.Visible := false;
|
||||||
|
WizardForm.WizardBitmapImage.Height := 300;
|
||||||
|
WizardForm.WizardBitmapImage.Width := 500;
|
||||||
|
|
||||||
|
// Image for the "Finnish" screen, in standard WizardBitmapImage size of 164 x 314
|
||||||
|
ExtractTemporaryFile('FinishImage.bmp');
|
||||||
|
WizardForm.WizardBitmapImage2.Bitmap.LoadFromFile(ExpandConstant('{tmp}\FinishImage.bmp'));
|
||||||
|
|
||||||
|
// Additional wizard page for entering a special blockchain location
|
||||||
|
blockChainDefaultDir := ExpandConstant('{commonappdata}\bitmonero');
|
||||||
|
s := 'The default folder to store the Monero blockchain is ' + blockChainDefaultDir;
|
||||||
|
s := s + '. As this will need up to 20 GB of free space, you may want to use a folder on a different drive.';
|
||||||
|
s := s + ' If yes, specify that folder here.';
|
||||||
|
|
||||||
|
BlockChainDirPage := CreateInputDirPage(wpSelectDir,
|
||||||
|
'Select Blockchain Directory', 'Where should the blockchain be installed?',
|
||||||
|
s,
|
||||||
|
False, '');
|
||||||
|
BlockChainDirPage.Add('');
|
||||||
|
|
||||||
|
BlockChainDirPage.Values[0] := GetPreviousData('BlockChainDir', '');
|
||||||
|
if BlockChainDirPage.Values[0] = '' then begin
|
||||||
|
// Unfortunately 'TInputDirWizardDirPage' does not allow empty field
|
||||||
|
BlockChainDirPage.Values[0] := blockChainDefaultDir;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure RegisterPreviousData(PreviousDataKey: Integer);
|
||||||
|
begin
|
||||||
|
// Store the selected folder for further reinstall/upgrade
|
||||||
|
SetPreviousData(PreviousDataKey, 'BlockChainDir', BlockChainDirPage.Values[0]);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function BlockChainDir(Param: String) : String;
|
||||||
|
// Directory of the blockchain
|
||||||
|
var s: String;
|
||||||
|
begin
|
||||||
|
s := BlockChainDirPage.Values[0];
|
||||||
|
Result := s;
|
||||||
|
// No quotes for folder name with blanks as this is never used as part of a command line
|
||||||
|
end;
|
||||||
|
|
||||||
|
function UpdateReadyMemo(Space, NewLine, MemoUserInfoInfo, MemoDirInfo, MemoTypeInfo,
|
||||||
|
MemoComponentsInfo, MemoGroupInfo, MemoTasksInfo: String): String;
|
||||||
|
var s: String;
|
||||||
|
begin
|
||||||
|
// Fill the 'Ready Memo' with the normal settings and the custom settings
|
||||||
|
s := '';
|
||||||
|
s := s + MemoDirInfo + NewLine + NewLine;
|
||||||
|
|
||||||
|
s := s + 'Blockchain folder' + NewLine;
|
||||||
|
s := s + Space + BlockChainDir('') + NewLine;
|
||||||
|
|
||||||
|
Result := s;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function DaemonLog(Param: String) : String;
|
||||||
|
// Full filename of the log of the daemon
|
||||||
|
begin
|
||||||
|
Result := BlockChainDir('') + '\bitmonero.log';
|
||||||
|
// No quotes for filename with blanks as this is never used as part of a command line
|
||||||
|
end;
|
||||||
|
|
||||||
|
function DaemonFlags(Param: String): String;
|
||||||
|
// Flags to add to the shortcut to the daemon
|
||||||
|
var s: String;
|
||||||
|
begin
|
||||||
|
s := BlockChainDir('');
|
||||||
|
if s = blockChainDefaultDir then begin
|
||||||
|
// No need to add the default dir as flags for the daemon
|
||||||
|
s := '';
|
||||||
|
end;
|
||||||
|
if Pos(' ', s) > 0 then begin
|
||||||
|
// Quotes needed for filename with blanks
|
||||||
|
s := '"' + s + '"';
|
||||||
|
end;
|
||||||
|
if s <> '' then begin
|
||||||
|
s := '--data-dir ' + s;
|
||||||
|
end;
|
||||||
|
Result := s;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure CurStepChanged(CurStep: TSetupStep);
|
||||||
|
var s: TArrayOfString;
|
||||||
|
begin
|
||||||
|
if CurStep = ssPostInstall then begin
|
||||||
|
// Re-build "monero-daemon.bat" according to actual install and blockchain directory used
|
||||||
|
SetArrayLength(s, 3);
|
||||||
|
s[0] := 'REM Execute the Monero daemon and then stay with window open after it exits';
|
||||||
|
s[1] := '"' + ExpandConstant('{app}\monerod.exe') + '" ' + DaemonFlags('');
|
||||||
|
s[2] := 'PAUSE';
|
||||||
|
SaveStringsToFile(ExpandConstant('{app}\monero-daemon.bat'), s, false);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function InitializeUninstall(): Boolean;
|
||||||
|
var s: String;
|
||||||
|
begin
|
||||||
|
s := 'Please note: Uninstall will not delete any downloaded blockchain. ';
|
||||||
|
s := s + 'If you do not need it anymore you have to delete it manually.';
|
||||||
|
s := s + #13#10#13#10 + 'Uninstall also will not delete any wallets that you created.';
|
||||||
|
MsgBox(s, mbInformation, MB_OK);
|
||||||
|
Result := true;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
[Icons]
|
||||||
|
; Icons in the "Monero Core + GUI Wallet" program group
|
||||||
|
; Windows will almost always display icons in alphabetical order, per level, so specify the text accordingly
|
||||||
|
Name: "{group}\GUI Wallet"; Filename: "{app}\monero-wallet-gui.exe"
|
||||||
|
Name: "{group}\Monero Daemon"; Filename: "{app}\monerod.exe"; Parameters: {code:DaemonFlags}
|
||||||
|
Name: "{group}\Read Me"; Filename: "{app}\ReadMe.htm"
|
||||||
|
Name: "{group}\Textual (CLI) Wallet"; Filename: "{app}\monero-wallet-cli.exe"
|
||||||
|
|
||||||
|
; Icons for troubleshooting problems / testing / debugging
|
||||||
|
; For Windows 7 it would be ok to go one level deeper with those icons into a folder, e.g. called "Troubleshooting"
|
||||||
|
; Syntax would be: Name: "{group}\Troubleshooting\GUI Wallet Low Graphics Mode" ...
|
||||||
|
; However, Windows 10 stupidly insists on displayin ALL icons on one single level despite finding them in such a folder
|
||||||
|
; So just make those icons visually different from the others by text, and make them sort at the end by the help of "x" in front
|
||||||
|
Name: "{group}\x (Try GUI Wallet Low Graphics Mode)"; Filename: "{app}\start-low-graphics-mode.bat"
|
||||||
|
Name: "{group}\x (Try Daemon, Exit Confirm)"; Filename: "{app}\monero-daemon.bat"
|
||||||
|
Name: "{group}\x (Try Kill Daemon)"; Filename: "Taskkill.exe"; Parameters: "/IM monerod.exe /T /F"
|
||||||
|
Name: "{group}\x (Check GUI Wallet Log)"; Filename: "Notepad"; Parameters: "{app}\monero-wallet-gui.log"
|
||||||
|
Name: "{group}\x (Check Daemon Log)"; Filename: "Notepad"; Parameters: {code:DaemonLog}
|
||||||
|
Name: "{group}\x (Check Default Wallet Folder)"; Filename: "{win}\Explorer.exe"; Parameters: "{userdocs}\Monero\wallets"
|
||||||
|
Name: "{group}\x (Check Blockchain Folder)"; Filename: "{win}\Explorer.exe"; Parameters: {code:BlockChainDir}
|
||||||
|
|
||||||
|
|
||||||
|
[Registry]
|
||||||
|
; Store any special flags for the daemon in the registry location where the GUI wallet will take it from
|
||||||
|
; So if the wallet is used to start the daemon instead of the separate icon the wallet will pass the correct flags
|
||||||
|
; Side effect, mostly positive: The uninstaller will clean the registry
|
||||||
|
Root: HKCU; Subkey: "Software\monero-project"; Flags: uninsdeletekeyifempty
|
||||||
|
Root: HKCU; Subkey: "Software\monero-project\monero-core"; Flags: uninsdeletekey
|
||||||
|
Root: HKCU; Subkey: "Software\monero-project\monero-core"; ValueType: string; ValueName: "daemonFlags"; ValueData: {code:DaemonFlags};
|
||||||
|
|
41
installers/windows/README.md
Normal file
41
installers/windows/README.md
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
# Monero Core + GUI Wallet Beta 2 Windows Installer #
|
||||||
|
|
||||||
|
Copyright (c) 2014-2017, The Monero Project
|
||||||
|
|
||||||
|
## Introduction ##
|
||||||
|
|
||||||
|
This is a *Inno Setup* script `Monero.iss` plus some related files that
|
||||||
|
allows you to build a standalone Windows installer (.exe) for the
|
||||||
|
Monero GUI Wallet Beta 2.
|
||||||
|
|
||||||
|
This turns the GUI Wallet into a more or less standard Windows program,
|
||||||
|
by default installed into a subdirectory of `C:\Program Files`, a
|
||||||
|
program group with some icons in the *Start* menu, and automatic
|
||||||
|
uninstall support. It helps lower the "barrier to entry" somewhat,
|
||||||
|
especially for less technically experienced users of Monero.
|
||||||
|
|
||||||
|
As the setup script in file [Monero.iss](Monero.iss) has to list every
|
||||||
|
single file of the GUI Wallet package to install by name, this version
|
||||||
|
of the script only works with exactly the GUI Beta 2 that you find on
|
||||||
|
[the official download page](https://getmonero.org/downloads/).
|
||||||
|
|
||||||
|
But of course it will be easy to modify the script for future versions
|
||||||
|
of the GUI Wallet.
|
||||||
|
|
||||||
|
## License ##
|
||||||
|
|
||||||
|
See [LICENSE](LICENSE).
|
||||||
|
|
||||||
|
## Building ##
|
||||||
|
|
||||||
|
You can only build on Windows, and the result is always a Windows .exe
|
||||||
|
file that can act as a standalone installer for the GUI Wallet Beta 2.
|
||||||
|
|
||||||
|
The build steps in detail:
|
||||||
|
|
||||||
|
1. Install *Inno Setup*. You can get it from [here](http://www.jrsoftware.org/isdl.php)
|
||||||
|
2. Get the Inno Setup script plus related files by cloning the whole [monero-core](https://github.com/monero-project/monero-core) repository; you will only need the files in the installer directory `installers\windows` however
|
||||||
|
3. The setup script is written to take the GUI Wallet files from a subdirectory named `bin`; so create `installers\windows\bin`, get the zip file of the GUI Wallet Beta 2 from [here](https://getmonero.org/downloads/), unpack it somewhere, and copy all the files and subdirectories in the `monero-gui-0.10.3.1-beta2` directory to this `bin` subdirectory
|
||||||
|
4. Start Inno Setup, load `Monero.iss` and compile it.
|
||||||
|
5. The result i.e. the finished installer will be the file `mysetup.exe` in the `installers\windows\Output` subdirectory
|
||||||
|
|
173
installers/windows/ReadMe.htm
Normal file
173
installers/windows/ReadMe.htm
Normal file
|
@ -0,0 +1,173 @@
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Monero Core + GUI Wallet Beta 2</title>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body style="font-family: Arial, Helvetica, sans-serif">
|
||||||
|
<h1>Monero Core + GUI Wallet Beta 2</h1>
|
||||||
|
|
||||||
|
<p>Copyright (c) 2014-2017, The Monero Project<br>
|
||||||
|
Date: June 9, 2017</p>
|
||||||
|
|
||||||
|
<h2>Preface</h2>
|
||||||
|
|
||||||
|
<p>This ReadMe does not aim to be a complete introduction to Monero. If you are new to Monero or even to
|
||||||
|
cryptocurrencies in general you find a good introduction on reddit at
|
||||||
|
<a href="https://www.reddit.com/r/Monero/comments/5zgail/rmonero_newcomers_please_read_everything_you_need/">Newcomers Please Read. Everything You Need To Know</a>.
|
||||||
|
You also find a lot of good tutorials on <a href="https://www.monero.how/">Monero.How</a>.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>Please note that Monero and its software are constantly evolving and progressing; it probably won't take
|
||||||
|
long for some of the information here to become outdated.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2>Content of the Package</h2>
|
||||||
|
|
||||||
|
<p>You just installed the Beta 2 of the <i>Monero GUI Wallet</i> for Windows, more exact version 0.10.3.1. The wallet
|
||||||
|
enables you to send and receive moneroj in a secure and very private way.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>Also included is the whole <i>Monero Core</i> software, so you have everything now to run a so-called <i>full node</i>
|
||||||
|
and become part of the network of nodes that manages the Monero blockchain; you don't need to install additional
|
||||||
|
packages in order to start.</p>
|
||||||
|
|
||||||
|
<p>For checking whether there are already newer versions of this package you can go to the
|
||||||
|
<a href="https://getmonero.org/downloads/">Downloads</a> page on <a href="https://getmonero.org/home">getmonero.org</a>,
|
||||||
|
the official Monero site.</p>
|
||||||
|
|
||||||
|
<h2>Access to the Blockchain</h2>
|
||||||
|
|
||||||
|
<p>Any Monero wallet needs access to the <i>blockchain</i>, the ongoing ledger of all Monero transactions. For the
|
||||||
|
GUI wallet there are two principal ways to get that access: You can let Monero sync with the network
|
||||||
|
i.e. let it download the blockchain and store it locally on your computer, or you can configure your wallet to
|
||||||
|
access a remote <i>open node</i> to get indirect access to the blockchain.</p>
|
||||||
|
|
||||||
|
<p>Working with your own copy of the blockchain is <b>preferred</b>: It strengthens the Monero network, and it
|
||||||
|
provides the most security and privacy possible for you.</p>
|
||||||
|
|
||||||
|
<p>However if your Internet access makes it difficult to run a full node, or if you have simply no room to store
|
||||||
|
the blockchain locally (over 17 GB in summer 2017, and of course growing), you can compromise and try to connect
|
||||||
|
to a remote node. One way of finding such a node is checking
|
||||||
|
<a href="https://moneroworld.com/pages/nodes.html">this page</a>.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2>Initial Blockchain Download</h2>
|
||||||
|
|
||||||
|
<p>Please do read the following <b>before</b> jumping right in and starting the GUI wallet:</p>
|
||||||
|
|
||||||
|
<p>If you decide to work with your own copy of the blockchain, which you should whenever possible, you have to
|
||||||
|
download it first; it's not part of the installed package.
|
||||||
|
Beside the GUI wallet there is second program, the so-called <i>Monero daemon</i>, which will carry out that download.</p>
|
||||||
|
|
||||||
|
<p>Depending on your Internet access and the speed of your computer this can take
|
||||||
|
<b>several hours</b>, in some cases <b>more than a day</b>. Furthermore there are unfortunate cases where the
|
||||||
|
download gets stuck somehow or doesn't work at all, e.g. because a firewall prevents access to other nodes of the
|
||||||
|
Monero network.</p>
|
||||||
|
|
||||||
|
<p>The GUI wallet can start the daemon for you, but that way you will not see much during initial blockchain
|
||||||
|
download, especially you probably won't see any error messages in case something goes wrong. By starting the
|
||||||
|
daemon yourself "by hand" using the <i>Monero Daemon</i> icon in the Monero program group you will
|
||||||
|
see it running and displaying messages in a separate window.</p>
|
||||||
|
|
||||||
|
<p>If all goes well the daemon will finally display a message like this:
|
||||||
|
<i>You are now synchronized with the network.</i></p>
|
||||||
|
|
||||||
|
<p><b>Then</b> you are ready for sure to start your Monero adventures by starting the GUI wallet.</p>
|
||||||
|
|
||||||
|
<h2>Allowing Other Nodes to Connect to Your Node</h2>
|
||||||
|
|
||||||
|
<p>When the Monero daemon downloads the blockchain it does so by connecting to other nodes of the network.</p>
|
||||||
|
|
||||||
|
<p>If you allow incoming TCP/IP connections to port 18080 on your computer and let your daemon run for extended
|
||||||
|
periods of time you can "return the favor" and help others in turn to get access to Monero. However, depending on
|
||||||
|
your Internet connection, firewall, modem, router, ISP etc. this might not be possible, and opening a port in such
|
||||||
|
a way usually requires some technical knowledge.</p>
|
||||||
|
|
||||||
|
<p>If you want to try you may start e.g. with
|
||||||
|
<a href="https://monero.stackexchange.com/questions/2479/how-do-i-enable-incoming-connections-eli5">this Monero Stack Exchange</a>
|
||||||
|
question.</p>
|
||||||
|
|
||||||
|
<h2>Troubleshooting</h2>
|
||||||
|
|
||||||
|
<p>The Monero software and especially the GUI wallet are "work in progress", as you can expect seeing the word
|
||||||
|
<i>Beta</i> in the name of the package, and sometimes things go wrong.</p>
|
||||||
|
|
||||||
|
<p>Please note that despite any technical problems that you may encounter your moneroj are almost always safe: You may
|
||||||
|
not be able to move them or you even may not see how many you currently have, but you most probably won't loose any.
|
||||||
|
But do remember that the seed needed to re-create the wallet <b>is</b> critical, however: <b>Never loose your
|
||||||
|
seed!</b></p>
|
||||||
|
|
||||||
|
<p>There is a <b>bug</b> in this beta of the GUI Wallet that triggers if it is installed in a path that contains spaces /
|
||||||
|
blank characters, like the default location for Windows programs <i>C:\Program Files</i> unfortunately does.
|
||||||
|
Symptoms are problems in the communication between the wallet and the daemon, e.g. the wallet not "seeing" the
|
||||||
|
daemon and then not knowing whether it is "synchronized" with the network and thus ready to work or not. You can
|
||||||
|
avoid these problems by starting the daemon yourself, with the help of the <i>Monero Daemon</i> icon in the
|
||||||
|
Monero program group.</p>
|
||||||
|
|
||||||
|
<p>In the <i>Monero Core + GUI Wallet</i> program group there are several icons that may help you to solve problems.
|
||||||
|
These are the icons with a <i>x</i> in front and the name <i>(in parenthesis)</i> to make them visually stand
|
||||||
|
apart from the "normal" ones because you will probably only need them in case of trouble, but not during normal
|
||||||
|
usage of Monero.</p>
|
||||||
|
|
||||||
|
<p>Here an overview and short info what each icon does:</p>
|
||||||
|
|
||||||
|
<table cellpadding="3" border="1">
|
||||||
|
<tr>
|
||||||
|
<td><i>x (Try GUI Wallet Low Graphics Mode)</i></td>
|
||||||
|
<td>Run the GUI wallet in a mode that allows for low-graphics
|
||||||
|
environments, e.g. systems with very simple non-hardware-accelerated or emulated / virtualized video cards;
|
||||||
|
also try if the display is simply slow
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td><i>x (Monero Daemon, Exit Confirm)</i></td>
|
||||||
|
<td>
|
||||||
|
Run the Monero daemon in a window that does not automatically close if
|
||||||
|
the daemon should exit because of a fatal error; useful in cases where the normal daemon icon
|
||||||
|
just leads to a window that closes right away
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td><i>x (Try Kill Daemon)</i></td>
|
||||||
|
<td>
|
||||||
|
Kill any running daemon (technically, any process called <i>monerod.exe</i>), whether
|
||||||
|
with or without any visible window, for starting "with a clean slate"; easier than
|
||||||
|
killing such tasks with the help of the Windows Task Manager
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td><i>x (Check GUI Wallet Log)</i></td>
|
||||||
|
<td>Open the log with status and error messages of the GUI wallet program in Notepad;
|
||||||
|
experienced people have a chance to diagnose technical problems with the wallet by looking at the last few lines
|
||||||
|
of this log</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td><i>x (Check Daemon Log)</i></td>
|
||||||
|
<td>
|
||||||
|
Open the log with status and error messages of the daemon in Notepad; again, the last few
|
||||||
|
lines of this (possible very long) log are the most important for troubleshooting
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td><i>x (Check Default Wallet Folder)</i></td>
|
||||||
|
<td>
|
||||||
|
Open the standard wallet folder in Windows Explorer; useful e.g. if you want to backup
|
||||||
|
your wallets
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td><i>x (Check Default Wallet Folder)</i></td>
|
||||||
|
<td>
|
||||||
|
Open the folder containing the blockchain in Windows Explorer
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
BIN
installers/windows/WelcomeImage.bmp
Normal file
BIN
installers/windows/WelcomeImage.bmp
Normal file
Binary file not shown.
After Width: | Height: | Size: 440 KiB |
BIN
installers/windows/WizardSmallImage.bmp
Normal file
BIN
installers/windows/WizardSmallImage.bmp
Normal file
Binary file not shown.
After Width: | Height: | Size: 9.6 KiB |
3
installers/windows/monero-daemon.bat
Normal file
3
installers/windows/monero-daemon.bat
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
REM Execute the Monero daemon and then stay with window open after it exits
|
||||||
|
"C:\Program Files\Monero Core\monerod.exe"
|
||||||
|
PAUSE
|
1
installers/windows/monero-wallet-gui.log
Normal file
1
installers/windows/monero-wallet-gui.log
Normal file
|
@ -0,0 +1 @@
|
||||||
|
-----
|
Loading…
Reference in a new issue