Re: purpose of exe? - Mailing list pgsql-odbc
From | Craig Ringer |
---|---|
Subject | Re: purpose of exe? |
Date | |
Msg-id | CAMsr+YGxNbC+jzG=MgxqpfWVm-TLF1+LJfPwAouEUhar0G6Qpg@mail.gmail.com Whole thread Raw |
In response to | Re: purpose of exe? (Christian Ullrich <chris@chrullrich.net>) |
List | pgsql-odbc |
On 1 May 2015 at 10:15, Christian Ullrich <chris@chrullrich.net> wrote: > * Adrian Klaver wrote: > >> On 04/29/2015 07:08 PM, Josh Hester wrote: >>> >>> Hi, can you explain the purpose of the exe wrapper around the two msi >>> files? Will there be a move away from msi files in the future? > > >> http://www.postgresql.org/message-id/545233FC.9070502@winpg.jp > > > That doesn't actually *explain* anything, it just states a fact with no > rationale behind it. > > There are those of us who use some automated deployment method to install > the driver; having to extract the packages from the wrapper first is just > needless effort. > > Yes, in principle I can deploy the wrapper executable. Except if I want to > apply an external transform to the package, which I do. > > There may actually be some software in the world where MSI simply can't do > the job. I have a hard time believing that an ODBC driver that drops maybe > ten files and the same number of registry keys belongs in that category. > > I have no objection to that wrapper existing, I just don't want to use it. > Please provide the individual MSIs as well. Strong agreement on that point - the individual MSI files should be published, or trivially extractable from the bundle installer. I think the latter would keep things simpler for most users while still making easy MSI modifications, AD deployments, etc practical. A quick look at the bundle suggests that the installer wrapper should support the /layout option to unpack the bundle contents... but there's no indication where they go, and the installer simply says "Setup successful" after run with /layout . It doesn't seem to spit anything out into %TEMP% or the directory it's run from, and the WiX installer logs in %TEMP% suggest it might just be running an install as if /layout was not specified. A bit of searching shows that /layout doesn't extract the contents: http://stackoverflow.com/q/16219706/398670 . So it's not what's needed. The installer setup program is a WiX bundle: http://wixtoolset.org/documentation/manual/v3/bundle/, http://wixtoolset.org/documentation/manual/v3/xsd/wix/bundle.html . The sources are in the main psqlODBC tree, under installer/psqlodbc-setup/ . Since there's no /extract flag or similar, until/unless one gets added you can extract a bundle by installing the WiX toolkit then using: dark -x . the_bundle.exe which will emit the MSIs in a directory named AttachedContainer /. Clumsy, to be sure, but it'll work. There's a WiX feature request to add self-extract support; see http://wixtoolset.org/issues/3659/ . In the mean time we could support it if we used a custom bundler application, but I don't expect anyone will be leaping for the chance to do that... This might be interesting if anyone does land up interested: http://www.wrightfully.com/extracting-wix-bundled-msi-files-without-running-the-installer/ . It's focused on unpacking the MSIs but in the process shows how to unbundle them. On a side note, the README that's zipped with the bundler doesn't explain that both the 32-bit and 64-bit drivers are included, which would be helpful. -- Craig Ringer http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services
pgsql-odbc by date: