Start building Heidi for Linux

[expired user #5995]'s profile image [expired user #5995] posted 13 years ago in General Permalink
Hi Friends,
i am a very big fan of HeidiSQL. I used i for a very long time, but after switching to linux a long time ago, it was very hard dealing with Wine and the virtual stuff. Very often buttons are hidden, or it crashes.

So i decided to do a native Linux version. I hope thats ok with the HeidiSQL main programer and owner. If you don'T allow this, please let me know. :)

So i wanted to start collecting ideas for a linux version. With parts we should copy from Heidi (copy = reprogramm the same way) and with thinks we should change.

I am developing the new version in C/C++ with the QT GUI libs and using the crouchDB for the password storage, so you can sync the connections via Ubuntu One over different conputers.

If you have some ideas please feel free to respond.
thanks and greetings
Leo

PS: I don't have an MAC, i should be no porblem building a nativ MAC version from the source to. :)
ansgar's profile image ansgar posted 13 years ago Permalink
You are reprogramming HeidiSQL in C - so you should not call it HeidiSQL, give it its own name please. HeidiSQL is something different. That does not mean you should not copy or imitate some code from HeidiSQL, feel free to do that with an appropriate copyright notice.
[expired user #5995]'s profile image [expired user #5995] posted 13 years ago Permalink
Hi,
thanks for your quick response. Of course i am choosing a different name. I don't want to interfere with your project. I also thought that is has a copyright anyway :)

I just want to give linux users a change to use this tool (or a similar one) as a nativ tool, because it's really great.

But if you are planing to do a port yourself, maybe in FPC, i would cancel my plans.
I don't want to steal from your project :)

But i you are okay withc me doing this, i am very happy.
Greetings from vienna
Leo
ansgar's profile image ansgar posted 13 years ago Permalink
Ah from Vienna, then hello neighbour.

No, I don't have plans to do a native port of HeidiSQL onto some Linux or Mac binary. So feel free to create your client.
tschertel's profile image tschertel posted 13 years ago Permalink
Hi leo.unglaub.
HeidiSQL is coded in Delphi, isn't it?
Why don't you port it to Linux using Lazarus?
I'm not a Delphi/Lazarus programmer, but I can help you on testing and other stuffs.
Actually I'd like to help you in any language you decide to use.
As I said, I'm not a programmer (starting with python now), but I can help pointing bugs and/or anything else you like.
tschertel's profile image tschertel posted 13 years ago Permalink
Hi there. Me again.
Searching this forum I've found a post about another user who did compiled Heidi with lazarus.
Anse said the problem probably is in native Windows messaging calls.
So, maybe is a good point to begin, start migrating this messaging system to a Heidi native one. Or maybe create a kind of if in the code to decide what messaging system to use (windows or linux messaging).

Hope you succeed in migrating Heidi. It's a really cool application and I really miss a linux version.
[expired user #5995]'s profile image [expired user #5995] posted 13 years ago Permalink
Hi tschertel,
a friend of mine is trying to recompile heidi in lazarus, but it's not that simple. The reason why i have started in C/C++ is simple, i am good in this language. :)

Greetings
Leo
tschertel's profile image tschertel posted 13 years ago Permalink
Hi Leo.
Nice here you guys are working already. :)
As I said before, I'd love to help you with anything I can do.
I share the dream of see a HeidiSQL port working on Linux.
[expired user #5995]'s profile image [expired user #5995] posted 13 years ago Permalink
Yeah, a nice SQL tool is the last missing part in an perfect linux world. My friend christian has some problems with the port, because in FPC / Lazarus are some features not available. Like the table completion in the sql editor or some gui elements.

We are currently not sure what's the best way. But we will work together to have a first alpha version very soon.

Greetings
Leo
tschertel's profile image tschertel posted 12 years ago Permalink
Maybe you guys can make a little publicity on your project to call more contributors.
And when you have some alfa/beta/wip or whatever version and like to test it, call me. I'd love to test it and return my feedback to you.
[expired user #5995]'s profile image [expired user #5995] posted 12 years ago Permalink
Hi,
i don't think it's the right time to go complete public and release the source codes. We are currently in the development phase and far far away from a working binary. :)

It's very much work that a tool of this size needs, i don't want so know how much hours anse spend on the current heidisql, but i think it's far more that 1000 hours.

Greetings
Leo
ansgar's profile image ansgar posted 12 years ago Permalink
Well you don't have to mess with the number of hours I already spent, as there were many hours in which I went forward, then backwards, sidewards, and then forewards again. Probably you can benefit from these time consuming phases and adapt GUI elements from HeidiSQL.
[expired user #5995]'s profile image [expired user #5995] posted 12 years ago Permalink
Hi, it's me again. I just want to give you a little status update. I have spend the last couple of days to improve my framework with i use for this tool. I implemented classes for the connections, the logging and some other basic stuffs.

It's going on very slow because my work needs me currently more than usually, but it goes on. I hope maybe to newyear i have a first running version with some basic operations. CURD for table entry's, ... .

In my initial post i said, that i was going to use the QT GUI libs, but currently i worked a lot with GTK and maybe i am goind to use this instead. For Gnome Users it's perfect and for KDE users it's no problem. Do someone know any reasions why i don't use GTK in this case? i don't get one


Greetings
Leo
tschertel's profile image tschertel posted 12 years ago Permalink
Hi Leo.

Glad to hear news from you and your project.
I think switching from QT in favor of GTK is not a big deal, from user perspective at least.
As soon as you get a working release, tell us where get the code.
I'll create a package for Arch Linux and put it in AUR to people test it.

Nice work.
superspace's profile image superspace posted 12 years ago Permalink
Has anyone played around with this:

http://freecode.com/projects/emma

Last time I tried (maybe a year or two ago), it was v similar to HeidiSql but missing a lot of features.

Would it be better to build on that effort than creating a new project?
tschertel's profile image tschertel posted 12 years ago Permalink
Hey Leo,

Maybe it's a god idea take a look in emma.
Emma has some already-done code, so you can even use it as a base for your app.
Thanks for that superspace.
[expired user #5995]'s profile image [expired user #5995] posted 12 years ago Permalink
Hi guys,
@tschertel: I push my git repository to github if i am done with the work.
@superspace: I tryed emma last year and it was a real mess. It even hat trouble with UTF-8 encodet chars. I runed a complete database by opening it.

Greetings
Leo
[expired user #6067]'s profile image [expired user #6067] posted 12 years ago Permalink
@anse: I read somewhere that you're porting MySQL to C++, is that true ?
@leo.unglaub: I'm looking forward to this. I used HeidiSQL on windows. This is the best GUI client for MySQL. It's shame it's not cross-platform, but hey. Now, my main OS in linux. Please report all your progress, and thank you.
[expired user #5995]'s profile image [expired user #5995] posted 12 years ago Permalink
Hi, anse is not porting it to C++. He is the owner of the original Heidi on Windows.

My Tool in C/C++ is growing. All the data models are already done and most of the gui. I am maybe releasing the first alpha this christmas.

Greetings
Leo
tschertel's profile image tschertel posted 12 years ago Permalink
Hi Leo.
Nice to hear that. Hope you release a version soon.
I wanna test it asap.
[expired user #5995]'s profile image [expired user #5995] posted 12 years ago Permalink
So, i am sorry, but i was a little bit short in time yesterday. So here is a little more detailed overview.

I think HeidiSql is the best *sql client i have ever worked with. So my "clone" looks very much like Heidi. The must of the UI elements are similar. Sometimes a little bit more linux spezific. The only big difference is, that in the left database tree i am not supporting multiple connections to different servers. This has two reasions. The first one is that it's very hard to do this with multiple database types and the secound reason is that i don't think it's usefull if every connection contains more than 300 databases. It's a very long list. So for that you can rum multiple instances of the programm or open multiple connections in tabs. I have everythink in a big tab.


My current codebase is supporting MySQL, MariaDB, PostgreSQL, SQLite, Oracle, Sybase and DB2. But for the first versions my focus is clearly on MySQL (MariaDb). But i keep my options open :)

And NO, there is NO support for MSSQL. To tell the truth, i have no idea how to implement this. Maybe via ODBC, but i hate MSSQL so i am keeping it out. Maybe later if i am realy bored :)


the connections can be stored in multiple places. You also can extend that. Currently there is a plain xml file, a sqlite db, Ubuntu One, Dropbox.

@anse: Maybe we could talkt about a sorrage format for both tools so the users can sync there connections between there Windows PC with HeidiSQL and there Linux computer. Maybe we can figure there somethink out.

So now i need you help to find a name for the new tool so we can start a own web site and don't have to mess up anse's forum here :)

I thought sometimes about MarrySql or SarahSql (Sarah like my dogsmile). If you have any ideas, please let me know.

So far, greetings

Leo
tschertel's profile image tschertel posted 12 years ago Permalink
These are really nice news Leo.
Glad see your tool's improvement.
Maybe you can name it with a cool German name like Hanna or Leah :)

Is there a public repo with your code? I'd like to see this beauty running :D
ansgar's profile image ansgar posted 12 years ago Permalink
@leo.unglaub: The connection details are stored in the Windows registry, besides tons of other configuration stuff. I guess your Linux version does not support Windows registrysmileAnd I'm not going to adapt that to something completely different, only to support configuration exchange to another client which surely has a different set of features. But I guess this won't be a problem for users of either clients.
tschertel's profile image tschertel posted 12 years ago Permalink
+1 for anse.
[expired user #6067]'s profile image [expired user #6067] posted 12 years ago Permalink
@leo.unglaub: Great news. 'Hanna' is good.smile
[expired user #5995]'s profile image [expired user #5995] posted 12 years ago Permalink
i just watched "two and a half men" and the name BerthaSql sould be very cool to. :)
tschertel's profile image tschertel posted 12 years ago Permalink
auhweuawhea
BerthaSQL???
Not bad... :)
[expired user #6067]'s profile image [expired user #6067] posted 12 years ago Permalink
'HannaSQL' way better .. :D
[expired user #5995]'s profile image [expired user #5995] posted 12 years ago Permalink
The problem with "hanna" is, that the 14 year old doughter from my boss is also called hanna. Maybe i am getting in a little bit of trouble with that :)

But you are right, hanna is more serious than bertha. My current codename in my git repository is ProSql...but i realy cant release it like that :)
tschertel's profile image tschertel posted 12 years ago Permalink
Try explain to your boss that HannaSQL is good stuff :)
[expired user #5995]'s profile image [expired user #5995] posted 12 years ago Permalink
soooo, HannaSQL it is. I saved the domain and will setup a site.
[expired user #6067]'s profile image [expired user #6067] posted 12 years ago Permalink
Great! No, don't try to explain.., if you're explaining yourself, than you're guilty :D
[expired user #5995]'s profile image [expired user #5995] posted 12 years ago Permalink
Hi friends,
i have created a mailinglist for all informations, support, news, ... for HannaSQL. You can subscribe here for more informations: https://groups.google.com/forum/#!forum/hannasql

From now on i an using the google group instead os anse's forum.
thanks and greetings
Leo
tschertel's profile image tschertel posted 12 years ago Permalink
Nice to see that.
Subscribing now!

Maybe anse could mention HannaSQL on Heidi's page later. How about that?
[expired user #5995]'s profile image [expired user #5995] posted 12 years ago Permalink
first thinks first. The most important think right now is for me to finish my work on the alpha1 over the christmas break. Who mentoins who is one of the latest parts in this process.
tschertel's profile image tschertel posted 12 years ago Permalink
Agreed.
[expired user #10721]'s profile image [expired user #10721] posted 7 years ago Permalink

I've started building a HeidiSQL like application for linux using html,css and javascript with electron. Its in an really really early state, but if anyone is willing to help, this is the github repo:

github -> hutilicious -> teslasql (I cant post links)

Feel free to fork, edit or just help with everything. Currently I can only spend 2-3 hours a week on this project. I will publish any progress to github.

Maybe someday were getting there :)

LONGMAN's profile image LONGMAN posted 7 years ago Permalink

Looks like all these projects are dead.

Native HeidiSQL would be nice for Linux platform..

webdbase's profile image webdbase posted 7 years ago Permalink

Actually, is it really needed? I run HeidiSQL portable under CentOS 6.5 using wine.

mappu04's profile image mappu04 posted 4 years ago Permalink

I found a new project trying to port HeidiSQL to Linux: "MeowSQL" from Ragnar Lodbrok:

https://github.com/ragnar-lodbrok/meow-sql

It is a faithful, class-by-class port of HeidiSQL's Delphi codebase to modern C++/Qt with CMake. A large task but already it works well on Windows and Linux, with support for MySQL + Postgres + SQLite.

It has some work to go, but you can use it today, it is immediately familiar to a HeidiSQL user, and it is not vaporware.

There is 4 years of development already, plus, active recent development activity.

I would encourage everyone who cares about HeidiSQL on Linux, to please gather around this project,

tschertel's profile image tschertel posted 4 years ago Permalink

I found a new project trying to port HeidiSQL to Linux: "MeowSQL" from Ragnar Lodbrok:

https://github.com/ragnar-lodbrok/meow-sql

This is amazing. Thanks very much for this. I'm going there to offer my help.

ansgar's profile image ansgar posted 4 years ago Permalink

If that helps, I can offer to move the Github repo to the "HeidiSQL" organization, so the url will become github.com/heidisql/meow-sql . But this is just an offer, maybe ragnar-lodbrok wants to keep it where it is.

tschertel's profile image tschertel posted 4 years ago Permalink

I took the lead and sent him a message telling about your offer. Thanks very much about that.

Please login to leave a reply, or register at first.