DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 57ICdtdp205054
Authentication-Results: delorie.com; dmarc=pass (p=none dis=none) header.from=cygwin.com
Authentication-Results: delorie.com; spf=pass smtp.mailfrom=cygwin.com
DKIM-Filter: OpenDKIM Filter v2.11.0 delorie.com 57ICdtdp205054
Authentication-Results: delorie.com;
	dkim=pass (1024-bit key, unprotected) header.d=cygwin.com header.i=@cygwin.com header.a=rsa-sha256 header.s=default header.b=PZ+MP9S8
X-Recipient: archive-cygwin@delorie.com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 4FC62385780D
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
	s=default; t=1755520794;
	bh=zYFGxP4Jy3vdtoZsjhHbsVHgxTW0TnbriL4vOgL/78c=;
	h=Date:Subject:To:References:In-Reply-To:List-Id:List-Unsubscribe:
	 List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:
	 From;
	b=PZ+MP9S8xWBFIxMh7hcRgtxGR10LdrZ+oBy95sr1pYAfMLBY7TZXnj+reLjnsuLf4
	 d+wgFweBJdOj3EEoQzUhZSoF3GGlIUMMh5QBrBsuXXvG2CJGG0wWOyMdndMKhMUtkz
	 rzWP3L8Z8BpgdKsCC2hfrG0d1w44EPaOsK76FUpY=
X-Original-To: cygwin@cygwin.com
Delivered-To: cygwin@cygwin.com
DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 15CA8385770D
ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 15CA8385770D
ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1755520764; cv=none;
 b=qS9w+pF7uCJHUTQGh9w94pOlliBYCueHMoqKvsm+k3RoxO4MONUN5U1o0cEp6k/54i0B9nPROLCa6IZFtBZrt9YrwOm0dnQ41WvTRKuVRkg3bSKBDZiw1wdSusz0MgSJMRCTrLtvCHGMie3o3cnQg5L6tAmlxdLAnqveUo2ZmqI=
ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key;
 t=1755520764; c=relaxed/simple;
 bh=dnBQIoJK0kyvQEDn4I3/VxlANc9t6Z9JbMyzpZU2QYY=;
 h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:To:From;
 b=k9OHEPVzLV62cyRhJ/IhNq7zedve7xMLEqNipHLRqygPov045581jMXRFZkMyRieGQ1J8thi8VuaW6YRcNGv2EMn/igHF901aQvmuEhFaK5GJB+i1L9rBT9ws+OEgbIq5QIGOmuursaDqDzuAwRIgE2zG3DnfSRkZFKv75hf2QM=
ARC-Authentication-Results: i=1; server2.sourceware.org
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 15CA8385770D
X-UI-Sender-Class: 55c96926-9e95-11ee-ae09-1f7a4046a0f6
Message-ID: <803f682d-44f3-46a9-9eab-bab4dc4d6fe8@towo.net>
Date: Mon, 18 Aug 2025 14:38:12 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: pty/terminfo dependency when running WSL
To: cygwin@cygwin.com
References: <c76d21bf-7b9d-4f1c-803d-47d17a61cb7f@towo.net>
 <20250816214543.812a2376dcc088fc86f07b02@nifty.ne.jp>
 <fe580b91-4fbd-46cc-963f-c0a40f7a458a@towo.net>
 <f69f6b8d-c7b6-452e-aaef-17b473f64df6@SystematicSW.ab.ca>
Autocrypt: addr=towo@towo.net; keydata=
 xsDNBGNaf3QBDACVevqudcTSevLThXKQPU1QpaDxtGuYjtwmr7i9wXxVGih4Y4oxOJN4PYlu
 KBX9IVAI4651dA+xYtXuyIkWOPZWyyzkGKavQOn3Q7dk09oj7bh2IwOndpxXXde337D408EQ
 bQEGbMHr9lOWhSAideowzgCeFIvGTf2AovbPh97HpexJn1/HCRiRAhTNlrkS1DByUgCAeEMK
 fEr6aGM/Ou29MT+eTnQwOIZTnl9Z9LxM2FtqqMH3MycC7I2OoW3XXhuL8BPQdyJUjWa0/J11
 Oo5jFkRXtWenIns6jGn18oW72jnDmo9jXwwS+iZWAV6Y51nhD7jSC+3xs9ORmPCdtHUSpTr1
 zh67UueUJ3DUUNVuA25Hn/9EJMJ2L60BGUEr88NEB6pcZhmcwdkurAQeYT6t+frzBz2ctsoN
 BoxP/Xc02yd+z7hXWRRMrJWh9WHlQHA3Z4FfmyNhyPhs3MgKTJ1E9QfzGquigAmF3/k/Dc1m
 7cSOKhGYhpEJdSpdXccJFKkAEQEAAc0cVGhvbWFzIFdvbGZmIDx0b3dvQHRvd28ubmV0PsLB
 BwQTAQgAMRYhBHUiRKsHn5d8BpWdP8bz0e72Bp0CBQJjWn93AhsDBAsJCAcFFQgJCgsFFgID
 AQAACgkQxvPR7vYGnQKSMAv8Di+8MXB2mcfsemRdShfLLKcLOv+d0CXAtPVaY3XKxbKpRvC9
 +AAT5wIHYjQft77/b2y87vGIh+nQ5hKLtNtQPSDtqG/Igkb5jAXpLi28fSUzgM96DvARmwve
 5wSnAU3prxH+Y63YpOpslEcGMRoEtYCDy1ANMYPcEZT/YvDd4CplyyEai4VYrw3/LsESDYlY
 GK6uMQzZ1jl2cNOUFu6BwLUeZIcwaqGto8n4R4nbf4jxUEpa21bWBPqE+Jf49uipjPr/iJ72
 5HbdWuuCfyTTJEJjfNEBigWP2RXM9iNDcO61V3aEjh76tThfBK2MMlLWfZkQaQziu24x8R4B
 I0efJYWBX2Sv2qnsH/EWj7FUIZjRqGG7LnWHLShfG6yjSOTOWYi8BbsvoftpaLWgZX28aGX4
 uzuSZ5L0caXh/pr/gSgqoH/YbuFIgqtQH4seOBgTybd22Vpe78rnc+8450pN8qwchHAZaJka
 UxS0SpYxXzXmHUKILA4C43s0U/z2Mez9zsDNBGNaf3cBDADeJ7paMrb6f1+k8wM7tyk0/Ded
 KX/pOejt/D20Ceerw2iL/4tUmBL+A3ic2yjiSFUSsEfHwgCVwKrn4MwZtkesdiphm2lk6xWc
 k1ENCQy44QwQT6UZ/mHWYWcj5LS6ua183x1zdn9iF3lv150nm/ssw56D7USz/ap1Vh0lf5te
 D+CIheGLocVDqxWiu7rHP8jKRWFgq/+OU6HKX8p2Yv1oYsykh9qF2bFzawLDS+S1VbfRicfD
 G0RtceL/BAf7b6UE5u9TGdfrFEa2TKZeS/FS/ViKUfwsXQIki1sWt2FQENbuDY28vxyR46ZZ
 0gixDCFUoBw5pkmOGVQa+1RQYrRqlN4X0CAgp7mFVeEHl5NTgiL1bemkQVmHOUDG+CzNg+Lk
 UGoedAtT672l3JjrnSs4j8zNshpgV2OfAhAC+V9XvqCjMnxzVfXkVlbuWpPfUWQeFclLGg8P
 agpQUE0Ux+VV4DoeQCxYEnRCf/n7n+IRfILj5+2l6Zw4M7zSu6ii0tUAEQEAAcLA9gQYAQgA
 IBYhBHUiRKsHn5d8BpWdP8bz0e72Bp0CBQJjWn97AhsMAAoJEMbz0e72Bp0CQr4L/REdT0SF
 mbapnZIe92THCdtAUgwEv8VdNiNFBJelz8P/fuXuNPtisYvQQD4e64zpWe2UC4Cxo9DUk/pW
 6Qci1xaXRKEiSPjHdSGGVB1PFIcqiS75GCf/ga/Dnfsy0Y4Uh6OGTQnkvZLBCe3vvcVLDQ7F
 PuV79zA9/eOeOW6aGoO6bq/wH+z96f9LyTITkQDy07fm6JYTGuzAoJE2AEboU1mgbtlx+tAa
 QFkpAQkp2g1Vhc3A7k4vntlHOrjMC+uVFh7QTGFfIlLRF6izUjSe6EZ06LErzlIiE05RP3yF
 FSRWidW0wze26peYlxYVgH1+T9wMTW2oiTBybfAMHBAxUP7Gr1WUo/oJEr0srWhatz8AwydP
 y7NwFbdpYn0NcFBaIlLW/JL11Eovwlivow+oGpzGFuuzSuflp2q9s2JWtn4EhW0kEs93D0LP
 iuJWvRaCZ6aD3uF3FMW8wyVWZYsLrzune2jH8w/uKMprDEOGOm+BcyhEFedTyY1ygbZKl+0G kQ==
In-Reply-To: <f69f6b8d-c7b6-452e-aaef-17b473f64df6@SystematicSW.ab.ca>
X-Provags-ID: V03:K1:O159MSHpRTbta7NeSGbz4l1QL/OdJFudKEmtoYBh10nXDi6C/q3
 6h8+W6zb/pujlLihC4PrDDB1zA5NhpbF5DV2DM+i1dq5ZOSn9lpbZbebj5IcAluI/CnExc0
 Bji4qtZuxsnlYFnMc32+2NgKBE/AOqT5oKgDqqY4wCVbyrfJwyTSoBvstVR8aODShs0FREf
 OPrJVbC+kC4W3fupFXz2Q==
UI-OutboundReport: notjunk:1;M01:P0:D0ipBRiExKs=;oiAZ/SZug4K8CcV1j8dp/8fPTDZ
 S4b/IrTEn9QnnVn9KWKQ1NfgF6uUKBsabfjypXsIxZE7tm4PK7VQ1ukfjXzTItdmncPlyd9qB
 LtslwMwtn7CrA3plo+gFnRmcgkTVhtjiM5HUb4t73EdBo4oZ9fuIZrbXcwJhXckQ7Nk8MMSs2
 FV6lVwhKvK0Ln8cz90hSKpNZwPB//L0MfauLnXxxfIOawgaDEQU7/P18DJD2Cq3apQgJ72oFN
 V2uzEmpTdMaG2RyBsQyzShI0JcSH15yL78i9XKI9+H5YSyVitqr12rKvQfi3GX7o8N5bVsVsn
 WsqhQCSCSTXL6OxDK6KRHeQ6F4UV4Ev1DgbhDJN5Cc1dvERV1v7BKGAJJenk54d2T4EnvUoNB
 eSYPXaoyBBJfSi8P3zbdRM9k+orFgdhu/yovvbKfuEj2q6r1D53fkSWqwqwv+49D/q7MZHOjU
 6uWIifkxiuC89B2Cxmx5Qkz0E0SqtAokS/6rwuXOW64wsY7mDs7+77lWyBmAMhkz3K2NQG7FS
 eg4Ua14aKoYiAFTRk6FH8tI4JQX6TYsA5j6B7kXPotypAZbltUedBKpQ+jWVO0YtLEahDpxgA
 +Uf9VZvl1sF8pKpNr5VSXz3ILOWK8+q06autgUcn37K2O6oVq+DIhPMdnlZJ72IWQolXgKVQA
 YMRv51KDcMdL+1ECiNoyZo76dRy91mMSbRhyXWBSW2GYsfYzCrQ6f+sFVRp8ZMagj0A7STiLD
 zrPc8CFcIfelRAGP9d9IcXmhbA2HWK0AXskWppKqKCvkbdAOUKnCDCa+ngfKyqew/GaFrOSZo
 uqoBr9WiMD1vVDIwkDF/ovGM0tLqY7aUcYJGDh74khfk02gfJmnpFhSW93DG04y8VYgBB9LTp
 16yw4wPxai+G6qFqzT18n32dQ7whDUWz/VcqdFV0945bep05ZwRoSSrZJiTlBzeouJ2Wz+o2+
 Tl8cPIMUc7T+BeUsJsQ4BAU9Vq0OxIY9mwXeGwb2UhgQGUzs65wGrqgT4QKnLOwHT6fa3/Jqu
 EKqzOzybvWFR/y8f5Xsf+J2VT91X36xJKdfEYKES8j76dtaCWPogpSLUCxZKBC/ZWfi+0T5PG
 M3CAIe+njQgRcdWjGduHd5LHgbzhgnRS4RIuwYJ7hjy25U94cIzcg/AxNpss5xyBOzZ7qv80P
 r2EN4QSiwAD0/1tM7jWc63LZaSDw84dIaIT6IvOGA8F6Z7qlIGdR4X0nRVRdGTea2w4TV6gf+
 p1R38zScCJfueuHgt8Mf5L60ZWxCPLE1QTAG417yZT9c4dzegjzVZBPnwniNQJQF3d8Rl1wfx
 VxYQH8lEwcuynSgtUNcspu0VKx+l+LajL8EE9P5LABQXjr4MfgvhTi+1cRJmxqH/na5NqcG/S
 10/oACanmIZ8MXKN/9B7sANpVyD/WJiuesbEiwWDgNHPuIG/dYXIQGYN15MYKnqpGkn1G1fNi
 /vvAQmqzg5DGLBWfxmLzBXxx6tc2f6igTMpQZvLpX4CfpJf+o1e0pm7AHmV0jEeI2uFHqOkK+
 bYLTr9MRzlOikmfxp5hHX1eEIV01IC4V2zAoLfJ9PmY4fTGr8udKccQOpuRb5MKeugt7x2yJB
 KtjperygNds5J+WIMELGi++IB50rchd
X-BeenThere: cygwin@cygwin.com
X-Mailman-Version: 2.1.30
Precedence: list
List-Id: General Cygwin discussions and problem reports <cygwin.cygwin.com>
List-Unsubscribe: <https://cygwin.com/mailman/options/cygwin>,
 <mailto:cygwin-request@cygwin.com?subject=unsubscribe>
List-Archive: <https://cygwin.com/pipermail/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-request@cygwin.com?subject=help>
List-Subscribe: <https://cygwin.com/mailman/listinfo/cygwin>,
 <mailto:cygwin-request@cygwin.com?subject=subscribe>
From: Thomas Wolff via Cygwin <cygwin@cygwin.com>
Reply-To: Thomas Wolff <towo@towo.net>
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: cygwin-bounces~archive-cygwin=delorie.com@cygwin.com
Sender: "Cygwin" <cygwin-bounces~archive-cygwin=delorie.com@cygwin.com>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from base64 to 8bit by delorie.com id 57ICdtdp205054


Am 16.08.2025 um 18:32 schrieb Brian Inglis via Cygwin:
> On 2025-08-16 07:29, Thomas Wolff via Cygwin wrote:
>> Hi Takashi,
>> thanks for the background...
>>
>> Am 16.08.2025 um 14:45 schrieb Takashi Yano via Cygwin:
>>> Hi Thomas,
>>>
>>> On Sat, 16 Aug 2025 13:22:35 +0200
>>> Thomas Wolff wrote:
>>>> There is an weird interworking issue when launching WSL from a minimal
>>>> standalone installation of cygwin.
>>>> (It can be reproced with a full installation, though, see below).
>>>> When calling Windows-native wsl.exe, as implicitly done via mintty
>>>> --WSL, and there is no terminfo database installed, something fails
>>>> about pty setup, and the WSL shell will be run in pty-less mode (no
>>>> prompt, no stty signal handling, ^C terminates the shell). When 
>>>> terminfo
>>>> is present, everything works as expected.
>>>> Test case:
>>>> remove /usr/share/terminfo/78/$TERM (xterm or xterm-256color, or the
>>>> whole subdirectory, or the 6d or 76 subdirectories when using
>>>> TERM=mintty* or vt settings), i.e. move it to some saving place.
>>>> Run mintty --WSL, observe the issue described above.
>>>> Interestingly, cygwin shells are not affected by the issue, so some
>>>> obscure interworking of the dreadful Windows ConPTY layer or so might
>>>> contribute to the issue, but in any case I doubt that the presence of
>>>> terminfo should affect the effective pty behaviour.
>>> ConPTY assumes xterm sequences unconditionally and use CSI 6n at the
>>> startup. If the terminal does not support CSI 6n and no responce from
>>> the terminal, CreatePseudoConsole() hangs. So pty checks terminfo to
>>> determine whethter ConPTY can be used.
>>>
>>> If the terminal does not support CSI 6n, pty does not use ConPTY for
>>> non-cygwin app like WSL. In this case, the stdin/stdout is just a
>>> pipe for WSL, so shell does not shows prompt. However, the shell
>>> itself is running, so the command should be accepted. Please try
>>> to type ls, ps and so on.
>>>
>>> I understand the behaviour of cygwin1.dll should not depends on
>>> the terminal aspects, however, ConPTY forcibly uses xterm sequences.
>>> So this is a desperate measure.
>> The drawback is that standalone packages that use a terminal also 
>> have to bundle terminfo or will run into mysterious failure. I have 
>> solved this for my wsltty package now but maybe an even more tricky 
>> approach could further optimise the scenarios: If pty does not find 
>> terminfo, it could try to propagate CSI6n to the host and only after 
>> a timeout switch to pipe mode. Just an idea.
>
> If mintty does not find terminfo, could it invoke conpty in legacy 
> winpty mode?
Mintty does not look up terminfo, neither does it invoke conpty. This is 
all done "under the hood" in the cygwin pty layer, as I understood.
Or maybe, in the case of launching a WSL session, in the respective WSL 
gateway (wsl.exe or wslbridge2.exe).

>
> $ regtool list -v /proc/registry/HKEY_CURRENT_USER/Console/ | grep 
> ForceV2
> ForceV2 (REG_DWORD) = 0x00000001 (1)
>                     0 = legacy winpty console
>                     1 = updated conpty console
>
>     https://learn.microsoft.com/en-gb/windows/console/legacymode
>
> "ⓘ Note
> This setting is globally applied to all sessions that start after the 
> preference is changed. Sessions that are already open will not be 
> changed."
>
> So it looks like the reg entry could be saved, and if terminfo is not 
> found, restored after the console session is active.
>


-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

