Allow per-user installation using the Windows installer
I have been redirected here from the Chat room and advised to ping @ede123 about this feature request.
Summary:
The current Windows installer (.exe) doesn't allow non-admin users to install Inkscape. I suggest that the installer be made to allow non-admin users to install Inkscape into %LocalAppData%\Programs\Inkcape
by default. This will allow users to install and use Inkscape on computers on which they have no administrative rights, and create an uninstaller to uninstall the program cleanly if needed.
Ideally the installer should detect whether the user has admin rights, and set the default installation path accordingly, i.e. %ProgramFiles%\Inkscape
(system-wide) if the user is privileged, or %LocalAppData%\Programs\Inkscape
(per-user) otherwise.
How might this be implemented?
I am not familiar with the NSIS installer format, but from what I have read, this can be achieved by setting RequestExecutionLevel user
in the installer script.
The use case:
I work at an institution where the central IT team has no interest in distributing or supporting Inkscape, but my team need to use Inkscape regularly. To be clear, the IT team is fine with us running executables that they did not install, so running the portable Inkscape from the .7z package is perfectly acceptable from the IT team's point of view. They just won't distribute or support the app.
The reason I'm suggesting this is because my team members are not savvy enough to install the portable .7z version and create the shortcuts manually in the right places. In fact, we do not want a portable app. We want Inkscape to integrate with the system, with shortcuts in the Start menu and the desktop, and file associations set up. In other words, we want a native installation except we can't currently do it with the official installer because we don't have admin privileges to install it system-wide, and the installer doesn't allow per-user installation.
Alternative solutions I've tried:
-
I have manually unzipped the portable .7z package and manually created the shortcuts on each team member's computer.
-
I have created an unofficial installer using Inno Setup, which does the system-wide or per-user installation as suggested above, depending on whether the user is privileged. I have then distributed the unofficial installer to my team members to install on their computers.
Both of these solutions work, but they are not elegant and they take too much of my time. Even though the unofficial installer works, it is unofficial. It would be good for per-user installation to be supported officially.
Why not use PortableApps?
This was suggested to me in the Chat room. There are two reasons why I think PortableApps doesn't provide a good solution in this scenario:
-
We don't want a portable app. We want system integration. PortableApps are designed to avoid system integration.
-
The PortableApps ecosystem presents an additional layer of complexity to the non-tech savvy team members. They will not understand PortableApps if they struggle to manually create shortcuts in the correct places. But they will understand clicking an installer and accepting the defaults to install a program.