1
0
mirror of https://github.com/mintty/wsltty.git synced 2024-10-05 18:31:04 +01:00
wsltty/README.md

110 lines
4.9 KiB
Markdown
Raw Normal View History

2016-09-14 13:55:14 +01:00
Mintty as a terminal for Bash on Ubuntu on Windows / WSL.
2016-09-29 13:53:19 +01:00
### Overview ###
2016-09-14 13:55:14 +01:00
WSLtty components
* wsltty package components (see below) in the users local application folder
`%LOCALAPPDATA%` (where WSL is also installed)
* a wsltty configuration directory in the users application folder `%APPDATA%`;
“home”-located configuration files from a previously installed version
will be migrated to the new default location
2016-11-16 15:46:50 +00:00
* Start Menu and Desktop shortcuts to start a WSL bash (with some variations, see below)
2016-11-18 09:30:56 +00:00
* optional context menu entries for Windows Explorer to start a WSL bash in the respective folder
* install/uninstall context menu items from Start Menu subfolder
2016-11-16 15:46:50 +00:00
* `wsl*.bat` scripts to invoke wsltty manually (with some variations and invocation options, see below)
* an uninstall script that can be invoked manually to remove shortcuts and context menu entries
2016-09-14 13:55:14 +01:00
### Installation ###
#### WSLtty installer ####
Run the [installer](https://github.com/mintty/wsltty/releases) to install
the components listed above.
2017-04-14 00:08:20 +01:00
If Windows complains with a “Windows protected your PC” popup,
you may need to click “Run anyway” to proceed with the installation.
You may need to open the Properties of the installer first, tab “General”
section “Security” (if available) and select “Unblock”,
to enable the “Run anyway” button.
2017-04-14 00:08:20 +01:00
#### Installation from source repository ####
Download or checkout the wsltty repository.
Invoke `make`, then `make install`.
Note this has to be done within a Cygwin environment.
#### Installation to non-default locations ####
Within the installation process, provide parameters to the script `install.bat`.
The optional first parameter designates the installation target,
the optional second parameter designates the configuration directory.
2016-09-29 13:53:19 +01:00
### Configuration ###
2017-01-31 11:51:03 +00:00
#### Command line scripts `wsl*.bat` ####
2016-09-29 13:53:19 +01:00
2016-11-16 15:46:50 +00:00
WSLtty installs the following scripts in its application folder `%LOCALAPPDATA%\wsltty`:
* `wsl.bat` to start a WSL bash in the current folder/directory
* `wsl~.bat` to start a WSL bash in the WSL user home
* `wsl-l.bat` to start a WSL login bash
2016-09-29 13:53:19 +01:00
2016-11-16 15:46:50 +00:00
To enable invocation of these scripts from WIN+R or from cmd.exe,
copy them from `%LOCALAPPDATA%\wsltty` into `%SYSTEMROOT%\System32`,
renaming them as desired.
(The package does not do this to avoid trouble with missing admin privileges.)
2016-09-29 13:53:19 +01:00
2016-11-16 15:46:50 +00:00
#### Start Menu and Desktop shortcuts ####
The Start Menu subfolder WSLtty offers three shortcuts:
* `WSL Bash % in Mintty` to start a WSL bash in the Windows %USERPROFILE% home
* `WSL Bash ~ in Mintty` to start a WSL bash in the WSL user home
* `WSL Bash -l in Mintty` to start a WSL login bash
To ensure a login bash to start in your Linux home directory,
add a `cd` command to your `$HOME/.profile` on Linux side.
#### Mintty settings ####
Mintty can maintain its configuration file in various locations,
with the following precedence:
* file given with mintty option `-c` (not used by wsltty default installation)
* file `config` in directory given with mintty option `--configdir`
* This is `%APPDATA%\mintty\config` in the default wsltty installation.
* `%HOME%\.minttyrc` (usage deprecated with wsltty)
* `%HOME%\.config\mintty\config` (usage deprecated with wsltty)
* `%APPDATA%\mintty\config`
* `%LOCALAPPDATA%\wsltty\etc\minttyrc` (usage deprecated with wsltty)
Note:
* `%APPDATA%\wsltty\config` is the new user configuration file location.
Further subdirectories of `%APPDATA%\wsltty` are used for language,
themes, and sounds resource configuration.
Note the distinction from `%LOCALAPPDATA%\wsltty` which is the default
wsltty software installation location.
* The `%APPDATA%\mintty\config` option provides the possibility to
maintain common mintty settings for various installations (like
wsltty, Cygwin, MinGW/msys, Git for Windows, MinEd for Windows).
* (About deprecated options) By default, `%HOME%` would refer to the
root directory of the cygwin standalone installation hosting wsltty.
So `%HOME%` would mean `%LOCALAPPDATA%\wsltty\home\%USERNAME%`.
If you define `HOME` at Windows level, this changes accordingly.
Note, however, that the WSL `HOME` is a completely different setting.
2016-09-29 13:53:19 +01:00
2017-01-31 11:51:03 +00:00
#### Shell selection ####
To invoke your favourite shell, simply replace `/bin/bash` with its pathname
in the Desktop shortcuts, `wsl*.bat` invocation scripts,
or Explorer context menu commands (configured in `config-context-menu.bat`).
2016-09-29 13:53:19 +01:00
### Components ###
2016-09-14 13:55:14 +01:00
2017-01-27 13:49:23 +00:00
For mintty, see the [Mintty homepage](http://mintty.github.io/),
then [Mintty manual page](http://mintty.github.io/mintty.1.html),
and the [Mintty Wiki](https://github.com/mintty/mintty/wiki),
including a [Hints and Tips page](https://github.com/mintty/mintty/wiki/Tips).
2016-09-14 13:55:14 +01:00
It is based on [Cygwin](http://cygwin.com)
and includes its runtime library ([sources](http://mirrors.dotsrc.org/cygwin/x86/release/cygwin)).
For interacting with WSL, it uses [wslbridge](https://github.com/rprichard/wslbridge).