MinGW 5.1.x Installer

Registered by anatoly techtonik on 2007-12-20

Improved MinGW NSIS installer architecture. Should allow install/unistall and update of components. Distributed as standalone (all-in-one) snapshot version with and as internet downloader/installer.

Blueprint information

Status:
Started
Approver:
None
Priority:
Medium
Drafter:
anatoly techtonik
Direction:
Needs approval
Assignee:
anatoly techtonik
Definition:
Pending Approval
Series goal:
Accepted for 5.1
Implementation:
Deployment
Milestone target:
None
Started by
anatoly techtonik

Related branches

Sprints

Whiteboard

Changes from version 5.1.6:
[+] automatically update version in license file
[+] /offline command line option for installer to skip checking for updates
[+] add MinGW\bin to PATH option
[-] on uninstall propose to inspect MinGW installation dir only if it is non-empty

Changes from version 5.1.4:
[+] advanced uninstall log allows to remove only installed files
[+] support for tar.bz2 and tar.lzma formats
     (no 7z, because no supported compile/pack/unpack/NSIS toolchain)
[*] updated NSIS and plugins to latest versions
[*] updated icons and headers
[*] parse Filename field in mingw.ini instead of Build to get latest installer version
[*] skip license page on update
[-] fix Java installation
[-] replace popup window about updated package with custom page
[-] implement numerical version compare (previously 0.12 was < 0.9)

Future Proposals:
- delete zero-sized files that failed to download
- add hypertext links to changes and sources on the welcome page
- add SVN mirror on Google Code

- more user control whether download new components or install that are already available
- combined uninstaller/updater that asks if uninstall or upgrade is needed
- display component versions on update, information what components are to be downloaded, and show download size and install size of each component
- parse RSS feed to get previous/current/candidate versions
- parse ini file to get names of the packages

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.