mirror of
				https://github.com/mintty/wsltty.git
				synced 2025-11-04 09:01:52 +00:00 
			
		
		
		
	Compare commits
	
		
			10 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					ad65aa9931 | ||
| 
						 | 
					c9acce8d76 | ||
| 
						 | 
					1533c27b36 | ||
| 
						 | 
					3e3eaf6e31 | ||
| 
						 | 
					482df018c9 | ||
| 
						 | 
					23fc790c26 | ||
| 
						 | 
					e5c67ecc7c | ||
| 
						 | 
					20075c6378 | ||
| 
						 | 
					05ce002fc6 | ||
| 
						 | 
					cc37c6c2d5 | 
@@ -17,6 +17,8 @@ See LICENSE.PuTTY for PuTTY's copyright notice, contributors, and license.
 | 
			
		||||
The sources of PuTTY 0.60 can be downloaded from
 | 
			
		||||
ftp://ftp.chiark.greenend.org.uk/users/sgtatham/putty-0.60.
 | 
			
		||||
 | 
			
		||||
The minibidi algorithm is under MIT license as quoted in the source file.
 | 
			
		||||
 | 
			
		||||
Sixel code (sixel.c) is relicensed under GPL like mintty with the 
 | 
			
		||||
permission of its author (kmiya@culti); Sixel colour conversion code 
 | 
			
		||||
(sixel_hls.c) is licensed by its author Ross Combs under the license 
 | 
			
		||||
 
 | 
			
		||||
@@ -73,7 +73,7 @@ A Windows Appx package and certificate is available in the [wsltty.appx](https:/
 | 
			
		||||
 | 
			
		||||
WSLtty can be invoked with
 | 
			
		||||
* installed Start Menu shortcuts (or Desktop shortcuts if copied there)
 | 
			
		||||
* *.bat scripts
 | 
			
		||||
* *.bat scripts (optionally with WSL command as parameters)
 | 
			
		||||
* Explorer context menu (if installed from the Start Menu `WSLtty` subfolder)
 | 
			
		||||
 | 
			
		||||
Starting the mintty terminal directly from the WSLtty installation location 
 | 
			
		||||
@@ -121,6 +121,13 @@ To add launch entries for the default or all WSL distributions to the
 | 
			
		||||
Explorer context menu, or remove them, run the respective script from the 
 | 
			
		||||
Start Menu subfolder `WSLtty`.
 | 
			
		||||
 | 
			
		||||
#### Icon ####
 | 
			
		||||
 | 
			
		||||
Wsltty installation and the mintty terminal try to use the icon of the 
 | 
			
		||||
respective WSL distribution. If it cannot be determined, a penguin icon 
 | 
			
		||||
is used as a default. You can replace it with your preferred fallback icon 
 | 
			
		||||
by replacing the icon file `%LOCALAPPDATA%\wsltty\wsl.ico`.
 | 
			
		||||
 | 
			
		||||
#### Mintty settings ####
 | 
			
		||||
 | 
			
		||||
Mintty can maintain its configuration file in various locations, 
 | 
			
		||||
 
 | 
			
		||||
@@ -97,7 +97,7 @@ echo Creating %1.bat
 | 
			
		||||
 | 
			
		||||
echo @echo off> %1.bat
 | 
			
		||||
echo rem Start mintty terminal for WSL package %name% in current directory>> %1.bat
 | 
			
		||||
echo %target% -i "%icon%" %minttyargs% %bridgeargs%>> %1.bat
 | 
			
		||||
echo %target% -i "%icon%" %minttyargs% %bridgeargs% %%*>> %1.bat
 | 
			
		||||
/EOB
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
@@ -167,28 +167,29 @@ do
 | 
			
		||||
  echoc "- icon $icon"
 | 
			
		||||
  echoc "- root $root"
 | 
			
		||||
  target="$installdir"'\bin\mintty.exe'
 | 
			
		||||
  bridgeargs=" "
 | 
			
		||||
  bridgeargs=" "	# deprecated
 | 
			
		||||
 | 
			
		||||
  if $ok && $config
 | 
			
		||||
  then
 | 
			
		||||
    export target minttyargs bridgeargs icon
 | 
			
		||||
    export name target minttyargs bridgeargs icon
 | 
			
		||||
 | 
			
		||||
    if $contextmenu
 | 
			
		||||
    then
 | 
			
		||||
      # context menu entries
 | 
			
		||||
      #cmd /C mkcontext "$name"
 | 
			
		||||
      direckey='HKEY_CURRENT_USER\Software\Classes\Directory'
 | 
			
		||||
      keyname="${name}_Terminal"
 | 
			
		||||
      if $remove
 | 
			
		||||
      then
 | 
			
		||||
        reg delete "$direckey\\shell\\$name" /f
 | 
			
		||||
        reg delete "$direckey\\Background\\shell\\$name" /f
 | 
			
		||||
        reg delete "$direckey\\shell\\$keyname" /f
 | 
			
		||||
        reg delete "$direckey\\Background\\shell\\$keyname" /f
 | 
			
		||||
      else
 | 
			
		||||
        reg add "$direckey\\shell\\$name" /d "$name Terminal" /f
 | 
			
		||||
        reg add "$direckey\\shell\\$name" /v Icon /d "$icon" /f
 | 
			
		||||
        cmd /C reg add "$direckey\\shell\\$name\\command" /d "\"$target\" -i \"$icon\" --dir \"%1\" $minttyargs $bridgeargs" /f
 | 
			
		||||
        reg add "$direckey\\Background\\shell\\$name" /d "$name Terminal" /f
 | 
			
		||||
        reg add "$direckey\\Background\\shell\\$name" /v Icon /d "$icon" /f
 | 
			
		||||
        cmd /C reg add "$direckey\\Background\\shell\\$name\\command" /d "\"$target\" -i \"$icon\" $minttyargs $bridgeargs" /f
 | 
			
		||||
        reg add "$direckey\\shell\\$keyname" /d "$name Terminal" /f
 | 
			
		||||
        reg add "$direckey\\shell\\$keyname" /v Icon /d "$icon" /f
 | 
			
		||||
        cmd /C reg add "$direckey\\shell\\$keyname\\command" /d "\"$target\" -i \"$icon\" --dir \"%1\" $minttyargs $bridgeargs" /f
 | 
			
		||||
        reg add "$direckey\\Background\\shell\\$keyname" /d "$name Terminal" /f
 | 
			
		||||
        reg add "$direckey\\Background\\shell\\$keyname" /v Icon /d "$icon" /f
 | 
			
		||||
        cmd /C reg add "$direckey\\Background\\shell\\$keyname\\command" /d "\"$target\" -i \"$icon\" $minttyargs $bridgeargs" /f
 | 
			
		||||
      fi
 | 
			
		||||
    else
 | 
			
		||||
      # invocation shortcuts and scripts
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										14
									
								
								install.bat
									
									
									
									
									
								
							
							
						
						
									
										14
									
								
								install.bat
									
									
									
									
									
								
							@@ -26,11 +26,12 @@ copy "add to context menu.lnk" "%installdir%"
 | 
			
		||||
copy "add default to context menu.lnk" "%installdir%"
 | 
			
		||||
copy "remove from context menu.lnk" "%installdir%"
 | 
			
		||||
copy "configure WSL shortcuts.lnk" "%installdir%"
 | 
			
		||||
copy "WSL Terminal.lnk" "%installdir%"
 | 
			
		||||
copy "WSL Terminal %%.lnk" "%installdir%"
 | 
			
		||||
copy wsl.ico "%installdir%"
 | 
			
		||||
rem copy "WSL Terminal.lnk" "%installdir%"
 | 
			
		||||
rem copy "WSL Terminal %%.lnk" "%installdir%"
 | 
			
		||||
copy config-distros.sh "%installdir%"
 | 
			
		||||
copy mkshortcut.vbs "%installdir%"
 | 
			
		||||
rem allow persistent customization of default icon:
 | 
			
		||||
if not exist "%installdir%\wsl.ico" copy tux.ico "%installdir%\wsl.ico"
 | 
			
		||||
 | 
			
		||||
if not exist "%installdir%\bin" goto instbin
 | 
			
		||||
rem move previous programs possibly in use out of the way
 | 
			
		||||
@@ -62,7 +63,8 @@ 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"
 | 
			
		||||
copy tux.ico "%installdir%\usr\share\mintty\icon"
 | 
			
		||||
copy mintty.ico "%installdir%\usr\share\mintty\icon"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
rem create Start Menu Folder
 | 
			
		||||
@@ -77,8 +79,8 @@ copy "add to context menu.lnk" "%smf%"
 | 
			
		||||
copy "add default to context menu.lnk" "%smf%"
 | 
			
		||||
copy "remove from context menu.lnk" "%smf%"
 | 
			
		||||
copy "configure WSL shortcuts.lnk" "%smf%"
 | 
			
		||||
copy "WSL Terminal.lnk" "%smf%"
 | 
			
		||||
copy "WSL Terminal %%.lnk" "%smf%"
 | 
			
		||||
rem copy "WSL Terminal.lnk" "%smf%"
 | 
			
		||||
rem copy "WSL Terminal %%.lnk" "%smf%"
 | 
			
		||||
rem clean up previous installation
 | 
			
		||||
rmdir /S /Q "%smf%\context menu shortcuts"
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										28
									
								
								makefile
									
									
									
									
									
								
							
							
						
						
									
										28
									
								
								makefile
									
									
									
									
									
								
							@@ -8,14 +8,18 @@
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# wsltty release
 | 
			
		||||
ver=1.9.3
 | 
			
		||||
ver=1.9.7
 | 
			
		||||
 | 
			
		||||
# wsltty appx release
 | 
			
		||||
verx=0.9.3
 | 
			
		||||
# wsltty appx release - must have 4 parts!
 | 
			
		||||
verx=1.9.7.0
 | 
			
		||||
 | 
			
		||||
# Windows SDK version for appx
 | 
			
		||||
WINSDKKEY=/HKEY_LOCAL_MACHINE/SOFTWARE/WOW6432Node/Microsoft/.NET Framework Platform/Setup/Multi-Targeting Pack
 | 
			
		||||
WINSDKVER=`regtool list '$(WINSDKKEY)' | sed -e '$$ q' -e d`
 | 
			
		||||
 | 
			
		||||
##############################
 | 
			
		||||
# mintty release version
 | 
			
		||||
minttyver=2.9.3
 | 
			
		||||
minttyver=2.9.7
 | 
			
		||||
 | 
			
		||||
# or mintty branch or commit version
 | 
			
		||||
#minttyver=master
 | 
			
		||||
@@ -90,6 +94,19 @@ check:
 | 
			
		||||
	# check 64 bit to provide 64-Bit stability support:
 | 
			
		||||
	uname -m | grep x86_64
 | 
			
		||||
 | 
			
		||||
#############################################################################
 | 
			
		||||
# patch version information for appx package configuration
 | 
			
		||||
 | 
			
		||||
fix-verx:
 | 
			
		||||
	echo patching $(WINSDKVER) into Launcher config
 | 
			
		||||
	cd Launcher; sed -i~ -e "/<supportedRuntime / s,Version=v[.0-9]*,Version=$(WINSDKVER)," app.config
 | 
			
		||||
	echo patched app.config
 | 
			
		||||
	cd Launcher; sed -i~ -e "/<TargetFrameworkVersion>/ s,v[.0-9]*,$(WINSDKVER)," Launcher.csproj
 | 
			
		||||
	echo patched Launcher.csproj
 | 
			
		||||
	echo patching $(verx) into app config
 | 
			
		||||
	sed -i~ -e '/<Identity / s,Version="[.0-9]*",Version="$(verx)",' AppxManifest.xml
 | 
			
		||||
	echo patched AppxManifest.xml
 | 
			
		||||
 | 
			
		||||
#############################################################################
 | 
			
		||||
# generation
 | 
			
		||||
 | 
			
		||||
@@ -123,6 +140,7 @@ wslbridge-backend:	wslbridge-source
 | 
			
		||||
mintty-get:
 | 
			
		||||
	$(wgeto) https://github.com/mintty/mintty/archive/$(minttyver).zip -o mintty-$(minttyver).zip
 | 
			
		||||
	unzip -o mintty-$(minttyver).zip
 | 
			
		||||
	cp mintty-$(minttyver)/icon/terminal.ico mintty.ico
 | 
			
		||||
 | 
			
		||||
wslbuild=LDFLAGS="-static -static-libgcc -s"
 | 
			
		||||
appxbuild=$(wslbuild) CCOPT=-DWSLTTY_APPX
 | 
			
		||||
@@ -224,7 +242,7 @@ pkg:	wslbridge cygwin mintty-get mintty-build mintty-pkg cab
 | 
			
		||||
wsltty-appx:	wslbridge appx-bin mintty-get mintty-build-appx mintty-appx
 | 
			
		||||
 | 
			
		||||
# appx package target:
 | 
			
		||||
appx:	wsltty-appx
 | 
			
		||||
appx:	wsltty-appx fix-verx
 | 
			
		||||
	sh ./build.sh
 | 
			
		||||
 | 
			
		||||
#############################################################################
 | 
			
		||||
 
 | 
			
		||||
@@ -47,7 +47,7 @@ FILE11="dash.exe"
 | 
			
		||||
FILE12="regtool.exe"
 | 
			
		||||
FILE13="install.bat"
 | 
			
		||||
FILE14="uninstall.bat"
 | 
			
		||||
FILE15="wsl.ico"
 | 
			
		||||
FILE15="tux.ico"
 | 
			
		||||
FILE16="add to context menu.lnk"
 | 
			
		||||
FILE17="add default to context menu.lnk"
 | 
			
		||||
FILE18="remove from context menu.lnk"
 | 
			
		||||
@@ -55,9 +55,8 @@ FILE19="wsltty home & help.url"
 | 
			
		||||
FILE20="zoo.exe"
 | 
			
		||||
FILE21="lang.zoo"
 | 
			
		||||
FILE22="themes.zoo"
 | 
			
		||||
FILE23="WSL Terminal %.lnk"
 | 
			
		||||
FILE24="WSL Terminal.lnk"
 | 
			
		||||
FILE25="mkshortcut.vbs"
 | 
			
		||||
FILE23="mkshortcut.vbs"
 | 
			
		||||
FILE24="mintty.ico"
 | 
			
		||||
 | 
			
		||||
[SourceFiles]
 | 
			
		||||
SourceFiles0=.
 | 
			
		||||
@@ -88,5 +87,4 @@ SourceFiles0=.
 | 
			
		||||
%FILE22%=
 | 
			
		||||
%FILE23%=
 | 
			
		||||
%FILE24%=
 | 
			
		||||
%FILE25%=
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -24,7 +24,7 @@ rem lnk.Arguments = Wscript.Arguments.Named("arguments")
 | 
			
		||||
lnk.TargetPath = wshell.ExpandEnvironmentStrings("%target%")
 | 
			
		||||
minttyargs = wshell.ExpandEnvironmentStrings("%minttyargs%")
 | 
			
		||||
bridgeargs = wshell.ExpandEnvironmentStrings("%bridgeargs%")
 | 
			
		||||
lnk.Arguments = minttyargs & bridgeargs
 | 
			
		||||
lnk.Arguments = minttyargs & " " & bridgeargs
 | 
			
		||||
rem wscript.echo "minttyargs: " & minttyargs
 | 
			
		||||
rem wscript.echo lnk.Arguments
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 472 KiB After Width: | Height: | Size: 472 KiB  | 
		Reference in New Issue
	
	Block a user