Mikescher/AlephNote

Adding Linux client

Opened this issue · 9 comments

In this HN thread the possibilities of a linux client were discussed. Probably with Gtk#.

This issue shall be a progress list for this:

Preperation

  • Remove CSharpUtils class, copy used methods/classes directly to project
  • Seperate logic and presentation in two seperate projects
  • Plugins and other common projects should target .Net Standard

Implementation

  • Addd GTK# project
    • It would be nice to reuse all the OnPropertyChanged logic in it, because currently the plugins communicate through it with the UI.
  • Probably fix Auto Updater

Thoughts / Contributions welcome :D

Thoughts / Contributions welcome

If you find this is moving a little slower than you'd like, you might try seeing how WINE handles the program. I've seen mixed things about .NET 4.0+ and WINE, so this may not be worthwhile.

I did want to note the lack of simplenote sync clients in this space. I did some digging for a clean, non-Electron Linux client without success.

Any update on this ?

Thank you !

Would also love to see a Linux client. I use AlephNote everyday at work (Windows machine) and would like to use it at home (Linux) too. Thanks!

Yeah I feel your pain :(

I have personally switched mostly to linux, and AlephNote is pretty much the only reason why my Windows Desktop still exists...

But rewriting the the UI for linux is a lot of work, when I find time I sometimes work at it - but I fear it will take a while until there is a usable version..

But at least Avalonia [1] looks way better than ~1 year ago - the only really unknown is Scintilla, I don't know any linux replacement that is as powerful. (There is a scintilla linux version, but I'm not sure how good it works...)

Anyway, nice to hear that people are still using the project, and be sure that it is not dead on my side. (definitely not as long as I'm using it myself :D)

[1] https://github.com/AvaloniaUI/Avalonia

Would it be the same amount of work to completely rewrite the app in a more cross-platform language such as go? Then you could leverage any of the gui libraries for go including gtk, qt, or sciter. I only mention go because I see you’ve used it before but anything other than c# will probably be easier to compile for all platforms.

Rewriting everything would definitely be a lot of work ^^

go for the communication code would probably be fine, but I don't think the cross-platform GUI situation is much better in go compared to C#

The correct tooling would probably be electron ... but 🤢 javascript

The correct tooling is definitely NOT electron. 😂

The thing I like most about AlephNote is its simplicity and speed. Hopefully someday you’ll be able to get to the cross platform gui. 🙂

Thoughts / Contributions welcome :D

Just don't use "windows forms", and use avaloniaui which works for mac-os, windows, linux.

The correct tooling is definitely NOT electron. 😂

true ^^