-
-
Notifications
You must be signed in to change notification settings - Fork 348
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Command line options (cli parameters) #427
Comments
There is small problem with this and winget - user will have to shutdown app first in order for it to get updated. But that is the same for all portable apps, its not specific to 1RM. There is no way to go around this as winget will first unpack the zip archive over existing location which will fail as exe is already in use. We could technically make -install option make 1RM to copy itself to another location and previously kill any running 1Remote.exe, but I am not sure if we should go those lengths at the moment (although its almost trivial to do). Chocolatey package will shut down the app first and if it was started before, rerun it after update, so it doesn't have this problem. This can be done as choco uses pwsh script, feature that winget doesn't have. |
As for some examples @VShawn , check up everything. It has CLI option for all installation routines, which I united via single option, but you could separate them too. |
BTW, I would also add here some command line options regarding the running of specific connections. But I consider this to be lower priority task and could be also done in future. Something like:
1Remote would accept multiple of those. This would enable 'create desktop shortcut` for specific connection(s). |
You are right :)
I designed this feature in the prototype of PRM. users could create shortcuts in the right-click context menu of the connection. then they could search and open connections through tools like Everything. Now, we can still keep the action of creating shortcuts in context menu P.S. I'd like that there will be a todo list like #401, for each issue after the discussion is completed, so that we can confirm the work to be done. After all, these tickets may not be started for some time, and without a todo list, we may forget the objectives. |
Yeah, you are right about todo list. However, it can be done only after the discussion, so I'll make sure we have it in the opening post. |
@VShawn, I edited the first post. Please take a look and if you have comments or questions or think something should be modified, bring it on. |
I think it's good :) |
And the command will start all connections named from this point I wanna add a protocol like |
Yes
Well, you can have multiple same named connections even in the local database. So yes, all should be started if that is the case I guess. Yes, we should have connection id, but I would use it in addition to connection name as it is not CLI friendly - majority of the people won't have duplicate connection names anyway. I will add it to the above list. |
BTW, the So Perhaps we should forbid naming connections by number ? |
I've done all the task in this ticke? Do I need to continue adding a desktop shortcut for connection in this ticket? |
Nah, this is for CLI options only. |
Lets keep this open until I test it and add documentation. |
auto build is donw since I import the COM
I can build it on my dev env, but if failed with github action. Build Error from github action: So you are not able to test cli until I find out how to fix github action. |
…dows Script Host, instead calling into the native IShellLink interface directly
It was eventually built |
I tested it and everything works. Maybe we want to have |
Actually reopening this while docs are not done. |
You even changed the icon of the shortcut. I also considered mapping the shortcut icon to the server icon when developing, but the icon of connections stored in 1RM is in PNG format while shortcuts only support ICO icons. |
1Remote should have several command line options that can be used for installation, startup and connection running.
--(un)install
Runs all of the (un)install-*** options
--(un)install-desktop-shortcut
(Un)Install desktop shortcut and exit
--(un)install-startup
(Un)Install registry startup entry and exit
--start-minimized
Run app minimized
ULID:<connection-id>
or<connection-name>
or#<tag-name>
Run app and imediatelly execute and/or focus connection name or tag. NOTE: we could have just one here if this is problematic (tag or single connection name)
Documentation
TODO (@majkinetor)
Examples
Details
Future work
After CLI options are done, here are the things that should be done in the subsequent tickets that I will create separatelly:
5. Start minimized should be removed as it is pointless
Install/Uninstall
We could expand this with some more but this is enough for the start IMO and to be able to have installation routine for #402.
I intentionally didn't want to introducd option for "all users", start menu entries and uninstall in "programs and files". The first two are IMO not needed - 1RM is not a kind of program that will be used by multiple users on single machine IMO (and if that is needed, each user could have its own portable copy), and since it doesn't have multiple runable items start menu entery is usless. We could add uninstall entery that will just call
1remote.exe --uninstall
but it will leave files on the disk and it doesn't seem important. I think we could just add those in the GUI options, for example System integration tab in options that would enable user to run all those things that we will be able to do via CLI (after these are implemented) via convenient buttons and/or checkboxes.Run minimized
Startup minimized is implemented the wrong way. 1RM should have an app argument that does that, which will then setup to be used in Windows registry. That way, when one runs 1Remote by hand or shortcut icon, it will show the main window, which is expected behavior.
The text was updated successfully, but these errors were encountered: