Code Monkey home page Code Monkey logo

Comments (13)

chrpai avatar chrpai commented on May 16, 2024 6

Wish respect, I can't agree with Mark at all. Just create an installer already. The tool is only 20+ years old.

I see this with multiplatform tools. They only give you a ZIP or EXE to download with no installer. If you ask about it they say oh just use install something /usr/local/bin. Well this is windows not linux. I don't want to manually go create some directory in my profile, add it to the path, download a zip and extract. I just want to download and run an msi or in this case winget install sysinternals.

I've been authoring installers professionally since 1996. MSI since 2000. It would literally take me 2 minutes to create a WiX/MSI installer for these files.

from winget-pkgs.

chrpai avatar chrpai commented on May 16, 2024 5

My PR was rejected and this raises governance concerns on this project. The README.md instructs developers to submit manifests for their favorite applications and that is exactly what I have done. I will escalate this issue with opencode.

from winget-pkgs.

chrpai avatar chrpai commented on May 16, 2024 2

@markrussinovich https://twitter.com/chrpai/status/1263561746410856449

from winget-pkgs.

michael-hawker avatar michael-hawker commented on May 16, 2024 2

I think the key point of a package manager like winget/chocolatey etc... as well is that it's just as easy to uninstall a package as it is to install it. Otherwise, you leave stale state on the system and degrade the experience later.

If winget has some mechanism for a manifest entry for the package to have steps 1) download 'zip' from here, 2) unzip to 'default central package location', 3) add 'something.exe' to path, that'd be great, then maybe can support both scenarios. As long as there's also a way for that to also include an uninstall step in case the program puts files elsewhere on run.

from winget-pkgs.

chrpai avatar chrpai commented on May 16, 2024 2

I've done most of the work by creating an MSI for sysinternals suite. You can find it at https://github.com/iswix-llc/SysinternalsSuiteInstaller/releases

Note: This does not violate the EULA because it doesn't contain the binaries. The user downloads the ZIP during the installation procedure. The installer will:

  1. Prompt user for location to download zip from (self hosting offline scenarios)
  2. Download and extract ZIP to installation directory
  3. Place installation directory at end of system path
  4. Create start menu shortcut that points to installation directory.

Next step is for me to create a WinGet YAML request and see if they will merge it or not.

from winget-pkgs.

nlsdg avatar nlsdg commented on May 16, 2024 2

As of yesterday the Sysinternals suite is available in the Microsoft store, and you can also install it via winget.
winget install sysinternals
See Mark Russinovich's Tweet

from winget-pkgs.

malxau avatar malxau commented on May 16, 2024 1

See Mark's comment at microsoft/winget-cli#140 (comment)

from winget-pkgs.

malxau avatar malxau commented on May 16, 2024 1

Nobody is suggesting that you should manually create a directory and add it to your path with winget.

The question is whether the package should own this operation (via an installer) or whether winget should own the operation. It may be true that creating an MSI installer is relatively straightforward, but note that it needs to be done for each package, including each cross platform package, whereas a solution in winget applies to all packages. Have you tried Chocolatey? The experience there is you install it, specify a location, and all of your tools are populated in that location.

Both approaches have good and bad points. The good thing about storing everything together is you can decide, once, what behavior you want - whether you want a per machine or per user install for example, and have everything follow it. The bad thing about storing everything together is the potential for DLL conflicts, which is why Chocolatey ended up with shimgen, so each executable has a private directory with its private DLLs, but with a single location for executables that shims to the private location.

from winget-pkgs.

LukasNespor avatar LukasNespor commented on May 16, 2024

I agree, but winget does not support (yet) custom installation procedure e.g. using PowerShell. Package has to point to installer (exe, msi) that is responsible for installation istself. Sysinternals tools are unfortunately packed in zip.

from winget-pkgs.

chrpai avatar chrpai commented on May 16, 2024

PR submitted #1288

from winget-pkgs.

denelon avatar denelon commented on May 16, 2024

This depends on microsoft/winget-cli#140 and/or possibly microsoft/winget-cli#182.

from winget-pkgs.

msftbot avatar msftbot commented on May 16, 2024

This issue has been automatically marked as stale because it has been marked as requiring author feedback but has not had any activity for 4 days. It will be closed if no further activity occurs within 3 days of this comment.

from winget-pkgs.

denelon avatar denelon commented on May 16, 2024
PS C:\Users\denelon> winget search sysinternals
Name               Id           Version Source
------------------------------------------------
Sysinternals Suite 9P7KNL5RWT25 Unknown msstore
PS C:\Users\denelon> winget install 9P7KNL5RWT25

from winget-pkgs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.