|
I'm interested to have an answer in general, but also in particular for CLI tools. Will the final users need node.js if I publish with jdeploy? |
Replies: 4 comments 6 replies
|
No tools are required on the user machine for gui apps. CLI apps currently are only installable via npm so node is needed there. At some point i will revisit cli apps to remove this dependency. I have been focusing mostly on the gui desktop experience for the past while. |
|
Just checking if you made any progress on removing the dependency to node for cli apps? |
@salmonb I have been playing with the launcher to support both service and cli apps. service apps are basically the same as cli apps except they can integrate with the native service manager to install, stop, start, etc... I can think of a lot of fun ways to use these features but i'm curious what use cases you are interested in? eg i could produce simple binaries that you can run that know how to install and update themselves, and know how to integrate into the native service managers. i could also make a "copy curl snippet to install" like i have already for the gui apps, except make it cli based. I've also thought about using this to deploy desktop "service" based apps that include gui management (eg taskbar menus to start stop, configure). But i'm curious what use cases others have. |
|
@salmonb I'm edging in on a solution that I think may work well for WebFX. I've added support for "commands" to be installed with jDeploy apps. A command is just a CLI wrapper that runs your app as a CLI app. The installer and "main" app are still intended to be a desktop app, but you can define commands that will be added to the PATH, and can be configured to run your app with specific arguments, and pass through user args. The commands themselves don't trigger auto-update. They just work with whatever version is installed. You can detect when it is being launched GUI, and just show some basic placeholder text with some info about webfx. So the flow would be:
I plan to add support for the more CLI-centric flow where the installer is pure CLI, but I'm going the way of adding support for "companion" commands first as this fits better with some other use cases I have (e.g. making it easy to make apps "scriptable" via MCP). I'll create a fork of the webfx-cli to demonstrate how this works. |
No tools are required on the user machine for gui apps.
CLI apps currently are only installable via npm so node is needed there. At some point i will revisit cli apps to remove this dependency.
I have been focusing mostly on the gui desktop experience for the past while.