LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   LightZone install in Slackware 14.2 64bit (https://www.linuxquestions.org/questions/slackware-14/lightzone-install-in-slackware-14-2-64bit-4175600839/)

sattvakarma 03-01-2017 08:13 AM

LightZone install in Slackware 14.2 64bit
 
Hello,

I would like to install LightZone image editing software on my Slackware 14.2 64 bit system.

The binary install package from http://lightzoneproject.org/ is available for Arch, CentOS, Debian, Fedora, openSUSE, SUSE SLE, Ubuntu only.

What is the appropriate way to go about installing this software on my system if Slackware package is not available?

Regards,
Sattva

Didier Spaier 03-01-2017 10:39 AM

The only way would be building from source.

But I downloaded a source tarball version 4.1.7 and as stated in BUILD-Linux.md there are a lot of dependencies, furthermore the build process isn't so obvious (at least to me).

So my suggestion is to find a replacement. It could not have the same features but I am a happy user of fotoxx.

bassmadrigal 03-01-2017 12:17 PM

Quote:

Originally Posted by Didier Spaier (Post 5677607)
But I downloaded a source tarball version 4.1.7 and as stated in BUILD-Linux.md there are a lot of dependencies

It seems you'd just need apache-ant and jdk from SBo, although, it looks like javahelp2 might need to installed manually, however, it's possible it is an optional dependency (for jhindexer, whatever that is). I believe everything else should be provided with a full Slackware install (liblcms2 is fulfilled by the lcms2 Slackware package... I had to do some minor digging for that).

Quote:

Originally Posted by Didier Spaier (Post 5677607)
furthermore the build process isn't so obvious (at least to me)

If you look at the PKGBUILD file they include, you can break down the commands they run on Arch. Essentially, it would break down to:

Code:

# Compile the program
ant -f linux/build.xml jar

# Copy the libs to the correct directory
mkdir -p /usr/lib{64}/lightzone
cp -pH linux/products/*.so /usr/lib{64}/lightzone

# Copy the java files over
mkdir -p /usr/share/java/lightzone
cp -pha lightcrafts/products/dcraw_lz \
  lightcrafts/products/LightZone-fork \
  linux/products/*.jar /usr/share/java/lightzone

# Create the menu entry
mkdir -p /usr/share/applications
install -m 644 linux/products/lightzone.desktop /usr/share/applications/
cp -pHR linux/icons /usr/share/applications/

# Copy the binary (or possibly script) to /usr/bin/
mkdir -p /usr/bin/
install -m 755 "linux/products/lightzone /usr/bin/

@OP, if you want to create a Slackware package, add a temporary directory in front of all of those locations and then you can run the makepkg command from that directory to create the package (which allows for easy removal). It wouldn't be too difficult to turn this into a SlackBuild to allow others to build it. If desired, you could do that and then submit it to slackbuilds.org (SBo) and become the maintainer of the package.

sattvakarma 03-02-2017 12:40 AM

Thank you Didier and bassmadrigal for your suggestions!

I will spend some time working on your suggestions, as compiling software and making Slackware packages is completely new for me :-)

tobyl 03-02-2017 12:07 PM

Hi Sattvakarma

Notwithstanding the excellent advice from the previous responses...

I installed lightzone-4.1.5 on current back in May last year. I went to see how I did it, and in my build folder is the rpm I downloaded and the txz package I created. So I must have used rpm2txz. I looked in /var/log/packages and its the only package I installed on that date, so you shouldn't have too much to do.
Slackware current has gone through a lot of changes since then plus I am now running Alien's kde5, but the program still runs perfectly, so it must be pretty robust (ie few dependencies).

Here is the file list from the .tgz I created:

PACKAGE NAME: lightzone-4.1.5-65.1.x86_64
COMPRESSED PACKAGE SIZE: 14M
UNCOMPRESSED PACKAGE SIZE: 15M
PACKAGE LOCATION: /home/toby/build/lightzone/lightzone-4.1.5-65.1.x86_64.tgz
PACKAGE DESCRIPTION:
FILE LIST:
./
usr/
usr/bin/
usr/bin/lightzone
usr/lib/
usr/lib/lightzone/
usr/lib/lightzone/LightZone-forkd
usr/lib/lightzone/dcraw_lz
usr/lib/lightzone/libDCRaw.so
usr/lib/lightzone/libFASTJAI.so
usr/lib/lightzone/libJAI.so
usr/lib/lightzone/libLCArrays.so
usr/lib/lightzone/libLCCache.so
usr/lib/lightzone/libLCFileUtil.so
usr/lib/lightzone/libLCJNI.so
usr/lib/lightzone/libLCJPEG.so
usr/lib/lightzone/libLCLCMS.so
usr/lib/lightzone/libLCTIFF.so
usr/lib/lightzone/libLinux.so
usr/lib/lightzone/libSegment.so
usr/lib/lightzone/libfbf.so
usr/share/
usr/share/applications/
usr/share/applications/lightzone.desktop
usr/share/doc/
usr/share/doc/packages/
usr/share/doc/packages/lightzone/
usr/share/doc/packages/lightzone/BUILD-Linux.md
usr/share/doc/packages/lightzone/COPYING
usr/share/doc/packages/lightzone/README.md
usr/share/icons/
usr/share/icons/hicolor/
usr/share/icons/hicolor/128x128/
usr/share/icons/hicolor/128x128/apps/
usr/share/icons/hicolor/128x128/apps/lightzone.png
usr/share/icons/hicolor/16x16/
usr/share/icons/hicolor/16x16/apps/
usr/share/icons/hicolor/16x16/apps/lightzone.png
usr/share/icons/hicolor/256x256/
usr/share/icons/hicolor/256x256/apps/
usr/share/icons/hicolor/256x256/apps/lightzone.png
usr/share/icons/hicolor/32x32/
usr/share/icons/hicolor/32x32/apps/
usr/share/icons/hicolor/32x32/apps/lightzone.png
usr/share/icons/hicolor/48x48/
usr/share/icons/hicolor/48x48/apps/
usr/share/icons/hicolor/48x48/apps/lightzone.png
usr/share/icons/hicolor/64x64/
usr/share/icons/hicolor/64x64/apps/
usr/share/icons/hicolor/64x64/apps/lightzone.png
usr/share/java/
usr/share/java/lightzone/
usr/share/java/lightzone/asm-all-2.2.2.jar
usr/share/java/lightzone/laf-widget.jar
usr/share/java/lightzone/lcjai.jar
usr/share/java/lightzone/lightcrafts-linux.jar
usr/share/java/lightzone/lightcrafts.jar
usr/share/java/lightzone/lightzonehelp.jar
usr/share/java/lightzone/mlibwrapper_jai.jar
usr/share/java/lightzone/substance-lite.jar


hth, tobyl

sattvakarma 03-03-2017 01:33 AM

Thanks a lot tobyl for the detailed response! I am encouraged to give a try to the solution you propose.

It sure looks quite possible now for me :-) ...though i am still reading up on how to compile and make packages for Slackware.

The RPM binary package downloads for LightZone are available for CentOS, Fedora, openSUSE...which one did you download and use??

Regards,
Sattva

tobyl 03-03-2017 05:46 PM

Sattva, truth is I don't remember. Have a go, the the beauty of a slackpkg install is that is easy to remove cleanly if it doesn't work out.

Also bear in mind that later versions could have introduced more dependencies.
I have other graphics packages installed such as lensfun and dcraw, which if you are into photography, you will want sooner or later, so would recommend.
You will need openjdk-6-jdk or later installed according to the version I installed.

If you use rpm2tgz, you will not be building the package as such, but installing a precompiled binary.
That's not necessarily a problem, but it's worth understanding the difference.

After my previous post I have to admit to being slightly surprised that the lib installs went into /usr/lib and not /usr/lib64, but it worked for me, so give it a try.

rpm2tgz is a bit hit and miss, but it worked for me in this instance.

read up!

regards,
tobyl

sattvakarma 03-05-2017 10:20 AM

Success!!
 
Thank you tobyl for the detailed feedback! Its appreciated.

I got LightZone working...finally!!

Thanks to Doug, one of the maintainers of the LightZone project. He provided step by step instructions which i will paste below:

Code:

You can install and run lightzone on Slackware without compiling it yourself:

1.  Install the latest version of jre (java runtime environment) or jdk (java development kit) from http://www.slackware.com/~alien/slackbuilds/openjdk/pkg64/14.2

2. Download lightzone-4.1.7-75.1.x86_64.rpm (or the latest version) for opensuse-13.2 through this website.

3. Run rpm2tgz lightzone-4.1.7-75.1.x86_64.rpm to generate lightzone-4.1.7-75.1.x86_64.tgz and install using installpkg.

4. You may be missing javahelp-2.0.05.jar.  (You can find a copy by googling the file name.)  Copy into /usr/share/java/lightzone/.

5. You may also be missing jh.jar.  (You can find a copy by googling the file name.)  Copy into /usr/share/java/.

To complete the install process, you need to re-boot the system and then run LightZone!

Regards,
Sattva


All times are GMT -5. The time now is 09:55 PM.