DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 5ALFmfi93876641 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 5ALFmfi93876641 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=D0VRqcR6 X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org BA8903851A94 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1763740119; bh=tIa92w29A3bToKF+r/7yAfM3AR42kPP1pQeiAETmzkw=; 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=D0VRqcR69ytBqu0QnUwoR+WPB3qOoFiL/Upp8w+OJYLOuOmo1xLGh/ZwjRqgqBb5t cR3glevzxjXOZsMioE60+2PJ7v+Jjhla+QYa5OrQxrCJgmJ5hVvfES9gYSCYQ9oJeS 1ip9e0OEMV8AoSuQl+W/DYJxiPT1twy/Up0G5+78= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org BDECE3851AAD ARC-Filter: OpenARC Filter v1.0.0 sourceware.org BDECE3851AAD ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1763740024; cv=none; b=Lj5RgZFG9E3GsnOoEJ8QMpZHU7RbRwZk5lK1BjT2JvzN6bhVLHpMzHwfHbjCowYJv+kxkTYy9TAEJmLko6JrJJHVi49sJJR0PWDFuBCD5soTrzM+DJM08GtDclshEF6aLJGvS6KYDFbYCD/YEM+dbG98HTa/N1ap2I1sQKtK6vE= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1763740024; c=relaxed/simple; bh=t9sDdhCR/AnpX5PXT5AWJ2XjdCVS4aYFfK5WPF69kP8=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:To:From; b=DWffIL3bhdvE7ohrYM5hGPs/r/SOTTXzUx0ScV8oNdlEyyNOBZlV2OaYhLmAR/J6rSB092Tq/GrRtVU+ac6iGUlUX6cftfqBP/eCS177s/9brJCqLiS/Tn1dfOPsXG9uh/GCAkkmI2UkznXUtGW1MI1SVwTeUWqScjsAZwF+xTU= ARC-Authentication-Results: i=1; server2.sourceware.org X-UI-Sender-Class: 55c96926-9e95-11ee-ae09-1f7a4046a0f6 Message-ID: <62f3c1ae-1fd9-477d-a837-d865094dab06@towo.net> Date: Fri, 21 Nov 2025 16:46:24 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: dynamic conpty loading To: cygwin AT cygwin DOT com References: <30deef29-ba20-49d9-9b38-28020941b0ef AT towo DOT net> <707f4d4c-a20d-4f1d-bdbd-65a2392dea15 AT towo DOT net> <20251121190433 DOT 4a37dc959848a0aea89a8922 AT nifty DOT ne DOT jp> Autocrypt: addr=towo AT towo DOT 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: <20251121190433.4a37dc959848a0aea89a8922@nifty.ne.jp> X-Provags-ID: V03:K1:GMqdOK2Uf0CnLMxMafOJfLBtFRZkBXsjJ3FpzxL9SrpgQHNo7Zh f27iFrUSNnU5HZFe6D69H+i1XKBvb5c0ZX1MFQp5p2lPad3ynMLpruF9HCl15qOyufZQV+L J0x405YwMgvr9VzYff68shlMzhbED9FdNRMQ/xT5+r5J8+TLXuqFviMOPcZnYXcL7Mu8yUo BXzXzGH/MhSM4arFwczjQ== UI-OutboundReport: notjunk:1;M01:P0:LcXTuCmISbg=;zqhFn6Nu4eaAmbxiEYjd1Aucdph Pdlg5npddSiQh1ynAWWMJQAASlW0x3HmQMsaXbwhVhA7sK8KZUFMiZuC6WRps/GpTeTdvCbeu 0dGc2fCv4NDFKE50n46zWheqG3ZJGqtRVI9icNEgbCDIXvJc2mF1frI6x2FFjSDFReXNBIiH2 02sKQmo38b1Yg7dcAWjO/+x+pZKjeg7/v2R/ScvGaDh3UYxNMTqsEzNWUngAG0WepTqbCE+O9 3M5jJlYSgGsgTOwJTCHkNj5Kq1aQBlqdHwjUpP3Og1ftjusf/49JDOW5QtCBAf4AnP0cz7wna 9INJMzZ7/YKPDU/Ojh5+pIjcV5uVkrkdp7LhuxHMUtUKvDl5OTB69oNB9KxPGq46goiBhsQI6 mzXYX5XEOZFr313WaCWoFznvYUmd1z4BuYO8gYPNJfqEt2NU5jUB7McUgH72vOlXsmM2C9eEr OcXBSGSe/Xp+IPUSkosWy+aO6NPK2c+gxg8s2xwKHarIocPSPqGbFmd7fjx/6uD5ftPu5K1o9 /Wxgi+wDEHDIM1HgEFH1U2FKXOX0Jj93O7I05Mo0itSJDjcXEBzuUwGADc53Q21LHLoUvTzqY 87q692n13Uqd/c0RJLlhH5v3n9IWiWj7a6aLr+66eqOuJhf9KSFpO2Ql9okOyWZbHfDeaV+fc ynrTswcQQE/GXXDvewwZp1Pti/ntrD5edNfwYWVkcC/eBYT61DEU1B286b+s9LRRhLnonTo09 udxWMsG1EShBHLDCiPqWaITfqxN3e+AcmgPgXwi+8jeipK11mFjwWVx8eVLmopkKjaJJe4pvi KLYk4pG7QiFbmzWeZ0xcd790iwyv+xbrOun9H5IWYZlRzj2qEITJG/twI2pMvVKoKaNg2QEt9 i7H03KtbQ5GNPToqllEUWjJ+SOByOvb84m/5HUsm8qpkHodZDs/sqxJdNny+3HzPuJQzbrHiO cLyiPWMVlsLTs95Goc8kI0oL8BIbIkrQ2Ccar7Sb91um1+eWN4Pi+wh9D9hVytpNylz70gNeg UfkmOd4XIQ2EsWNg4dQfBUNG+aYXoPmNtWQpdIarePH3Lk26UZ3f35oBaMW76qy/v92kriBix toFWMhDpRTwr20f/r6La9S2hf1f9bWaFsoRtHaAdK3ETGA24p3vYSaM1+8LoY57TTB6J5tBUI KV63dsi4vrcdhkh9eKL4mcPyUnigYdq5Kx4+ievQ8pB+fEhdwL19Oek5dW28A/xiqEv/R9lmN I8M7t2Z31iUGH2Nt7i80R6rNwtRtvEG0GFFdhbc3q9wL15kyxKYzzJInjZzwcuXJKzUH1Nf/B 5arBlfXQMUWQpaIqtwwyETPdh/eRBnXkCqPdYvJaUQjUlHJ8ff6VX5riGx3Fmg9wZQAdErzAy f7hqPr7bJ0y3toXH1bsGnGJttUmbacoaXz9nHWl181RdIHHh4jKhJGq9rEPT2LbvqV2PmZzWe tnN2uXVzHP0jFPPI4cC63VKn4qhpZoQMeaZN7f4wO+n93/JRukrn7d4Ls5DGqcTu2m5yiF+lz Zua3VeeGpdLMCM9tIP3PR/cjQFhFHWSVsoYBKCXAmQWIf2YlLSs5x6WDAS0y2pvo8COm35Y7O fRNOuul8T700iqL/kuHhoak8ixuipK/7d0ObkkN5Bq9rc5m7g0MuABitWbfR+AAL89ywumryr JesuMDKUcAAHffD+RLlC6Jnr5+5Ti7sq6ZiBXLSdxL7CZwgwc6PyT3UWAqiwsFVxpnRrUY2AT lN4RtXgbV/4aD X-Content-Filtered-By: Mailman/MimeDel 2.1.30 X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.30 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Thomas Wolff via Cygwin Reply-To: Thomas Wolff Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Errors-To: cygwin-bounces~archive-cygwin=delorie DOT com AT cygwin DOT com Sender: "Cygwin" Am 21.11.2025 um 11:04 schrieb Takashi Yano via Cygwin: > Hi Thomas, > > I'm very sorry for replying so late. > > On Sun, 5 Oct 2025 10:15:55 +0200 > Thomas Wolff wrote: >> Am 10.09.2025 um 11:21 schrieb Thomas Wolff via Cygwin: >>> [Reposting by response from cygwin-developers] >>> >>> I wrote: >>>> The ancient conhost and also the initial conpty implementation of >>>> Windows were obstacles to using terminal feature from Windows >>>> applications. >>>> There are nuisances like mangled or ignored character attributes, >>>> terminal reports not passed through etc. >>>> While there is an updated Windows conpty layer being developed as >>>> part of the Windows terminal project, it is not yet deployed with >>>> Windows 11 and will probably not be deployed with Windows 10 at all >>>> anymore (https://github.com/microsoft/terminal/issues/17452). >>>> Various terminals had to fight with these problems and some found a >>>> solution. >>>> According to >>>> https://github.com/saitoha/libsixel/issues/199#issuecomment-3181728693 >>>> it is possible to inject a specific version of conpty so to supersede >>>> the Windows-installed conhost.exe. >>>> >>>> I've tried to apply that to mintty by just preloading a conpty.dll >>>> before calling forkpty for the terminal child process but that has no >>>> effect. >>>> The procedure seems to be: >>>> try LoadLibrary("conpty.dll"), (if not successful, fallback to >>>> GetModuleHandle("kernel32") instead) to retrieve GetProcAddress for >>>> CreatePseudoConsole, ResizePseudoConsole, ClosePseudoConsole, and >>>> then somehow (?) use those while calling CreateProcess. >>>> The latter is woven into the cygwin library and I don't think it's a >>>> good idea to clone that out of cygwin for a patched process creation >>>> in mintty. >>>> >>>> My question/suggestion: >>>> Can a cygwin mode switch to a selected conpty library instead of the >>>> default one please? My idea would be to configure this per process >>>> with the environment variable CYGWIN. Like its error_start= setting, >>>> it could have a conpty= setting to configure the filename to be used >>>> for conpty when starting a subprocess. >>>> That would allow mintty to inject a modern conpty when calling a >>>> Windows application (e.g. wsl.exe). >>>> >>> Thomas >> It would also help if someone writes a small wrapper that loads a local >> conpty.dll version, runs CreatePseudoConsole from it, and invokes >> wsl.exe (likely with CreateProcess). I somehow fail to get this working, >> being umfamiliar with Windows intrinsics... > I'm not sure what is the advantage of dynamic conpty loading. > Does this allow use newer functionality than using conhost.exe? Yes, it allows to use the conpty.dll version retrieved from the Windows Terminal project which fixes a lot of interaction problems for pty-based programs. In Windows 10, for example, the current conhost version does not allow terminal mouse modes so mouse in editor, mc etc would not work. -- 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