Opened 8 years ago

Closed 15 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 Version: 6.4.2
Keywords: Cc: Bulat.Ziganshin@…
Operating System: Windows Architecture: Unknown/Multiple
Type of failure: Other Difficulty: Moderate (less than a day)
Test Case: N/A Blocked By:
Blocking: Related Tickets:

Description

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:

http://www.haskell.org/pipermail/glasgow-haskell-users/2004-March/006402.html
http://www.haskell.org/pipermail/hugs-users/2006-February/000656.html
http://article.gmane.org/gmane.comp.lang.haskell.cvs.ghc/14819/
http://www.haskell.org/pipermail/glasgow-haskell-users/2006-September/011107.html
http://www.haskell.org/pipermail/glasgow-haskell-users/2006-September/011110.html

Attachments (2)

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

Download all attachments as: .zip

Change History (21)

comment:1 Changed 8 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)?

Thanks

comment:2 Changed 8 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 8 years ago by neil

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

comment:3 Changed 8 years ago by simonpj

Here is the page documenting Claus and Neil's proposal:http://haskell.org/haskellwiki/Installers

comment:4 Changed 8 years ago by igloo

  • Milestone set to 6.6.1
  • Test Case set to N/A

comment:5 Changed 7 years ago by igloo

  • Milestone changed from 6.6.1 to 6.6.2

comment:6 Changed 7 years ago by igloo

This will probably wait for the new Windows installer.

comment:7 Changed 7 years ago by neil

  • Component changed from GHCi to Build System
  • Difficulty changed from Unknown to Difficult (1 week)
  • Owner set to neil
  • Priority changed from normal to low

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 7 years ago by neil

  • Difficulty changed from Difficult (1 week) to 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 7 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 7 years ago by neil

  • Milestone changed from 6.6.2 to 6.8

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 6 years ago by igloo

  • Milestone changed from 6.8 branch to _|_

comment:12 Changed 6 years ago by igloo

See also #2505.

comment:13 Changed 6 years ago by simonmar

  • Architecture changed from Unknown to Unknown/Multiple

comment:14 Changed 4 years ago by simonmar

  • Difficulty changed from Moderate (1 day) to Moderate (less than a day)

Changed 4 years ago by claus

modified installer builder script

comment:15 Changed 4 years ago by claus

  • Status changed from new to patch
  • Type of failure set to 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 ghc.iss.in, apply to HEAD and STABLE, then leave this ticket open for the remaining issues (such as claiming .hs for ghc_haskell).

comment:16 Changed 4 years ago by simonmar

  • Milestone changed from _|_ to 7.0.1
  • Owner changed from neil to igloo
  • Priority changed from low to highest

comment:17 Changed 4 years ago by igloo

  • Milestone changed from 7.0.1 to _|_
  • Owner changed from igloo to claus.reinke@…
  • Priority changed from highest to normal

Thanks; applied to HEAD and 7.0:

Thu Oct 21 05:29:42 PDT 2010  Ian Lynagh <igloo@earth.li>
  * 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 4 years ago by igloo

  • Owner claus.reinke@… deleted
  • Status changed from patch to new

comment:19 Changed 15 months ago by morabbin

  • Resolution set to fixed
  • Status changed from new to closed
  • Type of failure changed from None/Unknown to Other

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

Note: See TracTickets for help on using tickets.