How to make branded Spark distribution (documentation outdated)

I need to make a branded distribution for the Spark client to use with customers of our managed services company. I am not a developer but a sys admin, although I have some general devOps knowledge so I am not too concerned about the difficulty.

I attempted to follow this guide:

However it appears to be extremely outdated, referencing files and locations that no longer exist in the source (I was able to checkout the repo from github) which is understandable considering it was written in 2012.

Can some one please help with instructions that are up to date?

I think you will have to figure out this on your own… Branding wasn’t very popular, so there never was a proper or up to date documentation.

Ooooh man… this is gonna be a fun project >_< Branding is an absolute requirement for this so any insight, no matter how small, could be a big help… maybe review the 2012 based doc and compare it to your knowledge of the existing version? So far the only inconsistency I have been able to work around is that the repo was moved to github which I found with a google search after the svn uri didn’t work.

Is it possible that branding wasn’t popular *because the lack of proper or up to date documentation?

You might put it this way :slight_smile: i was just referring to rather rare inquiries about rebranding in the forums. Original rebranding option was designd by Jive, when they were still owning and developing this software. I think i remember there even being some service for rebranding. But as they have moved on and open sourced Spark there wasn’t many regular developers working on it, so many things lack attention naturally.

I have never looked into rebranding myself. I think it mostly about replacing a few images and compiling your own version. Maybe it even will work replacing those images directly in spark.jar file and repackaging it back with 7-zip. So, you will have to find those images and try replacing them. There is a doc in the source on how to setup development environment, if you will have to compile it.

Oh, if you want your custom installer, that would be the most complicated thing. Can’t help with it. Too complicated for me.

Yea branding the installer isn’t all that important (only a nice to have), we just need to brand the actual client and make sure it only connects to our server without requiring the user to input the URI. I saw the .jar method but this looks like something that has to be done AFTER the installation, where as we need to have it so it installs already branded without out us having to manually change files on each install (which would be impossible).

I meant packaging your branded version into custom installer, not branding the installer. On this site there is a system (Bamboo) which builds installers automatically using proprietary install4j (they have donated license for these projects). But this is a rather big and complex system (continuous integration). I don’t understand how it works. I know it uses build.xml inside the source to know how to build installers, but i have no clue how to use build.xml to produce your own installers. At some point there was an idea to move to izpack. So there were a guide or few in the forums. But they are old too.

Gotcha, do you know where I can find some documentation on just the standard procedure from building an installer from the source without modifications? I may be able to take that and this old guide and fill in the holes.

Ok I found this…

But immediately I am hitting the same wall as with the other guide… there is NO build folder and no build.xml. I checked out the repo to a local folder using tortoise svn. I’ve gone through the whole folder structure and there is no build folder… and the only build.xml files correspond the plugins directory.

Current Spark’s source is moved to Maven structure (the not released yet 2.9.0 version). So files are in different places now. Probably mostly in pom.xml files throughout the structure. There are a few guides on setting up Eclipse or IntelliJ with the new source at \core\src\documentation. But it only covers simple compiling, no installation package creation.

You can download 2.8.3 source from here https://github.com/igniterealtime/Spark/releases/tag/v2.8.3
It would have older structure.

Ah man thanks for that link! That brings things inline with both docs! I may have some more questions as I move along but at least now I can make some progress. You sir are a gentleman and a scholar! :slight_smile: