ClinicianFOCUS / clinicianfocus-installer

Install tool to help with installing the software and tools under development in this applied research project.
GNU Affero General Public License v3.0
0 stars 1 forks source link

UI Changes and start docker before launching #23

Closed pemba1s1 closed 1 month ago

pemba1s1 commented 1 month ago

Issue #21 #20

Changes

Summary by Sourcery

Enhance the installation process by requiring at least one component selection, adding uninstall confirmation, and automatically starting Docker if needed. Improve UI by dynamically positioning final page elements and updating the finish page to directly follow installation completion.

New Features:

Enhancements:

sourcery-ai[bot] commented 1 month ago

Reviewer's Guide by Sourcery

This PR implements several UI improvements and adds Docker startup functionality to the installer. The changes focus on enhancing user experience by adding validation checks, improving navigation flow, and ensuring Docker is running before container launches. The implementation modifies the NSIS installer script to handle these new requirements.

Sequence diagram for Docker startup process

sequenceDiagram
    participant User
    participant Installer
    participant Docker
    User->>Installer: Finish installation
    Installer->>Docker: Check if Docker is running
    alt Docker not running
        Installer->>User: Notify Docker is not running
        Installer->>Docker: Start Docker Desktop
        Docker-->>Installer: Docker started
    else Docker running
        Installer-->>User: Proceed with container launch
    end
    Installer->>Docker: Launch containers if selected

File-Level Changes

Change Details Files
Added component selection validation and improved installation flow
  • Added validation to ensure at least one component is selected
  • Implemented direct navigation to finish page after installation
  • Changed notification messages from popup boxes to DetailPrint for WSL2 and Docker installation status
install.nsi
Enhanced finish page UI and functionality
  • Made checkbox positions dynamic based on installed components
  • Added recommended actions section for Docker and container setup
  • Changed 'Close' button text to 'Finish'
  • Added vertical spacing between UI elements
install.nsi
Implemented Docker startup management
  • Added function to check Docker status and start if needed
  • Changed container launch commands from ExecWait to Exec for background execution
  • Added automatic Docker startup before launching LLM or Speech2Text containers
install.nsi
Added uninstaller pages configuration
  • Added confirmation page for uninstallation
  • Configured uninstaller files and finish pages
install.nsi

Possibly linked issues


Tips and commands #### Interacting with Sourcery - **Trigger a new review:** Comment `@sourcery-ai review` on the pull request. - **Continue discussions:** Reply directly to Sourcery's review comments. - **Generate a GitHub issue from a review comment:** Ask Sourcery to create an issue from a review comment by replying to it. - **Generate a pull request title:** Write `@sourcery-ai` anywhere in the pull request title to generate a title at any time. - **Generate a pull request summary:** Write `@sourcery-ai summary` anywhere in the pull request body to generate a PR summary at any time. You can also use this command to specify where the summary should be inserted. #### Customizing Your Experience Access your [dashboard](https://app.sourcery.ai) to: - Enable or disable review features such as the Sourcery-generated pull request summary, the reviewer's guide, and others. - Change the review language. - Add, remove or edit custom review instructions. - Adjust other review settings. #### Getting Help - [Contact our support team](mailto:support@sourcery.ai) for questions or feedback. - Visit our [documentation](https://docs.sourcery.ai) for detailed guides and information. - Keep in touch with the Sourcery team by following us on [X/Twitter](https://x.com/SourceryAI), [LinkedIn](https://www.linkedin.com/company/sourcery-ai/) or [GitHub](https://github.com/sourcery-ai).
sweep-ai[bot] commented 1 month ago

Hey @pemba1s1, here is an example of how you can ask me to improve this pull request:

@sweep Add unit tests for the `ComponentsPageLeave` function to verify:
- It correctly counts selected components
- It blocks progression when no components are selected
- It blocks progression when less than one component is selected
- It allows progression when one or more components are selected

:book: For more information on how to use Sweep, please read our documentation.