Possible to add extra items in default.properties before creating msi?

Hi all,

I’m finishing a minor redesign of our systems and need to reinstall spark (new OS, no previous settings of spark)

To be able to install with the least possible interaction, I will create a msi package. (we have no AD so cannot use GPO)

The added advantage is to be able to preconfigure the client as much as possible.

I have found this guide http://itvomit.com/2011/12/31/customizing-the-spark-chat-client-using-appdeploy/ and the documentation regarding default.properties http://community.igniterealtime.org/docs/DOC-2163

I tested this and come close to what I would like to achieve for now but I have a question which explains itself in title of this posting:

can I add settings to the default properties file which are not documented but added later on when starting the client?

What I tried so far is to create a general default.properties file that I copy after running the setup to the %appdata%\spark folder and before starting the client for the first time.

This works well but I wonder if it’s possible go a step further by adding these settings to the packaged version of that file?

These are the settings that I’m adding/changing:

  • language=en
  • LookAndFeel=com.jtattoo.plaf.fast.FastLookAndFeel
  • offlineGroupVisible=true
  • passwordSaved=true
  • showAvatar=false
  • showVCards=false
  • tabsOnTop=false

Is it also possible to modify the other relevant files in the resource folder in a similar fashion?


yes, and no.

The things that wind up in the %APPDATA%/Spark/spark.properties file are things specifically saved to that file via code. This means, in code, Spark has to know what to put there. It’s possible to have it do this for whatever you want, but it would require source modifications.

Some things may already be in the src/java/org/jivesoftware/resource/default.properties file that you are interested in. Such as the default Look and Feel. Look for:

DEFAULT_LOOK_AND_FEEL = com.jtattoo.plaf.luna.LunaLookAndFeel

and modify to whatever you want. Just make sure you get the correct package name, otherwise spark may freak out and look weird when you start it up. The correct package names are found at:

https://github.com/igniterealtime/Spark/blob/master/src/java/org/jivesoftware/sp ark/ui/themes/ThemePanel.java

lines 131 - 173

This would make it so that on first startup, Spark will use this LaF. When spark closes or saves settings, this LaF will be written to %APPDATA%/Spark/spark.properties.

I removed the popout vcards at my company too. I think (if i’m remembering correctly) I had to do this in the source. I’ll check tomorrow when I’m in the office for how I made that change. It should be a minor change in the source.

whoops, i forgot I said i’ll check how to disable those pesky popup vcards!

I just set it to permanentely be disabled in:


the method:

public boolean areVCardsVisible() {

return getBoolean(“showVCards”, true);


change true to false.