Open rbeesley opened 4 years ago
This is something I've been watching too, although it won't work as-is and the next step might be to wait for a bit.
The strange thing about winget as a package manager is it's just invoking an application's installer. It wants this to be done silently, so it becomes a test of the installer's defaults. But, various issues raised here in the past have shown that people really care about these values - whether a path environment variable is changed, and what shortcuts are created, for example.
Linux package managers, and Chocolatey for that matter, don't have this problem because they have a defined location for programs to be installed. In Chocolatey's case, the location was selected when it was installed.
I'm hoping that things like https://github.com/microsoft/winget-cli/issues/140 will really enable this to work better. Not because of the zip file format, but because it forces the package manager to decide on the location and path configuration. Having done that, any arbitrary command line tools can be added without needing to make these choices themselves. In that environment, something like ypm becomes superseded by winget, since its typical use case is about installing/uninstalling/updating compressed archives of files into a known location.
I should add: I don't see a way to pass command line arguments to the installer in winget, but this is important to get a silent install to work. It appears to have a taxonomy of installer types so it knows what command line to generate. If the goal were to support winget in its current form, I think the best thing Yori can do is create a ysetup-silent.exe that has no UI but performs the same actions based on some predetermined defaults. This might be a fallback if winget decide not to address the consequences of zip file installation.
@malxau
I don't see a way to pass command line arguments to the installer in winget, but this is important to get a silent install
It's supported. For instance see 7zip's YAML
Installers:
- Arch: x64
Url: https://www.7-zip.org/a/7z1900-x64.msi
Sha256: A7803233EEDB6A4B59B3024CCF9292A6FFFB94507DC998AA67C5B745D197A5DC
Switches:
Silent: /quiet /norestart
SilentWithProgress: /passive /norestart
I know there are already requests for Scoop and Chocolatey, but consider making Yori available in WinGet. This seems like a good candidate for the fledgling package management system.