From 863d5581a6b9917a4000d59f449653eb1ddd6dee Mon Sep 17 00:00:00 2001 From: Zac Pullar-Strecker Date: Sun, 3 Feb 2019 01:00:29 +1300 Subject: [PATCH] Document that alacritty requires winpty-agent on windows To make things easier to understand for Windows users, the relationship between Alacritty and the WinPTY agent has been clarified in the documentation. This also bundles the windows agent and exe together in a zip file to make distribution for windows easier on the user. --- INSTALL.md | 8 +++++--- README.md | 11 +++++++++-- ci/before_deploy.sh | 5 +++-- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 5f1dfbc2..4f6f5db3 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -166,7 +166,8 @@ nix-shell -A alacritty '' #### Windows -On windows you will need to have the `{architecture}-pc-windows-msvc` toolchain installed as well as [Clang 3.9 or greater](http://releases.llvm.org/download.html). +On windows you will need to have the `{architecture}-pc-windows-msvc` toolchain +installed as well as [Clang 3.9 or greater](http://releases.llvm.org/download.html). #### Other @@ -175,7 +176,7 @@ filling in this section of the README. ## Building -### Linux +### Linux / Windows Once all the prerequisites are installed, compiling Alacritty should be easy: @@ -184,6 +185,7 @@ cargo build --release ``` If all goes well, this should place a binary at `target/release/alacritty`. +On Windows this directory should also contain the `winpty-agent.exe`. #### Desktop Entry @@ -226,7 +228,7 @@ To choose a default terminal app, use Debian's `update-alternatives`. ```sh update-alternatives --config x-terminal-emulator -``` +``` ## Manual Page diff --git a/README.md b/README.md index 6a4d6fb5..cc647f6a 100644 --- a/README.md +++ b/README.md @@ -91,7 +91,8 @@ eopkg install alacritty brew cask install alacritty ``` -Once the cask is installed, it is recommended to setup the [manual page](INSTALL.md#manual-page), [shell completions](INSTALL.md#shell-completions), and [terminfo definitions](INSTALL.md#terminfo). +Once the cask is installed, it is recommended to setup the [manual page](INSTALL.md#manual-page), +[shell completions](INSTALL.md#shell-completions), and [terminfo definitions](INSTALL.md#terminfo). ### Windows @@ -104,7 +105,13 @@ scoop install alacritty ### Other -Prebuilt binaries for Linux, macOS, and Windows can be downloaded from the [GitHub releases page](https://github.com/jwilm/alacritty/releases). +Prebuilt binaries for Linux, macOS, and Windows can be downloaded from the +[GitHub releases page](https://github.com/jwilm/alacritty/releases). + +To work properly on Windows, Alacritty requires winpty to emulate UNIX's PTY API. +The agent is a single binary (`winpty-agent.exe`) which **must** be in the same +directory as the Alacritty executable and is available through the +[GitHub releases page](https://github.com/jwilm/alacritty/releases). ## Configuration diff --git a/ci/before_deploy.sh b/ci/before_deploy.sh index 447ba2c9..62b5bc2e 100755 --- a/ci/before_deploy.sh +++ b/ci/before_deploy.sh @@ -54,8 +54,9 @@ elif [ "$TRAVIS_OS_NAME" == "linux" ] && [ "$ARCH" == "i386" ]; then # Make sure all files can be uploaded without permission errors sudo chown -R $USER:$USER "./target" elif [ "$TRAVIS_OS_NAME" == "windows" ]; then - mv "./target/release/alacritty.exe" "./target/deploy/${name}.exe" - mv "./target/release/winpty-agent.exe" "./target/deploy/winpty-agent.exe" + choco install 7zip + 7z a -tzip "./target/deploy/${name}-windows.zip" "./target/release/alacritty.exe" \ + "./target/release/winpty-agent.exe" fi # Convert and add manpage if it changed