TablePlus / TablePlus-Linux

TablePlus Linux issue tracker
https://tableplus.com
294 stars 30 forks source link

ArchLinux version #3

Closed Ten0 closed 2 years ago

Ten0 commented 4 years ago

There could be a version on the AUR. https://aur.archlinux.org/

It consists in a single PKGBUILD with a few lines inside that refer to the .deb/.rpm on your servers with instructions on how to extract. This technique of extracting a .deb/.rpm is pretty common on the AUR, and allows any arch user to install the package with a single line, but it could also of course be achieved by any other means of packing the binary together (if there are dependencies that are not the same as on ubuntu or that kind of stuff).

wastrachan commented 4 years ago

The main barrier to a PKGBUILD for this will be the dependency on a specific libmysqlclient version. libmysql was dropped from the repositories in favor of libmariadb, which provides libmysql. However...

/opt/tableplus/tableplus: /usr/lib/libmysqlclient.so: version `libmysqlclient_20.0' not found

Installing this specific library version as part of the PKGBUILD will take a bit more effort.

wastrachan commented 4 years ago

The main barrier to a PKGBUILD for this will be the dependency on a specific libmysqlclient version. libmysql was dropped from the repositories in favor of libmariadb, which provides libmysql. However...

/opt/tableplus/tableplus: /usr/lib/libmysqlclient.so: version `libmysqlclient_20.0' not found

Installing this specific library version as part of the PKGBUILD will take a bit more effort.

Expounding on this: the library version provided by mariadb-libs is libmysqlclient.so.19. If tableplus could be built against version 19, I'd expect this problem would resolve

wastrachan commented 4 years ago

Related: https://github.com/TablePlus/TablePlus-Linux/issues/5

wastrachan commented 4 years ago

I've completed a pkgbuild and am ready to test it. I believe the issue @huyphams is addressing with libmysqlclient version (https://github.com/TablePlus/TablePlus-Linux/issues/5#issuecomment-560517477) will resolve the issue in Arch as well.

wastrachan commented 4 years ago

https://aur.archlinux.org/packages/tableplus/

Packaged up and running (includes the appropriate libmysql version for the time being). There are some (probably-GTK) related issues to look at, like missing menus... but this does now install and run under Arch.

I've not tested this pkgbuild with anything but a single MySQL DB at the moment.

wastrachan commented 4 years ago

I've updated this package to use the library bundled with the deb package. I've had to patch the .desktop file to make this possible, but this should work until the mysql library is statically linked.

I think, unless someone has stumbled across an issue with the pkgbuilld, you can probably close this.

huyphams commented 4 years ago

Hey @wastrachan is the anyway that I can help you to maintain the Arch repo?

wastrachan commented 4 years ago

Hey @wastrachan is the anyway that I can help you to maintain the Arch repo?

I can definitely add you as a co-maintainer on the AUR if you've got an account. This is, after all, your software!

huyphams commented 4 years ago

Thank you @wastrachan I just created an account with the email: huy@tableplus.com and the username is tableplus

wastrachan commented 4 years ago

Thank you @wastrachan I just created an account with the email: huy@tableplus.com and the username is tableplus

Added to the project in the AUR. You'll probably want to check out https://wiki.archlinux.org/index.php/PKGBUILD and https://wiki.archlinux.org/index.php/AUR_submission_guidelines if you're not familiar with packaging on Arch yet!

huyphams commented 4 years ago

I'm following Nixcraft (https://twitter.com/nixcraft) and seeing the Arch jokes all the time. I'm a little bit scared now 🙊

wastrachan commented 4 years ago

I'm following Nixcraft (https://twitter.com/nixcraft) and seeing the Arch jokes all the time. I'm a little bit scared now 🙊

It's a bit daunting but a lot of fun. I'll keep maintaining the Arch package to the best of my ability until I'm told to stop!

roock commented 4 years ago

@wastrachan can you include gnome-keyring as a dependency in the AUR. (see https://github.com/TablePlus/TablePlus-Linux/issues/14#issuecomment-586609084 )? thank you

wastrachan commented 4 years ago

@wastrachan can you include gnome-keyring as a dependency in the AUR. (see #14 (comment) )? thank you

I'd not normally consider gnome-keyring a requirement: it should fall in the optdepends category. However, given the referenced report describing broken functionality instead of reduced functionality-- I'll include it.

koernchen02 commented 4 years ago

When generating the deb package, would it be possible to also generate a sha256 checksum file and store it at https://deb.tableplus.com/debian/pool/main/t/tableplus/ ?

wastrachan commented 4 years ago

I'm not sure what this has to do with #3 - but you can find the SHA256 in the package control file: https://deb.tableplus.com/debian/dists/tableplus/main/binary-amd64/Packages

I'm rusty on Debian repositories, but I'm not aware of a "checksum file" as part of the standard. Usually it's in the package control file and the Releases file.

koernchen02 commented 4 years ago

Since the shasum is part of the PKGBUILD for the AUR I just thought it would be nice to have it upstream accessible (reliable) instead of creating the sha myself. Since your PKGBUILDs shasums have the tendency not be correct! Probably as you already mentioned in the aur, because the DEB sometimes changes without a version increment happening!

benjaminvdb commented 2 years ago

@wastrachan Are you still the maintainer for the AUR package? It's currently not possible to install TablePlus from AUR because the binary for Ubuntu is incompatible with the shared libraries from Arch Linux.

wastrachan commented 2 years ago

@benjaminvdb I am, but there isn't really much we've been able to do. There are a few ridiculous workaround involving manually coping parts of older libraries to load at runtime (#130), but those one by one of have stopped working.

By in large, TablePlus totally refuses to acknowledge the issue. Responses have been a combination of telling us to wait, telling us it's fixed (#130), or totally ignoring the issue.

Root Issue:

Discussion on the AUR:

Probably Related:

benjaminvdb commented 2 years ago

@wastrachan Thanks for the quick reply! I understand that there's not much you can do. As long as TablePlus is closed-source, we won't be able to produce the package ourselves. The TablePlus developer could make our lives easier by providing a portable package, like AppImage. Installing that on any given Linux distribution would be trivial, since all the dependencies live inside the package. It would probably result in a huge package, but at least it would be working...

I've gotten used to working with TablePlus and I'm not sure what to do now... Does anyone have a suggestion for an alternative? I'm looking for an application with a minimalistic UI that lets me browse DB content, make small changes and look at table schemas.

wastrachan commented 2 years ago

@wastrachan Thanks for the quick reply! I understand that there's not much you can do. As long as TablePlus is closed-source, we won't be able to produce the package ourselves. The TablePlus developer could make our lives easier by providing a portable package, like AppImage. Installing that on any given Linux distribution would be trivial, since all the dependencies live inside the package. It would probably result in a huge package, but at least it would be working...

I've gotten used to working with TablePlus and I'm not sure what to do now... Does anyone have a suggestion for an alternative? I'm looking for an application with a minimalistic UI that lets me browse DB content, make small changes and look at table schemas.

An AppImage (or FlatPack, even) has been asked for several times-- it would basically eliminate the need to "package" at all. The TablePlus developers would save themselves massive headaches (now and in the future) if they went that route.

I'm in the same boat as you. I used TablePlus for years in MacOS, and when I left MacOS full-time I lived in some sort of dead space with no good options until they announced the Linux efforts. After a short taste of the good life, I'm back where I was.

It pains me to say it, but I've (hopefully temporarily) switched to another solution. It's got a few drawbacks of it's own... but it's open source, and it runs.

benjaminvdb commented 2 years ago

@wastrachan The other solution seems to be what I'm looking for! So long TablePlus... :disappointed: