Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open Manifest's Homepage in default browser via a command #501

Open
skyhoshi opened this issue Jul 17, 2020 · 6 comments
Open

Open Manifest's Homepage in default browser via a command #501

skyhoshi opened this issue Jul 17, 2020 · 6 comments
Labels
Issue-Feature This is a feature request for the Windows Package Manager client.

Comments

@skyhoshi
Copy link

Description of the new feature/enhancement

I was expecting to have a command that would open the homepage of the manifest without having to use copy paste within the command window itself.

Current Process I have to employ

exploring winget's : List of available manifests via

winget show 

The above command lists all the manifests.
looking through the manifests some may interest me and I run

winget show <app.mainfest>

This outputs the data of the manifest in a human readable form.

Its at this point i have to Select the URL of the homepage and copy paste it into my browser.
I was expecting to find an option to open the Homepage URL via the command line.

Proposed technical implementation details (optional)

I was epxecting to be able to type something like

winget homepage <app.manifest>

Expected Functions of this command.

  1. This command would [if homepage or other URL, is found in the manifest] take the url and open the url in the user's/systems default browser.
  2. If the homepage is not present in the manifest the output would notify the user the URL was not found in the manifest.

Example: Scoop home would open the app's homepage listed in the manifest allowing for exploration.

Additional Consideration

I would also consider making at least one informatic URL (be it license[licenseURL], privacy policy[not found in manifest], or homepage url[Homepage]) required in the minimum required.

@skyhoshi skyhoshi added the Issue-Feature This is a feature request for the Windows Package Manager client. label Jul 17, 2020
@ghost ghost added the Needs-Triage Issue need to be triaged label Jul 17, 2020
@denelon denelon removed the Needs-Triage Issue need to be triaged label Jul 17, 2020
@denelon denelon added this to the Package Manager Backlog milestone Jul 17, 2020
@ghost ghost added the In-PR Issue related to a PR label Jul 17, 2020
@megamorf
Copy link

megamorf commented Jul 18, 2020

An alternative is to wait for the Windows Terminal to support links (microsoft/terminal#574) which is how you typically handle this use case in Linux/MacOS terminals.

@skyhoshi
Copy link
Author

There's a couple of concerns with that feature. (microsoft/terminal#574)

  1. It's not a feature complete process (only works when the end user is using windows terminal)
  2. The feature presented doesn't address the need to take my hand off the keyboard put it on the mouse and then back on the keyboard.
  3. the feature not clear if that marketing video referenced in microsoft/terminal#574 opens a inline window (like if you hover over the link created in @megamorf's comment, when you hover over the "Design Clickable Links & Link preview feature/extension terminal#574" link, or if it opens a completely separate browser (new Window/tab) as expected.

As that feature ms/terminal's link preview/clickability is awesome it doesn't present fidelity in a single application but dependencies across apps.

I do not see the microsoft/terminal#574 feature as taking away from this feature, nor is it bad to have interoperability but having the app act the same in CMD, as PowerShell and other shells/terminal interfaces (for example : Fluent Terminal would be what I'd look for.

@JohnMcPMS
Copy link
Member

I would propose the use of an option to show rather than a whole new command. Example:

winget show git --homepage

I'm not a fan of having a very large number of commands off the root, but I also realize that I'm asking for more typing. However, this pattern could logically be extended to any URL in the manifest. Alternately, a new, more generic command to indicate 'ShellExec this thing' would be better than one specific to homepage. If this is the route chosen, go probably isn't the best choice, but using it as a placeholder here:

winget go git --homepage
winget go git --license
winget go git --privacy

@skyhoshi
Copy link
Author

I agree with your concept completely, One thing I would add is that... I'm kinda like Alton Brown's motto on kitchen appliances when it comes to commands, a command that does one thing is fine but a command that can do more than one thing is better (a kitchen/cooking utensil should have more than one purpose). Good Eats - Wikipedia

that being said, the command

winget show <app> --homepage 

would be the best fit for this. I still believe it should output the same as

winget show <app>

but with the added feature of if the homepage exists it opens in the browser.

the PR Demonstrates the functionality of the command. but now instead the command would turn the show command to look for the addition of the -- subcommands and process the open homepage method created in the PR.

Question(s):

There any additional thoughts on this?

as for the individual command, the option of renaming the command as is would benefit the multi-function nature of the command I like but in choosing one such as go could we go with something like manifest or info
It seems like manifest is in the works for something else.
and Info seems like adding a command to add a command (what @JohnMcPMS is against)

I'd like to try and extend the show command and see if I can do it (i'm weak in C++ and want to try, if it doesn't get accepted that's ok as long as i can learn from this :) ) I believe a new Branch and PR would be best for this work. so that's what I'm going to do.

@WSLUser
Copy link

WSLUser commented Sep 4, 2020

microsoft/terminal#7251 will resolve this issue. Winget simply needs to utilize VT sequences instead of traditional win32 apis (which all console applications these days should do for portability). Looks like it's found here

@skyhoshi
Copy link
Author

I'm working on this update now.
Thanks.

@ghost ghost removed the In-PR Issue related to a PR label Feb 18, 2021
@denelon denelon removed this from the Backlog-Client milestone Nov 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Issue-Feature This is a feature request for the Windows Package Manager client.
Projects
None yet
5 participants