thebookisclosed / ViVe

C# library and console app for using new feature control APIs available in Windows 10 version 2004 and newer
GNU General Public License v3.0
4.89k stars 298 forks source link

Add packages to winget #43

Open pomazanbohdan opened 2 years ago

pomazanbohdan commented 2 years ago

https://winget.run/

TheBossMagnus commented 1 year ago

Winget's feature of .zip install is only in beta and for a limited number of programs. They don't accept any .zip program for now

eabase commented 1 year ago

It should be straight forward to create a winget-pkg YAML and upload to that repo.

thebookisclosed commented 1 year ago

Unless things have changed recently, creating packages for WinGet would introduce the need to create some sort of ViVe installer bundle like @TheBossMagnus's reply hints at. (which I don't like the idea of) It's supposed to be a simple portable app with no extra setup steps.

eabase commented 1 year ago

You don't need any zip, you just need to either ensure the exe is compiled standalone with library dependencies already included, or using a normal exe packaging tool. Like I said, this should be trivial, but if you're too lazy to google, I can't be of any help.

thebookisclosed commented 1 year ago

Have you considered just linking what you have in mind instead of smartass replies? I was looking at https://learn.microsoft.com/en-us/windows/package-manager/package/manifest and don't see anything obvious. Winget still seems to be pretty installer centric, and there is no official installer ViVe.

On Sunday, January 22, 2023, eabase @.***> wrote:

You don't need any zip, you just need to either ensure the exe is compiled standalone with library dependencies already included, or using a normal exe packaging tool. Like I said, this should be trivial, but if you're too lazy to google, I can't be of any help.

— Reply to this email directly, view it on GitHub https://github.com/thebookisclosed/ViVe/issues/43#issuecomment-1399453588, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADEWBTC4HWSQ5QNWQPF4CVDWTUG6FANCNFSM52YCIS2A . You are receiving this because you commented.Message ID: @.***>

pomazanbohdan commented 1 year ago

https://github.com/microsoft/winget-cli/releases

Support installing .zip files

sitiom commented 1 year ago

A PR is already underway:

There is an issue, however, related to symlinks. https://github.com/microsoft/winget-pkgs/pull/92418#issuecomment-1366863557:

In a VM, it installed successfully, and ran with no arguments. But both the /query and /enable arguments gave the same error:

PS C:\> C:\Users\user\AppData\Local\Microsoft\WinGet\Links\vivetool.exe /query
ViVeTool v0.3.2 - Windows feature configuration tool

Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'Albacore.ViVe, Version=2022.6.27.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.
   at Albacore.ViVeTool.Program.ProcessArgs(String[] args)
   at Albacore.ViVeTool.Program.Main(String[] args)

Is there a missing dependency?

https://github.com/microsoft/winget-pkgs/pull/92418#issuecomment-1367038987:

I guess it is the Albacore.ViVe.dll file in the same directory. I manually copied the remaining files to the Links folder and it works fine now.

@thebookisclosed Can you fix it so that it would try to find the DLL in the actual directory rather than the symlink directory?

thebookisclosed commented 1 year ago

ViVeTool makes no changes to how the library gets located, I don't think there is anything to fix on my end. The PR was made without any sort of approval from my side, the manifest is most likely not well formed to make ViVe work correctly.

sitiom commented 1 year ago

The PR was made without any sort of approval from my side, the manifest is most likely not well formed to make ViVe work correctly.

No, it's most likely how Winget symlinks the executable that makes it the problem. The Scoop manifest works perfectly as it uses a shim. The manifest is not well formed, and there was no ill intention in making the PR. I wish you didn't ask it to get closed.