--- Begin Message ---
Subject: |
[PATCH] Add prusa-slicer |
Date: |
Sat, 14 Aug 2021 00:58:52 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 |
Hi! I'm Daniel Trujillo,
This is my first-time-ever contribution to GNU Guix, so please, don't
hold any nitpick to yourself!! :)
I don't know if these kind of packages are of interest, but this is
PrusaSlicer [0], a software to prepare 3D printings (hence I put it in
engineering.scm).
The packaged version, 2.3.3 is the latest stable available at this
moment. But this version has as important problem [1]: It cannot be
invoked just naming the executable (through $PATH), because then, it
can't locate the resources directory. I learned **the hard way** that
the fix was applied *after* the release of the 2.3.3 version, so I
decided to backport the fix adding a patch because it's a show-stopper
to have to type the path to the executable in /gnu/store/... That's the
reason why the patch attached to this email contains, not only the
additions to engineering.scm, but also a patch that implements the
solution in the version 2.3.3 codebase (It's quite simple, it uses a
boost function to determine the path to the executable rather than
relying on argv[0]).
Known improvable things:
* It's configured to use GTK3. After many attempts to compile it under
GTK2 in a guix environment, sometimes it detected GTK right away, and
some ether times I had to add more includes. It wasn't quite reliable
and, according to the convention followed in gtk+ packages, probably it
would be better that prusa-slicer uses GTK3, and a hypothetical future
GTK2 version would be called prusa-slicer-gtk2.
* In order for the above $PATH issue fix to work, it's crucial that the
cmake variable SLIC3R_FHS is set to off. This is the default value
according to the CMakeLists.txt, but because it's so important, probably
it should have been included in the configure-flags argument? Just for
clarity.
* Currently, the version displayed in the title bar is
"....2.3.3+UNKNOWN". This is because of another cmake option not set. It
doesn't have any influence in the software, as far as I know, but it's
arguably ugly. The version I currently use, doesn't display that in the
title bar, but it does in the "About" window, and it says
".....2.3.3+linux-64". Maybe something like "GNU Guix" would be
prettier. But if I have to include the arch, I would have to dig deeper
into package definitions ^_^'''
I hope everything is in order, I'm looking forward to see your comments,
and hope I can start contributing more packages to Guix!!
Cheers,
Dani.
[0] https://www.prusa3d.es/prusaslicer/
[1] https://github.com/prusa3d/PrusaSlicer/issues/5542
0001-Add-prusa-slicer.patch
Description: Text Data
--- End Message ---