Skip to content

Feature request: interactive menu instead of auto-running Primary Setup on launch #2

Description

@technorant

Really enjoying LinuxSetupPro so far — clean install, honest error messages, great tool overall. One thing that would make it a lot more flexible: right now running python3 main.py immediately jumps into Primary Setup with no choice involved. If I just want to check the last report, or regenerate my terminal banner, or go straight to the Secondary tools menu (after already running Primary once before), I have to either let Primary run again or dig into the CLI flags in the README.

Would be great to have a simple menu on launch instead, something like:

LinuxSetupPro — Main Menu

  1. Run Primary Setup
  2. Run Secondary Setup
  3. Generate Terminal Banner
  4. View Last Report
  5. Exit

A few thoughts on how this could work well:

Since Secondary tools assume Primary has already set up the base environment, it'd make sense to block Secondary until Primary has been run at least once, with a prompt offering to run it first if someone tries to jump straight to Secondary on a fresh install.
"View Last Report" would be really useful as its own menu option — right now there's no easy way to just check what happened on the last run without re-running anything.
Please keep the existing CLI flags (--only primary, --report, etc.) working as-is for those of us who script this or use it non-interactively — the menu should just be the new default when running it plain, not a replacement for the flags.

Happy to test this once it's in, this would make the tool feel a lot more like a proper CLI utility.

Tasks (proposed):

  1. Add main menu shown after the startup banner, before any install begins
  2. Gate Secondary Setup behind a check that Primary has run at least once, with a warn-and-offer-to-run-Primary flow if not
  3. Add "View Last Report" as a menu option
  4. Confirm existing CLI flags continue to bypass the menu unchanged
  5. Update README screenshots/docs to reflect the new default flow

Metadata

Metadata

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions