Last week, Keivan Beigi, the developer of AppGet, provided a detailed account of how Microsoft copied the core operation of his package manager to create their own Windows Package Manager (Winget). Microsoft has now finally responded to the controversy regarding whether the company drew inspiration from AppGet to build its new Windows Package Manager, or not.
In a recent blog post, the software giant has acknowledged that WinGet is largely inspired by the open-source tool, and the company has borrowed some critical functionality for the package manager from AppGet. In addition, Microsoft has credited Beigi for the role that he specifically played in developing WinGet. Even though the Redmond giant didn't issue an official apology, the company readily admitted that AppGet “helped us get to a better product direction” and that Microsoft had "failed to live up to this with Keivan and AppGet".
Andrew Clinick, Microsoft's program manager who is currently overseeing Windows Package Manager, has even listed some features borrowed from the core functionality of AppGet:
- No scripts during install – something that we completely agreed with and don’t allow with MSIX
- Rich manifest definition within GitHub – the power of being open combined with rich declarative meta data about the app is so important to meet goal #1
- Support all types of Windows applications installers
- Seamless updates for applications in the repository
Clinick has also admitted that he had a meeting with Beigi last year, where they had an initial discussion about the fundamental functionality of WinGet. He has even gone ahead to thank Beigi and acknowledged that Microsoft's Windows Package Manager was inspired by their conversation held last summer at Microsoft HQ.
In a comment on GitHub, the Canadian developer says that he is currently in discussions with Microsoft over this matter. "Thanks @aclinick for the blog post, it means a lot. There are a few areas Andrew and I have been discussing, hopefully we'll have something to share with you guys soon," the comment reads.