mirror of
https://github.com/mintty/wsltty.git
synced 2025-11-09 03:21:55 +00:00
Compare commits
14 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e9b2e108f7 | ||
|
|
f66c87cc62 | ||
|
|
36e0d9c58a | ||
|
|
5db1916332 | ||
|
|
8911503a87 | ||
|
|
55792acd8d | ||
|
|
b8330e46d8 | ||
|
|
65553b90ef | ||
|
|
2fb7d02091 | ||
|
|
4c7eb01b93 | ||
|
|
0fd1dd9077 | ||
|
|
64c2d04b56 | ||
|
|
e283f413ba | ||
|
|
4ce4b11094 |
@@ -1,4 +1,4 @@
|
||||
mintty is copyright 2008-13 Andy Koppe, 2015-16 Thomas Wolff.
|
||||
mintty is copyright 2008-13 Andy Koppe, 2015-18 Thomas Wolff.
|
||||
|
||||
Licensed under the terms of the GNU General Public License version 3 or later,
|
||||
amended with the bundling clause to clarify ambiguous interpretation.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2016 Ryan Prichard
|
||||
Copyright (c) 2017 Google LLC
|
||||
Copyright (c) 2018 Google LLC
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to
|
||||
|
||||
13
README.md
Normal file → Executable file
13
README.md
Normal file → Executable file
@@ -17,7 +17,7 @@ WSLtty components
|
||||
|
||||
### Installation ###
|
||||
|
||||
#### WSLtty installer ####
|
||||
#### WSLtty installer ([Download](https://github.com/mintty/wsltty/releases) standalone installation) ####
|
||||
|
||||
Run the [installer](https://github.com/mintty/wsltty/releases) to install
|
||||
the components listed above.
|
||||
@@ -117,13 +117,16 @@ Note:
|
||||
If you define `HOME` at Windows level, this changes accordingly.
|
||||
Note, however, that the WSL `HOME` is a completely different setting.
|
||||
|
||||
#### Shell selection ####
|
||||
#### Shell selection and Login shell ####
|
||||
|
||||
The WSLtty deployment does not impose a shell preference anymore.
|
||||
However, the intermediate gateways (`wslbridge` and its backend and the `bash.exe` Windows launcher)
|
||||
are also involved. To invoke your favourite shell, you may append
|
||||
a shell pathname to the mintty invocation (in shortcuts, scripts, or context menu entries),
|
||||
or handle shell replacement within the WSL startup scripts (esp. `.profile`).
|
||||
are also involved.
|
||||
|
||||
To invoke your favourite shell or launch the shell in login mode,
|
||||
you may append a shell pathname and an optional `-l` parameter
|
||||
to the mintty invocation (in shortcuts, scripts, or context menu entries):
|
||||
* `%LOCALAPPDATA%\wsltty\bin\mintty.exe --WSL= --configdir="%APPDATA%\wsltty" /bin/bash -l`
|
||||
|
||||
### Components and Credits ###
|
||||
|
||||
|
||||
@@ -140,8 +140,8 @@ do
|
||||
root="$basepath"
|
||||
fi
|
||||
|
||||
minttyargs='--wsl --rootfs="'"$root"'" -h err --configdir="%APPDATA%\wsltty" -o Locale=C -o Charset=UTF-8 /bin/wslbridge '
|
||||
minttyargs='--WSL="'"$distro"'" -h err --configdir="%APPDATA%\wsltty"'
|
||||
minttyargs='--wsl --rootfs="'"$root"'" --configdir="%APPDATA%\wsltty" -o Locale=C -o Charset=UTF-8 /bin/wslbridge '
|
||||
minttyargs='--WSL="'"$distro"'" --configdir="%APPDATA%\wsltty"'
|
||||
#if [ -z "$launch" ]
|
||||
#then bridgeargs='-t /bin/bash'
|
||||
#else bridgeargs='-l "'"$launch"'" -t /bin/bash'
|
||||
@@ -154,7 +154,7 @@ do
|
||||
distro=
|
||||
name=WSL
|
||||
icon="%LOCALAPPDATA%/wsltty/wsl.ico"
|
||||
minttyargs='--WSL= -h err --configdir="%APPDATA%\wsltty"'
|
||||
minttyargs='--WSL= --configdir="%APPDATA%\wsltty"'
|
||||
bridgeargs='-t'
|
||||
|
||||
ok=true;;
|
||||
@@ -197,6 +197,8 @@ do
|
||||
cmd /C del "%LOCALAPPDATA%\\Microsoft\\WindowsApps\\$name.bat"
|
||||
cmd /C del "%LOCALAPPDATA%\\Microsoft\\WindowsApps\\$name~.bat"
|
||||
else
|
||||
cmd /C copy mkshortcut.bat mkshortcut.vbs
|
||||
|
||||
# desktop shortcut in %USERPROFILE% -> Start Menu - WSLtty
|
||||
cscript /nologo mkshortcut.vbs "/name:$name Terminal %"
|
||||
cmd /C copy "$name Terminal %.lnk" "%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\WSLtty"
|
||||
|
||||
@@ -28,7 +28,7 @@ copy "remove from context menu.lnk" "%installdir%"
|
||||
copy "configure WSL shortcuts.lnk" "%installdir%"
|
||||
copy wsl.ico "%installdir%"
|
||||
copy config-distros.sh "%installdir%"
|
||||
copy mkshortcut.vbs "%installdir%"
|
||||
copy mkshortcut.bat "%installdir%"
|
||||
|
||||
if not exist "%installdir%\bin" goto instbin
|
||||
rem move previous programs possibly in use out of the way
|
||||
@@ -57,6 +57,10 @@ mkdir "%installdir%\usr\share\mintty\lang"
|
||||
copy lang.zoo "%installdir%\usr\share\mintty\lang"
|
||||
mkdir "%installdir%\usr\share\mintty\themes"
|
||||
copy themes.zoo "%installdir%\usr\share\mintty\themes"
|
||||
mkdir "%installdir%\usr\share\mintty\info"
|
||||
copy charnames.txt "%installdir%\usr\share\mintty\info"
|
||||
mkdir "%installdir%\usr\share\mintty\icon"
|
||||
copy wsl.ico "%installdir%\usr\share\mintty\icon"
|
||||
|
||||
|
||||
rem create Start Menu Folder
|
||||
|
||||
42
makefile
42
makefile
@@ -2,17 +2,17 @@
|
||||
# build a wsltty installer package:
|
||||
# configure ver=... and minttyver= in this makefile
|
||||
# make targets:
|
||||
# make [all] to build a distributable installer (default)
|
||||
# make pkg to build an installer, bypassing the system checks
|
||||
# make wsltty to build an installer using the local copy of mintty
|
||||
# make [all] build a distributable installer (default)
|
||||
# make pkg build an installer, bypassing the system checks
|
||||
# make wsltty build the software, using the local copy of mintty
|
||||
|
||||
|
||||
# wsltty release
|
||||
ver=1.8.2
|
||||
ver=1.8.5
|
||||
|
||||
##############################
|
||||
# mintty release version
|
||||
minttyver=2.8.2
|
||||
minttyver=2.8.5
|
||||
|
||||
# or mintty branch or commit version
|
||||
#minttyver=master
|
||||
@@ -35,6 +35,12 @@ wslbridge=wslbridge-frontend wslbridge-backend
|
||||
# after 0.2.4, from branch login-mode:
|
||||
wslbridge-commit=04a060505860915c99bc336dbeb80269771a80b7
|
||||
|
||||
# after 0.2.4, from branch wslpath:
|
||||
wslbridge-commit=29df86d87135caec8424c08f031ce121a3a39ae1
|
||||
|
||||
# after 0.2.4, merged wslpath branch:
|
||||
wslbridge-commit=06fb7acba28d7f37611f3911685af214739895a0
|
||||
|
||||
#############################################################################
|
||||
# default target
|
||||
|
||||
@@ -61,18 +67,17 @@ wget=curl -R -L --connect-timeout 55 -O
|
||||
wgeto=curl -R -L --connect-timeout 55
|
||||
|
||||
#############################################################################
|
||||
# system check;
|
||||
# for now, let's enforce Cygwin 32-Bit as the container for wsltty
|
||||
# just in case there is a 32-Bit WSL released (-> 32 bit), and to ensure
|
||||
# the path name drag-and-drop adaptation works (-> cygwin, not msys)
|
||||
# system check:
|
||||
# - ensure the path name drag-and-drop adaptation works (-> Cygwin, not MSYS)
|
||||
# - 64 Bit (x86_64) for more stable invocation (avoid fork issues)
|
||||
|
||||
check:
|
||||
# checking suitable host environment; run `make pkg` to bypass
|
||||
# check cygwin (vs msys) for proper drag-and-drop paths:
|
||||
uname | grep CYGWIN
|
||||
# check 32 bit (vs 64 bit) to ensure 32-Bit Windows support, just in case:
|
||||
# check 32 bit to ensure 32-Bit Windows support, just in case:
|
||||
#uname -m | grep i686
|
||||
# check 64 bit (vs 32 bit) to provide 64-Bit stability support:
|
||||
# check 64 bit to provide 64-Bit stability support:
|
||||
uname -m | grep x86_64
|
||||
|
||||
#############################################################################
|
||||
@@ -88,10 +93,12 @@ wslbridge-package:
|
||||
tr -d '\015' < wslbridge-$(wslbridgever)-$(sys)/LICENSE.txt > LICENSE.wslbridge
|
||||
|
||||
wslbridge-source: wslbridge-$(wslbridge-commit).zip
|
||||
$(wgeto) https://github.com/rprichard/wslbridge/archive/$(wslbridge-commit).zip -o wslbridge-$(wslbridge-commit).zip
|
||||
unzip -o wslbridge-$(wslbridge-commit).zip
|
||||
tr -d '\015' < wslbridge-$(wslbridge-commit)/LICENSE.txt > LICENSE.wslbridge
|
||||
|
||||
wslbridge-$(wslbridge-commit).zip:
|
||||
$(wgeto) https://github.com/rprichard/wslbridge/archive/$(wslbridge-commit).zip -o wslbridge-$(wslbridge-commit).zip
|
||||
|
||||
wslbridge-frontend: wslbridge-source
|
||||
cd wslbridge-$(wslbridge-commit)/frontend; make
|
||||
strip wslbridge-$(wslbridge-commit)/out/wslbridge.exe
|
||||
@@ -113,12 +120,18 @@ wslbuild=LDFLAGS="-static -static-libgcc -s"
|
||||
wslversion=VERSION_SUFFIX="– wsltty $(ver)" WSLTTY_VERSION="$(ver)"
|
||||
|
||||
mintty-build:
|
||||
# ensure rebuild of version-specific check and message
|
||||
rm -f mintty-$(minttyver)/bin/*/windialog.o
|
||||
# build mintty
|
||||
cd mintty-$(minttyver)/src; make $(wslbuild) $(wslversion)
|
||||
mkdir -p bin
|
||||
cp mintty-$(minttyver)/bin/mintty.exe bin/
|
||||
cp mintty-$(minttyver)/LICENSE LICENSE.mintty
|
||||
cd mintty-$(minttyver)/lang; zoo a lang *.po; mv lang.zoo ../../
|
||||
cd mintty-$(minttyver)/themes; zoo a themes *[!~]; mv themes.zoo ../../
|
||||
# add charnames.txt to support "Character Info"
|
||||
cd mintty-$(minttyver)/src; sh ./mknames
|
||||
cp mintty-$(minttyver)/src/charnames.txt .
|
||||
|
||||
cygwin:
|
||||
mkdir -p bin
|
||||
@@ -140,6 +153,7 @@ cop: ver
|
||||
cp bin/zoo.exe rel/
|
||||
cp lang.zoo rel/
|
||||
cp themes.zoo rel/
|
||||
cp charnames.txt rel/
|
||||
cp bin/wslbridge.exe rel/
|
||||
cp bin/wslbridge-backend rel/
|
||||
cp LICENSE.* rel/
|
||||
@@ -149,7 +163,7 @@ cop: ver
|
||||
cp *.url rel/
|
||||
cp *.bat rel/
|
||||
cp *.sh rel/
|
||||
cp *.vbs rel/
|
||||
#cp *.vbs rel/
|
||||
|
||||
cab: cop
|
||||
cd rel; iexpress /n wsltty.SED
|
||||
@@ -164,7 +178,7 @@ ver:
|
||||
|
||||
pkg: wslbridge cygwin mintty cab
|
||||
|
||||
wsltty: wslbridge cygwin mintty-build cab
|
||||
wsltty: wslbridge cygwin mintty-build
|
||||
|
||||
#############################################################################
|
||||
# end
|
||||
|
||||
@@ -41,7 +41,7 @@ FILE5="LICENSE.mintty"
|
||||
FILE6="LICENSE.wslbridge"
|
||||
FILE7="config-distros.sh"
|
||||
FILE8="configure WSL shortcuts.lnk"
|
||||
FILE9="mkshortcut.vbs"
|
||||
FILE9="mkshortcut.bat"
|
||||
FILE10="VERSION"
|
||||
FILE11="dash.exe"
|
||||
FILE12="regtool.exe"
|
||||
@@ -55,6 +55,7 @@ FILE19="wsltty home & help.url"
|
||||
FILE20="zoo.exe"
|
||||
FILE21="lang.zoo"
|
||||
FILE22="themes.zoo"
|
||||
FILE23="charnames.txt"
|
||||
|
||||
[SourceFiles]
|
||||
SourceFiles0=.
|
||||
@@ -83,4 +84,5 @@ SourceFiles0=.
|
||||
%FILE20%=
|
||||
%FILE21%=
|
||||
%FILE22%=
|
||||
%FILE23%=
|
||||
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
rem cscript mkshortcut.vbs [/param:arg] /target:link
|
||||
rem cscript mkshortcut [/param:arg] /target:link
|
||||
|
||||
rem %
|
||||
rem /arguments:--wsl -h err -o Locale=C -o Charset=UTF-8 /bin/wslbridge -t /bin/bash
|
||||
rem ~
|
||||
rem /arguments:--wsl -h err -o Locale=C -o Charset=UTF-8 /bin/wslbridge -C~ -t /bin/bash
|
||||
rem -l
|
||||
rem /arguments:--wsl -h err -o Locale=C -o Charset=UTF-8 /bin/wslbridge -t /bin/bash -l
|
||||
rem /target:%LOCALAPPDATA%\wsltty\bin\mintty.exe
|
||||
rem /workingdir:%USERPROFILE%
|
||||
rem rem /icon:%LOCALAPPDATA%\lxss\bash.ico
|
||||
rem /icon:%LOCALAPPDATA%\wsltty\wsl.ico
|
||||
rem deprecated: /icon:%LOCALAPPDATA%\lxss\bash.ico
|
||||
rem deprecated: %
|
||||
rem /arguments:--wsl -o Locale=C -o Charset=UTF-8 /bin/wslbridge -t /bin/bash
|
||||
rem deprecated: ~
|
||||
rem /arguments:--wsl -o Locale=C -o Charset=UTF-8 /bin/wslbridge -C~ -t /bin/bash
|
||||
rem deprecated: -l
|
||||
rem /arguments:--wsl -o Locale=C -o Charset=UTF-8 /bin/wslbridge -t /bin/bash -l
|
||||
|
||||
rem General - Name:
|
||||
name = Wscript.Arguments.Named("name") & ".lnk"
|
||||
Reference in New Issue
Block a user