Mercurial > gub
annotate nsis/schikkers-list.nsi @ 6492:5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
author | Jan Nieuwenhuizen <janneke@gnu.org> |
---|---|
date | Tue, 08 Feb 2011 12:33:54 +0100 |
parents | c79ddba57147 |
children | 1ee835259b55 |
rev | line source |
---|---|
6015
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
1 ;;;; schikkers-list.nsi -- Schikkers-List installer script for Microsoft Windows |
6492
5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6490
diff
changeset
|
2 ;;;; (c) 2005--2011 |
6015
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
3 ;;;; Jan Nieuwenhuizen <janneke@gnu.org> |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
4 ;;;; Han-Wen Nienhuys <janneke@gnu.org> |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
5 ;;;; licence: GNU GPL |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
6 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
7 ;; For quick [wine] test runs |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
8 ;; !define TEST "1" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
9 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
10 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
11 ;;; substitutions |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
12 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
13 !define ENVIRON "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
14 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
15 !define UNINSTALL \ |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
16 "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRETTY_NAME}" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
17 !define USER_SHELL_FOLDERS \ |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
18 "Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
19 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
20 !define UninstLog "files.txt" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
21 Var UninstLog |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
22 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
23 ; Uninstall log file missing. |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
24 LangString UninstLogMissing ${LANG_ENGLISH} "${UninstLog} not found.$\r$\nCannot uninstall." |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
25 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
26 !include "substitute.nsh" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
27 ${StrLoc} |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
28 ${UnStrLoc} |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
29 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
30 ;;SetCompressor lzma ; very slow |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
31 ;;SetCompressor zlib |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
32 SetCompressor bzip2 ;; |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
33 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
34 Name "${PRETTY_NAME}" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
35 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
36 Caption "${PRETTY_NAME} ${INSTALLER_VERSION} for Microsoft Windows" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
37 BrandingText "${PRETTY_NAME} installer v1.0" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
38 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
39 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
40 InstallDir $PROGRAMFILES\${PRETTY_NAME} |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
41 InstallDirRegKey HKLM "Software\${PRETTY_NAME}" "Install_Dir" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
42 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
43 CRCCheck on |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
44 XPStyle on |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
45 InstallColors /windows |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
46 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
47 BGGradient 000000 E8FFE8 FFFFFF |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
48 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
49 ;; Use Finish iso Close for the [close button text] |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
50 ;; Although nothing happens after Close, experienced Windows users feel |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
51 ;; much more with "Finish" than with Close. |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
52 MiscButtonText Back Next Cancel Finish |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
53 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
54 LicenseText "Conditions for redistributing ${PRETTY_NAME}" "Next" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
55 LicenseData "${ROOT}\license\${NAME}" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
56 LicenseForceSelection off |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
57 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
58 Page license |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
59 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
60 ;; FIXME: the installer will crash on File /r commands if Page |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
61 ;; directory is not used. |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
62 Page directory |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
63 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
64 Page components |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
65 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
66 ;; Put a note to look at the Help page of the website on the |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
67 ;; window when the install is completed |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
68 CompletedText "Install completed. Please see $INSTDIR\usr\bin\${CANARY_EXE}." |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
69 Page instfiles |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
70 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
71 UninstPage uninstConfirm |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
72 UninstPage instfiles |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
73 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
74 Section "${PRETTY_NAME} (required)" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
75 ;; always generate install log |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
76 Logset on |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
77 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
78 silent: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
79 IfFileExists $INSTDIR\usr\bin\${CANARY_EXE}.exe no_overwrite_error fresh_install |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
80 no_overwrite_error: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
81 MessageBox MB_OK "Previous version of ${PRETTY_NAME} found$\r$\nUninstall the old version first." |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
82 Abort "Previous version of ${PRETTY_NAME} found$\r$\nUninstall the old version first." |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
83 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
84 fresh_install: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
85 SetOverwrite on |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
86 AllowSkipFiles on |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
87 SetOutPath $INSTDIR |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
88 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
89 File /r "${ROOT}\usr" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
90 File /r "${ROOT}\license" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
91 File /r "${ROOT}\files.txt" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
92 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
93 WriteUninstaller "uninstall.exe" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
94 CreateDirectory "$INSTDIR\usr\bin" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
95 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
96 Call registry_installer |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
97 Call registry_path |
6492
5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6490
diff
changeset
|
98 Call postinstall_schikkers_list |
6015
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
99 SectionEnd |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
100 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
101 Function registry_path |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
102 ReadRegStr $R0 HKLM "${ENVIRON}" "PATH" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
103 WriteRegExpandStr HKLM "${ENVIRON}" "PATH" "$R0;$INSTDIR\usr\bin" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
104 FunctionEnd |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
105 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
106 ;; copy & paste from the NSIS code examples |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
107 Function un.install_installed_files |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
108 IfFileExists "$INSTDIR\${UninstLog}" +3 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
109 MessageBox MB_OK|MB_ICONSTOP "$(UninstLogMissing)" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
110 Abort |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
111 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
112 Push $R0 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
113 Push $R1 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
114 Push $R2 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
115 SetFileAttributes "$INSTDIR\${UninstLog}" NORMAL |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
116 FileOpen $UninstLog "$INSTDIR\${UninstLog}" r |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
117 StrCpy $R1 -1 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
118 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
119 GetLineCount: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
120 ClearErrors |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
121 FileRead $UninstLog $R0 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
122 IntOp $R1 $R1 + 1 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
123 StrCpy $R0 "$INSTDIR\$R0" -2 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
124 Push $R0 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
125 IfErrors 0 GetLineCount |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
126 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
127 Pop $R0 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
128 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
129 LoopRead: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
130 StrCmp $R1 0 LoopDone |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
131 Pop $R0 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
132 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
133 IfFileExists "$R0\*.*" 0 +3 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
134 RMDir $R0 #is dir |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
135 Goto +3 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
136 IfFileExists "$R0" 0 +2 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
137 Delete "$R0" #is file |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
138 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
139 IntOp $R1 $R1 - 1 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
140 Goto LoopRead |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
141 LoopDone: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
142 FileClose $UninstLog |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
143 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
144 Pop $R2 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
145 Pop $R1 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
146 Pop $R0 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
147 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
148 FunctionEnd |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
149 ;; end copy & paste |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
150 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
151 ;; Optional section (can be disabled by the user) |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
152 Section "Start Menu Shortcuts" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
153 ;; First install for all users, if anything fails, install |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
154 ;; for current user only. |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
155 ClearErrors |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
156 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
157 ;; The OutPath specifies the CWD of the command. For desktop |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
158 ;; shortcuts, set to a string that expands to the desktop folder |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
159 ;; of the user who runs LilyPond. |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
160 ReadRegStr $R0 HKCU "${USER_SHELL_FOLDERS}" "Desktop" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
161 SetOutPath '"$R0"' |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
162 SetShellVarContext all |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
163 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
164 ;; Working directory: %USERPROFILE%\<locale's-desktop-folder-name>, |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
165 ;; but that string is not expanded. |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
166 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
167 ;; Let's see what happens when outputting to the shared desktop. |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
168 ;; Let's not-- |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
169 ;; Goto current_user |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
170 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
171 SetOutPath "$DESKTOP" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
172 Call create_shortcuts |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
173 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
174 ;; That also did not work, often the other users do no write access |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
175 ;; there. |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
176 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
177 ;; If no write access for all, delete common stuff and opt for |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
178 ;; install for current user only. |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
179 IfErrors 0 exit |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
180 Delete "$DESKTOP\Schikkers-List.lnk" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
181 Delete "$SMPROGRAMS\Schikkers-List\*.*" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
182 RMDir "$SMPROGRAMS\Schikkers-List" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
183 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
184 ;; $DESKTOP should expand to the same location as the outpath above, |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
185 ;; but nsis may handle anomalies better. |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
186 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
187 current_user: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
188 SetShellVarContext current |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
189 SetOutPath "$DESKTOP" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
190 Call create_shortcuts |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
191 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
192 exit: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
193 SetShellVarContext current |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
194 SetOutPath $INSTDIR |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
195 SectionEnd |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
196 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
197 ;; Optional section (can be disabled by the user) |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
198 Section "Bundled Python" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
199 ;; Only make bundled python interpreter the default |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
200 ;; if user wants it to be (i.e. for the average windows |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
201 ;; user who only cares that software works just like that) |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
202 Call registry_python |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
203 SectionEnd |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
204 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
205 ;; Optional section (can be disabled by the user) |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
206 Section "Bundled Guile" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
207 ;; Only make bundled guile interpreter the default |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
208 ;; if user wants it to be (i.e. for the average windows |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
209 ;; user who only cares that software works just like that) |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
210 Call registry_guile |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
211 SectionEnd |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
212 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
213 Section "Uninstall" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
214 ifSilent 0 silent |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
215 Logset on |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
216 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
217 silent: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
218 DeleteRegKey HKLM SOFTWARE\${PRETTY_NAME} |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
219 DeleteRegKey HKLM "${UNINSTALL}" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
220 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
221 DeleteRegKey HKCR "${PRETTY_NAME}" "" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
222 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
223 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
224 ReadRegStr $R0 HKLM "${ENVIRON}" "PATH" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
225 ${UnStrLoc} $0 $R0 "$INSTDIR\usr\bin;" > |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
226 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
227 path_loop: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
228 StrCmp $0 "" path_done |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
229 StrLen $1 "$INSTDIR\usr\bin;" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
230 IntOp $2 $0 + $1 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
231 StrCpy $3 $R0 $0 0 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
232 StrCpy $4 $R0 10000 $2 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
233 WriteRegExpandStr HKLM "${ENVIRON}" "PATH" "$3$4" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
234 ReadRegStr $R0 HKLM "${ENVIRON}" "PATH" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
235 ${UnStrLoc} $0 $R0 "$INSTDIR\usr\bin;" > |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
236 StrCmp $0 "" path_done path_loop |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
237 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
238 path_done: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
239 call un.install_installed_files |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
240 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
241 ;; Remove shortcuts, if any |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
242 SetShellVarContext all |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
243 Delete "$SMPROGRAMS\${PRETTY_NAME}\*.*" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
244 Delete "$DESKTOP\${PRETTY_NAME}.lnk" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
245 RMDir "$SMPROGRAMS\${PRETTY_NAME}" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
246 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
247 SetShellVarContext current |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
248 Delete "$SMPROGRAMS\${PRETTY_NAME}\*.*" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
249 Delete "$DESKTOP\${PRETTY_NAME}.lnk" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
250 RMDir "$SMPROGRAMS\${PRETTY_NAME}" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
251 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
252 ;; Remove directories used |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
253 RMDir "$SMPROGRAMS\${PRETTY_NAME}" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
254 RMDir "$INSTDIR\usr\bin" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
255 RMDir "$INSTDIR\usr\" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
256 Delete "$INSTDIR\uninstall.exe" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
257 Delete "$INSTDIR\files.txt" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
258 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
259 RMDir "$INSTDIR" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
260 SectionEnd |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
261 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
262 Function registry_installer |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
263 WriteRegStr HKLM "SOFTWARE\${PRETTY_NAME}" "Install_Dir" "$INSTDIR" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
264 WriteRegStr HKLM "${UNINSTALL}" "DisplayName" "${PRETTY_NAME}" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
265 WriteRegStr HKLM "${UNINSTALL}" "UninstallString" '"$INSTDIR\uninstall.exe"' |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
266 WriteRegDWORD HKLM "${UNINSTALL}" "NoModify" 1 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
267 WriteRegDWORD HKLM "${UNINSTALL}" "NoRepair" 1 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
268 FunctionEnd |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
269 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
270 Function create_shortcuts |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
271 ;; Start menu |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
272 CreateDirectory "$SMPROGRAMS\Schikkers-List" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
273 CreateShortCut "$SMPROGRAMS\Schikkers-List\Schikkers-List.lnk" \ |
6462
9796761cf213
mingw::schikkers-list.nsi: make runnable, at last.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6015
diff
changeset
|
274 "$INSTDIR\usr\bin\schikkers-list.scm" ""\ |
9796761cf213
mingw::schikkers-list.nsi: make runnable, at last.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6015
diff
changeset
|
275 "$INSTDIR\usr\share\guile\site\ikli\images\ikli.ico" 0 SW_SHOWNORMAL |
6015
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
276 CreateShortCut "$SMPROGRAMS\Schikkers-List\Schikkers-List Website.lnk" \ |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
277 "http://schikkers-list.org/" "" \ |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
278 "firefox.exe" 0 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
279 CreateShortCut "$SMPROGRAMS\Schikkers-List\Uninstall.lnk" \ |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
280 "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
281 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
282 ;; Desktop |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
283 ClearErrors |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
284 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
285 ;; Desktop link always on current user's desktop |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
286 SetShellVarContext current |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
287 SetOutPath "$DESKTOP" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
288 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
289 ReadRegStr $R0 HKLM \ |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
290 "SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
291 CreateShortCut "$DESKTOP\Schikkers-List.lnk" \ |
6462
9796761cf213
mingw::schikkers-list.nsi: make runnable, at last.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6015
diff
changeset
|
292 "$INSTDIR\usr\bin\schikkers-list.scm" ""\ |
9796761cf213
mingw::schikkers-list.nsi: make runnable, at last.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6015
diff
changeset
|
293 "$INSTDIR\usr\share\guile\site\ikli\images\ikli.ico" 0 SW_SHOWNORMAL |
6015
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
294 FunctionEnd |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
295 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
296 Function registry_python |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
297 ReadRegStr $R0 HKLM "${ENVIRON}" "PATHEXT" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
298 ${StrLoc} $0 $R0 ".PY;" > |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
299 StrCmp $0 "" 0 py_done |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
300 WriteRegStr HKLM "${ENVIRON}" "PATHEXT" ".PY;$R0" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
301 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
302 py_done: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
303 WriteRegStr HKCR ".py" "" "Python" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
304 WriteRegStr HKCR ".py" "Python" "Python" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
305 WriteRegStr HKCR ".py" "Content Type" "text/x-python" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
306 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
307 ;;py_open: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
308 ReadRegStr $R0 HKCR "Python\shell\open\command" "" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
309 ;;StrCmp $R0 "" 0 py_auto_file |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
310 WriteRegStr HKCR "Python\shell" "" "open" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
311 # %1 is the PYTHON command, so must be quoted bo the space |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
312 WriteRegExpandStr HKCR "Python\shell\open\command" "" '"$INSTDIR\usr\bin\python-windows.exe" "%1" %2 %3 %4 %5 %6 %7 %8 %9' |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
313 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
314 ;;py_auto_file: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
315 ReadRegStr $R0 HKCR "py_auto_file\shell\open\command" "" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
316 ;;StrCmp $R0 "" 0 py_end |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
317 WriteRegStr HKCR "py_auto_file\shell" "" "open" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
318 # %1 is the PYTHON command, so must be quoted bo the space |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
319 WriteRegExpandStr HKCR "py_auto_file\shell\open\command" "" '"$INSTDIR\usr\bin\python-windows.exe" "%1" %2 %3 %4 %5 %6 %7 %8 %9' |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
320 ;;py_end: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
321 FunctionEnd |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
322 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
323 Function registry_guile |
6490
c79ddba57147
schikkers-list.nsi: set $LOCALAPPDATA.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6486
diff
changeset
|
324 WriteRegStr HKLM "${ENVIRON}" "XDG_CACHE_HOME" "$LOCALAPPDATA\cache" |
6015
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
325 ReadRegStr $R0 HKLM "${ENVIRON}" "PATHEXT" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
326 ${StrLoc} $0 $R0 ".SCM;" > |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
327 StrCmp $0 "" 0 scm_done |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
328 WriteRegStr HKLM "${ENVIRON}" "PATHEXT" ".SCM;$R0" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
329 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
330 scm_done: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
331 WriteRegStr HKCR ".scm" "" "Guile" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
332 WriteRegStr HKCR ".scm" "Guile" "Guile" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
333 WriteRegStr HKCR ".scm" "Content Type" "text/x-guile" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
334 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
335 ;;scm_open: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
336 ReadRegStr $R0 HKCR "Guile\shell\open\command" "" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
337 ;;StrCmp $R0 "" 0 scm_auto_file |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
338 WriteRegStr HKCR "Guile\shell" "" "open" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
339 # %1 is the GUILE command, so must be quoted bo the space |
6472
51635cbba4b0
schikkers-list.nsi: more desktop invocation tests.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6462
diff
changeset
|
340 ;; WriteRegExpandStr HKCR "Guile\shell\open\command" "" '"$INSTDIR\usr\bin\guile-windows.exe" "%1" %2 %3 %4 %5 %6 %7 %8 %9' |
6486
7a841bb2369b
schikkers-list.nsi: make click-runnable on windows.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6472
diff
changeset
|
341 WriteRegExpandStr HKCR "Guile\shell\open\command" "" '"$INSTDIR\usr\bin\guile-windows.exe" "%1" %2 %3 %4 %5 %6 %7 %8 %9' |
6015
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
342 |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
343 ;;scm_auto_file: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
344 ReadRegStr $R0 HKCR "scm_auto_file\shell\open\command" "" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
345 ;;StrCmp $R0 "" 0 scm_end |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
346 WriteRegStr HKCR "scm_auto_file\shell" "" "open" |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
347 # %1 is the GUILE command, so must be quoted bo the space |
6472
51635cbba4b0
schikkers-list.nsi: more desktop invocation tests.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6462
diff
changeset
|
348 ;; WriteRegExpandStr HKCR "scm_auto_file\shell\open\command" "" '"$INSTDIR\usr\bin\guile-windows.exe" "%1" %2 %3 %4 %5 %6 %7 %8 %9' |
6486
7a841bb2369b
schikkers-list.nsi: make click-runnable on windows.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6472
diff
changeset
|
349 WriteRegExpandStr HKCR "scm_auto_file\shell\open\command" "" '"$INSTDIR\usr\bin\guile-windows.exe" "%1" %2 %3 %4 %5 %6 %7 %8 %9' |
6015
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
350 ;;scm_end: |
cc908a87aaa4
schikkers-list: new package.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
diff
changeset
|
351 FunctionEnd |
6492
5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6490
diff
changeset
|
352 |
5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6490
diff
changeset
|
353 !include "FontName.nsh" |
5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6490
diff
changeset
|
354 !include "FontReg.nsh" |
5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6490
diff
changeset
|
355 |
5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6490
diff
changeset
|
356 Function postinstall_schikkers_list |
5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6490
diff
changeset
|
357 CopyFiles /silent "$INSTDIR\usr\share\lilypond\current\fonts\otf\Emmentaler-20.otf" "$WINDIR\Fonts\Emmentaler-20.otf" |
5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6490
diff
changeset
|
358 StrCpy $FONT_DIR "$WINDIR\Fonts" |
5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6490
diff
changeset
|
359 !insertmacro InstallTTFFont "${ROOT}\usr\share\lilypond\current\fonts\otf\Emmentaler-20.otf" |
5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6490
diff
changeset
|
360 ClearErrors |
5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6490
diff
changeset
|
361 FunctionEnd |
5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6490
diff
changeset
|
362 |
5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6490
diff
changeset
|
363 Function un.install_schikkers_list_ttf |
5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6490
diff
changeset
|
364 Delete "$WINDIR\Fonts\Emmentaler-20.otf" |
5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6490
diff
changeset
|
365 ClearErrors |
5bab80dd593a
mingw::schikkers-list: --no-autocompile and install Emmentaler font.
Jan Nieuwenhuizen <janneke@gnu.org>
parents:
6490
diff
changeset
|
366 FunctionEnd |