Skip to content
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

Choosing install directory #1002

Closed
saun4app opened this issue Apr 12, 2017 · 12 comments
Closed

Choosing install directory #1002

saun4app opened this issue Apr 12, 2017 · 12 comments

Comments

@saun4app
Copy link

saun4app commented Apr 12, 2017

I hope Squirrel allows the users to select install directory. Here are 2 practical examples:

  1. the default drive (e.g., C:) is nearly full.
  2. installing an program on SSD to improve performance.

It is great that Squirrel is "favor of simplicity" (see https://discuss.atom.io/t/how-to-install-atom-on-windows-to-other-places-instead-of-c/27619/7), it would be even better if Squirrel provides flexibility for users who need customization as well. Using the 80-20 rule as frame of reference, simplicity for 80% of users, customization for 20% of users. Firefox installation is a great example of this approach, provide simplicity for must user, and allows users to customize installation settings.

@anaisbetts
Copy link
Contributor

No

@dizzy-egg
Copy link

dizzy-egg commented Jan 16, 2018

@paulcbetts Excellent detailed response. You really took the OP's constructive feedback on board, and gave detailed rebuttals and good justification for his well-reasoned points. You make me proud to be an open-source software developer and other developers should use you as an example of how to have mature discussions where you really listen to your users.

/s

Will I be using this software?

No

@anaisbetts
Copy link
Contributor

@dizzy-egg I didn't respond because I have answered this question over. and over. and over. and over. again. It's in the wiki, it's on the README why we don't do this.

@bensku
Copy link

bensku commented Jan 16, 2018

There reads that AppData is used to avoid UAC (to allow silent updates for example). I can understand that. What I don't understand, however, is why cannot Squirrel install to another partition which is fully writable by all users? Is popping a dialog for user (where they may just press enter to continue with default location) too much?

Sorry for bothering you if this has been answered before. I honestly could not find a good explanation for lack of this little feature. Maybe it is there somewhere, but even Google results are mostly about Atom users complaining that they want to choose their installation location; not relevant information.

Edit: Oops. Found your goals.md, that explains a bit. Still doesn't explicitly state why I could not install to another location not protected by UAC.

@anaisbetts
Copy link
Contributor

@bensku The reason is that fundamentally, the goal of Squirrel.Windows is to get your app running, as soon as possible. Our goal is that you click on Setup, and the next thing you see is the app running, and that should be as fast as possible. Showing dialogs where we ask users questions they shouldn't have to care about, is antithetical to that goal.

That being said, (almost) all Squirrel installs are inherently Portable, once an app is installed, you can actually move that root folder anywhere you want then update the shortcuts. It'll still work and still update itself correctly.

@bensku
Copy link

bensku commented Jan 16, 2018

Thanks for clarification. I suggest you put this a bit more prominently on README, might make people ask this less often.

Good to know about portability of Squirrel installs. While it is not ideal to manually move folders around, it is certainly better than nothing.

@RonaldZaZ
Copy link

Maybe a command line switch in the setup.exe for the special cases?
Setup.exe -installfolder "G:\Apps\Foo"
Doesn't get in the way of anything.

@luetm
Copy link

luetm commented Apr 11, 2018

This is what I was thinking. I heard from the project from a podcast but the attitude is really turning me off reading through the issues... :(

@LukeTOBrien
Copy link

I would say then Squirrel is not a SOLID piece of software, it should be open for extension.
You could at least allow for an optional squirrel.config.xml or json file.
Custom Events could also be extended so that at each stage and event fires, allowing the developer to provide custom logic and/or custom rendering.

There you go, lots of ideas.... :-)

@anaisbetts
Copy link
Contributor

@LukeTOBrian Squirrel is indeed Opinionated Software and will never provide a completely open-ended configurable system. It will only provide a system that does exactly what it says it does, really really well.

@gyan-garcia
Copy link

I was having this problem too and just ended up adding some lines to my app to copy over the whole directory to an accessible location (if it doesn't exist).

if (!Directory.Exists(@"C:\MyApp"))
{
var baseDir = AppDomain.CurrentDomain.BaseDirectory;
Process.Start("cmd.exe", "/C xcopy " + baseDir+ @"....\MyApp C:\MyApp\ /EH");
}

Love the package BTW.

-Saludos

@ldeluigi
Copy link

What about getting the installation path from an environment variable? It would not clash with Squirrel goals as it's transparent and doesn't require prompting the user!

@Squirrel Squirrel locked and limited conversation to collaborators Aug 26, 2024
@Squirrel Squirrel deleted a comment from ScottBeeson Aug 26, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

9 participants