wiki:InstallationGuidelines/Windows/Maintenance

Version 36 (modified by Chamindra de Silva, 14 years ago) ( diff )

--

Maintenance of the End-user Windows Installer

End-user Instructions: InstallationGuidelinesWindows

  • Clean the Eden folder (databases/errors/sessions/uploads)
  • Clean the admin folder (errors & sessions)
    c:
    cd \web2py
    copy applications\eden\static\scripts\tools\standalone_exe.py .
    c:\bin\python26\python standalone_exe.py py2exe
    
  • Remove unwanted folders from dist/applications/eden
    • .bzr
    • .git
    • compiled
    • docs
    • tests
    • static/scripts/gis/GeoExt/.*
    • static/scripts/gis/openlayers/.*
    • static/selenium
  • Add missing file & then run the program once
    c:
    cd \web2py
    copy splashlogo.gif dist
    cd dist
    web2py.exe
    # Ignore the NEWINSTALL error
    
  • rename applications/eden as 'init'
  • Delete the examples & welcome folders
  • Zip-up contents of 'dist' folder (no 'dist' in the root of the zip)
  • Customise C:\Program Files\NSIS\Contrib\zip2exe\Modern.nsh:
    !include "MUI.nsh"
    !define MUI_ICON "c:\bin\web2py\applications\eden\static\favicon.ico"
    
    !insertmacro MUI_PAGE_DIRECTORY
    !insertmacro MUI_PAGE_INSTFILES
    
    !insertmacro MUI_LANGUAGE "English"
    
    Section "install"
     
        ;Add files
        SetOutPath "$INSTDIR"
    
        ;create desktop shortcut
        CreateShortCut "$DESKTOP\Sahana Eden.lnk" "$INSTDIR\web2py.exe" "" "$INSTDIR\applications\init\static\favicon.ico" 0
     
        ;create start-menu shortcut
        CreateShortCut "$SMPROGRAMS\Sahana Eden.lnk" "$INSTDIR\web2py.exe" "" "$INSTDIR\applications\init\static\favicon.ico" 0
    
    SectionEnd
    
  • use NSIS' zip2exe.exe to convert to an .exe
    • Installer Name: Sahana Eden 0.5.4
    • Default Folder: C:\web2py
    • Output EXE file: C:\Sahana-Eden-0.5.4.exe

Tasks for Crisis Commons

  • Create an automated build script for the above manual steps to create an installer that takes a branch of Sahana Eden the source together with the dependencies (Python + needed Libraries). I would recommend creating a build script based on Autohotkey or similar as this is quite portable in itself and can be made into an self-contained executable.
  • Right now the installer launches other installers for Python and it's libraries in turn. It would be easier for the installer to process this in one go. Again an easily maintainable approach would be better as the versions of Python and these libraries increment with the versions of Eden.
  • Provide a dialog to capture and setup the admin password on installation
  • Feel free to add other areas that can improve the overall experience of the installer for the user

Other ToDo Items on the installer

  • Provide a startup script which passes the password, so no need for the TK GUI
    • Is there an easy call to launch the default browser from a script?
      • Can be 'eden' then, which is good for consistency
  • Is it better to have a larger download & include the pre-populated database with migrate=False? (& pre-populate=False)
  • Is it better to have a larger download & include the compiled app?
  • Remove all the Debug mode files? (Ext/GeoExt/OpenLayers/jQuery/UI/etc)

Developer installer

BluePrintInstallerWindows

Note: See TracWiki for help on using the wiki.