# For Windows users, is winget now a standard command?

**URL:** <https://swi-prolog.discourse.group/t/for-windows-users-is-winget-now-a-standard-command/5564>\
**Category:** General\
**Created:** [June 29, 2022, 9:36am UTC](https://swi-prolog.discourse.group/t/for-windows-users-is-winget-now-a-standard-command/5564 "2022-06-29T09:36:19Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![EricGT](https://avatars.discourse-cdn.com/v4/letter/e/f1d935/32.png) [@EricGT](https://swi-prolog.discourse.group/u/EricGT)\
**Post date:** [June 29, 2022, 9:36am UTC](https://swi-prolog.discourse.group/t/for-windows-users-is-winget-now-a-standard-command/5564/1 "2022-06-29T09:36:19Z")

</div>

Linux users have access to [package managers](https://en.wikipedia.org/wiki/Package_manager) such as [apt](https://en.wikipedia.org/wiki/APT_(software)) while Microsoft has only in the last few years been developing [winget](https://en.wikipedia.org/wiki/Windows_Package_Manager).

Since my machines are on the [Windows Insider Program](https://insider.windows.com/en-us/) from time to time they get early releases of software such as winget. As such winget is on my machines but I don’t know if it is now installed and active by default for those doing regular Windows updates.

Can those who do just regular Windows updates let me know if it is on Windows 10 and separately if it is on Windows 11. Just open a command prompt and enter

> winget

which should show the help if winget is installed.

If it is now part of standard Windows then it would be worth consideration into allowing SWI-Prolog to be installed this way on Windows.

---

<div class="post-metadata">

**Author:** ![abaljeu](https://yyz2.discourse-cdn.com/free1/user_avatar/swi-prolog.discourse.group/abaljeu/32/136_2.png) [@abaljeu](https://swi-prolog.discourse.group/u/abaljeu)\
**Post date:** [June 30, 2022, 2:24pm UTC](https://swi-prolog.discourse.group/t/for-windows-users-is-winget-now-a-standard-command/5564/2 "2022-06-30T14:24:40Z")

</div>

winget is installed here. I’d never heard of it though I’m familiar with dev package managers Nuget and npm.

---

<div class="post-metadata">

**Author:** ![EricGT](https://avatars.discourse-cdn.com/v4/letter/e/f1d935/32.png) [@EricGT](https://swi-prolog.discourse.group/u/EricGT)\
**Post date:** [June 30, 2022, 2:48pm UTC](https://swi-prolog.discourse.group/t/for-windows-users-is-winget-now-a-standard-command/5564/3 "2022-06-30T14:48:45Z")

</div>

> [@abaljeu](#):
>
> winget is installed here.

Is that on Windows 10, Windows 11 or both?

---

<div class="post-metadata">

**Author:** ![EricGT](https://avatars.discourse-cdn.com/v4/letter/e/f1d935/32.png) [@EricGT](https://swi-prolog.discourse.group/u/EricGT)\
**Post date:** [June 30, 2022, 3:07pm UTC](https://swi-prolog.discourse.group/t/for-windows-users-is-winget-now-a-standard-command/5564/4 "2022-06-30T15:07:01Z")

</div>

Here are some examples related to Prolog that are currently installable via winget.

It appears someone has made the latest stable version of SWI-Prolog available via winget.

```nohighlight
C:\Users\Eric>winget search SWI-Prolog
Name Id Version Source
------------------------------------------------
SWI-Prolog SWI-Prolog.SWI-Prolog 8.4.3 winget

C:\Users\groot>winget search logtalk
Name Id Version Source
---------------------------------------
Logtalk Logtalk.Logtalk 3.56.0 winget

C:\Users\groot>winget search erlangOTP
Name Id Version Source
-------------------------------------------
Erlang OTP Erlang.ErlangOTP 25.0.2 winget

C:\Users\groot>winget search constraint
Name Id Version Source
-----------------------------------------------------------------------------------------------
ECLiPSe Constraint Logic Programming System Version 7.0 Coninfer.ECLiPSeCLP.7.0 7.0 #63 winget

```

The keyword `programming` catches all of them and more.

> **Click triangle to exapnd**
>
> ```nohighlight
> C:\Users\groot>winget search programming
> Name Id Version Match Source
> --------------------------------------------------------------------------------------------------------------------
> Programming! 9WZDNCRDQQF1 Unknown msstore
> C Programming 9WZDNCRDGXLD Unknown msstore
> Java Programming 9NHVRHCM59ZX Unknown msstore
> C Programming by WAGmob 9WZDNCRDN6CC Unknown msstore
> Programming Languages by WAGmob 9WZDNCRDN3MJ Unknown msstore
> Learn Perl Programming-simpleNe… 9WZDNCRDN639 Unknown msstore
> Programming Small Basic 9PPJCBMZ3SDP Unknown msstore
> Learn Scratch Programming via V… 9NBLGGH110B6 Unknown msstore
> Programming 9NBLGGH5WNZM Unknown msstore
> Windows 8 Programming by WAGmob 9WZDNCRDHR32 Unknown msstore
> Programming Zemi 9NTGB52KD2LG Unknown msstore
> Learn COBOL Programming by GoLe… 9WZDNCRDHNMR Unknown msstore
> UNIX and Shell Programming by W… 9WZDNCRDHQD4 Unknown msstore
> Introduction to Python Programm… 9NBLGGH6FLKH Unknown msstore
> C Programming Tutorial 9WZDNCRDH1MK Unknown msstore
> Zeus Lite Xidicone.ZeusLite 3.97z Tag: programming winget
> Zeus IDE Xidicone.ZeusIDE 3.98y Tag: programming winget
> Stackless Python stackless.stackless 3.7.9150.0 Tag: programming winget
> Scala Programming Language Dist… Scala.Scala.2 2.13.8.400 Tag: programming winget
> sbt sbt.sbt 1.6.2 Tag: programming winget
> Ruby RubyInstallerTeam.Ruby 3.1.2-1 Tag: programming winget
> Nelson NelsonNumericalSoftware.Nelson 0.6.6.2086 Tag: programming winget
> Logtalk Logtalk.Logtalk 3.56.0 Tag: programming winget
> KDevelop KDE.kdevelop 5.6.2 Tag: programming winget
> PyCharm Professional Edition (E… JetBrains.PyCharm.Professional.… 222.3244.2 Tag: programming winget
> PyCharm Professional Edition JetBrains.PyCharm.Professional 221.5921.27 Tag: programming winget
> PyCharm Community Edition JetBrains.PyCharm.Community 221.5921.27 Tag: programming winget
> GoLand (EAP) JetBrains.GoLand.EarlyAccess 222.3153.7 Tag: programming winget
> Colobot: Gold Edition Epsitec.Colobot alpha-0.1.12 Tag: programming winget
> NoteHighlight2016 elvirbrk.notehighlight2016 3.7 Tag: programming winget
> 字节跳动开发者工具 ByteDance.BytedanceMiniappIDE 3.2.7-1 Tag: programming winget
> BlueJ BlueJTeam.BlueJ 5.0.2 Tag: programming winget
> 小程序开发者工具 Alibaba.MiniProgramStudio 3.0.2 Tag: programming winget
> BPMN-RPA Studio 1ic.BPMN-RPAstudio 21.8.11 Tag: programming winget
> SWI-Prolog SWI-Prolog.SWI-Prolog 8.4.3 Tag: programming winget
> Lapce Lapce.Lapce 0.1.2 Tag: programming winget
> ECLiPSe Constraint Logic Progra… Coninfer.ECLiPSeCLP.7.0 7.0 #63 Tag: programming winget
> Go Programming Language GoLang.Go 1.18.3 winget
> Visual D - Visual Studio Integr… Dlang.VisualD 1.3.0 winget
> winpython-pypy winpython.winpython-pypy 3.8.12.2 Tag: programming language winget
> winpython-dot-pypy winpython.winpython-dot-pypy 3.8.12.2 Tag: programming language winget
> winpython-dot winpython.winpython-dot 3.10.4.0 Tag: programming language winget
> winpython winpython.winpython 3.10.4.0 Tag: programming language winget
> Racket Racket.Racket 8.3 Tag: programming-language winget
> Python 3 Python.Python.3 3.10.5150.0 Tag: programming-language winget
> Python 2 Python.Python.2 2.7.18150 Tag: programming-language winget
> Pure Data MillerPuckette.PureData 0.51-4 Tag: visual-programming winget
> Julia Julialang.Julia 1.7.3 Tag: programming-language winget
> PyCharm Community Edition (EAP) JetBrains.PyCharm.Community.EAP 222.3244.2 Tag: programming ide winget
> JetBrains MPS JetBrains.MPS MPS-213.7172.958 Tag: metaprogramming winget
> JetBrains MPS (EAP) JetBrains.MPS.EAP 213.6461.785 Tag: metaprogramming winget
> IntelliJ IDEA Ultimate Edition … JetBrains.IntelliJIDEA.Ultimate… 222.3244.4 Tag: programming ide winget
> IntelliJ IDEA Ultimate Edition JetBrains.IntelliJIDEA.Ultimate 221.5921.22 Tag: programming-ide winget
> IntelliJ IDEA Community Edition… JetBrains.IntelliJIDEA.Communit… 222.3244.4 Tag: programming ide winget
> IntelliJ IDEA Community Edition JetBrains.IntelliJIDEA.Community 221.5921.22 Tag: programming-ide winget
> Erlang OTP Erlang.ErlangOTP 25.0.2 Tag: programming-language winget
> RenderDoc BaldurKarlsson.RenderDoc 1.19.0 Tag: graphics-programming winget
> Spice ChilliBits.Spice 0.8.5 Tag: programming-language winget
> 
> ```

---

<div class="post-metadata">

**Author:** ![jan](https://yyz2.discourse-cdn.com/free1/user_avatar/swi-prolog.discourse.group/jan/32/4_2.png) [@jan](https://swi-prolog.discourse.group/u/jan)\
**Post date:** [June 30, 2022, 6:59pm UTC](https://swi-prolog.discourse.group/t/for-windows-users-is-winget-now-a-standard-command/5564/5 "2022-06-30T18:59:19Z")

</div>

> [@EricGT](#):
>
> If it is now part of standard Windows then it would be worth consideration into allowing [SWI-Prolog](https://www.swi-prolog.org/pldoc/doc_for?object=manual) to be installed this way on Windows.

Well, I just installed a completely fresh Windows 11 home in a VM and there is no winget, despite Microsoft claiming it is standard for Windows 11. According to the docs, it surely is an add on for Windows 10. I’ve installed in and used it to install git. Works fine. Might be nice to have the development versions in there as well. Anyone knows how to get that done?

---

<div class="post-metadata">

**Author:** ![EricGT](https://avatars.discourse-cdn.com/v4/letter/e/f1d935/32.png) [@EricGT](https://swi-prolog.discourse.group/u/EricGT)\
**Post date:** [June 30, 2022, 7:05pm UTC](https://swi-prolog.discourse.group/t/for-windows-users-is-winget-now-a-standard-command/5564/6 "2022-06-30T19:05:17Z")

</div>

> [@jan](#):
>
> Might be nice to have the development versions in there as well.

🙂

> [@jan](#):
>
> Anyone knows how to get that done?

Yes.

Give me a few minutes and I will edit this with the details. Last time I looked it required creating a several line YAML file, submitting it as a pull to a Git repository and accepting an agreement that you have the right to submit, it is not malicious, and so on.

* * *

**EDIT**

> **[Submit packages to Windows Package Manager](https://learn.microsoft.com/en-us/windows/package-manager/package/)**
>
> Winget can be used to install your software package. This guide outlines the submission process to publish packages to the Windows Package Manager repository as a distribution channel.

Way back when this was in beta I played around creating some of the manifest (YAML) and I remember that the easiest way to get started was to look at examples from [others](https://github.com/microsoft/winget-pkgs/tree/master/manifests). I also remember that [multiple manifest files](https://docs.microsoft.com/en-us/windows/package-manager/package/manifest?tabs=minschema%2Cversion-example#multiple-manifest-files) was important. Never submitted any but wanted to understand the process if an when needed.

[Here](https://github.com/microsoft/winget-pkgs/tree/master/manifests/s/SWI-Prolog/SWI-Prolog) are the manifest that have been created for SWI-Prolog.

[Vedant](https://github.com/vedantmgoyal2009) is the one to thank for the current manifest for SWI-Prolog.

---

<div class="post-metadata">

**Author:** ![EricGT](https://avatars.discourse-cdn.com/v4/letter/e/f1d935/32.png) [@EricGT](https://swi-prolog.discourse.group/u/EricGT)\
**Post date:** [July 1, 2022, 3:49pm UTC](https://swi-prolog.discourse.group/t/for-windows-users-is-winget-now-a-standard-command/5564/7 "2022-07-01T15:49:58Z")

</div>

As of 07/01/2022 using winget to install SWI-Prolog is not working as expected.

See this for more details.

> [@Wiki Discussion: Install SWI-Prolog development version on Windows 10](https://swi-prolog.discourse.group/t/wiki-discussion-install-swi-prolog-development-version-on-windows-10/2602/8):
>
> Today tried using winget to see how it works for installing SWI-Prolog. C:\Users\Groot\>winget search swi-prolog Name Id Version Source ------------------------------------------------ SWI-Prolog SWI-Prolog.SWI-Prolog 8.4.3 winget C:\Users\Groot\>winget install swi-prolog Found SWI-Prolog [SWI-Prolog.SWI-Prolog] Version 8.4.3 This application is licensed to you by its owner. Microsoft is not responsible for, nor does it grant any licenses to, third-party packages. Down…
