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

winget install msys2 #19

Closed
ctaggart opened this issue Dec 16, 2020 · 7 comments
Closed

winget install msys2 #19

ctaggart opened this issue Dec 16, 2020 · 7 comments

Comments

@ctaggart
Copy link

ctaggart commented Dec 16, 2020

I was hoping to be able to do a winget install msys2, but winget search mysys2 came up empty.

https://docs.microsoft.com/en-us/windows/package-manager/
https://docs.microsoft.com/en-us/windows/package-manager/package/repository
https://github.com/microsoft/winget-pkgs

@ctaggart ctaggart changed the title winget install mysys2 winget install msys2 Dec 16, 2020
@ctaggart
Copy link
Author

ctaggart commented Dec 16, 2020

That installer would be used. The package definition is just a way to link to it. It makes it convenient to find and install. Here is what the package definition could look like. When there is a silent switch #12 #3 for the installer, it can be added with something like Silent: /s.

Id: MSYS2.MSYS2
Publisher: MSYS2
Name: MSYS2
Version: 20201109.0.0.0
License: GNU General Public License
InstallerType: EXE
LicenseUrl: https://github.com/msys2/msys2-runtime/blob/master/COPYING
AppMoniker: 
Description: Software Distribution and Building Platform for Windows
Homepage: https://www.msys2.org/
Installers:
  - Arch: x64
    InstallerType: EXE
    Url: https://repo.msys2.org/distrib/x86_64/msys2-x86_64-20201109.exe
    Sha256: 274a11559ede8b892da63dacab30dcf968b811fe21caccc9a1fb9137a5e56062
# Generated by https://github.com/ptorr-msft/WinGetYamlGenerator

@mingwandroid
Copy link
Member

If you want winget to support MSYS2 then make a pr with Microsoft please! We have our own installers and they cover all the use cases we care about.

@ctaggart
Copy link
Author

Okay, I'll close this. I was just explaining how you could add winget support for your existing installer.

@mingwandroid
Copy link
Member

Thanks! Maybe people can use it to build and host/use their own packages?

Since you took the time to do the work I feel I owe you at least my thinking on these external 3rd-party packaging systems and why we're not generally supportive of them.

MSYS2 has been added to Chocolatey (against my preference, but not my explicit wish).

I would suggest making a PR with winget if you care about this. I'd personally rather you didn't but I cannot stop you, just try to advise. AFAIK though, making a PR there is the way to get packages into winget. You'd not be able to claim much of it as your own work, only the packaging scripts, but at the same time, if you claim it as our work, then people might expect support from us. Support is far from free even when there's no monetary transactions involved. It takes time and care and can be draining sometimes.

Then there are concerns about ownership and trust. I don't know if someone could someday get control of this winget recipe and put something malicious into it outside of our control thus damaging our reputation. While unlikely this is not impossible.

We already have a good package manager on Windows; IMHO we have the 2nd best package manager in the world on Windows (pacman, the best, but I am biased, being conda).

I do not think we have much interest in maintaining this kind of thing. It promotes other package managers and may give, to some people, an indication that this software is somehow compatible with oither winget-gotten software which is not true and definitely something we cannot guarantee (whereas we can inside MSYS2 to a much larger extent).

From my perspective, if the question ever needs to be asked "How did you install MSYS2?" when helping diagnose a problem, and the response is that they used some 3rd party installer then we've failed. To me, it doesn't matter if this 3rd party installer currently routes through one of our installers (as this winget proposal does) or not. While true at present someone might change it later and any flexibility our installers provide is hidden behind winget's APIs.

So winget, vcxproj, chocolately, julia, whoever else, are free to make use of our work and add ways to install our stuff that feels more 'native' to them, but they'll never feel native to MSYS2. That's not to do with us though. We make our own installers and would rather focus on improving those.

@martin-braun
Copy link

martin-braun commented Jan 25, 2024

I pushed forward for Git.SDK (Git for Windows SDK) that is essentially Git for Windows (with its underlying Cgywin binaries such as git-bash) on top of a complete MSYS2 environment that features its famous pacman fork which has even mingw64 und mingw32 repositories.

So long story short: Just winget install Git.SDK and you get a power box containing Git, the entire MSYS2 environment and many more Cgywin binaries incl. a package manager to manage them.

The package is meant to give you everything you need to develop on git itself I think, it's just nice to have everything in one package.

@ylmrx
Copy link

ylmrx commented Mar 16, 2024

above solution is bloaty.

winget install MSYS2.MSYS2 seems to work just fine now.

feel free to pacman -S git afterward if needed.

@martin-braun
Copy link

@ylmrx Thanks, had no idea MSYS2.MSYS2 is available now. Will consider this when setting up my next Windows environment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants