commit df0b34017e3b0c2a4b50f06c4468d3090af8e4ee
Author: Uwe Stöhr <[email protected]>
Date: Fri Jan 9 02:55:00 2015 +0100
Windows installer: backport recent changes from master
diff --git a/development/Win32/packaging/installer/ChangeLog.txt
b/development/Win32/packaging/installer/ChangeLog.txt
index 44020a7..56d6425 100644
--- a/development/Win32/packaging/installer/ChangeLog.txt
+++ b/development/Win32/packaging/installer/ChangeLog.txt
@@ -1,4 +1,50 @@
-Changelog for LyX-207-4:
+Changelog for LyX-212-2:
+- fix problem that some LaTeX language packages were not installed
automatically
+ leading to LaTeX errors when compiling LyX documents
+- new spell checker for Turkish
+- updated spell-checker dictionaries for English, Norwegian(Bokmal), Portuguese
+ and Scottish
+ (To benefit from them you must uninstall an already installed LyX 2.1.x and
+ then use this installer.)
+- updated thesaurus for Slovenian
+ (you need to reinstall LyX to benefit from this)
+- updated to Python 2.7.9
+
+
+Changelog for LyX-212-1:
+- installs LyX 2.1.2
+
+
+Changelog for LyX-211-2:
+- updated to Python 2.7.8
+
+
+Changelog for LyX-211-1:
+- installs LyX 2.1.1
+- updated to Ghostscript 8.14
+- updated to Qt 4.8.6
+
+
+Changelog for LyX-210-2:
+- LyX can now also be installed over an existing installation of the same LyX
version
+ if the users really wants this.
+- LyX can now also be installed if the uninstaller executable of a former LyX
was
+ accidentally deleted.
+- If a user set MiKTeX's automatic package installation to "No" the installer
will
+ respect that and not re-enable it.
+
+
+Changelog for LyX-210-1:
+- installs LyX 2.1.0
+- fixed a bug that MiKTeX was not found if Windows' PATH variable is very long
+
+
+Changelog for LyX-208-1:
+- installs LyX 2.0.8
+- fixed a bug that MiKTeX was not found if Windows' PATH variable is very long
+
+
+Changelog for LyX-207-4:
- downgraded to Qt 4.8.4
(there is a bug in the newer Qt 4.8.5 that destroys some shortcuts)
- updated to JabRef 2.10
diff --git a/development/Win32/packaging/installer/HunspellDictionaryNames.txt
b/development/Win32/packaging/installer/HunspellDictionaryNames.txt
index dd4b08f..aba877c 100644
--- a/development/Win32/packaging/installer/HunspellDictionaryNames.txt
+++ b/development/Win32/packaging/installer/HunspellDictionaryNames.txt
@@ -132,6 +132,8 @@ th_TH.aff
th_TH.dic
tk_TM.aff
tk_TM.dic
+tr_TR.aff
+tr_TR.dic
uk_UA.aff
uk_UA.dic
ur_PK.aff
diff --git a/development/Win32/packaging/installer/Packages.txt
b/development/Win32/packaging/installer/Packages.txt
index 5e21df5..70af0bb 100644
--- a/development/Win32/packaging/installer/Packages.txt
+++ b/development/Win32/packaging/installer/Packages.txt
@@ -8,7 +8,6 @@ apacite
apalike
arabi
authordate
-babel
babel-albanian
babel-bahasa
babel-basque
@@ -57,7 +56,6 @@ babel-ukrainian
babel-vietnamese
babel-welsh
bibtopic
-bidi
booktabs
braille
breakurl
@@ -70,28 +68,22 @@ endnotes
enumitem
esint
eso-pic
-fontspec
fancybox
fancyhdr
filehook
-float
framed
-geometry
greek-inputenc
harvard
-hyperref
hyphenat
iftex
jurabib
lettrine
listings
lithuanian
-luainputenc
genmisc
mhchem
mongolian-babel
miktex-hyph-mongolian
-multirow
natbib
units
nomencl
@@ -107,6 +99,7 @@ sectionbox
serbianc
miktex-hyph-serbian
setspace
+shapepar
soul
splitindex
subfig
@@ -123,7 +116,6 @@ wrapfig
xargs
xcolor
xetex-def
-xkeyval
arydshln
binhex
braket
@@ -132,7 +124,6 @@ caption
colortbl
diagbox
etoolbox
-eurosym
fp
koma-script
makecmds
@@ -142,14 +133,9 @@ pict2e
sidecap
was
charter
-courier
garamondx
-helvet
mathpazo
-utopia
-ae
bera
-cbgreek
ccfonts
cmbright
concmath
@@ -160,14 +146,19 @@ eulervm
feyn
fontaxes
fourier
+iwona
+kurier
lh
-lmodern
+libertine
lm-math
luxi
-mdput
+minion2newtx
mslapa
+newtx
stmaryrd
symbol
+tex-gyre
+tfrupee
tipa
txfonts
wasy
@@ -195,6 +186,7 @@ ctex
dinbrief
dtk
elsarticle
+elsevier
endfloat
epsf
europecv
@@ -224,6 +216,7 @@ placeins
powerdot
pst-grad
pst-node
+revtex
revtex4
sauerj
savesym
@@ -241,4 +234,11 @@ ucs
upquote
xecjk
xifthen
+answers
+chicago
+frankenstein
+jsclasses
+lambda-lists
+mathdesign
+mathtools
pdfcrop
\ No newline at end of file
diff --git a/development/Win32/packaging/installer/include/dictionaries.nsh
b/development/Win32/packaging/installer/include/dictionaries.nsh
index ddef3c7..d66c984 100644
--- a/development/Win32/packaging/installer/include/dictionaries.nsh
+++ b/development/Win32/packaging/installer/include/dictionaries.nsh
@@ -28,8 +28,8 @@ Function FindDictionaries
# read out the possible spell-checker filenames from the file
FileOpen $R5 "$INSTDIR\Resources\HunspellDictionaryNames.txt" r
- ${for} $5 1 70
- # the file has 140 lines, but we only need to check for one of the 2
dictionary files per language
+ ${for} $5 1 71
+ # the file has 142 lines, but we only need to check for one of the 2
dictionary files per language
# therefore check only for every second line
FileRead $R5 $String # skip the .aff file
FileRead $R5 $String # $String is now the .dic filename
@@ -66,7 +66,7 @@ Function DownloadHunspellDictionaries
# read out the locations from the file
FileOpen $R5 "$INSTDIR\Resources\HunspellDictionaryNames.txt" r
- ${For} $5 1 140 # the file has 140 lines
+ ${For} $5 1 142 # the file has 142 lines
FileRead $R5 $String # $String is now the dictionary name
StrCpy $R3 $String -6 # $R3 is now the dictionary language code
diff --git a/development/Win32/packaging/installer/include/init.nsh
b/development/Win32/packaging/installer/include/init.nsh
index b58478a..d01ec8d 100644
--- a/development/Win32/packaging/installer/include/init.nsh
+++ b/development/Win32/packaging/installer/include/init.nsh
@@ -167,14 +167,14 @@ SectionEnd
Section /o "English (CA)" SecDEnglishCA
StrCpy $DictCodes "en_CA,$DictCodes"
- AddSize 690
+ AddSize 531
SectionEnd
Section "English (GB)" SecDEnglishGB
# already installed by default
SectionIn RO
#StrCpy $DictCodes "en_GB,$DictCodes"
- AddSize 757
+ AddSize 652
SectionEnd
Section /o "English (NZ)" SecDEnglishNZ
@@ -186,7 +186,7 @@ Section "English (US)" SecDEnglishUS
# already installed by default
SectionIn RO
#StrCpy $DictCodes "en_US,$DictCodes"
- AddSize 688
+ AddSize 530
SectionEnd
Section "Espa�ol (ES)" SecDSpanishES
@@ -237,7 +237,7 @@ SectionEnd
Section /o "G�idhlig" SecDScottish
StrCpy $DictCodes "gd_GB,$DictCodes"
- AddSize 2504
+ AddSize 3090
SectionEnd
Section /o "Galego" SecDGalician
@@ -322,7 +322,7 @@ SectionEnd
Section /o "Norsk (Nynorsk)" SecDNorwegianNN
StrCpy $DictCodes "nn_NO,$DictCodes"
- AddSize 1515
+ AddSize 1540
SectionEnd
Section /o "Occitan" SecDOccitan
@@ -342,7 +342,7 @@ SectionEnd
Section /o "Portugu�s (PT)" SecDPortuguesePT
StrCpy $DictCodes "pt_PT,$DictCodes"
- AddSize 1595
+ AddSize 1490
SectionEnd
Section /o "Rom�na" SecDRomanian
@@ -415,6 +415,11 @@ Section /o "T
AddSize 950
SectionEnd
+Section /o "T�rk�e" SecDTurkish
+ StrCpy $DictCodes "tr_TR,$DictCodes"
+ AddSize 8870
+SectionEnd
+
Section /o "Ukrainian" SecDUkrainian
StrCpy $DictCodes "uk_UA,$DictCodes"
AddSize 3077
@@ -542,7 +547,7 @@ SectionEnd
Section /o "Sloven�cina" SecTSlovenian
StrCpy $ThesCodes "sl_SI,$ThesCodes"
- AddSize 1121
+ AddSize 1110
SectionEnd
Section /o "Slovensk�" SecTSlovakian
@@ -626,17 +631,31 @@ Function .onInit
# check if this LyX version is already installed
${if} $MultiUser.Privileges == "Admin"
${orif} $MultiUser.Privileges == "Power"
- ReadRegStr $0 HKLM "${APP_UNINST_KEY}" "Publisher"
+ ReadRegStr $0 HKLM "${APP_UNINST_KEY}" "DisplayIcon"
${else}
- ReadRegStr $0 HKCU "${APP_UNINST_KEY}" "Publisher"
+ ReadRegStr $0 HKCU "${APP_UNINST_KEY}" "DisplayIcon"
# handle also the case that LyX is already installed in HKLM
${if} $0 == ""
- ReadRegStr $0 HKLM "${APP_UNINST_KEY}" "Publisher"
+ ReadRegStr $0 HKLM "${APP_UNINST_KEY}" "DisplayIcon"
${endif}
${endif}
${if} $0 != ""
- MessageBox MB_OK|MB_ICONSTOP "$(StillInstalled)" /SD IDOK
+ # check if the uninstaller was acidentally deleted
+ # if so don't bother the user if he realy wants to install a new LyX over
an existing one
+ # because he won't have a chance to deny this
+ StrCpy $4 $0 -10 # remove '\bin\lyx,0'
+ # (for FileCheck the variables $0 and $1 cannot be used)
+ !insertmacro FileCheck $5 "Uninstall-LyX.exe" "$4" # macro from LyXUtils.nsh
+ ${if} $5 == "False"
+ Goto ForceInstallation
+ ${endif}
+ # installing over an existing installation of the same LyX release is not
necessary
+ # if the users does this he most probably has a problem with LyX that can
better be solved
+ # by reinstalling LyX
+ # for beta and other test releases over-installing can even cause errors
+ MessageBox MB_YESNO|MB_DEFBUTTON2|MB_ICONEXCLAMATION "$(AlreadyInstalled)"
/SD IDNO IDYES ForceInstallation
Abort
+ ForceInstallation:
${endif}
# check if there is an existing LyX installation of the same LyX series
@@ -1166,6 +1185,13 @@ Function .onInit
SectionSetFlags ${SecDTurkmen} $0
SectionSetSize ${SecDTurkmen} 0
${endif}
+ StrCpy $Search "tr_TR"
+ Call StrPoint
+ ${if} $Pointer != "-1"
+ IntOp $0 ${SF_SELECTED} | ${SF_RO}
+ SectionSetFlags ${SecDTurkish} $0
+ SectionSetSize ${SecDTurkish} 0
+ ${endif}
StrCpy $Search "uk_UA"
Call StrPoint
${if} $Pointer != "-1"
diff --git a/development/Win32/packaging/installer/settings.nsh
b/development/Win32/packaging/installer/settings.nsh
index cc52db4..6177069 100644
--- a/development/Win32/packaging/installer/settings.nsh
+++ b/development/Win32/packaging/installer/settings.nsh
@@ -11,10 +11,10 @@ These typically need to be modified for each LyX release
!define APP_VERSION_MAJOR 2
!define APP_VERSION_MINOR 1
-!define APP_VERSION_REVISION 0
+!define APP_VERSION_REVISION 2
!define APP_VERSION_EMERGENCY "" # use "1" for an emergency release of LyX
otherwise ""
!define APP_EMERGENCY_DOT "" # use "." for an emergency release of LyX
otherwise ""
-!define APP_VERSION_BUILD 1 # Start with 1 for the installer releases of each
version
+!define APP_VERSION_BUILD 2 # Start with 1 for the installer releases of each
version
!define APP_VERSION
"${APP_VERSION_MAJOR}.${APP_VERSION_MINOR}.${APP_VERSION_REVISION}${APP_EMERGENCY_DOT}${APP_VERSION_EMERGENCY}"
# Version to display
@@ -37,9 +37,9 @@ These typically need to be modified for each LyX release
# File locations
# !!! you need to adjust them to the folders in your Windows system !!!
-!define FILES_LYX "C:\LyX\LyXPackage\LyX"
-!define FILES_DEPS "C:\LyX\LyX2.0x\lyx-windows-deps-msvc2008"
-!define FILES_QT "C:\LyX\LyXPackage\LyX"
+!define FILES_LYX "D:\LyXPackage2.1\LyX"
+!define FILES_DEPS "D:\LyXGit\Master\lyx-windows-deps-msvc2010"
+!define FILES_QT "C:\Qt\4.8.6"
!define ClassFileDir "${FILES_LYX}\Resources\tex"
!define DVIPostFileDir "${FILES_DEPS}\tex"
diff --git a/development/Win32/packaging/installer/setup/configure.nsh
b/development/Win32/packaging/installer/setup/configure.nsh
index 9e6d18b..a26bcbe 100644
--- a/development/Win32/packaging/installer/setup/configure.nsh
+++ b/development/Win32/packaging/installer/setup/configure.nsh
@@ -55,8 +55,8 @@ Section -InstallData
WriteRegDWORD SHCTX ${APP_UNINST_KEY} "NoRepair" 0x00000001
WriteRegStr SHCTX ${APP_UNINST_KEY} "StartMenu"
"$SMPROGRAMS\$StartmenuFolder"
- # if we install over an existing version, remove the old uninstaller
information
- ${if} $OldVersionNumber != ""
+ # if we install over an older existing version, remove the old uninstaller
information
+ ${if} $OldVersionNumber < ${APP_SERIES_KEY}
DeleteRegKey SHCTX
"Software\Microsoft\Windows\CurrentVersion\Uninstall\${APP_NAME}$OldVersionNumber"
# also delete in the case of an emergency release
DeleteRegKey SHCTX
"Software\Microsoft\Windows\CurrentVersion\Uninstall\${APP_NAME}$OldVersionNumber1"
@@ -215,17 +215,26 @@ Section -ConfigureScript
# ask to update MiKTeX
${if} $LaTeXInstalled == "MiKTeX"
Call UpdateMiKTeX # function from latex.nsh
- # install all necessary packages at once
+ # install all necessary packages at once because this is much faster then
to install the packages one by one
+ # NOTE: the babelpackages-txt list is only necessary for LyX 2.1.2 ans
2.1.3 because of the restructuration
+ # of babel in MiKTeX. This can be removed for LyX 2.1.4
DetailPrint $(TEXT_CONFIGURE_LYX)
${if} $MultiUser.Privileges != "Admin"
${andif} $MultiUser.Privileges != "Power"
# call the non-admin version
+ # at first we need to synchronize the package database
+ nsExec::ExecToLog '"$PathLaTeX\mpm.exe" "--verbose" "--update-db"'
nsExec::ExecToLog '"$PathLaTeX\mpm.exe" "--verbose"
"--install-some=$INSTDIR\Resources\Packages.txt"'
+ nsExec::ExecToLog '"$PathLaTeX\mpm.exe" "--verbose"
"--install-some=$INSTDIR\Resources\babel-Packages.txt"'
${else}
${if} $MiKTeXUser != "HKCU" # call the admin version
+ nsExec::ExecToLog '"$PathLaTeX\mpm.exe" "--admin" "--verbose"
"--update-db"'
nsExec::ExecToLog '"$PathLaTeX\mpm.exe" "--admin" "--verbose"
"--install-some=$INSTDIR\Resources\Packages.txt"'
+ nsExec::ExecToLog '"$PathLaTeX\mpm.exe" "--admin" "--verbose"
"--install-some=$INSTDIR\Resources\babel-Packages.txt"'
${else}
+ nsExec::ExecToLog '"$PathLaTeX\mpm.exe" "--verbose" "--update-db"'
nsExec::ExecToLog '"$PathLaTeX\mpm.exe" "--verbose"
"--install-some=$INSTDIR\Resources\Packages.txt"'
+ nsExec::ExecToLog '"$PathLaTeX\mpm.exe" "--verbose"
"--install-some=$INSTDIR\Resources\babel-Packages.txt"'
${endif}
${endif}
${endif}