Skip to content

Add check for existence of system requirement command line tools #52262

Open

Description

@jmagman

Check for the presence of all required executables as soon as possible (before artifacts are downloaded) in the tool and give a good error message. flutter doctor makes sense but the validators may be run too late to catch git or zip exceptions.

https://flutter.dev/docs/get-started/install/windows#system-requirements

  • Windows PowerShell 5.0 or newer (this is pre-installed with Windows 10)
  • Git for Windows 2.x, with the Use Git from the Windows Command Prompt option.

https://flutter.dev/docs/get-started/install/macos#system-requirements

  • bash
  • curl
  • git 2.x
  • mkdir
  • rm
  • unzip
  • which
  • zip

https://flutter.dev/docs/get-started/install/linux#system-requirements
(above list + xz-utils)

Activity

  1. added
    toolAffects the "flutter" command-line tool. See also t: labels.
    t: flutter doctorProblem related to the "flutter doctor" tool
    on Mar 9, 2020
  2. jmagman commented on Mar 9, 2020

    @jmagman
    MemberAuthor

    See #52241

  3. changed the title [-]Add system requirement command line tool check[/-] [+]Add check for existence of system requirement command line tools[/+] on Mar 9, 2020
  4. christopherfujino commented on Mar 9, 2020

    @christopherfujino
    Contributor

    It might make sense to create an abstraction layer class for each system dependency we assume is installed, to uniformly handle them not existing.

  5. jmagman commented on Mar 9, 2020

    @jmagman
    MemberAuthor

    May need to check some of them all the way up in https://github.com/flutter/flutter/blob/master/bin/flutter.

    Also that list seems kind of random, why mkdir and rm but not echo or touch or the dozens of other system commands we use.

  6. jonahwilliams commented on Mar 9, 2020

    @jonahwilliams
    Contributor

    Can we go another direction entirely? How do we remove most/all of these dependencies?

  7. christopherfujino commented on Mar 9, 2020

    @christopherfujino
    Contributor

    I would love that.

  8. christopherfujino commented on Mar 9, 2020

    @christopherfujino
    Contributor

    Related #45278

  9. added
    P3Issues that are less important to the Flutter project
    on Aug 11, 2020
  10. added
    tool-still-validIssues that have been deemed still valid as part of the Flutter Tools issue cleanup initiative.
    on Jul 9, 2025
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

    P3Issues that are less important to the Flutter projectt: flutter doctorProblem related to the "flutter doctor" toolteam-toolOwned by Flutter Tool teamtoolAffects the "flutter" command-line tool. See also t: labels.tool-still-validIssues that have been deemed still valid as part of the Flutter Tools issue cleanup initiative.triaged-toolTriaged by Flutter Tool team

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions