I'm writing yet another cli tool. I'm thinking about the right way to distribute it.
On mac you can use homebrew to add your cli tools. On Linux you can use apt-get or something similar. If you use node.js you can use npm, for python pip and so on. But what is with Windows?
What is the _best_ way to provide cli tools?
A fat installer with adds that tool to the path variable seems to be very heavy. Asking the user to drop the tool in any directory with is in the path variable is dirty as hell. I personally still prefer cmd over ps, since I know how it works ps is out of my view much more complex.
If the Microsoft Store is the preferred way please provide me an example and a tutorial how to achieve that. I'm not familiar with the Store at all.
This looks like a guide how to write a console application, I already wrote one in Kotlin. My question was how to publish it.
There is no definitive best way today for Windows to provide cli tools.
We would likely recommend listing it in https://chocolatey.org/ as a package manager type application for Windows.
But you probably also would want to provide it as your own drop on your website either as a ZIP or an MSI for people to install however they choose.
And lastly, you may want to adapt it into a Console UWP package so you could distribute it via the Windows Store per @oising's link above.
We know this is an area that we need to improve messaging and guidance on, but I don't have anything further for you at this time.
So that Console UWP package could be a solution, but how do I bake an app from a batch file and a jar file? Sorry I know that is a stupid question, but I'm not familiar with that.
@rekire - given that it's a batch wrapper around a jar file, it's probably not the best candidate for the Windows Store. I'd go with @miniksa and recommend packaging it up as a chocolatey delivery. This is as close as we've got on windows to apt.
I could translate my very simple batch file to a simple c++ program it that makes things easier. However I'm still not sure what steps I would need to do. Code signing is one critical part isn't it?
Regarding chocolatey, sounds interesting, but I never read about it. Is that very common?
Yep, chocolatey is pretty common - especially in enterprises. Tbh, I'd stay away from the windows store; it's a walled garden intended for commerical efforts designed to span multiple platforms. Go check out https://chocolatey.org/
Most helpful comment
There is no definitive best way today for Windows to provide cli tools.
We would likely recommend listing it in https://chocolatey.org/ as a package manager type application for Windows.
But you probably also would want to provide it as your own drop on your website either as a ZIP or an MSI for people to install however they choose.
And lastly, you may want to adapt it into a Console UWP package so you could distribute it via the Windows Store per @oising's link above.
We know this is an area that we need to improve messaging and guidance on, but I don't have anything further for you at this time.