talonvoice / talon

Issue Tracker for the main Talon app
85 stars 0 forks source link

[Win] Installer is "mixed" #637

Open teknowledgist opened 10 months ago

teknowledgist commented 10 months ago

The Windows installer is not fully a per-system install, nor a per-user install. It installs to %ProgramFiles% which is the appropriate system-wide location for all (unprivileged) users to run the software, but the desktop and start menu icons are placed within the installing user's profile (like a single-user install) making them inaccessible to other users. For example, even a computer with a single user who is following best practice and not running as an admin would be an issue because they have to use a second, administrative account for the elevated install, but their daily driver would not see any of the icons.

Many installers have an option to "install for all users" or "install for the current user", but IMHO, because the "portable", .zip option exists, the installer should just be a full, system/machine install with icons being placed in the C:\users\public\desktop folder (optionally, please) and the %ProgramData%\Microsoft\Windows\Start Menu\Programs folder so that all users can easily find/access Talon. Making the install a per-user installer seems pointless to me, but it would be better than the current, "mixed" design.

Thanks.

lunixbochs commented 10 months ago

Whoops, thanks - I'll fix the shortcut directories for the global installer.

I would like to remove the "portable" zip eventually and switch to a single installer that can choose between per-user and global, for a few reasons:

teknowledgist commented 10 months ago

Makes sense.

Just FYI, I'm interested in building/maintaining a Chocolatey package for Talon. Chocolatey packages should be machine-installs, so the "all users/just me" option would need to be either available via installer switch, or default to all users when silently run with elevated privileges.

Thanks!

lunixbochs commented 10 months ago

My preference for now is that people do not package Talon for third party package managers, because historically everyone who's ever done that has abandoned the package and left it on an old version. This has happened at least 5-10 times and caused a lot of user confusion.

teknowledgist commented 10 months ago

I have a few comments about that...

  1. I think I have a decent track record going back over 7 years. :-)
  2. I try to make most of my packages "automatic" so they can be up-to-date, and all the code for my packages is open, so it would be fairly straightforward for someone to take over maintainership should I get run over by the lotto bus.
  3. The way Chocolatey packages work, pretty much anyone at any time could create a package for Talon without your knowledge/permission.
  4. As the software author, your requests to take maintainership of any package created and/or disable the package upon your request would be honored by the Chocolatey Community admins.

I'm pretty ignorant of compiling and how to automate GitHub to build and submit for you, but I could be willing to assist with getting the initial package constructed if you want to maintain the Chocolatey package as part of your build process.

All that said, I will respect your wishes and not create a Talon package if that is still what you want.