keybase / client

Keybase Go Library, Client, Service, OS X, iOS, Android, Electron
BSD 3-Clause "New" or "Revised" License
8.89k stars 1.23k forks source link

Keybase not added to Windows path by default #3480

Open fpigerre opened 8 years ago

fpigerre commented 8 years ago

Hello,

When installing Keybase using the Windows installer for the Keybase application (I think it is build 386/version 1.0.16.79), the Keybase application doesn't seem to be added to the Windows PATH variable (either the user or the system variable). This prevents users from using Keybase from the command line without adding Keybase's home folder (\AppData\Roaming\Keybase) to a PATH variable.

Thankyou, psgs :palm_tree:

fpigerre commented 8 years ago

It's possible that this issue might be due to a change in the path of the Keybase home folder that might have occurred when the GUI application was released. It seems that packaging/windows/doinstaller_gui.cmd defines KeybaseBin as "c:\Program Files (x86)\Keybase\keybase.exe", whereas packaging/windows/doinstaller_wix.cmd defines KeybaseBin as "%APPDATA%\Keybase\keybase.exe".

zanderz commented 8 years ago

Rather than add to the global path, the installer adds a shortcut to a CMD console, now called "Keybase Shell", with keybase in the path in its environment.

johnpbloch commented 8 years ago

Yeah, would be nice for power users (presumably the target demo at this point anyway) who have non-CMD (powershell, msys-git bash, and soon native bash immediately come to mind) shells already set up for heavy use not to have to completely switch context just to use the application.

There's nothing special about the CMD console and I'm able to use keybase just fine after adding the location to my path anyway, so this isn't a matter of any technical reason blocking this as a feature, just something that would be awesome to have in addition to the current shortcut.

jtsmith0101 commented 8 years ago

Can you tell us how to manually set up our windows path if the installer didn't do this for us, automatically?

johnpbloch commented 8 years ago

@jtsmith0101 Check out the instructions here: http://windowsitpro.com/systems-management/how-can-i-add-new-folder-my-system-path

I'd suggest adding it to your user path, personally, but either user or system path will work.

masaeedu commented 7 years ago

@zanderz This is inconvenient, because Windows people use a variety of shells and shell management tools (powershell, cmd, cygwin, msys, conemu, cmder, console2, WSL bash, it goes on and on and on), and I don't usually open up a new window for the express purpose of working with a particular tool. It is not bad citizenship for an installer to add something to the PATH env var, although typically installers make this an optional feature.

latkin commented 7 years ago

The command line tools definitely have a discoverability problem on Windows.

Neither https://keybase.io/docs/the_app/install_windows or https://keybase.io/docs/command_line/basics mention anything about a "Keybase shell", so I never thought to look for that. I ended up needing to Google around for "keybase windows command line" before finding it.

I would recommend an on-by-default installer option "Add Keybase command line tools to the PATH". This is a pretty common approach, and if anyone objects they can uncheck it.

Would also recommend updating docs/website to describe where to find the command line tools on Windows.