Opened 12 years ago

Closed 6 years ago

Last modified 4 months ago

#916 closed bug (fixed)

windows installer should play nice with other Haskell tools

Reported by: claus.reinke@… Owned by:
Priority: normal Milestone:
Component: Build System (make) Version: 6.4.2
Keywords: Cc: Bulat.Ziganshin@…
Operating System: Windows Architecture: Unknown/Multiple
Type of failure: Other Test Case: N/A
Blocked By: Blocking:
Related Tickets: Differential Rev(s):
Wiki Page:


traditionally, the windows installers have registered ghci as the default tool to operate on .hs/.lhs files, without regard for existing file type associations. that has been a real pain for those of us who like to use many tools on haskell files.

could you please ensure that future installers are more cooperative?

  • coordinate with Neil for WinHugs, and possibly with others
  • make file type registration optional
  • do not overwrite existing default handler for .hs/.lhs, just add new non-default handlers (so people can use their own defaults, eg. editors, and still have easy access to ghci, hugs, ..)

this has come up many times. see also:

Attachments (2)

hsicon.ico (2.7 KB) - added by neil 12 years ago.
Haskell .hs/.lhs file icon (as used by WinHugs) (4.5 KB) - added by claus 8 years ago.
modified installer builder script

Download all attachments as: .zip

Change History (22)

comment:1 Changed 12 years ago by simonpj

Thanks for raising this.

I talked to Sigbjorn about it at ICFP. If you two can form a consensus (giving others an opportunity to speak up) about what should be the desirable behaviour for GHC's installer, he's happy to implement it. (Caveat: unless something turns out to be a lot of work, but that's unlikely.)

You mention two specifics:

  • make file type registration optional
  • do not overwrite existing default handler for .hs/.lhs, just add new non-default handlers

I believe that the former is done already; not sure about the latter (Sigbjorn will correct me if I'm wrong). I don’t know what a non-default handler is.

Is there anything else? There was mention of better icons. What did you have in mind by "coordinate with Neil for WinHugs, and possibly with others"? Of course we'd like to coordinate... but about what specifically (apart from the above two)?


comment:2 Changed 12 years ago by neil

Me and Claus have come to some very definate ideas on what the ideal behaviour should be (the last few threads in the above list) - no one else has expressed any opinions yet. I have better .hs document icons, which I've sent via the GHC mailing list before, but as far as I am aware no one has picked them up - if someone can say who wants them then I'd be happy to send them on.

Changed 12 years ago by neil

Attachment: hsicon.ico added

Haskell .hs/.lhs file icon (as used by WinHugs)

comment:3 Changed 12 years ago by simonpj

Here is the page documenting Claus and Neil's proposal:

comment:4 Changed 12 years ago by igloo

Milestone: 6.6.1
Test Case: N/A

comment:5 Changed 12 years ago by igloo


comment:6 Changed 12 years ago by igloo

This will probably wait for the new Windows installer.

comment:7 Changed 12 years ago by neil

Component: GHCiBuild System
difficulty: UnknownDifficult (1 week)
Owner: set to neil
Priority: normallow

One option is WiX, as bug 604 suggests. I've also copied the priority/settings from that bug to this one. I intend to solve this at the same time as doing an installer for Yhc/Hugs/Cabal etc.

comment:8 Changed 12 years ago by neil

difficulty: Difficult (1 week)Moderate (1 day)

The new installer means that this work is now tweaking the installer, rather than writing a new one - so shouldn't take as long.

comment:9 Changed 12 years ago by guest

Cc: Bulat.Ziganshin@… added

one note about installer - it will be great to use one that incorporates lzma compression because this can make download ~20% smaller

comment:10 Changed 12 years ago by neil


Bulat: We do use LZMA compression in the latest installer.

WinHugs needs to move to using the same installer script as GHC, then this work can be picked up again.

comment:11 Changed 11 years ago by igloo

Milestone: 6.8 branch_|_

comment:12 Changed 11 years ago by igloo

See also #2505.

comment:13 Changed 10 years ago by simonmar

Architecture: UnknownUnknown/Multiple

comment:14 Changed 9 years ago by simonmar

difficulty: Moderate (1 day)Moderate (less than a day)

Changed 8 years ago by claus

Attachment: added

modified installer builder script

comment:15 Changed 8 years ago by claus

Status: newpatch
Type of failure: None/Unknown

Ran into this yet again when trying out 7.0 and 7.1 snapshots. This has been delayed for so long now that I took a look and would like to suggest some changes. These changes do not address all points in this ticket, but:

  • add link to inno setup docs, so readers don't have to guess what ghc.iss might be
  • add Task section, and associated most Registry actions with separate (sub)tasks, so that file associations, default action, and PATH setting can be optional
  • copy license file into doc directory
  • install icon file again, so that DefaultIcon is no longer a dangling pointer (#4352)
  • only delete ghc_haskell key if empty (in case there were other tools using it)
  • add versioned GHCi to right-click menu (to allow for multiple tool installs)

As I have zero experience with installer builders, you'll need to review. I suggest to review the modified, apply to HEAD and STABLE, then leave this ticket open for the remaining issues (such as claiming .hs for ghc_haskell).

comment:16 Changed 8 years ago by simonmar

Milestone: _|_7.0.1
Owner: changed from neil to igloo
Priority: lowhighest

comment:17 Changed 8 years ago by igloo

Milestone: 7.0.1_|_
Owner: changed from igloo to claus.reinke@…
Priority: highestnormal

Thanks; applied to HEAD and 7.0:

Thu Oct 21 05:29:42 PDT 2010  Ian Lynagh <>
  * Windows installer improvements from Claus

For the remaining issues, it would probably be best to make a new ticket (or tickets), so people don't have to wade through the ticket history and list posts to understand what remains to be done, and then close this ticket.

comment:18 Changed 8 years ago by igloo

Owner: claus.reinke@… deleted
Status: patchnew

comment:19 Changed 6 years ago by morabbin

Resolution: fixed
Status: newclosed
Type of failure: None/UnknownOther

Remaining issues seem to have gotten their own tickets, as per igloo's request above (for example, #4292, #4353, #3847, #3934). Closing as fixed.

comment:20 Changed 4 months ago by bgamari

Component: Build SystemBuild System (make)

The new Hadrian build system has been merged. Relabeling the tickets concerning the legacy make build system to prevent confusion.

Note: See TracTickets for help on using tickets.