Spksrc: [request] GeoGig [$250]

Created on 4 Apr 2016  路  14Comments  路  Source: SynoCommunity/spksrc

Description: Geospatial Version Control (similar to Git)
Website: http://geogig.org
Documentation: http://geogig.org/docs/index.html
Build/Installation documentation: https://github.com/locationtech/geogig/blob/master/doc/technical/source/developers.rst
Source Code: https://github.com/locationtech/geogig.git
License: Eclipse Distribution License - v 1.0

There is a $250 open bounty on this issue. Add to the bounty at Bountysource.

bounty

All 14 comments

If someone is interested, capable and has available time to build this package, please respond and advise of such.

I will subsequently create a Bountysource account and post a -_suggested/fair_- bounty accordingly, respectfully.

Mine own particular desire is to install/run Geogig on an older Synology 1515 ARM device and the newer 1515+ device.

Thank you.

Unfortunately, the DS-1515 has an ARM processor, hence the Docker to which you refer does not work.

That would be a good reason. ;). Best of luck!

This is quite a specific request, and I doubt that we would publish a package for it on the repository.
Having said that, getting it to run isn't hard.

  • Install the Synology Java8 package via Package Center: https://www.synology.com/en-global/dsm/app_packages/Java8 (package is DSM6 only if I'm not mistaken, take that into account)
  • Log in via SSH on the device
  • Assuming /volume1/geogig as location: cd /volume1
  • Create the directory: mkdir /volume1/geogig
  • Download geogig: wget https://sourceforge.net/projects/geogig/files/geogig-1.0-RC1a/geogig-1.0-RC1a.zip
  • Unzip: 7z x geogig-1.0-RC1a.zip
  • Remove the downloaded file: rm -rf /volume1/geogig-1.0-RC1a.zip

Execute with PATH=/var/packages/Java8/target/Java/jre:$PATH && export JAVA_HOME=/var/packages/Java8/target/Java/jre && /volume1/geogig/bin/geogig

Give this a try.
For each SSH session, you'll have to export JAVA_HOME first, like this: export JAVA_HOME=/var/packages/Java8/target/Java/jre. This can probably be added into your .profile, but we can't package that.

After that, you should be able to type geogig wherever you need it for the duration of that session.

Notes: DSM6 only, because of the Java8 dependency. noarch, so it should work on every device (as long as the Java8 package is available anyway).
As I said before, this is quite a specific piece of software, so it won't be published on the SynoCommunity repository.

Dr-Bean,

It does not need to be part of the SynoCommunity repo, an .spk is just fine, providing I have the build instructions so I can update the Geogig version.

Could you provide the build instructions to create the .spk (and perhaps a bit of explanation if I need it) in exchange for the bounty?

Also, the path on the DS1515 device is /var/packages/Java8/target/j2sdk-image/bin/java

And yes, better to add it to .profile.

Here you go: https://github.com/Dr-Bean/spksrc/tree/geogig.

To create your own packages, you'll need to set up a build environment. See the README and CONTRIBUTING files for details.
After doing so, clone my spksrc fork (git clone https://github.com/Dr-Bean/spksrc, git checkout geogig to checkout the branch).
Assuming ~/spksrc as location, enter the spk dir with cd ~/spksrc/spk/geogig and run make (you can add an arch, but it's probably not necessary in this particular case. If you do, it'll start downloading the appropriate toolchain. See also the spksrc example).

If a new release comes along, you should edit the version information in several locations:

  • Edit PKG_VERS in ~/spksrc/cross/geogig/Makefile;
  • Recreate the digests file after that: cd ~/spksrc/cross/geogig && rm -rf digests && make download && make digests && make clean;
  • Edit SPK_VERS in ~/spksrc/spk/geogig/Makefile;
  • For the package to correctly show up as an update if you use a package repository, you'll need to edit SPK_REV in ~/spksrc/spk/geogig/Makefile. Always current rev +1, it doesn't reset.
  • Run make to create a new package. It'll be stored in ~/spksrc/packages

And you're correct, the Java binary is located in different places, depending on the arch :) I believe geogig automatically appends /bin/java to their search path, so you should omit that when exporting JAVA_HOME.

@Dr-Bean since you've already done the work... why not merge it? :D even if we don't publish it it would help others if they want to build it like @ericjarvies :)

@Dr-Bean - Thank you for taking the time to address my request, tis appreciated. I did read your previous communiqu茅 shortly after you posted it, but I've been trying to satisfy an obligatory deadline pertaining to an unrelated subject matter -and I'm _still_ engaging the process, which is why I've not responded sooner, so sorry about that.

I've only a few moments to reply, but later when time permits, I will endeavor your instructions and aptly elaborate after having exercised and practiced them -to whatever the penultimate point of my success ends up _actually_ being.

Of course, any shortcomings will invariably be mine -_not yours/your instructions_, because I've never worked with spksrc and thereby have no familiarity -whatsoever.

As @cytec pointed out, you've "_presumably_ " already done the work, and though you've not mentioned or requested or implied anything about the bounty, I've no compunction in releasing the bounty to you sans inclusion of this SPK into the synocommunity repository, but would at least -and first- like to make sure I can successfully build it myself as per your instruction.

In other words, I'd like to garner (_but not waste nor take ill advantage of_) a bit more of your time if I prove myself _initially_ incapable of the task... but not far off the mark. Else, if I prove myself entirely _inept_, then I'll own it, and will not subject you to a painfully time-consuming instructional in lieu of the bounty, but might ask you for a couple of simple [for you] changes to the SPK. Tolerable?

@ericjarvies Take your time. If you have questions on the build process, ask away. It could help in improving the available documentation as well, so it serves a double purpose as far as I'm concerned.

As for changes to the package: the approach I used is the same as for other pure-CLI-based packages. Not sure what changes you were considering, but feel free to ask if you run into difficulties.

@cytec This piece of software is quite specialized, and the strong impression I have is that it wouldn't be used much outside of a very select set of users. Besides that, it's Java and CLI. It's probably easier to script the installation than it is to set up the package from scratch.

Looking at it from an spksrc perspective, imo there's no point in merging code just because it exists. If it's there, it needs to be maintained. We have enough of that work to go around as it is ;)
Having said that, the framework should probably support excluding packages from the default build rules. Let's put that on someones todo list ;)

@ericjarvies Any progress on testing and verification of the instructions?

@ericjarvies Unless you object, I'll probably close this issue and submit a claim for the bounty in a week's time. My previous comment still stands though.

As per my last comment, I'm closing this one. Source is available at https://github.com/Dr-Bean/spksrc/tree/geogig (until the next cleanup of old branches, but that's at least a while off), SPK download over here.

Was this page helpful?
0 / 5 - 0 ratings