solvespace icon indicating copy to clipboard operation
solvespace copied to clipboard

Native Linux packages for Qt port

Open WickedSmoke opened this issue 3 weeks ago • 6 comments

Fedora & Debian packages for the Qt port are available through the WickedSmoke Releases page.

There are a few issues that should be smoothed out in order for me to provide these.

  1. Why is there a shared library "libslvs.so.1" when the full version is "libslvs.so.3.2"?
  2. The check for in-tree builds had to be removed in order for debbuild to work.
  3. The binary is currently "solvespace". I guess that should be changed to "solvespace-qt" or something to not conflict with the Gtk version.
  4. Is there an existing script that builds the release tarball (and patches in the Git version)?

I can stop providing the shared library, but that will require more CMakeLists changes.

WickedSmoke avatar Dec 05 '25 18:12 WickedSmoke

Another thing to note is the large (45.5 MB) release tarball size. Most of this is angle & cairo which are not needed on Linux. Removing those reduces the size to 11.2 MB, so a separate archive for Linux packagers might be nice.

WickedSmoke avatar Dec 05 '25 19:12 WickedSmoke

  1. Why is there a shared library "libslvs.so.1" when the full version is "libslvs.so.3.2"?

@hlorus You are the biggest user of the library. Any idea?

  1. What do you need?

  2. It does seem strange, but I think a separate name is a good idea. Someone probably switched DE's and would appreciate having both versions installed.

  3. Release tarball - yes, I believe so. @ruevs how does the git version git in there?

As for the tarball, I think it's kind of important to just provide all the source for all the OSes. If we could stop using vendored versions of those I'd be thrilled to drop them.

phkahler avatar Dec 05 '25 19:12 phkahler

I'm not aware of a specific reason for this, @vespakoen might know more as he did the python bindings.

hlorus avatar Dec 05 '25 19:12 hlorus

4. Release tarball - yes, I believe so. @ruevs how does the git version git in there?

https://github.com/solvespace/solvespace/blob/aec7ee5bfeac818ee2b1a82a3132334729e3a784/.github/workflows/source-tarball.yml#L26

ruevs avatar Dec 06 '25 00:12 ruevs

There's a pull request open to rename the program as solvespace-qt.

In-tree CMake builds work fine so there's no reason to put arbitrary limits on how users or packagers manage their builds. Eliminating that check gives me one less patch to apply.

It would be nice if the tarball creation was in a bash script so it could be invoked without depending on Github services.

WickedSmoke avatar Dec 06 '25 16:12 WickedSmoke

The RPM & Deb packages have been updated with the solvespace-qt name change.

The files pkg/solvespace-qt.spec & pkg/make-tar have been added to my project branch. You may pull those if you wish, but I'm not going to open a pull request for them.

Using the -l option with the make-tar script will only include the two submodules necessary to build on Linux. This reduces the tarball size to 4MB (a 90% savings).

WickedSmoke avatar Dec 07 '25 13:12 WickedSmoke