[josm-dev] Lean JOSM - one-language trimmed down builds of JOSM
Frederik Ramm
frederik at remote.org
Sun Nov 1 04:00:25 GMT 2009
Hi,
a while ago I complained about the .jar file having grown to 5.5 GB
(meanwhile, over 6 GB), partly due to language support but also due to
other kinds of feature creep.
Having recently had the pleasure (again) to download JOSM over a slow
connection, I decided to do something about this myself, and have set up
an alternative JOSM distribution I'm calling "Lean JOSM" for now.
Initially I'm just building a few one-language versions (a one-language
version is about 3 GB in size, compared to 6 GB of the full jar file). I
will start to make my own analysis of "usefulness vs. size" and drop
some features that I consider unimportant - as a first start, I have
disabled bzip2 reading and writing.
Lean JOSM does not have extra Java code - it is just a different way of
packing things into a jar file (specifically, some "excludes" and
"includes" in the build.xml). Where changes to the code are required to
accomodate Lean JOSM, and as long as these don't interfere with normal
JOSM operations, I hope to be able to make these changes in the standard
JOSM code (as in http://josm.openstreetmap.de/changeset/2367 where I
changed the ExtensionFileFilter so that it does not break when bzip2 is
not available). I expect that some things I find while trying to slim
down the jar file will be useful for standard JOSM as well (like
pngcrushing all the image files which I just did).
The goal is to create a variant of JOSM that serves 80% of users well
but uses significantly less space.
Lean JOSM can be downloaded from josm.geofabrik.de. Builds should be
roughly in sync with the main JOSM site. There's no "-tested" yet but I
plan to introduce that as well. If Lean JOSM works well and becomes
popular then we can perhaps move it to the main JOSM site some time.
I'm not announcing this on talk yet, I'll just let it run for a while
and see how it works. Let me know if you have any comments. If anyone
wants a one-language build for their language, I can add that easily (at
the moment I'm just doing en and de).
Bye
Frederik
PS: Is it possible to build a JOSM version that supports *only* language
X and not English, or is support for English always built-in due to the
way we do our I18N? Could I perhaps run a preprocessor to replace the
built-in English texts by translations and then kill the whole I18N
overhead?
--
Frederik Ramm ## eMail frederik at remote.org ## N49°00'09" E008°23'33"
More information about the josm-dev
mailing list