Skip to content

ER installation issue #358

Open
Open

Description

@jfkcooper

If I try to install the ER app from the installer (Apple Silicon, on an M2 chip) into a folder which already has ER (i.e. equivelent to an upgrade of the program) then it gets to this state, where clicking OK is not possible, though pressing enter does clear the error

Image

Activity

  1. rozyczko commented on Oct 20, 2026

    @rozyczko
    Member

    There are two separate problems:

    1. Installing over an existing installation is refused. The installers are built with the Qt Installer Framework. QtIFW refuses any target folder that already contains its MaintenanceTool, and it has no setting to turn this check off. So installing a new version into the folder of the old one is always refused, on every platform, not only on Apple Silicon.

    2. The OK button cannot be clicked. This is a QtIFW message box on macOS; pressing Enter dismisses it. Our installer applies no stylesheet of its own, so this comes from QtIFW itself. A newer QtIFW might fix it, but I haven't checked it yet.

    Workaround for now: run MaintenanceTool from the existing installation folder, choose Remove all components, then run the new installer.

    We can:

    1. Offer to uninstall the old version. The installer's control script checks whether the chosen folder already holds a MaintenanceTool. If it does, the installer asks: "An earlier EasyReflectometry is installed here. Remove it and install this version in its place?" On Yes, it runs the old MaintenanceTool's remove command and continues into the same folder.
      The refusal dialog will then never appear, so the unclickable OK button no longer matters.

    2. Suggest a different folder. When the default folder is taken, the installer pre-fills a versioned one, such as /Applications/EasyReflectometryApp-1.5.0. It is simple, and the old version stays available.
      However, old copies will pile up, each with its own MaintenanceTool, and existing Dock or Start-menu shortcuts keep opening the old version.

    3. Update in place through MaintenanceTool. This is how QtIFW is designed, actually. The installer already points to an online update repository, but we don't have any mechanism to publish it, so MaintenanceTool finds no updates.
      This would allow users to update without reinstalling.
      However, it is the largest change: every release would have to publish an update repository for each platform.

    4. Document the workaround only. Add the workaround above to the installation instructions.
      It costs nothing, but users still reach the refusal dialog with its unclickable button.

    I will implement option 1, with option 2 as the No answer, and add some docs about upgrading to INSTALLATION.md.

    I will also work on Option 3 for future releases.

  2. jfkcooper commented on Oct 20, 2026

    @jfkcooper
    CollaboratorAuthor

    Thanks Piotr, option 1 seems definitely the best for now

  3. rozyczko commented on Oct 20, 2026

    @rozyczko
    Member
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    [priority] highShould be prioritized soon[scope] maintenanceCode/tooling cleanup, no feature or bugfix (major.minor.PATCH)

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions