mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-22 05:16:21 +00:00
Kill off the bundled installer.
This commit is contained in:
parent
d172de9886
commit
8c32a1a7b9
@ -8,10 +8,6 @@ Handling of LaTeX distributions
|
||||
#
|
||||
# - LaTeXActions (checks if MiKTeX or TeXLive is installed)
|
||||
#
|
||||
# - InstallMiKTeX (installs MiKTeX if not already installed),
|
||||
# only for bunlde installer, uses:
|
||||
# LaTeXCheck # function from LyXUtils.nsh
|
||||
#
|
||||
# - ConfigureMiKTeX
|
||||
# (installs the LaTeX class files that are delivered with LyX,
|
||||
# a Perl interpreter for splitindex and pdfcrop
|
||||
@ -19,8 +15,6 @@ Handling of LaTeX distributions
|
||||
#
|
||||
# - ConfigureTeXLive
|
||||
# (installs the LaTeX class files that are delivered with LyX)
|
||||
#
|
||||
# - UpdateMiKTeX (asks to update MiKTeX)
|
||||
|
||||
# ---------------------------------------
|
||||
|
||||
@ -204,50 +198,6 @@ Function LaTeXActions
|
||||
|
||||
FunctionEnd
|
||||
|
||||
# -------------------------------------------
|
||||
|
||||
!if ${SETUPTYPE} == BUNDLE
|
||||
|
||||
Function InstallMiKTeX
|
||||
# installs MiKTeX if not already installed
|
||||
|
||||
${if} $PathLaTeX == ""
|
||||
# launch MiKTeX's installer
|
||||
MessageBox MB_OK|MB_ICONINFORMATION "$(LatexInfo)" /SD IDOK
|
||||
${if} $MultiUser.Privileges != "Admin"
|
||||
${andif} $MultiUser.Privileges != "Power"
|
||||
# call the non-admin version
|
||||
ExecWait ${MiKTeXInstall}
|
||||
${else}
|
||||
ExecWait "${MiKTeXInstall} --shared"
|
||||
${endif}
|
||||
# test if MiKTeX is installed
|
||||
Call LaTeXActions
|
||||
${if} ${RunningX64}
|
||||
SetRegView 32 # we install the 32bit version of MiKTeX
|
||||
${endif}
|
||||
${if} $PathLaTeX != ""
|
||||
# special entry that it was installed together with LyX
|
||||
# so that we can later uninstall it together with LyX
|
||||
${if} $MiKTeXUser == "HKCU"
|
||||
WriteRegStr HKCU "SOFTWARE\MiKTeX.org\MiKTeX" "OnlyWithLyX" "Yes${APP_SERIES_KEY}"
|
||||
${else}
|
||||
WriteRegStr HKLM "SOFTWARE\MiKTeX.org\MiKTeX" "OnlyWithLyX" "Yes${APP_SERIES_KEY}"
|
||||
${endif}
|
||||
StrCpy $LaTeXInstalled "MiKTeX"
|
||||
StrCpy $MiKTeXVersion ${MiKTeXDeliveredVersion}
|
||||
${else}
|
||||
MessageBox MB_OK|MB_ICONSTOP "$(LatexError1)" /SD IDOK
|
||||
SetOutPath $TEMP # to be able to delete the $INSTDIR
|
||||
RMDir /r $INSTDIR
|
||||
Abort
|
||||
${endif} # endif $PathLaTeX != ""
|
||||
${endif}
|
||||
|
||||
FunctionEnd
|
||||
|
||||
!endif # endif ${SETUPTYPE} == BUNDLE
|
||||
|
||||
# ------------------------------
|
||||
|
||||
Function ConfigureMiKTeX
|
||||
@ -276,83 +226,28 @@ Function ConfigureMiKTeX
|
||||
# files in Resources\tex
|
||||
SetOutPath "$PathLaTeXLocal\tex\latex\lyx"
|
||||
CopyFiles /SILENT "$INSTDIR\Resources\tex\*.*" "$PathLaTeXLocal\tex\latex\lyx"
|
||||
|
||||
# refresh MiKTeX's file name database (do this always to assure everything is in place)
|
||||
${if} $MultiUser.Privileges != "Admin"
|
||||
${andif} $MultiUser.Privileges != "Power"
|
||||
# call the non-admin version
|
||||
nsExec::ExecToLog "$PathLaTeX\initexmf --update-fndb"
|
||||
${else}
|
||||
${if} $MiKTeXUser != "HKCU" # call the admin version
|
||||
nsExec::ExecToLog "$PathLaTeX\initexmf --admin --update-fndb"
|
||||
${else}
|
||||
nsExec::ExecToLog "$PathLaTeX\initexmf --update-fndb"
|
||||
${endif}
|
||||
${endif}
|
||||
Pop $UpdateFNDBReturn # Return value
|
||||
${endif}
|
||||
|
||||
# install a Perl interpreter for splitindex and pdfcrop
|
||||
SetOutPath "$INSTDIR"
|
||||
# recursively copy all files under Perl
|
||||
File /r "${FILES_PERL}"
|
||||
|
||||
# refresh MiKTeX's file name database (do this always to assure everything is in place)
|
||||
${if} $MultiUser.Privileges != "Admin"
|
||||
${andif} $MultiUser.Privileges != "Power"
|
||||
# call the non-admin version
|
||||
nsExec::ExecToLog "$PathLaTeX\initexmf --update-fndb"
|
||||
${else}
|
||||
${if} $MiKTeXUser != "HKCU" # call the admin version
|
||||
nsExec::ExecToLog "$PathLaTeX\initexmf --admin --update-fndb"
|
||||
${else}
|
||||
nsExec::ExecToLog "$PathLaTeX\initexmf --update-fndb"
|
||||
${endif}
|
||||
${endif}
|
||||
Pop $UpdateFNDBReturn # Return value
|
||||
|
||||
${endif} # end if $PathLaTeX != ""
|
||||
|
||||
# enable package installation without asking (1 = Yes, 0 = No, 2 = Ask me first) and
|
||||
# if there is not package repository (MiKTeX's primary package repository) then set it
|
||||
${if} ${RunningX64}
|
||||
${andif} $Is64bit == "true"
|
||||
SetRegView 64
|
||||
${else}
|
||||
SetRegView 32
|
||||
${endif}
|
||||
${if} $MiKTeXUser == "HKCU" # if only for current user
|
||||
# if AutoInstall is set to "0" we can assume that this was set purposly since the default is "1"
|
||||
ReadRegStr $2 HKCU "SOFTWARE\MiKTeX.org\MiKTeX\$MiKTeXVersion\MPM" "AutoInstall"
|
||||
${if} $2 == "0"
|
||||
Goto NoAutoInstall
|
||||
${endif}
|
||||
WriteRegStr HKCU "SOFTWARE\MiKTeX.org\MiKTeX\$MiKTeXVersion\MPM" "AutoInstall" "1"
|
||||
ReadRegStr $1 HKCU "SOFTWARE\MiKTeX.org\MiKTeX\$MiKTeXVersion\MPM" "RemoteRepository"
|
||||
${if} $1 == ""
|
||||
WriteRegStr HKCU "SOFTWARE\MiKTeX.org\MiKTeX\$MiKTeXVersion\MPM" "RemoteRepository" "${MiKTeXRepo}"
|
||||
WriteRegStr HKCU "SOFTWARE\MiKTeX.org\MiKTeX\$MiKTeXVersion\MPM" "RepositoryType" "remote"
|
||||
${endif}
|
||||
${else}
|
||||
# if AutoInstall is set to "0" we can assume that this was set purposly since the default is "1"
|
||||
ReadRegStr $2 HKLM "SOFTWARE\MiKTeX.org\MiKTeX\$MiKTeXVersion\MPM" "AutoInstall"
|
||||
${if} $2 == "0"
|
||||
Goto NoAutoInstall
|
||||
${endif}
|
||||
WriteRegStr HKLM "SOFTWARE\MiKTeX.org\MiKTeX\$MiKTeXVersion\MPM" "AutoInstall" "1"
|
||||
ReadRegStr $1 HKLM "SOFTWARE\MiKTeX.org\MiKTeX\$MiKTeXVersion\MPM" "RemoteRepository"
|
||||
${if} $1 == ""
|
||||
WriteRegStr HKLM "SOFTWARE\MiKTeX.org\MiKTeX\$MiKTeXVersion\MPM" "RemoteRepository" "${MiKTeXRepo}"
|
||||
WriteRegStr HKLM "SOFTWARE\MiKTeX.org\MiKTeX\$MiKTeXVersion\MPM" "RepositoryType" "remote"
|
||||
${endif}
|
||||
# we need to state that missing packages should be installed for all users too
|
||||
WriteRegStr HKCU "SOFTWARE\MiKTeX.org\MiKTeX\$MiKTeXVersion\MPM" "AutoAdmin" "t"
|
||||
${endif}
|
||||
NoAutoInstall:
|
||||
|
||||
# update MiKTeX's package file list
|
||||
${if} $MultiUser.Privileges != "Admin"
|
||||
${andif} $MultiUser.Privileges != "Power"
|
||||
# call the non-admin version
|
||||
nsExec::ExecToLog "$PathLaTeX\mpm.exe --update-fndb"
|
||||
${else}
|
||||
${if} $MiKTeXUser != "HKCU" # call the admin version
|
||||
nsExec::ExecToLog "$PathLaTeX\mpm.exe --admin --update-fndb"
|
||||
${else}
|
||||
nsExec::ExecToLog "$PathLaTeX\mpm.exe --update-fndb"
|
||||
${endif}
|
||||
${endif}
|
||||
Pop $UpdateFNDBReturn # Return value
|
||||
|
||||
# we must return to 32bit because LyX is a 32bit application
|
||||
SetRegView 32
|
||||
|
||||
|
||||
${endif} # end if $PathLaTeX != ""
|
||||
FunctionEnd
|
||||
|
||||
# ------------------------------
|
||||
@ -372,13 +267,9 @@ Function ConfigureTeXLive
|
||||
# files in Resources\tex
|
||||
SetOutPath "$PathLaTeXLocal\texmf-dist\tex\latex\lyx"
|
||||
CopyFiles /SILENT "$INSTDIR\Resources\tex\*.*" "$PathLaTeXLocal\texmf-dist\tex\latex\lyx"
|
||||
# update TeXLive's package file list
|
||||
ExecWait '$PathLaTeX\texhash'
|
||||
${endif}
|
||||
${endif}
|
||||
|
||||
# update TeXLive's package file list
|
||||
ExecWait '$PathLaTeX\texhash'
|
||||
|
||||
# update TeXLive
|
||||
ExecWait '$PathLaTeX\tlmgr update --all'
|
||||
|
||||
FunctionEnd
|
||||
|
@ -33,11 +33,6 @@ Configuration of LyX installer
|
||||
|
||||
!define DOWNLOAD_LATEX "http://mirrors.ctan.org/systems/win32/miktex/setup/${SETUPFILE_LATEX}"
|
||||
|
||||
#--------------------------------
|
||||
# Locations of setup files for components (for bundled setup)
|
||||
|
||||
!define INSTALL_LATEX "${SETUPFILE_LATEX}"
|
||||
|
||||
#--------------------------------
|
||||
# Names and version
|
||||
|
||||
@ -57,10 +52,9 @@ Configuration of LyX installer
|
||||
!define APP_WIKI "https://wiki.lyx.org"
|
||||
!define APP_WIKI_INFO "${APP_NAME} Wiki"
|
||||
!define APP_COPYRIGHT "${APP_NAME} is Copyright © 1995 by Matthias Ettrich, 1995-${COPYRIGHT_YEAR} by the ${APP_NAME} Team"
|
||||
|
||||
!if ${SETUPTYPE} == STANDARD
|
||||
!define APP_SETUPTYPE "Standard"
|
||||
!else if ${SETUPTYPE} == BUNDLE
|
||||
!define APP_SETUPTYPE "Bundle"
|
||||
!endif
|
||||
|
||||
!define BIN_LYX "LyX${APP_VERSION_MAJOR}.${APP_VERSION_MINOR}.exe"
|
||||
@ -85,9 +79,6 @@ Configuration of LyX installer
|
||||
|
||||
!if ${SETUPTYPE} == STANDARD
|
||||
!define SETUP_EXE ${ExeFile}
|
||||
!else if ${SETUPTYPE} == BUNDLE
|
||||
!define SETUP_EXE ${BundleExeFile}
|
||||
!define BUNDLESETUP_LATEX
|
||||
!endif
|
||||
|
||||
!define SETUP_ICON "${FILES_ICONS}\lyx.ico"
|
||||
|
@ -52,10 +52,8 @@ BrandingText " "
|
||||
!define MUI_STARTMENUPAGE_DEFAULTFOLDER "${APP_NAME} ${APP_SERIES_NAME}"
|
||||
!insertmacro MUI_PAGE_STARTMENU ${APP_NAME} $StartmenuFolder
|
||||
|
||||
!if ${SETUPTYPE} != BUNDLE
|
||||
# Select latex.exe manually
|
||||
Page custom LatexFolder LatexFolder_LeaveFunction
|
||||
!endif # end if != BUNDLE
|
||||
# Select latex.exe manually
|
||||
Page custom LatexFolder LatexFolder_LeaveFunction
|
||||
|
||||
# Watch the components being installed.
|
||||
!insertmacro MUI_PAGE_INSTFILES
|
||||
|
@ -44,16 +44,6 @@ FunctionEnd
|
||||
#--------------------------------
|
||||
# visible installer sections
|
||||
|
||||
Section "!${APP_NAME}" SecCore
|
||||
SectionIn RO
|
||||
!if ${SETUPTYPE} == BUNDLE
|
||||
# if no TeX was found MiKTeX will be installed which requires space
|
||||
!if $PathLaTeX == ""
|
||||
AddSize 1020000 # size in KB
|
||||
!endif
|
||||
!endif
|
||||
SectionEnd
|
||||
|
||||
Section "$(SecFileAssocTitle)" SecFileAssoc
|
||||
StrCpy $CreateFileAssociations "true"
|
||||
SectionEnd
|
||||
@ -588,7 +578,6 @@ SectionGroupEnd
|
||||
|
||||
# Section descriptions
|
||||
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${SecCore} "$(SecCoreDescription)"
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${SecFileAssoc} "$(SecFileAssocDescription)"
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${SecDesktop} "$(SecDesktopDescription)"
|
||||
!insertmacro MUI_DESCRIPTION_TEXT ${SecDictionaries} "$(SecDictionariesDescription)"
|
||||
@ -609,22 +598,6 @@ Function .onInit
|
||||
Quit
|
||||
${endif}
|
||||
|
||||
# check that another LyX installer is not currently running
|
||||
!if ${SETUPTYPE} == STANDARD
|
||||
FindProcDLL::FindProc "${BundleExeFile}"
|
||||
${if} $R0 == "1"
|
||||
MessageBox MB_OK|MB_ICONSTOP "$(InstallRunning)" /SD IDOK
|
||||
Abort
|
||||
${endif}
|
||||
!endif
|
||||
!if ${SETUPTYPE} == BUNDLE
|
||||
FindProcDLL::FindProc "${ExeFile}"
|
||||
${if} $R0 == "1"
|
||||
MessageBox MB_OK|MB_ICONSTOP "$(InstallRunning)" /SD IDOK
|
||||
Abort
|
||||
${endif}
|
||||
!endif
|
||||
|
||||
# Check that LyX is not currently running
|
||||
FindProcDLL::FindProc "${BIN_LYX}"
|
||||
${if} $R0 == "1"
|
||||
@ -714,13 +687,6 @@ Function .onInit
|
||||
|
||||
Call SearchExternal
|
||||
|
||||
#!if ${SETUPTYPE} == BUNDLE
|
||||
# # don't let the installer sections appear when the programs are already installed
|
||||
# ${if} $PathBibTeXEditor != ""
|
||||
# SectionSetText 3 "" # hides the corresponding uninstaller section, ${SecInstJabRef}
|
||||
# ${endif}
|
||||
#!endif
|
||||
|
||||
# select sections of already installed spell-checker dictionaries, make them read-only
|
||||
# and set the necessary size to 0 bytes
|
||||
StrCpy $String $FoundDict
|
||||
|
@ -39,10 +39,8 @@ Configuration of standard NSIS header files
|
||||
# Functions to check and configure the LaTeX-system
|
||||
!include include\LaTeX.nsh
|
||||
|
||||
!if ${SETUPTYPE} != BUNDLE
|
||||
# Function for page to manually select LaTeX's installation folder
|
||||
!include gui\LaTeXFolder.nsh
|
||||
!endif # end if != BUNDLE
|
||||
# Function for page to manually select LaTeX's installation folder
|
||||
!include gui\LaTeXFolder.nsh
|
||||
|
||||
# Functions to download spell-checker and thesaurus dictionaries
|
||||
!include include\dictionaries.nsh
|
||||
|
@ -40,9 +40,7 @@ Var Pointer
|
||||
Var PSVPath
|
||||
Var PythonPath
|
||||
Var Search
|
||||
!if ${SETUPTYPE} != BUNDLE
|
||||
Var State
|
||||
!endif
|
||||
Var State
|
||||
Var SVGPath
|
||||
Var StartmenuFolder
|
||||
Var String
|
||||
|
@ -1,68 +0,0 @@
|
||||
/*
|
||||
|
||||
NSIS Script - LyX 2.3 Installer for Windows
|
||||
Authors: Joost Verburg, Angus Leeming, Uwe Stöhr
|
||||
Compatible with NSIS 3.0
|
||||
|
||||
*/
|
||||
|
||||
# Do a Cyclic Redundancy Check to make sure the installer
|
||||
# was not corrupted by the download.
|
||||
CRCCheck force
|
||||
#
|
||||
# Make the installer as small as possible
|
||||
SetCompressor /SOLID lzma
|
||||
|
||||
# make it a Unicode installer
|
||||
Unicode true
|
||||
|
||||
# enable support for high DPI resolution
|
||||
ManifestDPIAware true
|
||||
|
||||
!ifndef SETUPTYPE
|
||||
!define SETUPTYPE BUNDLE
|
||||
!endif
|
||||
|
||||
# installer settings like version numbers
|
||||
!include settings.nsh
|
||||
|
||||
# declarations of LyX's registry keys and installer variant
|
||||
!include include\declarations.nsh
|
||||
|
||||
# definitions of global variables
|
||||
!include include\variables.nsh
|
||||
|
||||
# configuration of standard NSIS header files
|
||||
!include include\nsis.nsh
|
||||
|
||||
# list of files to be included in the installer
|
||||
!include include\filelist.nsh
|
||||
|
||||
# detect third-party programs like Inkscape and LaTeX
|
||||
!include include\detection.nsh
|
||||
|
||||
# set up the installer pages
|
||||
!include include\gui.nsh
|
||||
|
||||
# sets the install sections and checks the system on starting the un/installer
|
||||
!include include\init.nsh
|
||||
|
||||
# install LyX and needed third-party programs like Python etc.
|
||||
!include setup\install.nsh
|
||||
|
||||
# loads a function to modify Windows environment variables
|
||||
!include include\EnvVarUpdate.nsh
|
||||
|
||||
# uninstall LyX and all programs that were installed together with LyX
|
||||
!include setup\uninstall.nsh
|
||||
|
||||
# configure LyX (set start menu and write registry entries)
|
||||
!include setup\configure.nsh
|
||||
|
||||
# provides downloads of external programs
|
||||
#!include gui\external.nsh
|
||||
|
||||
#--------------------------------
|
||||
# Output file
|
||||
|
||||
Outfile "${SETUP_EXE}"
|
@ -14,7 +14,7 @@ These typically need to be modified for each LyX release
|
||||
!define APP_VERSION_REVISION 1
|
||||
!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 2 # Start with 1 for the installer releases of each version
|
||||
!define APP_VERSION_BUILD 3 # 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
|
||||
|
||||
@ -28,9 +28,6 @@ These typically need to be modified for each LyX release
|
||||
!ifndef ExeFile
|
||||
!define ExeFile "${APP_NAME}-${APP_VERSION_MAJOR}${APP_VERSION_MINOR}${APP_VERSION_REVISION}${APP_VERSION_EMERGENCY}-Installer-${APP_VERSION_BUILD}.exe"
|
||||
!endif
|
||||
!ifndef BundleExeFile
|
||||
!define BundleExeFile "${APP_NAME}-${APP_VERSION_MAJOR}${APP_VERSION_MINOR}${APP_VERSION_REVISION}${APP_VERSION_EMERGENCY}-Bundle-${APP_VERSION_BUILD}.exe"
|
||||
!endif
|
||||
|
||||
#--------------------------------
|
||||
# File locations
|
||||
@ -49,11 +46,4 @@ These typically need to be modified for each LyX release
|
||||
|
||||
!define MiKTeXRepo "ftp://ftp.tu-chemnitz.de/pub/tex/systems/win32/miktex/tm/packages/"
|
||||
|
||||
!define MiKTeXDeliveredVersion "2.9"
|
||||
!define ImageMagickVersion "7.0.7"
|
||||
|
||||
# definitions for the Complete installer
|
||||
!if ${SETUPTYPE} == BUNDLE
|
||||
!define MiKTeXInstall "$INSTDIR\basic-miktex-2.9.6813-x64.exe"
|
||||
!define MiKTeXInstaller "${FILES_BASE}\basic-miktex-2.9.6813-x64.exe"
|
||||
!endif
|
||||
|
@ -24,15 +24,13 @@ Section -ProgramFiles SecProgramFiles
|
||||
StrCpy $INSTDIR "$INSTDIR\${APP_DIR}"
|
||||
${endif}
|
||||
|
||||
!if ${SETUPTYPE} != BUNDLE
|
||||
# abort the installation if no LaTeX was found but should be used
|
||||
${if} $PathLaTeX == ""
|
||||
${andif} $State == "0"
|
||||
SetOutPath $TEMP # to be able to delete the $INSTDIR
|
||||
RMDir /r $INSTDIR
|
||||
Abort
|
||||
${endif}
|
||||
!endif # end if != BUNDLE
|
||||
# abort the installation if no LaTeX was found but should be used
|
||||
${if} $PathLaTeX == ""
|
||||
${andif} $State == "0"
|
||||
SetOutPath $TEMP # to be able to delete the $INSTDIR
|
||||
RMDir /r $INSTDIR
|
||||
Abort
|
||||
${endif}
|
||||
|
||||
# Install and register the core LyX files
|
||||
|
||||
@ -70,16 +68,6 @@ Section -ProgramFiles SecProgramFiles
|
||||
File /r "${FILES_LYX}\Resources"
|
||||
File /r "${FILES_DEPS}\Resources"
|
||||
|
||||
!if ${SETUPTYPE} == BUNDLE
|
||||
|
||||
# include the MiKTeX installer
|
||||
File ${MiKTeXInstaller}
|
||||
|
||||
# install MiKTeX if not already installed
|
||||
Call InstallMiKTeX # function from LaTeX.nsh
|
||||
|
||||
!endif # end if BUNDLE
|
||||
|
||||
# Python
|
||||
SetOutPath "$INSTDIR"
|
||||
# recursively copy all files under Python
|
||||
|
Loading…
Reference in New Issue
Block a user