Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is this project dead? Search for alternatives #527

Open
lars18th opened this issue Feb 15, 2024 · 37 comments
Open

Is this project dead? Search for alternatives #527

lars18th opened this issue Feb 15, 2024 · 37 comments

Comments

@lars18th
Copy link
Contributor

lars18th commented Feb 15, 2024

Hi,

First of all I want to give my congratulations to @cyd01 for the great effort made during several years to maintain this PuTTY fork. Without a doubt this is the best fork out there of our favorite SSH client.

However, it seems clear that the project is slipping. So we have to explore other options. For example, some time ago I proposed to change the way of providing the "changes" to PuTTY. My idea is to propose a "PATCH MODEL", like for example is doing this project with the portable mode: https://jakub.kotrla.net/putty/

So I propose to create a repository of patches for individual functions extracted from KiTTY to port them to the latest versions of PuTTY.

What you think?

Note: At time I recommend this alternative https://github.com/lalbornoz/PuTTie

@lars18th lars18th changed the title IS this project dead? Is this project dead? Feb 15, 2024
@yndx-melkov
Copy link
Contributor

yndx-melkov commented Feb 15, 2024

Kitty is not exactly dead, I think @cyd01 appears here every 2 or 3 months. Seriously until Putty would incorporate reconnect and a couple of other key features, Kitty is still irreplaceable. Let us prepare some patches while the project owner is out.

Maintaining multiple patches in independent places seems more difficult than in one place here on github. It would require more work for the public and more work for IT security engineers.

Putty code base has changed too much these years, so replanting all the features at once would be discouraging. I believe that we just need two branches of Kitty, one based on Putty 0.76 with all the features + key security patches, and one based on the newest Putty 0.80, with key features only.

@lars18th
Copy link
Contributor Author

Hi @yndx-melkov ,

Yes. The PuTTY code has changed a lot. And for this reason the strategy of "one extended feature --> one patch" is reasonable. Without that, it's impossible to continue maintaining KiTTY.

No. My suggestion is not to create a lot of different and independent places with multiple patches. My suggestion is to maintain a "fork" of KiTTY (not really a fork!), that consists of a series of different patches, and a compile tool to generate a binary from the stock PuTTY source. With this, when a new version of PuTTY will come we only need to update each patch independently (or remove patchs not required, or not use some not available, etc.).

And finally, I feel @cyd01 has ended supporting KiTTY.

@yndx-melkov
Copy link
Contributor

Well I believe that the git repository is the storage for the patches. It might be nice to reassemble them by-feature, but the amount of work is the same or greater than that of porting Kitty as is on top of Putty 0.80.

@lars18th
Copy link
Contributor Author

Hi @yndx-melkov ,

This git repository is the "master" for KiTTY. But at time KiTTY is not a group of patches but instead a one-full-rewrite-of-PuTTY. That's the problem: at every new iteration (aka release) of PuTTY, the author requires to start-from-zero. And this is a huge effort. So my idea is to spplit/extract some (useful) functionalites from KiTTY in indidivual patches. And use them to apply "multi-patches" to the last version of PuTTY. For sure, for each new version of PuTTY every patch will require to be updated/rewrited. But this will be more easy in small parts. And will offer the option of generate almost a version with some of them until the rest will be ported. Remember the ZMODEM support. At the end it was removed at some point. We can't continue maintaining the full PuTTY. Only small enhancements, like:

  • Portable support.
  • UI Window refactoring.
  • Font support.
  • Folders for connections.
  • Configurable proxy.
  • Shortcuts.
  • WinSCP integration.
  • etc, etc, etc.

We need developers and reorganize the source code and the changes.

@yndx-melkov
Copy link
Contributor

Hi! I'm not arguing about the state Kitty currently is. I only want to say that Kitty can be represented as a series of commits on top of a specific Putty version. Each of these commit could add a feature and be equivalent to a patch in your model.

Git-style rebase or cherry-picking of these commits on top of a newer Putty version would be equivalent to applying patches in your model.

What I'm concerned about is that splitting Kitty code into this set of patches is even more time-consuming than rebasing the Kitty code base on top of the newer Putty as a bulk.

@lars18th
Copy link
Contributor Author

Hi @yndx-melkov ,

Sorry, but from your comments I can inference that:

  • You don't know the development of KiTTY.
  • You don't have revised the source code of KiTTY.
  • You don't understand how @cyd01 creates each version of KiTTY.

Please don't think that I'm considering myself superior to you. That's not true in any case. I'm not the developer of KiTTY, and I don't know much of the source code (only minimal questions). But years ago I started to help with some comments, and I see the huge effort to migrate all the changes from one version to another. Please believe me: the current code is monolithic. And if we want to continue with this good fork it is necessary to change the methodology.

If you, or anyone else would like to further develop KiTTY, then please contact @cyd01.
Regards.

@opbod
Copy link

opbod commented May 4, 2024

Seriously until Putty would incorporate reconnect and a couple of other key features, Kitty is still irreplaceable.

The feature got implemented in PuTTie meanwhile. I'm sold and am moving over over given the critical PuTTY/KiTTY vulnerability is still not fixed.
Thanks KiTTY devs for the work over the past years!

@lars18th
Copy link
Contributor Author

lars18th commented May 5, 2024

Thank you @opbod .
PuTTie (https://github.com/lalbornoz/PuTTie) seems a promissing fork that could substitute the venerable KiTTY.

@lars18th lars18th changed the title Is this project dead? Is this project dead? Search for replacement May 8, 2024
@lars18th lars18th changed the title Is this project dead? Search for replacement Is this project dead? Search for alternatives May 8, 2024
@dsl101
Copy link

dsl101 commented May 15, 2024

Thanks for the pointers to PuTTie. Has anyone looked at converting KiTTy session files to PuTTie format? They look quite different sadly...

@lars18th
Copy link
Contributor Author

Thanks for the pointers to PuTTie. Has anyone looked at converting KiTTy session files to PuTTie format? They look quite different sadly...

Yes, PuTTie is a good replacement. However, until now the options supported are very different. I feel you will need to export/import all of your sessions, and after edit them with the new options. Using the registry you can import from KiTTY as regular PuTTY sessions, and them export from it using PuTTie. I feel you can do that, right?

@dsl101
Copy link

dsl101 commented May 15, 2024

I currently have KiTTy portable set up so the data is in a sessions folder. They are text files, but not using the same syntax as PuTTie. I guess I could write some kind of hideous regex to convert them, but it would be prone to errors, and, for example, the KiTTy session file has 309 entries, whereas a PuTTie 'simple' test session I created has only 264. So mapping from one to the other is likely quite a challenge.

I'm not 100% sure what you meant by the export / import method...

@lars18th
Copy link
Contributor Author

I'm not 100% sure what you meant by the export / import method...

You can import KiTTY sessions from disk to the REGISTRY as regular PuTTY sessions (discarding all extensions). And then using PuTTie you can export from the REGISTRY to disk.

@dsl101
Copy link

dsl101 commented May 15, 2024

I've not seen that option to go from disk to Registry in KiTTy, but maybe because I'm using the portable version?

@lars18th
Copy link
Contributor Author

Hi @dsl101 ,

You're right, only the EXPORT functionality is supported (using -convert-dir ): https://www.9bis.net/kitty/index.html#!pages/Portability.md

@dlong500
Copy link

Kitty is not exactly dead, I think @cyd01 appears here every 2 or 3 months. Seriously until Putty would incorporate reconnect and a couple of other key features, Kitty is still irreplaceable. Let us prepare some patches while the project owner is out.

@yndx-melkov It needs to be pointed out that @cyd01 has not had any type of presence here for over a year. It's not just that there haven't been code updates--there have also been no responses or statements for about 13 months (despite there being evidence of other Github activity on his profile page). All of this while multiple vulnerabilities are documented starting last October. While I appreciate his efforts and found his modifications to PuTTY useful I think it's time to move on if the vulnerabilities aren't going to be addressed in a timely manner. It does seem like the methodology for patching is, unfortunately, not conducive for dealing with upstream changes from PuTTY easily. Given the high importance of security in a terminal client I'm afraid security is more important than features.

So bottom line, the answer to the original question is: yes, this project is dead.

@lars18th
Copy link
Contributor Author

So bottom line, the answer to the original question is: yes, this project is dead.

True. 😢

@sebma
Copy link

sebma commented Oct 21, 2024

Is there a fork or equivalent that is active ?

@lars18th
Copy link
Contributor Author

Is there a fork or equivalent that is active ?

The best option, but now on hold for a period, is the one indicated in the first post:

Note: At time I recommend this alternative https://github.com/lalbornoz/PuTTie

@ZatsuneNoMokou
Copy link

Is there a fork or equivalent that is active ?

The best option, but now on hold for a period, is the one indicated in the first post:

Note: At time I recommend this alternative https://github.com/lalbornoz/PuTTie

There's no other maintained alternative ?

@sebma
Copy link

sebma commented Nov 25, 2024

PuTTie seems also dead as well according to this 😞 :

This fork is unmaintained until further notice as I no longer use Windows and hence have no personal use for PuTTie and as life obligations no longer afford opportunities for me to continue maintaining PuTTie and/or implement new features.

@ZatsuneNoMokou
Copy link

PuTTie seems also dead as well according to this 😞 :

This fork is unmaintained until further notice as I no longer use Windows and hence have no personal use for PuTTie and as life obligations no longer afford opportunities for me to continue maintaining PuTTie and/or implement new features.

That's why I'm asking xD

@AnyoeDove
Copy link

https://github.com/NoMoreFood/putty-cac

a fork of PuTTY with FIDO support

@zdm
Copy link

zdm commented Dec 9, 2024

It is time to move to the pure openssh under windows.
Wiin10 already has openssh package or portable port can be used: https://github.com/PowerShell/Win32-OpenSSH
Works for me perfectly, of course, some features are missed, but I quickly understood, that they wasn't really needed.

@youk
Copy link

youk commented Dec 9, 2024

It is time to move to the pure openssh under windows

You can't decide when it is time for other users. Simply because you don't know which features they need and use.

@zdm
Copy link

zdm commented Dec 11, 2024

Windows terminal + ssh solves the problem completely
Any software? based on complex patching - is unsecure and will be not supported in time.

@lars18th
Copy link
Contributor Author

Windows terminal + ssh solves the problem completely

This is a very different SSH client. You can't compare PuTTY with Windows Terminal. Although I use Windows Terminal in several cases, I prefer PuTTY for others. And the problem is the lack of various functionalities in it (PuTTY).

But it's true that with the native SSH client inside Windows with the very good Windows Terminal tool all users have a robust SSH client.

@youk
Copy link

youk commented Dec 11, 2024

Windows terminal + ssh solves the problem completely

Which problem? Define the problem first.

And, to begin with, define who you are shouting at. Maybe they didn't invite you.

@zdm
Copy link

zdm commented Dec 11, 2024

The problem is completely described in this issue title, don't be stupid.

And, to begin with, define who you are shouting at. Maybe they didn't invite you.

My name is too famous to type it here

@youk
Copy link

youk commented Dec 11, 2024

Ah, just another arrogant post-sovok. Please don't bother people here with your naive bullshit.

My name is too famous to type it here

I don't think you quite understand the language you are trying to use for communication.

@zdm
Copy link

zdm commented Dec 11, 2024

Man, you are too stinky without any reasons.

@youk
Copy link

youk commented Dec 11, 2024

Stinky is coming with naive advice nobody asked for. Get back to your cave. Please.

@zdm
Copy link

zdm commented Dec 11, 2024

I don't ask you what to do, this is not your personal forum and I didn't wrote you directly.
You replied me aggressively.
In other situation I kicked your ass in a seconds.
Discussion with you is closed, do not reply.

@youk
Copy link

youk commented Dec 11, 2024

You replied me aggressively.

Your mental capacity and limited understanding of language preclude you from realizing what people are saying to you.

In other situation I kicked your ass in a seconds.

Too bad you are only capable of typing.

Discussion with you is closed, do not reply.

Wow, you are such a closer 🤣

@dsl101
Copy link

dsl101 commented Dec 11, 2024

Such a shame this is the most action this repo has seen in ages. If you two could direct your energy more positively, maybe we'd see some progress.

@dlong500
Copy link

dlong500 commented Dec 11, 2024

Bringing it back to the issue at hand, it is true that Windows Terminal is very useful. However, as @lars18th stated it is very different from PuTTY. Windows Terminal is not designed to be a remote SSH session manager like PuTTY is. While you could probably create profiles with commands to make SSH connections to remote hosts it would require a lot of manual work and still wouldn't present things as cleanly as PuTTY's interface.

If Microsoft were to make an API available such that someone could write a frontend session manager using Terminal as a backend then we'd be looking at something more comparable. Maybe something like that is already possible but not sure. It would be really nice to separate out the actual terminal emulation from the session management so things are cleaner and more modular.

@zdm
Copy link

zdm commented Dec 11, 2024

You can use windows terminal same way as putty, for example you have command lime profile named cmd - then to connect via ssh to 'deve' host you can type:

wt -p cmd ssh root@devel

or create shortcut for wt -p cmd ssh %* to make command shorter.

@dlong500
Copy link

@zdm yes, I stated that you can create profiles with commands to make a remote connection. It's not about the technical capability though; it's about the interface and presentation of how sessions are managed. At the end of the day there are going to be plenty of people that prefer a management interface similar to PuTTY's. If we can get something similar for Windows Terminal then I believe that would be a game changer.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

10 participants