Updated Windows installer. Closes #196

This commit is contained in:
Roman Telezhynskyi 2024-01-24 11:22:01 +02:00
parent 38dbbe29ba
commit 32519e6089
10 changed files with 327 additions and 229 deletions

View File

@ -63,6 +63,7 @@
- Mirror line.
- Fold line.
- Minimal Qt version increased to Qt 5.15. Minimal C++ standard to C++17.
- Updated Windows installer.
# Valentina 0.7.52 September 12, 2022
- Fix crash when default locale is ru.

View File

@ -307,7 +307,7 @@ for:
- path
- set QTDIR=C:\%QT%
- set QT_PLUGIN_PATH=%QTDIR%\plugins
- set PATH=%QTDIR%\bin;%QTDIR%\include;C:\Qt\Tools\QtCreator\bin;C:\Tools\PsTools;C:\Program Files\Git\cmd;C:\Program Files\Git\usr\bin;C:\Program Files\Git LFS;C:\Tools\GitVersion;C:\Windows\system32;C:\Windows;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\CMake\bin;%PYTHON%;%PYTHON%\Scripts;C:\ProgramData\chocolatey\bin
- set PATH=%QTDIR%\bin;%QTDIR%\include;C:\Qt\Tools\QtCreator\bin;C:\Tools\PsTools;C:\Program Files\Git\cmd;C:\Program Files\Git\usr\bin;C:\Program Files\Git LFS;C:\Tools\GitVersion;C:\Windows\system32;C:\Windows;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\CMake\bin;%PYTHON%;%PYTHON%\Scripts;C:\ProgramData\chocolatey\bin;C:\Program Files (x86)\Inno Setup 6
# Set VC variables for the platform
- ps: |
if ($env:COMPILER -eq "msvc") {
@ -408,6 +408,7 @@ for:
- if "%RUN_TESTS%" == "true" (qbs -p autotest-runner -d %APPVEYOR_BUILD_FOLDER%\build profile:qt6 config:release)
deploy_script:
- if "%DEPLOY%" == "true" (qbs build -f valentina.qbs -d %APPVEYOR_BUILD_FOLDER%\build -p 'ValentinaSetup' --jobs %NUMBER_OF_PROCESSORS% config:release qbs.installRoot:%APPVEYOR_BUILD_FOLDER%\build\install-root\valentina profile:qt6 project.enableConan:true modules.buildconfig.enableCcache:false project.conanProfiles:valentina modules.buildconfig.enablePCH:%ENABLE_PCH% modules.windeployqt.windeployqtProgramBinPath:%WINDEPLOYQT_BIN_PATH% modules.windeployqt.compilerRuntime:%WINDEPLOYQT_COMPILER_RUNTIME% modules.windeployqt.noCompilerRuntime:%WINDEPLOYQT_NO_COMPILER_RUNTIME%)
- ps: scripts/appveyor-deploy.ps1
on_finish:
@ -433,7 +434,7 @@ for:
# Path before
- path
- set QTDIR=C:\%QT%
- set PATH=%QTDIR%\bin;%QTDIR%\include;C:\Tools\PsTools;C:\Program Files\Git\cmd;C:\Program Files\Git\usr\bin;C:\Program Files\Git LFS;C:\Tools\GitVersion;C:\Windows\system32;C:\Windows;C:\Windows\System32\WindowsPowerShell\v1.0\
- set PATH=%QTDIR%\bin;%QTDIR%\include;C:\Tools\PsTools;C:\Program Files\Git\cmd;C:\Program Files\Git\usr\bin;C:\Program Files\Git LFS;C:\Tools\GitVersion;C:\Windows\system32;C:\Windows;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Inno Setup 6
- if NOT "%BUILD_SYSTEM%" == "make" echo "Using Visual Studio %VSVER%.0"
- if "%BUILD_SYSTEM%" == "make" echo "Using MinGW"
# Set VC variables for the platform
@ -501,14 +502,6 @@ for:
# to run your custom scripts instead of automatic tests
test_script:
- if "%BUILD_SYSTEM%" == "make" (mingw32-make -s check TESTARGS="-silent")
# prepare to deploy
after_test:
- if "%DEPLOY%" == "true" (mingw32-make install)
# to run your custom scripts instead of provider deployments
deploy_script:
- ps: ../scripts/appveyor-deploy.ps1
#---------------------------------#
# MacOS #

BIN
dist/win/EUDC.TTE vendored

Binary file not shown.

View File

@ -1,17 +0,0 @@
LICENSING
==========
Valentina is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Valentina is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
See LICENSE_GPL.txt file for further information
Other components released under:
* QMuParser - BSD license
* VPropertyExplorer - LGPLv2.1 license

View File

@ -1,39 +1,50 @@
; Script generated by the Inno Script Studio Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
; [NOTE] These are passed from Qbs
; #define MyAppVersion
; #define MyAppCopyright
; #define MyAppArchitecture
; #define MyAppMinWinVersion
; #define buildDirectory
#define MyAppName "Valentina"
#define MyAppVersion GetFileVersion('valentina\valentina.exe')
#define MyAppPublisher "Roman Telezhynskyi"
#define MyAppURL "https://smart-pattern.com.ua/"
#define MyAppExeName "valentina.exe"
#define MyAppCopyright "(C) 2013-2021 Valentina project"
#define MyDateTimeString GetDateTimeString('yyyymmddhhnnss', '', '');
; Appstatus: "" = release, "b" = beta, "a" = alpha
; Appstatus: "" = release, " Dev" = development branch
; this only modifies the resulting exe name of the installer package ;-)
#define MyAppStatus ""
#define MyAppStatus " Dev"
[Setup]
; NOTE: The value of AppId uniquely identifies this application.
; Do not use the same AppId value in installers for other applications.
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
AppId={{7081AEC7-38FC-479F-B712-DB073BB76512}
AppName={#MyAppName}
; Stable branch
;AppId={{7081AEC7-38FC-479F-B712-DB073BB76512}
; Dev branch
AppId={{059E7A7D-CB48-4218-B5E0-8824D2953CEC}
AppName={#MyAppName}{#MyAppStatus}
AppVersion={#MyAppVersion}
AppVerName={#MyAppName} {#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppVerName={#MyAppName}{#MyAppStatus} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={pf}\{#MyAppName}
DefaultGroupName={#MyAppName}
LicenseFile=.\LICENSE_VALENTINA
InfoAfterFile=.\valentina\README.txt
OutputDir=.\
OutputBaseFilename=valentina_{#MyAppVersion}{#MyAppStatus}_i386
SetupIconFile=.\valentina\valentina.ico
DefaultDirName={commonpf}\{#MyAppName}{#MyAppStatus}
DefaultGroupName={#MyAppName}{#MyAppStatus}
LicenseFile={#buildDirectory}\LICENSE_GPL.txt
InfoAfterFile={#buildDirectory}\README.txt
OutputDir={#buildDirectory}
ArchitecturesInstallIn64BitMode={#MyAppArchitecture}
ArchitecturesAllowed={#MyAppArchitecture}
; [NOTE] This one is overridden by Qbs automatically
OutputBaseFilename=valentina_{#MyAppVersion}{#MyAppStatus}
SetupIconFile={#buildDirectory}\valentina.ico
UninstallDisplayIcon={app}\valentina.ico
Compression=lzma
Compression=lzma2/max
SolidCompression=yes
VersionInfoVersion={#MyAppVersion}
ShowLanguageDialog=yes
@ -44,7 +55,11 @@ AppCopyright={#MyAppCopyright}
ChangesAssociations=yes
DisableDirPage=auto
DisableProgramGroupPage=auto
;MinVersion=6.1
MinVersion={#MyAppMinWinVersion}
; Remove the following line to run in administrative install mode (install for all users.)
PrivilegesRequired=lowest
PrivilegesRequiredOverridesAllowed=dialog
WizardStyle=modern
;SignTool=MySign
;Uncomment the previous string for code signing
;The next string is an example of parameter SignTool. Should not be uncommented.
@ -52,7 +67,7 @@ DisableProgramGroupPage=auto
[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"
Name: "armenian"; MessagesFile: "compiler:Languages\Armenian.islu"
Name: "armenian"; MessagesFile: "compiler:Languages\Armenian.isl"
Name: "brazilianportuguese"; MessagesFile: "compiler:Languages\BrazilianPortuguese.isl"
Name: "catalan"; MessagesFile: "compiler:Languages\Catalan.isl"
Name: "corsican"; MessagesFile: "compiler:Languages\Corsican.isl"
@ -62,19 +77,20 @@ Name: "dutch"; MessagesFile: "compiler:Languages\Dutch.isl"
Name: "finnish"; MessagesFile: "compiler:Languages\Finnish.isl"
Name: "french"; MessagesFile: "compiler:Languages\French.isl"
Name: "german"; MessagesFile: "compiler:Languages\German.isl"
Name: "greek"; MessagesFile: "compiler:Languages\Greek.isl"
;Name: "greek"; MessagesFile: "compiler:Languages\Greek.isl"
Name: "hebrew"; MessagesFile: "compiler:Languages\Hebrew.isl"
Name: "hungarian"; MessagesFile: "compiler:Languages\Hungarian.isl"
;Name: "hungarian"; MessagesFile: "compiler:Languages\Hungarian.isl"
Name: "icelandic"; MessagesFile: "compiler:Languages\Icelandic.isl"
Name: "italian"; MessagesFile: "compiler:Languages\Italian.isl"
Name: "japanese"; MessagesFile: "compiler:Languages\Japanese.isl"
Name: "nepali"; MessagesFile: "compiler:Languages\Nepali.islu"
;Name: "nepali"; MessagesFile: "compiler:Languages\Nepali.islu"
Name: "norwegian"; MessagesFile: "compiler:Languages\Norwegian.isl"
Name: "polish"; MessagesFile: "compiler:Languages\Polish.isl"
Name: "portuguese"; MessagesFile: "compiler:Languages\Portuguese.isl"
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"
Name: "scottishgaelic"; MessagesFile: "compiler:Languages\ScottishGaelic.isl"
Name: "serbiancyrillic"; MessagesFile: "compiler:Languages\SerbianCyrillic.isl"
Name: "serbianlatin"; MessagesFile: "compiler:Languages\SerbianLatin.isl"
;Name: "portuguese"; MessagesFile: "compiler:Languages\Portuguese.isl"
;Name: "scottishgaelic"; MessagesFile: "compiler:Languages\ScottishGaelic.isl"
;Name: "serbiancyrillic"; MessagesFile: "compiler:Languages\SerbianCyrillic.isl"
;Name: "serbianlatin"; MessagesFile: "compiler:Languages\SerbianLatin.isl"
Name: "slovak"; MessagesFile: "compiler:Languages\Slovak.isl"
Name: "slovenian"; MessagesFile: "compiler:Languages\Slovenian.isl"
Name: "spanish"; MessagesFile: "compiler:Languages\Spanish.isl"
Name: "turkish"; MessagesFile: "compiler:Languages\Turkish.isl"
@ -87,42 +103,42 @@ Name: "fileassoc1"; Description: "{cm:CreateFileAssocVal}"; GroupDescription: "{
Name: "fileassoc2"; Description: "{cm:CreateFileAssocVit}"; GroupDescription: "{cm:FileAssoc}"
Name: "fileassoc3"; Description: "{cm:CreateFileAssocVst}"; GroupDescription: "{cm:FileAssoc}"
Name: "fileassoc4"; Description: "{cm:CreateFileAssocVlt}"; GroupDescription: "{cm:FileAssoc}"
Name: "fileassoc5"; Description: "{cm:CreateFileAssocVkm}"; GroupDescription: "{cm:FileAssoc}"
Name: "deletesettings"; Description: "{cm:RemoveAnyExistingSettings}"; GroupDescription: "{cm:ManageSettings}"; Flags: unchecked
[Types]
Name: "full_english"; Description: "System language"; Languages: english;
;Name: "full_armenian"; Description: "System language"; Languages: armenian;
Name: "full_brazilianportuguese"; Description: "System language"; Languages: brazilianportuguese;
;Name: "full_catalan"; Description: "System language"; Languages: catalan;
;Name: "full_corsican"; Description: "System language"; Languages: corsican;
Name: "full_czech"; Description: "System language"; Languages: czech;
;Name: "full_danish"; Description: "System language"; Languages: danish;
Name: "full_dutch"; Description: "System language"; Languages: dutch;
Name: "full_finnish"; Description: "System language"; Languages: finnish;
Name: "full_french"; Description: "System language"; Languages: french;
Name: "full_german"; Description: "System language"; Languages: german;
Name: "full_greek"; Description: "System language"; Languages: greek;
Name: "full_hebrew"; Description: "System language"; Languages: hebrew;
;Name: "full_hungarian"; Description: "System language"; Languages: hungarian;
Name: "full_italian"; Description: "System language"; Languages: italian;
;Name: "full_japanese"; Description: "System language"; Languages: japanese;
;Name: "full_nepali"; Description: "System language"; Languages: nepali;
;Name: "full_norwegian"; Description: "System language"; Languages: norwegian;
Name: "full_polish"; Description: "System language"; Languages: polish;
Name: "full_portuguese"; Description: "System language"; Languages: portuguese;
Name: "full_russian"; Description: "System language"; Languages: russian;
;Name: "full_scottishgaelic"; Description: "System language"; Languages: scottishgaelic;
;Name: "full_serbiancyrillic"; Description: "System language"; Languages: serbiancyrillic;
;Name: "full_serbianlatin"; Description: "System language"; Languages: serbianlatin;
;Name: "full_slovenian"; Description: "System language"; Languages: slovenian;
Name: "full_spanish"; Description: "System language"; Languages: spanish;
;Name: "full_turkish"; Description: "System language"; Languages: turkish;
Name: "full_ukrainian"; Description: "System language"; Languages: ukrainian;
Name: "full"; Description: "Full installation"
Name: "custom"; Description: "Custom installation"; Flags: iscustom
Name: "full_english"; Description: "{cm:SystemLanguage}"; Languages: english;
;Name: "full_armenian"; Description: "{cm:SystemLanguage}"; Languages: armenian;
Name: "full_brazilianportuguese"; Description: "{cm:SystemLanguage}"; Languages: brazilianportuguese;
;Name: "full_catalan"; Description: "{cm:SystemLanguage}"; Languages: catalan;
;Name: "full_corsican"; Description: "{cm:SystemLanguage}"; Languages: corsican;
Name: "full_czech"; Description: "{cm:SystemLanguage}"; Languages: czech;
;Name: "full_danish"; Description: "{cm:SystemLanguage}"; Languages: danish;
Name: "full_dutch"; Description: "{cm:SystemLanguage}"; Languages: dutch;
Name: "full_finnish"; Description: "{cm:SystemLanguage}"; Languages: finnish;
Name: "full_french"; Description: "{cm:SystemLanguage}"; Languages: french;
Name: "full_german"; Description: "{cm:SystemLanguage}"; Languages: german;
;Name: "full_greek"; Description: "{cm:SystemLanguage}"; Languages: greek;
Name: "full_hebrew"; Description: "{cm:SystemLanguage}"; Languages: hebrew;
;Name: "full_hungarian"; Description: "{cm:SystemLanguage}"; Languages: hungarian;
Name: "full_italian"; Description: "{cm:SystemLanguage}"; Languages: italian;
;Name: "full_japanese"; Description: "{cm:SystemLanguage}"; Languages: japanese;
;Name: "full_nepali"; Description: "{cm:SystemLanguage}"; Languages: nepali;
;Name: "full_norwegian"; Description: "{cm:SystemLanguage}"; Languages: norwegian;
Name: "full_polish"; Description: "{cm:SystemLanguage}"; Languages: polish;
;Name: "full_portuguese"; Description: "{cm:SystemLanguage}"; Languages: portuguese;
;Name: "full_scottishgaelic"; Description: "{cm:SystemLanguage}"; Languages: scottishgaelic;
;Name: "full_serbiancyrillic"; Description: "{cm:SystemLanguage}"; Languages: serbiancyrillic;
;Name: "full_serbianlatin"; Description: "{cm:SystemLanguage}"; Languages: serbianlatin;
;Name: "full_slovenian"; Description: "{cm:SystemLanguage}"; Languages: slovenian;
Name: "full_spanish"; Description: "{cm:SystemLanguage}"; Languages: spanish;
;Name: "full_turkish"; Description: "{cm:SystemLanguage}"; Languages: turkish;
Name: "full_ukrainian"; Description: "{cm:SystemLanguage}"; Languages: ukrainian;
Name: "full"; Description: "{cm:FullInstallation}"
Name: "custom"; Description: "{cm:CustomInstallation}"; Flags: iscustom
[Components]
Name: "lang_files"; Description: "Language Component"; Types: full custom; Flags: fixed
Name: "lang_files"; Description: "{cm:LanguageComponent}"; Types: full custom; Flags: fixed
Name: "lang_files\english"; Description: "English"; Types: full full_english custom; Flags: disablenouninstallwarning
Name: "lang_files\english\us"; Description: "English (United States)"; Types: full full_english custom; Flags: disablenouninstallwarning
Name: "lang_files\english\in"; Description: "English (India)"; Types: full full_english custom; Flags: disablenouninstallwarning
@ -137,7 +153,7 @@ Name: "lang_files\dutch"; Description: "Dutch"; Types: full full_dutch custom; F
Name: "lang_files\finnish"; Description: "Finnish"; Types: full full_finnish custom; Flags: disablenouninstallwarning
Name: "lang_files\french"; Description: "French"; Types: full full_french custom; Flags: disablenouninstallwarning
Name: "lang_files\german"; Description: "German"; Types: full full_german custom; Flags: disablenouninstallwarning
Name: "lang_files\greek"; Description: "Greek"; Types: full full_greek custom; Flags: disablenouninstallwarning
;Name: "lang_files\greek"; Description: "Greek"; Types: full full_greek custom; Flags: disablenouninstallwarning
Name: "lang_files\hebrew"; Description: "Hebrew"; Types: full full_hebrew custom; Flags: disablenouninstallwarning
;Name: "lang_files\hungarian"; Description: "Hungarian"; Types: full full_hungarian custom; Flags: disablenouninstallwarning
Name: "lang_files\italian"; Description: "Italian"; Types: full full_italian custom; Flags: disablenouninstallwarning
@ -145,8 +161,7 @@ Name: "lang_files\italian"; Description: "Italian"; Types: full full_italian cus
;Name: "lang_files\nepali"; Description: "Nepali"; Types: full full_nepali custom; Flags: disablenouninstallwarning
;Name: "lang_files\norwegian"; Description: "Norwegian"; Types: full full_norwegian custom; Flags: disablenouninstallwarning
Name: "lang_files\polish"; Description: "Polish"; Types: full full_polish custom; Flags: disablenouninstallwarning
Name: "lang_files\portuguese"; Description: "Portuguese"; Types: full full_portuguese custom; Flags: disablenouninstallwarning
Name: "lang_files\russian"; Description: "Russian"; Types: full full_russian custom; Flags: disablenouninstallwarning
;Name: "lang_files\portuguese"; Description: "Portuguese"; Types: full full_portuguese custom; Flags: disablenouninstallwarning
;Name: "lang_files\scottishgaelic"; Description: "Scottish gaelic"; Types: full full_scottishgaelic custom; Flags: disablenouninstallwarning
;Name: "lang_files\serbiancyrillic"; Description: "Serbian cyrillic"; Types: full full_serbiancyrillic custom; Flags: disablenouninstallwarning
;Name: "lang_files\serbianlatin"; Description: "Serbian latin"; Types: full full_serbianlatin custom; Flags: disablenouninstallwarning
@ -160,223 +175,238 @@ Name: "lang_files\chinese"; Description: "Chinese (China)"; Types: full custom;
[Files]
; Signing
Source: ".\valentina\valentina.exe"; DestDir: "{app}"; Flags: ignoreversion sign
Source: ".\valentina\tape.exe"; DestDir: "{app}"; Flags: ignoreversion sign
Source: ".\valentina\puzzle.exe"; DestDir: "{app}"; Flags: ignoreversion sign
Source: ".\valentina\vpropertyexplorer.dll"; DestDir: "{app}"; Flags: ignoreversion sign
Source: ".\valentina\qmuparser2.dll"; DestDir: "{app}"; Flags: ignoreversion sign
Source: "{#buildDirectory}\valentina.exe"; DestDir: "{app}"; Flags: ignoreversion sign
Source: "{#buildDirectory}\tape.exe"; DestDir: "{app}"; Flags: ignoreversion sign
Source: "{#buildDirectory}\puzzle.exe"; DestDir: "{app}"; Flags: ignoreversion sign
Source: "{#buildDirectory}\VPropertyExplorerLib.dll"; DestDir: "{app}"; Flags: ignoreversion sign
Source: "{#buildDirectory}\QMUParserLib.dll"; DestDir: "{app}"; Flags: ignoreversion sign
; Localizations
Source: ".\valentina\translations\*_en_US.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\english\us
Source: ".\valentina\translations\*_en_IN.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\english\in
Source: ".\valentina\translations\*_en_CA.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\english\ca
Source: ".\valentina\translations\*_ru_RU.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\russian
Source: ".\valentina\translations\*_ru.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\russian
Source: ".\valentina\translations\*_uk_UA.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\ukrainian
Source: ".\valentina\translations\*_uk.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\ukrainian
Source: ".\valentina\translations\*_de_DE.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\german
Source: ".\valentina\translations\*_de.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\german
Source: ".\valentina\translations\*_cs_CZ.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\czech
Source: ".\valentina\translations\*_cs.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\czech
Source: ".\valentina\translations\*_he_IL.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\hebrew
Source: ".\valentina\translations\*_he.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\hebrew
Source: ".\valentina\translations\*_fr_FR.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\french
Source: ".\valentina\translations\*_fr.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\french
Source: ".\valentina\translations\*_it_IT.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\italian
Source: ".\valentina\translations\*_it.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\italian
Source: ".\valentina\translations\*_nl_NL.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\dutch
Source: ".\valentina\translations\*_id_ID.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\indonesian
Source: ".\valentina\translations\*_es_ES.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\spanish
Source: ".\valentina\translations\*_fi_FI.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\finnish
Source: ".\valentina\translations\*_fi.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\finnish
Source: ".\valentina\translations\*_ro_RO.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\romanian
Source: ".\valentina\translations\*_zh_CN.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\chinese
Source: ".\valentina\translations\*_pt_BR.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\brazilianportuguese
Source: ".\valentina\translations\*_el_GR.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\greek
; Additional languages provided by Qt
Source: ".\valentina\translations\*_sk.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\*_pl.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\*_ar.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\*_pt.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\*_sl.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\*_sv.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\*_zh_TW.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\qtxmlpatterns_ca.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\qtbase_ca.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\qt_ca.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\*_da.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\*_en.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\*_fa.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\*_gl.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\*_he.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\*_hu.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\*_ja.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\*_ko.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: ".\valentina\translations\*_lt.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
Source: "{#buildDirectory}\translations\*_en_US.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\english\us
Source: "{#buildDirectory}\translations\*_en_IN.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\english\in
Source: "{#buildDirectory}\translations\*_en_CA.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\english\ca
Source: "{#buildDirectory}\translations\*_en.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\english
Source: "{#buildDirectory}\translations\*_uk_UA.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\ukrainian
Source: "{#buildDirectory}\translations\*_uk.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\ukrainian
Source: "{#buildDirectory}\translations\*_de_DE.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\german
Source: "{#buildDirectory}\translations\*_de.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\german
Source: "{#buildDirectory}\translations\*_cs_CZ.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\czech
Source: "{#buildDirectory}\translations\*_cs.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\czech
Source: "{#buildDirectory}\translations\*_he_IL.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\hebrew
Source: "{#buildDirectory}\translations\*_he.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\hebrew
Source: "{#buildDirectory}\translations\*_fr_FR.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\french
Source: "{#buildDirectory}\translations\*_fr.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\french
Source: "{#buildDirectory}\translations\*_it_IT.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\italian
Source: "{#buildDirectory}\translations\*_it.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\italian
Source: "{#buildDirectory}\translations\*_nl_NL.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\dutch
Source: "{#buildDirectory}\translations\*_nl.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\dutch
Source: "{#buildDirectory}\translations\*_id_ID.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\indonesian
Source: "{#buildDirectory}\translations\*_es_ES.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\spanish
Source: "{#buildDirectory}\translations\*_es.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\spanish
Source: "{#buildDirectory}\translations\*_fi_FI.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\finnish
Source: "{#buildDirectory}\translations\*_fi.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\finnish
Source: "{#buildDirectory}\translations\*_ro_RO.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\romanian
Source: "{#buildDirectory}\translations\*_zh_CN.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\chinese
Source: "{#buildDirectory}\translations\*_pl_PL.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\polish
Source: "{#buildDirectory}\translations\*_pl.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\polish
Source: "{#buildDirectory}\translations\*_pt_BR.qm"; DestDir: "{app}\translations"; Flags: ignoreversion; Components: lang_files\brazilianportuguese
Source: "{#buildDirectory}\translations\*_el_GR.qm"; DestDir: "{app}\translations"; Flags: ignoreversion
; Other files
Source: ".\valentina\bearer\*"; DestDir: "{app}\bearer"; Flags: recursesubdirs createallsubdirs
Source: ".\valentina\iconengines\*"; DestDir: "{app}\iconengines"; Flags: recursesubdirs createallsubdirs
Source: ".\valentina\imageformats\*"; DestDir: "{app}\imageformats"; Flags: recursesubdirs createallsubdirs
Source: ".\valentina\platforms\*"; DestDir: "{app}\platforms"; Flags: recursesubdirs createallsubdirs
Source: ".\valentina\printsupport\*"; DestDir: "{app}\printsupport"; Flags: recursesubdirs createallsubdirs
Source: ".\valentina\tables\*"; DestDir: "{app}\tables"; Flags: ignoreversion recursesubdirs createallsubdirs
Source: ".\valentina\labels\*"; DestDir: "{app}\labels"; Flags: ignoreversion recursesubdirs createallsubdirs
; Since qt 5.10
Source: ".\valentina\styles\*"; DestDir: "{app}\styles"; Flags: recursesubdirs createallsubdirs
Source: ".\valentina\*.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: ".\valentina\*.dll"; DestDir: "{app}"
Source: ".\valentina\*.txt"; DestDir: "{app}"; Flags: ignoreversion
Source: ".\valentina\*.rcc"; DestDir: "{app}"; Flags: ignoreversion
Source: ".\valentina\*.ico"; DestDir: "{app}"; Flags: ignoreversion
Source: ".\valentina\*.ini"; DestDir: "{app}"; Flags: ignoreversion
Source: "{#buildDirectory}\bearer\*"; DestDir: "{app}\bearer"; Flags: recursesubdirs createallsubdirs skipifsourcedoesntexist
Source: "{#buildDirectory}\generic\*"; DestDir: "{app}\generic"; Flags: recursesubdirs createallsubdirs skipifsourcedoesntexist
Source: "{#buildDirectory}\iconengines\*"; DestDir: "{app}\iconengines"; Flags: recursesubdirs createallsubdirs
Source: "{#buildDirectory}\imageformats\*"; DestDir: "{app}\imageformats"; Flags: recursesubdirs createallsubdirs
Source: "{#buildDirectory}\networkinformation\*"; DestDir: "{app}\networkinformation"; Flags: recursesubdirs createallsubdirs skipifsourcedoesntexist
Source: "{#buildDirectory}\platforms\*"; DestDir: "{app}\platforms"; Flags: recursesubdirs createallsubdirs
Source: "{#buildDirectory}\styles\*"; DestDir: "{app}\styles"; Flags: recursesubdirs createallsubdirs
Source: "{#buildDirectory}\svgfonts\*"; DestDir: "{app}\svgfonts"; Flags: recursesubdirs createallsubdirs
Source: "{#buildDirectory}\tls\*"; DestDir: "{app}\tls"; Flags: recursesubdirs createallsubdirs
Source: "{#buildDirectory}\printsupport\*"; DestDir: "{app}\printsupport"; Flags: recursesubdirs createallsubdirs skipifsourcedoesntexist
Source: "{#buildDirectory}\*.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "{#buildDirectory}\*.dll"; DestDir: "{app}"
Source: "{#buildDirectory}\*.txt"; DestDir: "{app}"; Flags: ignoreversion
Source: "{#buildDirectory}\*.rcc"; DestDir: "{app}"; Flags: ignoreversion skipifsourcedoesntexist
Source: "{#buildDirectory}\*.ico"; DestDir: "{app}"; Flags: ignoreversion
Source: "{#buildDirectory}\*.ini"; DestDir: "{app}"; Flags: ignoreversion
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
; DLL used to check if the target program is running at install time
Source: ".\valentina\EUDC.TTE"; DestDir: "{fonts}"; FontInstall: "EUDC"; Flags: onlyifdoesntexist uninsneveruninstall
[InstallDelete]
Type: filesandordirs; Name: "{app}\translations"
Type: files; Name: "{userappdata}\ValentinaTeam\*.ini"; Tasks: deletesettings
[Icons]
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}"
Name: "{group}\{#MyAppName}{#MyAppStatus}"; Filename: "{app}\valentina.exe"
Name: "{group}\{cm:UninstallProgram,{#MyAppName}{#MyAppStatus}}"; Filename: "{uninstallexe}"
Name: "{group}\Tape"; Filename: "{app}\tape.exe"
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
Name: "{group}\Puzzle"; Filename: "{app}\puzzle.exe"
Name: "{commondesktop}\{#MyAppName}{#MyAppStatus}"; Filename: "{app}\valentina.exe"; Tasks: desktopicon
Name: "{commondesktop}\Tape"; Filename: "{app}\tape.exe"; Tasks: desktopicon
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: quicklaunchicon
Name: "{commondesktop}\Puzzle"; Filename: "{app}\puzzle.exe"; Tasks: desktopicon
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}{#MyAppStatus}"; Filename: "{app}\valentina.exe"; Tasks: quicklaunchicon
[Run]
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent
Filename: "{app}\valentina.exe"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent
[Registry]
Root: "HKCR"; Subkey: ".val"; ValueType: string; ValueName: ""; ValueData: "Valentina.Pattern"; Flags: uninsdeletevalue; Tasks: fileassoc1
Root: "HKCR"; Subkey: ".vit"; ValueType: string; ValueName: ""; ValueData: "Valentina.IndividualMeasurements"; Flags: uninsdeletevalue; Tasks: fileassoc2
Root: "HKCR"; Subkey: ".vst"; ValueType: string; ValueName: ""; ValueData: "Valentina.StandardMeasurements"; Flags: uninsdeletevalue; Tasks: fileassoc3
Root: "HKCR"; Subkey: ".vlt"; ValueType: string; ValueName: ""; ValueData: "Valentina.Layout"; Flags: uninsdeletevalue; Tasks: fileassoc3
Root: HKA; Subkey: "Software\Classes\.val\OpenWithProgids"; ValueType: string; ValueName: "{#MyAppName}{#MyAppStatus}.val"; ValueData: ""; Flags: uninsdeletevalue; Tasks: fileassoc1
Root: HKA; Subkey: "Software\Classes\.vit\OpenWithProgids"; ValueType: string; ValueName: "{#MyAppName}{#MyAppStatus}.vit"; ValueData: ""; Flags: uninsdeletevalue; Tasks: fileassoc2
Root: HKA; Subkey: "Software\Classes\.vst\OpenWithProgids"; ValueType: string; ValueName: "{#MyAppName}{#MyAppStatus}.vst"; ValueData: ""; Flags: uninsdeletevalue; Tasks: fileassoc3
Root: HKA; Subkey: "Software\Classes\.vlt\OpenWithProgids"; ValueType: string; ValueName: "{#MyAppName}{#MyAppStatus}.vlt"; ValueData: ""; Flags: uninsdeletevalue; Tasks: fileassoc4
Root: HKA; Subkey: "Software\Classes\.vkm\OpenWithProgids"; ValueType: string; ValueName: "{#MyAppName}{#MyAppStatus}.vkm"; ValueData: ""; Flags: uninsdeletevalue; Tasks: fileassoc5
Root: "HKCR"; Subkey: "Valentina.Pattern"; ValueType: string; ValueData: "Valentina pattern file"; Flags: uninsdeletekey; Tasks: fileassoc1
Root: "HKCR"; Subkey: "Valentina.Pattern\DefaultIcon"; ValueType: string; ValueData: "{app}\pattern.ico,0"; Tasks: fileassoc1
Root: "HKCR"; Subkey: "Valentina.Pattern\shell\open\command"; ValueType: string; ValueData: """{app}\valentina.exe"" ""%1"""; Tasks: fileassoc1
Root: HKA; Subkey: "Software\Classes\.val"; ValueType: string; ValueName: ""; ValueData: "Valentina pattern file"; Flags: uninsdeletekey; Tasks: fileassoc1
Root: HKA; Subkey: "Software\Classes\.vit"; ValueType: string; ValueName: ""; ValueData: "Valentina individual measurement file"; Flags: uninsdeletekey; Tasks: fileassoc2
Root: HKA; Subkey: "Software\Classes\.vst"; ValueType: string; ValueName: ""; ValueData: "Valentina multisize measurement file"; Flags: uninsdeletekey; Tasks: fileassoc3
Root: HKA; Subkey: "Software\Classes\.vlt"; ValueType: string; ValueName: ""; ValueData: "Valentina layout file"; Flags: uninsdeletekey; Tasks: fileassoc4
Root: HKA; Subkey: "Software\Classes\.vkm"; ValueType: string; ValueName: ""; ValueData: "Valentina known measurement file"; Flags: uninsdeletekey; Tasks: fileassoc5
Root: "HKCR"; Subkey: "Valentina.IndividualMeasurements"; ValueType: string; ValueData: "Valentina individual measurement file"; Flags: uninsdeletekey; Tasks: fileassoc2
Root: "HKCR"; Subkey: "Valentina.IndividualMeasurements\DefaultIcon"; ValueType: string; ValueData: "{app}\i-measurements.ico,0"; Tasks: fileassoc2
Root: "HKCR"; Subkey: "Valentina.IndividualMeasurements\shell\open\command"; ValueType: string; ValueData: """{app}\tape.exe"" ""%1"""; Tasks: fileassoc2
Root: HKA; Subkey: "Software\Classes\.val\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\pattern.ico,0"; Tasks: fileassoc1
Root: HKA; Subkey: "Software\Classes\.vit\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\i-measurements.ico,0"; Tasks: fileassoc2
Root: HKA; Subkey: "Software\Classes\.vst\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\s-measurements.ico,0"; Tasks: fileassoc3
Root: HKA; Subkey: "Software\Classes\.vlt\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\layout.ico,0"; Tasks: fileassoc4
Root: HKA; Subkey: "Software\Classes\.vkm\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\k-measurements.ico,0"; Tasks: fileassoc5
Root: "HKCR"; Subkey: "Valentina.StandardMeasurements"; ValueType: string; ValueData: "Valentina standard measurement file"; Flags: uninsdeletekey; Tasks: fileassoc3
Root: "HKCR"; Subkey: "Valentina.StandardMeasurements\DefaultIcon"; ValueType: string; ValueData: "{app}\s-measurements.ico,0"; Tasks: fileassoc3
Root: "HKCR"; Subkey: "Valentina.StandardMeasurements\shell\open\command"; ValueType: string; ValueData: """{app}\tape.exe"" ""%1"""; Tasks: fileassoc3
Root: HKA; Subkey: "Software\Classes\.val\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\valentina.exe"" ""%1"""; Tasks: fileassoc1
Root: HKA; Subkey: "Software\Classes\.vit\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\tape.exe"" ""%1"""; Tasks: fileassoc2
Root: HKA; Subkey: "Software\Classes\.vst\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\tape.exe"" ""%1"""; Tasks: fileassoc3
Root: HKA; Subkey: "Software\Classes\.vlt\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\puzzle.exe"" ""%1"""; Tasks: fileassoc4
Root: HKA; Subkey: "Software\Classes\.vkm\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\tape.exe"" ""%1"""; Tasks: fileassoc5
Root: "HKCR"; Subkey: "Valentina.Layout"; ValueType: string; ValueData: "Valentina layout file"; Flags: uninsdeletekey; Tasks: fileassoc1
Root: "HKCR"; Subkey: "Valentina.Layout\DefaultIcon"; ValueType: string; ValueData: "{app}\layout.ico,0"; Tasks: fileassoc1
Root: "HKCR"; Subkey: "Valentina.Layout\shell\open\command"; ValueType: string; ValueData: """{app}\puzzle.exe"" ""%1"""; Tasks: fileassoc1
Root: HKA; Subkey: "Software\Classes\.val\shell\Edit with {#MyAppName}{#MyAppStatus}"; ValueType: none; ValueName: ""; ValueData: ""; Flags: uninsdeletekey; Tasks: fileassoc1
Root: HKA; Subkey: "Software\Classes\.val\shell\Edit with {#MyAppName}{#MyAppStatus}"; ValueType: string; ValueName: "Icon"; ValueData: "{app}\valentina.exe,0"; Flags: uninsdeletekey; Tasks: fileassoc1
Root: HKA; Subkey: "Software\Classes\.val\shell\Edit with {#MyAppName}{#MyAppStatus}\command"; ValueType: string; ValueName: ""; ValueData: """{app}\valentina.exe"" ""%1"""; Flags: uninsdeletekey; Tasks: fileassoc1
Root: HKA; Subkey: "Software\Classes\.vit\shell\Edit with Tape{#MyAppStatus}"; ValueType: none; ValueName: ""; ValueData: ""; Flags: uninsdeletekey; Tasks: fileassoc2
Root: HKA; Subkey: "Software\Classes\.vit\shell\Edit with Tape{#MyAppStatus}"; ValueType: string; ValueName: "Icon"; ValueData: "{app}\tape.exe,0"; Flags: uninsdeletekey; Tasks: fileassoc2
Root: HKA; Subkey: "Software\Classes\.vit\shell\Edit with Tape{#MyAppStatus}\command"; ValueType: string; ValueName: ""; ValueData: """{app}\tape.exe"" ""%1"""; Flags: uninsdeletekey; Tasks: fileassoc2
Root: HKA; Subkey: "Software\Classes\.vst\shell\Edit with Tape{#MyAppStatus}"; ValueType: none; ValueName: ""; ValueData: ""; Flags: uninsdeletekey; Tasks: fileassoc3
Root: HKA; Subkey: "Software\Classes\.vst\shell\Edit with Tape{#MyAppStatus}"; ValueType: string; ValueName: "Icon"; ValueData: "{app}\tape.exe,0"; Flags: uninsdeletekey; Tasks: fileassoc3
Root: HKA; Subkey: "Software\Classes\.vst\shell\Edit with Tape{#MyAppStatus}\command"; ValueType: string; ValueName: ""; ValueData: """{app}\tape.exe"" ""%1"""; Flags: uninsdeletekey; Tasks: fileassoc3
Root: HKA; Subkey: "Software\Classes\.vlt\shell\Edit with Puzzle{#MyAppStatus}"; ValueType: none; ValueName: ""; ValueData: ""; Flags: uninsdeletekey; Tasks: fileassoc4
Root: HKA; Subkey: "Software\Classes\.vlt\shell\Edit with Puzzle{#MyAppStatus}"; ValueType: string; ValueName: "Icon"; ValueData: "{app}\puzzle.exe,0"; Flags: uninsdeletekey; Tasks: fileassoc4
Root: HKA; Subkey: "Software\Classes\.vlt\shell\Edit with Puzzle{#MyAppStatus}\command"; ValueType: string; ValueName: ""; ValueData: """{app}\puzzle.exe"" ""%1"""; Flags: uninsdeletekey; Tasks: fileassoc4
Root: HKA; Subkey: "Software\Classes\.vkm\shell\Edit with Tape{#MyAppStatus}"; ValueType: none; ValueName: ""; ValueData: ""; Flags: uninsdeletekey; Tasks: fileassoc5
Root: HKA; Subkey: "Software\Classes\.vkm\shell\Edit with Tape{#MyAppStatus}"; ValueType: string; ValueName: "Icon"; ValueData: "{app}\tape.exe,0"; Flags: uninsdeletekey; Tasks: fileassoc5
Root: HKA; Subkey: "Software\Classes\.vkm\shell\Edit with Tape{#MyAppStatus}\command"; ValueType: string; ValueName: ""; ValueData: """{app}\tape.exe"" ""%1"""; Flags: uninsdeletekey; Tasks: fileassoc5
Root: HKA; Subkey: "Software\Classes\Applications\valentina.exe\SupportedTypes"; ValueType: string; ValueName: ".val"; ValueData: ""; Tasks: fileassoc1
Root: HKA; Subkey: "Software\Classes\Applications\tape.exe\SupportedTypes"; ValueType: string; ValueName: ".vit"; ValueData: ""; Tasks: fileassoc2
Root: HKA; Subkey: "Software\Classes\Applications\tape.exe\SupportedTypes"; ValueType: string; ValueName: ".vst"; ValueData: ""; Tasks: fileassoc3
Root: HKA; Subkey: "Software\Classes\Applications\puzzle.exe\SupportedTypes"; ValueType: string; ValueName: ".vlt"; ValueData: ""; Tasks: fileassoc4
Root: HKA; Subkey: "Software\Classes\Applications\tape.exe\SupportedTypes"; ValueType: string; ValueName: ".vkm"; ValueData: ""; Tasks: fileassoc5
[CustomMessages]
SystemLanguage = System language
english.SystemLanguage = System language
ukrainian.SystemLanguage = Мова системи
FullInstallation = Full installation
english.FullInstallation = Full installation
ukrainian.FullInstallation = Повна інсталяція
CustomInstallation = Custom installation
english.CustomInstallation = Custom installation
ukrainian.CustomInstallation = Користувацьке налаштування
LanguageComponent = Language Component
english.LanguageComponent = Language Component
ukrainian.LanguageComponent = Мовний компонент
FileAssoc = Create file associations
english.FileAssoc = Create file associations
russian.FileAssoc = Создание ассоциаций файлов
ukrainian.FileAssoc = Створити асоціації файлів
german.FileAssoc = Dateizuordnungen erstellen
CreateFileAssocVal = *.val (Pattern file)
english.CreateFileAssocVal = *.val (Pattern file)
russian.CreateFileAssocVal = *.val (Файл выкройки)
ukrainian.CreateFileAssocVal = *.val (Файл викрійки)
german.CreateFileAssocVal = *.val (Schnittmusterdatei)
CreateFileAssocVit = *.vit (Individual measurement file)
english.CreateFileAssocVit = *.vit (Individual measurement file)
russian.CreateFileAssocVit = *.vit (Файл индивидуальных мерок)
ukrainian.CreateFileAssocVit = *.vit (Файл індивідуальних мірок)
german.CreateFileAssocVit = *.vit (Individuelle Maßdatei)
CreateFileAssocVst = *.vst (Multisize measurement file)
english.CreateFileAssocVst = *.vst (Multisize measurement file)
russian.CreateFileAssocVst = *.vst (Мультиразмерный файл мерок)
ukrainian.CreateFileAssocVst = *.vst (Мультирозмірний файл мірок)
german.CreateFileAssocVst = *.vst (Multi-Size Maßdatei)
CreateFileAssocVlt = *.vlt (Layout file)
english.CreateFileAssocVlt = *.vlt (Layout file)
russian.CreateFileAssocVlt = *.vlt (Файл раскладки)
ukrainian.CreateFileAssocVlt = *.vlt (Файл роскладки)
german.CreateFileAssocVlt = *.vlt (Layoutdatei)
CreateFileAssocVkm = *.vkm (Known measurements file)
english.CreateFileAssocVkm = *.vkm (Known measurements file)
ukrainian.CreateFileAssocVkm = *.vkm (Файл відомих мірок)
WarnRemoveOld = is installed at the moment. Remove old version?
english.WarnRemoveOld = is installed at the moment. Remove old version?
russian.WarnRemoveOld = установлена на данный момент. Удалить старую версию?
ukrainian.WarnRemoveOld = встановлено на даний момент. Видалити стару версію?
german.WarnRemoveOld = ist im Moment installiert. Alte Version entfernen?
WarnSameVersionExit = is already installed. This installer will exit.
english.WarnSameVersionExit = is already installed. This installer will exit.
russian.WarnSameVersionExit = уже установлено. Установщик завершит свою работу.
ukrainian.WarnSameVersionExit = вже встановлено. Інсталятор завершить свою роботу.
german.WarnSameVersionExit = ist bereits installiert. Dieses Installationsprogramm wird beendet.
WarnRunningOnUnInstall1 = is currently running.
english.WarnRunningOnUnInstall1 = is currently running.
russian.WarnRunningOnUnInstall1 = в настоящее время работает.
ukrainian.WarnRunningOnUnInstall1 = в даний час працює.
german.WarnRunningOnUnInstall1 = läuft derzeit.
WarnRunningOnUnInstall2 = Please close it and then click on ''Retry'' to proceed.
english.WarnRunningOnUnInstall2 = Please close it and then click on ''Retry'' to proceed.
russian.WarnRunningOnUnInstall2 = Закройте его и нажмите ''Повторить'', чтобы продолжить.
ukrainian.WarnRunningOnUnInstall2 = Закрийте його та натисніть ''Повторити'', щоб продовжити.
german.WarnRunningOnUnInstall2 = Bitte schließen Sie es und klicken Sie auf ''Wiederholen'', um fortzufahren.
WarnCancelInstall = The installation was canceled.
english.WarnCancelInstall = The installation was canceled.
russian.WarnCancelInstall = Установка была отменена.
ukrainian.WarnCancelInstall = Установка була скасована.
german.WarnCancelInstall = Die Installation wurde abgebrochen.
WarnCancelUninstall = The uninstallation process was canceled.
english.WarnCancelUninstall = The uninstallation process was canceled.
russian.WarnCancelUninstall = Процесс удаления был отменен.
ukrainian.WarnCancelUninstall = Процес деінсталяції скасовано.
german.WarnCancelUninstall = Der Deinstallationsvorgang wurde abgebrochen.
WarnOverwrite = is already installed. Overwrite existing installation?
english.WarnOverwrite= is already installed. Overwrite existing installation?
russian.WarnOverwrite= уже установлено. Перезаписать существующую установку?
ukrainian.WarnOverwrite= вже встановлено. Перезаписати існуючу установку?
german.WarnOverwrite = ist bereits installiert. Vorhandene Installation überschreiben?
SetupIsRunningWarning = Valentina setup is already running!
english.SetupIsRunningWarning = Valentina setup is already running!
russian.SetupIsRunningWarning = Установка Valentina уже запущена!
ukrainian.SetupIsRunningWarning = Встановлення Valentina вже працює!
german.SetupIsRunningWarning = Valentina-Setup läuft bereits!
DeinstIsRunningWarning = Valentina uninstall is already running!
english.DeinstIsRunningWarning = Valentina uninstall is already running!
russian.DeinstIsRunningWarning = Удаление Valentina уже запущено!
ukrainian.DeinstIsRunningWarning = Видалення Valentina вже працює!
german.DeinstIsRunningWarning = Die Deinstallation von Valentina läuft bereits!
RemoveAnyExistingSettings = Remove any existing settings
english.RemoveAnyExistingSettings = Remove any existing settings
russian.RemoveAnyExistingSettings = Удалить все существующие настройки
ukrainian.RemoveAnyExistingSettings = Видалити всі існуючі налаштування
german.RemoveAnyExistingSettings = Alle vorhandenen Einstellungen entfernen
ManageSettings = Manage settings
english.ManageSettings = Manage settings
russian.ManageSettings = Управление настройками
ukrainian.ManageSettings = Керування налаштуваннями
german.ManageSettings = Einstellungen verwalten
QuestionRemoveAnyExistingSettings = Do you want to remove any existing settings?
english.QuestionRemoveAnyExistingSettings = Do you want to remove any existing settings?
russian.QuestionRemoveAnyExistingSettings = Вы хотите удалить существующие настройки?
ukrainian.QuestionRemoveAnyExistingSettings = Видалити будь-які існуючі налаштування?
german.QuestionRemoveAnyExistingSettings = Möchten Sie vorhandene Einstellungen entfernen?
ErrorFindApp = Unable to check if a program is running. Please, close the program before continue and press OK to continue the installation.
english.ErrorFindApp = Unable to check if a program is running. Please, close the program before continue and press OK to continue the installation.
russian.ErrorFindApp = Невозможно проверить, запущена ли программа. Пожалуйста, закройте программу перед продолжением и нажмите OK, чтобы продолжить установку.
ukrainian.ErrorFindApp = Неможливо перевірити, чи запущена програма. Будь ласка, закрийте програму перед продовженням та натисніть OK, щоб продовжити встановлення.
german.ErrorFindApp = Es kann nicht geprüft werden, ob ein Programm läuft. Bitte schließen Sie das Programm, bevor Sie fortfahren, und drücken Sie OK, um die Installation fortzusetzen.
[Code]
const
@ -386,6 +416,8 @@ const
ProgramExeName1 = 'valentina.exe';
ProgramName2 = 'Tape';
ProgramExeName2 = 'tape.exe';
ProgramName3 = 'Puzzle';
ProgramExeName3 = 'puzzle.exe';
/////////////////////////////////////////////////////////////////////
// Convert version strings into float and compare
@ -406,8 +438,8 @@ begin
end;
// Global variables/constants and general functions
const installer_mutex_name = '{#MyAppName}' + '_setup_mutex';
const uninstaller_mutex_name = '{#MyAppName}' + '_uninstall_mutex';
const installer_mutex_name = '{#MyAppName}{#MyAppStatus}' + '_setup_mutex';
const uninstaller_mutex_name = '{#MyAppName}{#MyAppStatus}' + '_uninstall_mutex';
/////////////////////////////////////////////////////////////////////
// Find application by name in current process list
@ -548,6 +580,10 @@ var
If Result Then
begin
Result := PromptUntilProgramClosedOrInstallationCanceled( ProgramExeName2, ProgramName2 + ProgramRunningOnInstallMessage)
If Result Then
begin
Result := PromptUntilProgramClosedOrInstallationCanceled( ProgramExeName3, ProgramName3 + ProgramRunningOnInstallMessage)
end;
end;
if Not Result then
@ -584,6 +620,10 @@ var
If Result Then
begin
Result := PromptUntilProgramClosedOrInstallationCanceled( ProgramExeName2, ProgramName2 + ProgramRunningOnUninstallMessage);
If Result Then
begin
Result := PromptUntilProgramClosedOrInstallationCanceled( ProgramExeName3, ProgramName3 + ProgramRunningOnUninstallMessage);
end;
end;
if not Result then
@ -604,3 +644,4 @@ begin
end;
end;
end;

View File

@ -1,17 +1,13 @@
$env:BUILD_FOLDER = "$env:APPVEYOR_BUILD_FOLDER\build";
$env:INSTALL_ROOT = "$env:BUILD_FOLDER\package";
$env:INSTALL_ROOT = "$env:BUILD_FOLDER\install-root";
if($env:BUILD_SYSTEM -eq "qbs") {
$env:INSTALL_ROOT = "$env:BUILD_FOLDER\install-root";
}
$file_name = "valentina-$env:PLATFORM-$env:COMPILER-$env:ARCH-$env:QT_VERSION-$env:APPVEYOR_REPO_BRANCH-$env:APPVEYOR_REPO_COMMIT.tar.xz";
$file_name = "valentina-$env:PLATFORM-$env:COMPILER-$env:ARCH-$env:QT_VERSION-$env:APPVEYOR_REPO_BRANCH-$env:APPVEYOR_REPO_COMMIT.exe";
if($env:DEPLOY -eq "true") {
Write-Host "[CI] Starting packing." -ForegroundColor Green;
& $env:PYTHON\python.exe "$env:APPVEYOR_BUILD_FOLDER\scripts\deploy.py" pack "$env:INSTALL_ROOT\valentina" "$env:INSTALL_ROOT\$file_name";
Write-Host "[CI] Preparing installer." -ForegroundColor Green;
Rename-Item -Path "$env:INSTALL_ROOT\valentina\ValentinaInstaller.exe" -NewName "$file_name";
if ($LastExitCode -ne 0) {
Write-Error -Message "[CI] Error creating an archive." -Category InvalidResult;
Write-Error -Message "[CI] Error preparing installer." -Category InvalidResult;
exit 1;
} else {
Write-Host "[CI] Done." -ForegroundColor Green;
@ -27,7 +23,7 @@ if($env:DEPLOY -eq "true") {
}
Write-Host "[CI] Uploading." -ForegroundColor Green;
& $env:PYTHON\python.exe "$env:APPVEYOR_BUILD_FOLDER\scripts\deploy.py" upload $env:ACCESS_TOKEN "$env:INSTALL_ROOT\$file_name" "/0.7.x/Windows/$file_name";
& $env:PYTHON\python.exe "$env:APPVEYOR_BUILD_FOLDER\scripts\deploy.py" upload $env:ACCESS_TOKEN "$env:INSTALL_ROOT\valentina\$file_name" "/0.7.x/Windows/$file_name";
if ($LastExitCode -ne 0) {
Write-Error -Message "[CI] Error uploading an artifact." -Category InvalidResult;
exit 1;

View File

@ -132,9 +132,10 @@ def run_clean(refresh_token):
"access token from the app console on the web.")
clean_folders = ["/0.7.x/Mac OS X", "/0.7.x/Windows"]
arhive_types = [r'^valentina-Windows10\+-mingw-x64-Qt.*-develop-[a-f0-9]{40}\.tar\.xz$',
r'^valentina-Windows7\+-mingw-x86-Qt.*-develop-[a-f0-9]{40}\.tar\.xz$',
r'^valentina-WindowsXP\+-mingw-x86-Qt.*-develop-[a-f0-9]{40}\.tar\.xz$',
arhive_types = [r'^valentina-Windows10\+-mingw-x64-Qt.*-develop-[a-f0-9]{40}\.exe$',
r'^valentina-Windows7\+-mingw-x86-Qt.*-develop-[a-f0-9]{40}\.exe$',
r'^valentina-Windows10\+-msvc-x64-Qt.*-develop-[a-f0-9]{40}\.exe$',
r'^valentina-Windows7\+-msvc-x86-Qt.*-develop-[a-f0-9]{40}\.exe$',
r'^valentina-macOS_11\+-Qt.*-x64-develop-[a-f0-9]{40}\.dmg$',
r'^valentina-macOS_11\+-Qt.*-x64-develop-multibundle-[a-f0-9]{40}\.dmg$',
r'^valentina-macOS_10.13\+-Qt.*-x64-develop-[a-f0-9]{40}\.dmg$',

View File

@ -342,7 +342,6 @@ VToolApp {
files: [
"dist/win/valentina.ico",
"dist/win/pattern.ico",
"dist/win/EUDC.TTE",
"AUTHORS.txt",
"LICENSE_GPL.txt",
"README.txt",

View File

@ -25,7 +25,8 @@ Project {
references: [
"src/src.qbs",
"share/translations/translations.qbs",
"dmg.qbs"
"dmg.qbs",
"winsetup.qbs"
]
qbsSearchPaths: "qbs"

83
winsetup.qbs Normal file
View File

@ -0,0 +1,83 @@
import qbs.FileInfo
import qbs.Utilities
import qbs.TemporaryDir
Project {
InnoSetup {
Depends { name: "buildconfig" }
property bool _test: {
var present = qbs.targetOS.includes("windows") && innosetup.present;
console.info("has innosetup: " + present);
if (present) {
console.info("innosetup version " + innosetup.version);
}
}
condition: qbs.targetOS.contains("windows")
name: "ValentinaSetup"
targetName: "ValentinaInstaller"
version: buildconfig.projectVersion
builtByDefault: false
files: [
project.sourceDirectory + "/dist/win/inno/valentina.iss"
]
property string arhitecture: {
if (qbs.architecture == "x86_64")
{
return "x64"
}
if (qbs.architecture == "arm64")
{
return "arm64";
}
return "";
}
property string minVersion: {
if (Utilities.versionCompare(Qt.core.version, "6.5") >= 0)
{
return "10.0.17763";
}
if (Utilities.versionCompare(Qt.core.version, "6.3") >= 0)
{
return "10.0.19044";
}
if (Utilities.versionCompare(Qt.core.version, "6.2") >= 0)
{
return "10.0.17763";
}
if (Utilities.versionCompare(Qt.core.version, "6.0") >= 0)
{
return "10.0";
}
return "6.1";
}
innosetup.verboseOutput: true
innosetup.defines: [
"MyAppVersion=" + version,
"MyAppCopyright=" + buildconfig.valentina_copyright_string,
"MyAppArchitecture=" + arhitecture,
"MyAppMinWinVersion=" + minVersion,
"buildDirectory=" + project.qbs.installRoot
]
innosetup.compilerFlags: ["/V9"]
Group {
fileTagsFilter: ['innosetup.exe']
qbs.install: true
qbs.installPrefix: '/'
}
}
}