Code

Fixed rendering glitch in bicubic scaler
[inkscape.git] / packaging / win32 / inkscape.nsi
index 47304a3ef908c4a0337e44539779a473b0b83187..ebd80cbd51f087dd646062d283ccf6ea7f3733a7 100644 (file)
@@ -29,6 +29,25 @@ SetCompressor /SOLID lzma
 !define MUI_HEADERIMAGE_BITMAP "header.bmp"
 !define MUI_COMPONENTSPAGE_SMALLDESC
 
 !define MUI_HEADERIMAGE_BITMAP "header.bmp"
 !define MUI_COMPONENTSPAGE_SMALLDESC
 
+;..................................................................................................
+;Following two definitions required. Uninstall log will use these definitions.
+;You may use these definitions also, when you want to set up the InstallDirRagKey,
+;store the language selection, store Start Menu folder etc.
+;Enter the windows uninstall reg sub key to add uninstall information to Add/Remove Programs also.
+
+!define INSTDIR_REG_ROOT "HKLM"
+!define INSTDIR_REG_KEY PRODUCT_UNINST_KEY
+
+;include the Uninstall log header
+!include AdvUninstLog.nsh
+
+;Specify the preferred uninstaller operation mode, either unattended or interactive.
+;You have to type either !insertmacro UNATTENDED_UNINSTALL, or !insertmacro INTERACTIVE_UNINSTALL.
+;Be aware only one of the following two macros has to be inserted, neither both, neither none.
+
+;!insertmacro UNATTENDED_UNINSTALL
+!insertmacro INTERACTIVE_UNINSTALL
+
 
 ; Welcome page
 !insertmacro MUI_PAGE_WELCOME
 
 ; Welcome page
 !insertmacro MUI_PAGE_WELCOME
@@ -69,16 +88,18 @@ ShowUninstDetails hide
 
 ; Language files
 !include "english.nsh" 
 
 ; Language files
 !include "english.nsh" 
-!include "catalan.nsh" 
+; !include "catalan.nsh" the catalan support has been abandoned by NSIS as of version 2.28
 !include "czech.nsh" 
 !include "finnish.nsh" 
 !include "french.nsh" 
 !include "german.nsh" 
 !include "italian.nsh" 
 !include "czech.nsh" 
 !include "finnish.nsh" 
 !include "french.nsh" 
 !include "german.nsh" 
 !include "italian.nsh" 
-!include "slovak.nsh" 
+!include "japanese.nsh"
 !include "polish.nsh" 
 !include "polish.nsh" 
-!include "spanish.nsh" 
+!include "russian.nsh" 
+!include "slovak.nsh" 
 !include "slovenian.nsh" 
 !include "slovenian.nsh" 
+!include "spanish.nsh" 
 
 ReserveFile "inkscape.nsi.uninstall"
 
 
 ReserveFile "inkscape.nsi.uninstall"
 
@@ -399,24 +420,42 @@ FunctionEnd
 !macro Language polng lng
   SectionIn 1 2 3
   SetOutPath $INSTDIR
 !macro Language polng lng
   SectionIn 1 2 3
   SetOutPath $INSTDIR
+  !insertmacro UNINSTALL.LOG_OPEN_INSTALL
   File /nonfatal /a "..\..\inkscape\*.${lng}.txt"
   File /nonfatal /a "..\..\inkscape\*.${lng}.txt"
+  !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
   SetOutPath $INSTDIR\locale
   SetOutPath $INSTDIR\locale
+  !insertmacro UNINSTALL.LOG_OPEN_INSTALL
   File /nonfatal /a /r "..\..\inkscape\locale\${polng}"
   File /nonfatal /a /r "..\..\inkscape\locale\${polng}"
+  !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
   SetOutPath $INSTDIR\lib\locale
   SetOutPath $INSTDIR\lib\locale
+  !insertmacro UNINSTALL.LOG_OPEN_INSTALL
   File /nonfatal /a /r "..\..\inkscape\lib\locale\${polng}"
   File /nonfatal /a /r "..\..\inkscape\lib\locale\${polng}"
+  !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
+  SetOutPath $INSTDIR\share\clipart
+  !insertmacro UNINSTALL.LOG_OPEN_INSTALL
+  File /nonfatal /a /r "..\..\inkscape\share\clipart\*.${polng}.svg"  
+  !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
   ; the keyboard tables
   SetOutPath $INSTDIR\share\screens
   ; the keyboard tables
   SetOutPath $INSTDIR\share\screens
-  File /nonfatal /a /r "..\..\inkscape\share\screens\keys.${polng}.svg"  
+  !insertmacro UNINSTALL.LOG_OPEN_INSTALL
+  File /nonfatal /a /r "..\..\inkscape\share\screens\*.${polng}.svg"  
+  !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
   SetOutPath $INSTDIR\share\templates
   SetOutPath $INSTDIR\share\templates
-  File /nonfatal /a /r "..\..\inkscape\share\templates\default.${polng}.svg"  
+  !insertmacro UNINSTALL.LOG_OPEN_INSTALL
+  File /nonfatal /a /r "..\..\inkscape\share\templates\*.${polng}.svg"  
+  !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
   SetOutPath $INSTDIR\doc
   SetOutPath $INSTDIR\doc
+  !insertmacro UNINSTALL.LOG_OPEN_INSTALL
   File /nonfatal /a /r "..\..\inkscape\doc\keys.${polng}.xml"  
   File /nonfatal /a /r "..\..\inkscape\doc\keys.${polng}.html"  
   File /nonfatal /a /r "..\..\inkscape\doc\keys.${polng}.xml"  
   File /nonfatal /a /r "..\..\inkscape\doc\keys.${polng}.html"  
+  !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
   SectionGetFlags ${SecTutorials} $R1 
   IntOp $R1 $R1 & ${SF_SELECTED} 
   IntCmp $R1 ${SF_SELECTED} 0 skip_tutorials 
     SetOutPath $INSTDIR\share\tutorials
   SectionGetFlags ${SecTutorials} $R1 
   IntOp $R1 $R1 & ${SF_SELECTED} 
   IntCmp $R1 ${SF_SELECTED} 0 skip_tutorials 
     SetOutPath $INSTDIR\share\tutorials
+    !insertmacro UNINSTALL.LOG_OPEN_INSTALL
     File /nonfatal /a "..\..\inkscape\share\tutorials\*.${polng}.*"
     File /nonfatal /a "..\..\inkscape\share\tutorials\*.${polng}.*"
+    !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
   skip_tutorials:
 !macroend
 
   skip_tutorials:
 !macroend
 
@@ -517,6 +556,7 @@ Section $(lng_Core) SecCore
 
   SectionIn 1 2 3 RO
   SetOutPath $INSTDIR
 
   SectionIn 1 2 3 RO
   SetOutPath $INSTDIR
+  !insertmacro UNINSTALL.LOG_OPEN_INSTALL
   SetOverwrite on
   SetAutoClose false
 
   SetOverwrite on
   SetAutoClose false
 
@@ -533,22 +573,31 @@ Section $(lng_Core) SecCore
   File /nonfatal /a /r "..\..\inkscape\doc"
   File /nonfatal /a /r "..\..\inkscape\plugins"
   File /nonfatal /a /r /x *.??*.???* /x "examples" /x "tutorials" "..\..\inkscape\share"
   File /nonfatal /a /r "..\..\inkscape\doc"
   File /nonfatal /a /r "..\..\inkscape\plugins"
   File /nonfatal /a /r /x *.??*.???* /x "examples" /x "tutorials" "..\..\inkscape\share"
+  !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
   ; this files are added because it slips through the filter
   SetOutPath $INSTDIR\share\clipart
   ; this files are added because it slips through the filter
   SetOutPath $INSTDIR\share\clipart
+  !insertmacro UNINSTALL.LOG_OPEN_INSTALL
   File /a "..\..\inkscape\share\clipart\inkscape.logo.svg"
   ;File /a "..\..\inkscape\share\clipart\inkscape.logo.classic.svg"  
   File /a "..\..\inkscape\share\clipart\inkscape.logo.svg"
   ;File /a "..\..\inkscape\share\clipart\inkscape.logo.classic.svg"  
+  !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
   SetOutPath $INSTDIR\share\extensions
   SetOutPath $INSTDIR\share\extensions
+  !insertmacro UNINSTALL.LOG_OPEN_INSTALL
   File /a "..\..\inkscape\share\extensions\pdf_output.inx.txt"
   File /a "..\..\inkscape\share\extensions\pdf_output_via_gs_on_win32.inx.txt"
   File /a "..\..\inkscape\share\extensions\pdf_output.inx.txt"
   File /a "..\..\inkscape\share\extensions\pdf_output_via_gs_on_win32.inx.txt"
+  !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
   SetOutPath $INSTDIR\share\icons
   SetOutPath $INSTDIR\share\icons
+  !insertmacro UNINSTALL.LOG_OPEN_INSTALL
   File /a "..\..\inkscape\share\icons\inkscape.file.png"
   File /a "..\..\inkscape\share\icons\inkscape.file.svg"
   File /a "..\..\inkscape\share\icons\inkscape.file.png"
   File /a "..\..\inkscape\share\icons\inkscape.file.svg"
+  !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
   SetOutPath $INSTDIR\modules
   SetOutPath $INSTDIR\modules
+  !insertmacro UNINSTALL.LOG_OPEN_INSTALL
   File /nonfatal /a /r "..\..\inkscape\modules\*.*"
   File /nonfatal /a /r "..\..\inkscape\modules\*.*"
+  !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
   SetOutPath $INSTDIR\python
   SetOutPath $INSTDIR\python
-  File /nonfatal /a /r "..\..\inkscape\python\*.*"
-
-  
+  !insertmacro UNINSTALL.LOG_OPEN_INSTALL
+  File /nonfatal /a /r "..\..\inkscape\python\*.*" 
+  !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
 SectionEnd
 
 Section $(lng_GTKFiles) SecGTK
 SectionEnd
 
 Section $(lng_GTKFiles) SecGTK
@@ -557,10 +606,12 @@ Section $(lng_GTKFiles) SecGTK
   
   SectionIn 1 2 3 RO
   SetOutPath $INSTDIR
   
   SectionIn 1 2 3 RO
   SetOutPath $INSTDIR
+  !insertmacro UNINSTALL.LOG_OPEN_INSTALL
   SetOverwrite on
   File /a /r "..\..\inkscape\*.dll"
   File /a /r /x "locale" "..\..\inkscape\lib"
   File /a /r "..\..\inkscape\etc"
   SetOverwrite on
   File /a /r "..\..\inkscape\*.dll"
   File /a /r /x "locale" "..\..\inkscape\lib"
   File /a /r "..\..\inkscape\etc"
+  !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
 SectionEnd
 
 Section $(lng_Alluser) SecAlluser
 SectionEnd
 
 Section $(lng_Alluser) SecAlluser
@@ -658,13 +709,17 @@ SectionGroup $(lng_Addfiles) SecAddfiles
 Section $(lng_Examples) SecExamples
   SectionIn 1 2
   SetOutPath $INSTDIR\share
 Section $(lng_Examples) SecExamples
   SectionIn 1 2
   SetOutPath $INSTDIR\share
+  !insertmacro UNINSTALL.LOG_OPEN_INSTALL
   File /nonfatal /a /r /x "*.??*.???*" "..\..\inkscape\share\examples"
   File /nonfatal /a /r /x "*.??*.???*" "..\..\inkscape\share\examples"
+  !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
 SectionEnd
 
 Section $(lng_Tutorials) SecTutorials
   SectionIn 1 2
   SetOutPath $INSTDIR\share
 SectionEnd
 
 Section $(lng_Tutorials) SecTutorials
   SectionIn 1 2
   SetOutPath $INSTDIR\share
+  !insertmacro UNINSTALL.LOG_OPEN_INSTALL
   File /nonfatal /a /r /x "*.??*.???*" "..\..\inkscape\share\tutorials"
   File /nonfatal /a /r /x "*.??*.???*" "..\..\inkscape\share\tutorials"
+  !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
 SectionEnd
 
 SectionGroupEnd
 SectionEnd
 
 SectionGroupEnd
@@ -687,6 +742,10 @@ Section $(lng_bg) SecBulgarian
   !insertmacro Language bg bg
 SectionEnd
 
   !insertmacro Language bg bg
 SectionEnd
 
+Section $(lng_bn) SecBengali
+  !insertmacro Language bn bn
+SectionEnd
+
 Section $(lng_ca) SecCatalan
   !insertmacro Language ca ca
 SectionEnd
 Section $(lng_ca) SecCatalan
   !insertmacro Language ca ca
 SectionEnd
@@ -715,6 +774,10 @@ Section $(lng_en) SecEnglish
   SectionIn 1 2 3 RO
 SectionEnd
 
   SectionIn 1 2 3 RO
 SectionEnd
 
+Section $(lng_en_AU) SecEnglishAustralian
+  !insertmacro Language en_AU en_AU
+SectionEnd
+
 Section $(lng_en_CA) SecEnglishCanadian
   !insertmacro Language en_CA en_CA
 SectionEnd
 Section $(lng_en_CA) SecEnglishCanadian
   !insertmacro Language en_CA en_CA
 SectionEnd
@@ -727,6 +790,10 @@ Section $(lng_en_US@piglatin) SecEnglishPiglatin
   !insertmacro Language en_US@piglatin en_US@Piglatin
 SectionEnd
 
   !insertmacro Language en_US@piglatin en_US@Piglatin
 SectionEnd
 
+Section $(lng_eo) SecEsperanto
+  !insertmacro Language eo eo
+SectionEnd
+
 Section $(lng_es) SecSpanish
   !insertmacro Language 'es' 'es'
 SectionEnd
 Section $(lng_es) SecSpanish
   !insertmacro Language 'es' 'es'
 SectionEnd
@@ -747,7 +814,7 @@ Section $(lng_fr) SecFrench
   !insertmacro Language 'fr' 'fr'
 SectionEnd
 
   !insertmacro Language 'fr' 'fr'
 SectionEnd
 
-Section $(lng_fi) SecFinish
+Section $(lng_fi) SecFinnish
   !insertmacro Language 'fi' 'fi'
 SectionEnd
 
   !insertmacro Language 'fi' 'fi'
 SectionEnd
 
@@ -760,6 +827,11 @@ Section $(lng_gl) SecGallegan
   SectionIn 1 2 3
 SectionEnd
 
   SectionIn 1 2 3
 SectionEnd
 
+Section $(lng_he) SecHebrew
+  !insertmacro Language he he
+  SectionIn 1 2 3
+SectionEnd
+
 Section $(lng_hr) SecCroatian
   !insertmacro Language hr hr
   SectionIn 1 2 3
 Section $(lng_hr) SecCroatian
   !insertmacro Language hr hr
   SectionIn 1 2 3
@@ -770,6 +842,11 @@ Section $(lng_hu) SecHungarian
   SectionIn 1 2 3
 SectionEnd
 
   SectionIn 1 2 3
 SectionEnd
 
+Section $(lng_id) SecIndonesian
+  !insertmacro Language id id
+  SectionIn 1 2 3
+SectionEnd
+
 Section $(lng_it) SecItalian
   !insertmacro Language it it
   SectionIn 1 2 3
 Section $(lng_it) SecItalian
   !insertmacro Language it it
   SectionIn 1 2 3
@@ -831,6 +908,10 @@ Section $(lng_pt_BR) SecPortugueseBrazil
   !insertmacro Language pt_BR pt_BR
 SectionEnd
 
   !insertmacro Language pt_BR pt_BR
 SectionEnd
 
+Section $(lng_ro) SecRomanian
+  !insertmacro Language ro ro
+SectionEnd
+
 Section $(lng_ru) SecRussian
   !insertmacro Language ru ru
 SectionEnd
 Section $(lng_ru) SecRussian
   !insertmacro Language ru ru
 SectionEnd
@@ -921,8 +1002,9 @@ Section -FinalizeInstallation
 
   ; uninstall settings
   ClearErrors
 
   ; uninstall settings
   ClearErrors
-  WriteUninstaller "$INSTDIR\uninst.exe"
-  WriteRegExpandStr SHCTX "${PRODUCT_UNINST_KEY}" "UninstallString" '"$INSTDIR\uninst.exe"'
+  ; WriteUninstaller "$INSTDIR\uninst.exe"
+  WriteRegExpandStr SHCTX "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\${UNINST_EXE}"
+  WriteRegExpandStr SHCTX "${PRODUCT_UNINST_KEY}" "InstallDir" "$INSTDIR"
   WriteRegExpandStr SHCTX "${PRODUCT_UNINST_KEY}" "InstallLocation" "$INSTDIR"
   WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayName" "${PRODUCT_NAME} ${PRODUCT_VERSION}"
   WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\Inkscape.exe,0"
   WriteRegExpandStr SHCTX "${PRODUCT_UNINST_KEY}" "InstallLocation" "$INSTDIR"
   WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayName" "${PRODUCT_NAME} ${PRODUCT_VERSION}"
   WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\Inkscape.exe,0"
@@ -967,6 +1049,9 @@ SectionEnd
 !macroend
 
 Function .onInit
 !macroend
 
 Function .onInit
+  ;prepare log always within .onInit function
+  !insertmacro UNINSTALL.LOG_PREPARE_INSTALL
+
   ;Extract InstallOptions INI files
   StrCpy $AskMultiUser "1"
   StrCpy $MultiUser "0"
   ;Extract InstallOptions INI files
   StrCpy $AskMultiUser "1"
   StrCpy $MultiUser "0"
@@ -1051,25 +1136,30 @@ Function .onInit
   !insertmacro Parameter "az" ${SecAzerbaijani}
   !insertmacro Parameter "be" ${SecByelorussian}
   !insertmacro Parameter "bg" ${SecBulgarian}
   !insertmacro Parameter "az" ${SecAzerbaijani}
   !insertmacro Parameter "be" ${SecByelorussian}
   !insertmacro Parameter "bg" ${SecBulgarian}
+  !insertmacro Parameter "bn" ${SecBengali}
   !insertmacro Parameter "ca" ${SecCatalan}
   !insertmacro Parameter "cs" ${SecCzech}
   !insertmacro Parameter "da" ${SecDanish}
   !insertmacro Parameter "de" ${SecGerman}
   !insertmacro Parameter "dz" ${SecDzongkha}
   !insertmacro Parameter "el" ${SecGreek}
   !insertmacro Parameter "ca" ${SecCatalan}
   !insertmacro Parameter "cs" ${SecCzech}
   !insertmacro Parameter "da" ${SecDanish}
   !insertmacro Parameter "de" ${SecGerman}
   !insertmacro Parameter "dz" ${SecDzongkha}
   !insertmacro Parameter "el" ${SecGreek}
+  !insertmacro Parameter "en_AU" ${SecEnglishAustralian}
   !insertmacro Parameter "en_CA" ${SecEnglishCanadian}
   !insertmacro Parameter "en_GB" ${SecEnglishBritain}
   !insertmacro Parameter "en_US@piglatin" ${SecEnglishPiglatin}
   !insertmacro Parameter "en_CA" ${SecEnglishCanadian}
   !insertmacro Parameter "en_GB" ${SecEnglishBritain}
   !insertmacro Parameter "en_US@piglatin" ${SecEnglishPiglatin}
+  !insertmacro Parameter "eo" ${SecEsperanto}
   !insertmacro Parameter "es" ${SecSpanish}
   !insertmacro Parameter "es_MX" ${SecSpanishMexico}
   !insertmacro Parameter "et" ${SecEstonian}
   !insertmacro Parameter "eu" ${SecBasque}
   !insertmacro Parameter "es" ${SecSpanish}
   !insertmacro Parameter "es_MX" ${SecSpanishMexico}
   !insertmacro Parameter "et" ${SecEstonian}
   !insertmacro Parameter "eu" ${SecBasque}
-  !insertmacro Parameter "fi" ${SecFinish}
+  !insertmacro Parameter "fi" ${SecFinnish}
   !insertmacro Parameter "fr" ${SecFrench}
   !insertmacro Parameter "ga" ${SecIrish}
   !insertmacro Parameter "gl" ${SecGallegan}
   !insertmacro Parameter "fr" ${SecFrench}
   !insertmacro Parameter "ga" ${SecIrish}
   !insertmacro Parameter "gl" ${SecGallegan}
+  !insertmacro Parameter "he" ${SecHebrew}
   !insertmacro Parameter "hr" ${SecCroatian}
   !insertmacro Parameter "hu" ${SecHungarian}
   !insertmacro Parameter "hr" ${SecCroatian}
   !insertmacro Parameter "hu" ${SecHungarian}
+  !insertmacro Parameter "id" ${SecIndonesian}
   !insertmacro Parameter "it" ${SecItalian}
   !insertmacro Parameter "ja" ${SecJapanese}
   !insertmacro Parameter "km" ${SecKhmer}
   !insertmacro Parameter "it" ${SecItalian}
   !insertmacro Parameter "ja" ${SecJapanese}
   !insertmacro Parameter "km" ${SecKhmer}
@@ -1085,6 +1175,7 @@ Function .onInit
   !insertmacro Parameter "pl" ${SecPolish}
   !insertmacro Parameter "pt" ${SecPortuguese}
   !insertmacro Parameter "pt_BR" ${SecPortugueseBrazil}
   !insertmacro Parameter "pl" ${SecPolish}
   !insertmacro Parameter "pt" ${SecPortuguese}
   !insertmacro Parameter "pt_BR" ${SecPortugueseBrazil}
+  !insertmacro Parameter "ro" ${SecRomanian}
   !insertmacro Parameter "ru" ${SecRussian}
   !insertmacro Parameter "rw" ${SecKinyarwanda}
   !insertmacro Parameter "sk" ${SecSlovak}
   !insertmacro Parameter "ru" ${SecRussian}
   !insertmacro Parameter "rw" ${SecKinyarwanda}
   !insertmacro Parameter "sk" ${SecSlovak}
@@ -1128,6 +1219,12 @@ FunctionEnd
 Function .onSelChange
 FunctionEnd
 
 Function .onSelChange
 FunctionEnd
 
+
+Function .onInstSuccess
+  ;create/update log always within .onInstSuccess function
+  !insertmacro UNINSTALL.LOG_UPDATE_INSTALL
+FunctionEnd
+
 ; --------------------------------------------------
 
 Function un.CustomPageUninstall
 ; --------------------------------------------------
 
 Function un.CustomPageUninstall
@@ -1144,6 +1241,9 @@ FunctionEnd
 
 
 Function un.onInit
 
 
 Function un.onInit
+  ;begin uninstall, could be added on top of uninstall section instead
+  !insertmacro UNINSTALL.LOG_BEGIN_UNINSTALL
+
   ClearErrors
   StrCpy $User ""
        UserInfo::GetName
   ClearErrors
   StrCpy $User ""
        UserInfo::GetName
@@ -1315,7 +1415,26 @@ Section Uninstall
   RMDir  "$SMPROGRAMS\Inkscape"
 
   DetailPrint "removing uninstall info"
   RMDir  "$SMPROGRAMS\Inkscape"
 
   DetailPrint "removing uninstall info"
-  RMDir /r "$INSTDIR"
+
+  ;uninstall from path, must be repeated for every install logged path individual
+  !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\lib\locale"
+  !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\locale"
+  !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\doc"
+  !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\share\tutorials"
+  !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\share\templates"
+  !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\share\screens"
+  !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\share\clipart"
+  !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\share\extensions"
+  !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\share\icons"
+  !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\share"
+  !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\modules"
+  !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\python"
+  !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR"
+
+  ;end uninstall, after uninstall from all logged paths has been performed
+  !insertmacro UNINSTALL.LOG_END_UNINSTALL
+
+  ;RMDir /r "$INSTDIR"
 
   SetAutoClose false
 
 
   SetAutoClose false