Home / Installer
Name Modified Size InfoDownloads / Week
Parent folder
mingw-get 2013-10-04
mingw-get-setup.exe 2013-10-04 86.5 kB
readme.txt 2013-10-04 22.9 kB
Totals: 3 Items   109.5 kB 2,579,255
MinGW Package Download and Installation Tool
============================================

$Id: readme.txt,v e70f37efc80b 2013/10/04 11:03:38 keithmarshall $

Description
-----------

mingw-get  is a tool to assist users in the management of MinGW and MSYS
software installations.  Configured via an online XML database, which is
managed  by the project maintainers, it offers a choice of graphical and
command line driven user interfaces facilitating selective download  and
installation of packages provided by the project.

The   XML  database  provides  maintainers  with  a  mechanism  for  the
specification of inter-package dependencies; this permits  configuration
of  any  package,  such that the end user may elect to install just that
specific package, leaving mingw-get to ensure that all dependencies will
be automatically satisfied at installation time.


Licensing Terms
---------------

mingw-get  is  free software.  Permission is granted to copy, modify and
redistribute this software, under the  provisions  of  the  GNU  General
Public  License,  Version 3, (or, at your option, any later version), as
published by the Free Software Foundation; see the file  COPYING,  which
is distributed with the mingw-get-lic package, and with the source code,
for licensing details.

Note, in particular, that mingw-get is provided  "as is",  in  the  hope
that  it may prove useful, but WITHOUT WARRANTY OF ANY KIND; not even an
implied WARRANTY OF MERCHANTABILITY, nor of FITNESS FOR  ANY  PARTICULAR
PURPOSE.   Under no circumstances will the author, or the MinGW Project,
accept liability for any damages, however caused, arising from  the  use
of this software.


Release Notes
=============

The  information  presented  below  describes  the  user visible changes
introduced with each release of mingw-get.  The online version  of  this
historical  record is restricted to recent releases; the full history is
recorded in the NEWS file, which is included in the source code package.


mingw-get-0.6.2-mingw32-beta-20131004-1
---------------------------------------

Release date: 2013-10-04

This is a further bug fix release; it addresses the following issues:--

- MinGW-Feature #2036 partially implemented:  profile.xml  now  provides
  for  separate  assignment  of  preferences for each of the CLI and GUI
  clients.  Users are advised to review the changes which have been made
  in  the  distributed  copy  of  defaults.xml,  and to incorporate such
  adjustments  as  they  see  fit,  into  their  own  local  copies   of
  profile.xml;  (alternatively,  those  who don't care to maintain their
  own copy of  profile.xml  should  replace  any  pre-existing  copy  of
  profile.xml with a copy of the distributed defaults.xml).

- MinGW-Bug #2028   partially   resolved:   affiliation   of  individual
  component packages with any package group is now supported;  also  the
  issue  of  only the first affiliation for each package being honoured,
  when displaying the package list, has been corrected.

- MinGW-Bug #2051 fixed: successful  removal  of  meta-packages  is  now
  correctly recorded when updating the GUI's package list display.

- MinGW-Bug #2052  fixed:  the  LUA_PATH  environment  variable  is  now
  correctly specified, for both CLI and GUI clients.

- MinGW-Bug #2054 fixed: pre-remove scripts calling the unlink.js helper
  to  remove  program  shortcuts are now assured that the reference path
  specified with the '--if-linked' attribute will  be  normalized  to  a
  canonical  file  system  form,  before  comparison  with the similarly
  normalized path name stored in any possibly matching shortcut.

- MinGW-Bug #2057  fixed:  mingw-get's  embedded  Lua  interpreter   now
  provides  its own built-in wsh.execute method, which allows invocation
  of the Windows Scripting Host, to run any JScript or VBScript  helper,
  without any need to open a redundant Windows Console.

- The  "Apply Changes" dialogue now assigns default focus to the "Apply"
  button, rather than to the list of packages to be removed; this avoids
  an ugly highlighting issue, when the dialogue is displayed.


mingw-get-0.6.1-mingw32-beta-20130910-1
---------------------------------------

Release date: 2013-09-10

This  is a bug fix release; it corrects a potential buffer overrun issue
within the diagnostic message handler for the GUI client, as  identified
by MinGW-Bug #2026.

In  addition  to  fixing  the  fundamental  buffer  overrun  issue,  the
following changes have been included:--

- Improved diagnosis of possible file  collisions,  resulting  from  the
  installation of packages with conflicting content.

- No  entry  is  now recorded in the installation manifest, for any file
  which is not extracted from its providing package archive,  when  such
  extraction  would  result in file collision; (this fixes the secondary
  issue noted on the ticket for MinGW #2026).

- Carriage returns are now handled appropriately, when  emitted  to  the
  GUI client's diagnostic message handler pseudo-terminal windows.

All  users of mingw-get-0.6.0 are advised to upgrade to this release, as
soon as possible.


mingw-get-0.6.0-mingw32-beta-20130904-1
---------------------------------------

Release date: 2013-09-04

This is the first release to incorporate a  working  prototype  for  the
mingw-get  GUI  client, together with the integrated mingw-get-setup.exe
tool.  With the advent of these additional  capabilities,  the  existing
mingw-get-inst.exe  wrapper becomes redundant, and is now deprecated; it
will be withdrawn after the next mingw-get release.

With this release of mingw-get-setup.exe,  first  time  installation  of
mingw-get  has  become  considerably simpler than previously; please see
the "Installation Instructions" for further information.

In addition to the addition of the GUI client, and the simplified  first
time installation procedure, this release incorporates the following new
user visible features:--

- New "preferences" section in profile.xml; this allows users to  adjust
  the  default behaviour for command line options such as "--start-menu"
  and "--desktop", to allow the automatic creation  of  shortcuts,  (for
  packages which provide them), without requiring explicit specification
  of the option on every mingw-get invocation.  See the comments  within
  defaults.xml, for configuration instructions.

- The  output  from  "mingw-get  --help"  has been revised, to provide a
  better explanation of the use  of  the  "version  selection"  feature,
  which  allows  users to force installation of a particular non-current
  version of any package.

- The "gui.exe" subsidiary program has been renamed as "guistub.exe"; it
  remains  in  place, with this new name, to furnish diagnostics, in the
  event that the user attempts to invoke the GUI from the command  line,
  when  no  GUI  support  has  been  installed.  Such GUI support is now
  provided by  "guimain.exe";  this  may  be  installed  optionally,  by
  choosing to install the "mingw-get-gui" package.

- Internal  "globbing"  of  command  line  arguments  is  now explicitly
  disabled; (any benefit of ever having supported  this  seems  dubious;
  however,  external  "globbing"  by  shells,  such  as MSYS' sh.exe and
  bash.exe is not, and cannot be, affected by this change).

- For users wishing to follow development at the source code level,  the
  master  source  code  repository has been relocated from CVS, to a new
  git  repository  at  git://git.code.sourceforge.net/p/mingw/mingw-get;
  please  refer to the INSTALL file, in the current source distribution,
  for further information on accessing this repository.


mingw-get-0.5-mingw32-beta-20120426-1
-------------------------------------

Release date: 2012-04-26

This is an emergency bug-fix release; it provides an  immediate  interim
work-around  for bug #3520864, circumventing a critical regression which
was introduced in mingw-get-0.5-mingw32-beta-20120416-1, and is  thus  a
mandatory upgrade for users who had previously upgraded to that version.

It also incorporates the correction for bug #3520488.


mingw-get-0.5-mingw32-beta-20120416-1
-------------------------------------

Release date: 2012-04-16

This  milestone  release marks the point at which the code base, for the
CLI implementation, is deemed to have progressed from alpha to beta  (or
better)  quality.  It corrects several packaging deficiencies within the
source code distribution, in addition to fixing two  reported  bugs;  it
also adds several new features.

The following bugs are fixed by this release:--

- #3416013: --reinstall and dependent packages

  Specifically,  in the case of application of the --reinstall option to
  meta-packages, previous releases would have no effect.   This  is  now
  corrected,  such that the --reinstall action is applied recursively to
  each declared requirement of any meta-package, to  the  depth  of  the
  first non-meta package in each requirement chain.

- #3424406: install --reinstall performs an upgrade

  When  performing  the  "install"  action, with the --reinstall option,
  previous releases would consider the availability of upgrades for  the
  package  in question, promoting the "install" action to "upgrade" when
  possible.  This anomaly has now been corrected;  when  specified  with
  the "install" action, the --reinstall option will cause reinstallation
  of the originally installed version, ignoring available upgrades; (the
  former  behaviour  remains  available,  by  specifying the --reinstall
  option together with the "upgrade" action).

The following new features have been implemented:--

- Forced installation of a specified (non-current) release.

  The package name specified  as  the  predicate  of  any  "install"  or
  "upgrade"  action  may  now  be  qualified by a version specification,
  allowing the user to select any known version,  (not  necessarily  the
  most recently released), for installation.  In the case of any package
  which has not been previously installed, the format is any of:

     mingw-get install "package-name=version-spec"
     mingw-get install "package-name<version-spec"
     mingw-get install "package-name<=version-spec"
     mingw-get install "package-name>=version-spec"
     mingw-get install "package-name>version-spec"

  while for any package which has been previously installed, and  is  to
  be  "rolled back" to an earlier release, the same forms are supported,
  using the "upgrade" action in place of "install".

  In each of the above  command  forms,  "package-name"  represents  the
  unqualified  package  name,  as  it  would be specified in any regular
  invocation of mingw-get, and "version-spec" is the  selector  for  the
  desired  version;  (in  the  case of an "=" qualifier, this must be an
  exact match for the desired version, unless it ends with the "*"  wild
  card).   For  example,  if  GCC  has already been installed at version
  4.6.2-1, (the most recent release at this time of writing), it may  be
  rolled back to the last version 4.5 release by:

     mingw-get upgrade "gcc=4.5.*"

  or by using an inequality specifier, to exclude gcc-4.6 and later:

     mingw-get upgrade "gcc<4.6"

  Note  that, particularly in the case of the inequality qualifiers, the
  argument must be quoted, to avoid  interpretation  of  the  inequality
  operator as the shell's redirection operator.

  Also note that any explicit *inclusive* version range, such as:

     mingw-get upgrade "gcc>4.5<4.6"

  is permitted; however no white space is permitted, anywhere within the
  qualified package specification.

- Support for package maintainer scripted installation hooks.

  An embedded script interpreter, based on Lua  version  5.2,  has  been
  incorporated; this provides support for "pre-install", "post-install",
  "pre-remove", and "post-remove" action hooks, which may  be  specified
  by  package  maintainers,  in  the form of Lua scripts embedded within
  "action" elements in any package's XML catalogue entry.

  This capability is further supported by the provision of Lua  modules,
  providing  a  standardised  mechanism for creation of MS-Windows shell
  links, (a.k.a. shortcuts).

- New option: "--desktop"

  Grants permission, to package maintainer specified scripts, to  create
  shortcuts on the user's desktop; alternatively, it may be specified as
  --desktop=all-users, to make such shortcuts available to all users.

- New option: "--start-menu"

  Grants permission, to package maintainer specified scripts, to  create
  shortcuts in the user's start menu; alternatively, it may be specified
  as --start-menu=all-users, to make such  shortcuts  available  in  the
  start menus of all users.


Installation Instructions
=========================

The information which follows describes the procedure for installing and
configuring mingw-get, and for keeping the  installation  current.   The
online  version  of  this document is an abridged form, focussing on the
installation of binary releases; users who prefer to build  and  install
from source are advised to consult the unabridged form of this document,
which may be found  in  the  file  "INSTALL",  within  the  source  code
distribution tarball.

Please report bugs as directed at http://mingw.org/Reporting_Bugs


First Time Installation of a Current Binary Release
---------------------------------------------------

Note that, as of release 0.6.0, the installation procedure for mingw-get
has been significantly simplified.  The installation instructions  which
follow  relate  to this release, and later; for instructions relating to
any earlier release, or if you are unable to run the new setup  tool  on
any  legacy  version  of Windows, please refer to the following section,
under the heading "First Time Installation of a Legacy Binary Release".

To install mingw-get, visit the MinGW files repository at:

    http://sourceforge.net/projects/mingw/files

then, from the "Installer" folder, download and run mingw-get-setup.exe,
and  select  your  choices  from  the  options presented [*], to install
mingw-get.  When this has completed, you will then be offered the option
to  immediately  continue  with the installation of a basic selection of
MinGW packages  [**].   If  you  do  choose  to  continue  with  package
selection, this will be processed by an integrated preview of the mingw-
get GUI  application,  (regardless  of  whether  you  have  accepted  or
declined  the  option  to  install  the  GUI);  to complete your initial
installation:--

- Select individual packages, within the upper  right  hand  "list-view"
  pane of the GUI window;

- From  the  "Package"  menu,  (which also appears as a pop-up, when you
  click the status icon at the left hand side of the list entry), select
  the  option  to  "Mark  for  Installation", in respect of each package
  which you wish to install;

- Having so marked all packages which you  wish  to  install,  from  the
  "Installation"  menu  select  the  "Apply Changes" option, to complete
  your initial installation.

After you have completed the installation  of  mingw-get,  as  described
above,  and  regardless  of  whether  you  chose  to  install additional
packages, or not, you  are  advised  to  review  the  configuration,  as
specified  in  your  profile.xml file, and noting in particular, any new
features which are described in the supplied defaults.xml file,  if  you
have  a profile.xml from a previous release; please refer to the section
below, under the heading "Specifying the Configuration", for details.

[*] By default, mingw-get-setup.exe will offer to install mingw-get into
the  "C:\MinGW" directory.  You are *strongly* recommended to adopt this
default; however, if you do decide to change it, please *do*  choose  an
alternative  with  no  white  space  within  its absolute path name.  In
particular, those who choose to ignore this advice,  and  install  MinGW
into  some  subdirectory  of  (for  example)  C:\Program Files", usually
discover to their cost that certain tools may not work correctly.

[**] The set  of  packages  offered,  as  the  foundation  for  a  basic
installation,  are equivalent to those offered by the mingw-get-inst.exe
companion to earlier releases of mingw-get.  Unlike  mingw-get-inst.exe,
mingw-get-setup.exe,  does  *not*  insist that you install the basic GCC
compiler suite.  You are free to install it, or not, at your own option;
if  you do wish to install it, please select the "mingw32-base" package,
which is the equivalent of the minimum mandatory  selection  imposed  by
mingw-get-inst.exe


First Time Installation of a Legacy Binary Release
--------------------------------------------------

The  instructions  which  follow relate to the installation of mingw-get
releases prior to version 0.6.0; they also apply in the  case  of  later
versions,  where  a  legacy version of Windows may not permit you to run
the new mingw-get-setup.exe tool.  For installation of release 0.6.0, or
any  later  release,  using the new tool, please refer to the preceeding
section, under the heading "First Time Installation of a Current  Binary
Release".

To install mingw-get, visit the MinGW files repository at:

    http://sourceforge.net/projects/mingw/files

and,  from the "Installer/mingw-get-<version>-<class>-<release>" folder,
download your choice of either:

    mingw-get-<version>-mingw32-<class>-<release>-bin.zip

or (preferred, if you know how to unpack it):

    mingw-get-<version>-mingw32-<class>-<release>-bin.tar.xz

Whichever of these you choose to download, you should unpack it into the
directory  in  which  you  intend  to  host your MinGW installation; (we
*strongly* recommend that you adopt our standard of C:\MinGW [*], unless
you  have an exceptional reason to make an alternative choice), then use
your preferred method for assignment of environment variables to add the
appropriate  directory (default C:\MinGW\bin) to your PATH; (this should
be added as a permanent PATH assignment).

Having completed this phase of installation, you may then wish to review
the following section on configuration; if nothing else, you may wish to
copy the supplied defaults.xml file to profile.xml, even if  you  choose
not  to  introduce  any  customisations.   Finally,  to  initialise  the
installation recording database, you should run the command [**]:

    C:\> mingw-get install mingw-get


[*] If you insist on adopting a different directory from the recommended
default,  you  are  *strongly*  advised to avoid any directory which has
white space in its absolute path name; in particular, those  who  choose
to  ignore this advice, and install MinGW into some subdirectory of (for
example) C:\Program Files", usually discover to their cost that  certain
tools may not work correctly.

This document will refer to files as though installed in the recommended
default location, with a path prefix of C:\MinGW.  If, having  read  the
above  warning, you do decide to adopt an alternative installation path,
then please substitute your alternative prefix,  as  appropriate,  where
this document refers to C:\MinGW.

[**] If  you  have  chosen  mingw-get-0.6.2-mingw32-bin.tar.xz  as  your
installation source, rather  than  mingw-get-0.6.2-mingw32-bin.zip,  you
may like to create the directory:

    C:\MinGW\var\cache\mingw-get\packages

(together  with any requisite parents, and adjusting the C:\MinGW prefix
to suit your installation choice, if necessary).  You may then move  the
mingw-get-0.6.2-mingw32-bin.tar.gz  file  to  it,  *before*  you run the
above command; this will relieve mingw-get of the overhead  which  would
be incurred by downloading the file a second time.


Specifying the Configuration
----------------------------

When  you  invoke  mingw-get, it will attempt to read configuration data
from the file:

    C:\MinGW\var\lib\mingw-get\data\profile.xml

(with any necessary adjustment of the C:\MinGW installation  prefix,  as
noted  previously);  if,  and  only if, this file cannot be read, then a
fallback attempt will be made, to read the configuration from:

    C:\MinGW\var\lib\mingw-get\data\defaults.xml

instead.  Of this pair of files, profile.xml is  *not*  included  within
the  mingw-get  distribution,  but defaults.xml *is*.  It is a liberally
commented XML file, which you are advised to copy to create profile.xml;
you  may then modify this, as you see fit, to suit your own installation
requirements. [*]

At the present time, the only entries you should consider  changing  are
the path names specified by the "path" attribute associated with each of
the "sysroot" elements within the  first  (only)  "system-map"  element;
(these  specify  the prefix directory path names for your installation).
You probably want to make the path for  the  "mingw32"  subsystem  match
your choice for your mingw-get installation; (the "%R" notation, used in
defaults.xml, sets it up thus,  regardless  of  whether  you  choose  to
install in C:\MinGW, or an alternative location).

[*] The  recommendation  to copy defaults.xml to profile.xml may seem to
be an unnecessary inconvenience; it is implemented this way in order  to
safeguard any configuration changes you wish to make; during an upgrade,
defaults.xml will be overwritten, but  profile.xml  will  not,  so  your
configuration will be preserved.


Upgrading an Existing Installation to a Newer Binary Release
------------------------------------------------------------

Once  you have completed a first-time installation of mingw-get, whether
from a binary release or by building and installing from source, you may
wish  to upgrade it, as the project team publishes new releases.  Unless
you insist on *always* installing  from  source,  (in  which  case  each
upgrade effectively becomes a fresh first-time installation from the new
source code), and provided:

- you have previously installed mingw-get-0.1-mingw32-alpha-3 or  newer,
  and

- you have completed the first-time installation process, by running

      C:\> mingw-get install mingw-get

then you may upgrade to a newer binary release by running

      C:\> mingw-get update
      C:\> mingw-get upgrade mingw-get

Otherwise,  if  you have a previously unfinalised installation, i.e. you
did not previously run

      C:\> mingw-get install mingw-get

and that previous installation is  of  mingw-get-0.1-mingw32-alpha-3  or
newer, then you may upgrade and finalise by running

      C:\> mingw-get update
      C:\> mingw-get install mingw-get

Alternatively, any previous installation of mingw-get may be upgraded by
simply  performing  a  new  first-time  installation,  overwriting   the
previously installed version; (this is the only option available, if the
original installation predates mingw-get-0.1-mingw32-alpha-3).


$Document: readme.txt $: end of file
Source: readme.txt, updated 2013-10-04