[Xastir] [BSD-Ham] Xastir Tiger map caching in FreeBSD.
Tom Russo
russo at bogodyn.org
Mon May 27 11:29:38 PDT 2024
For what it's worth, it turns out that Xastir's BDB usage is sufficiently
basic that it *can* use BDB18 instead of BDB5 with a very trivial hack on
acinclude.m4 and no code change whatsoever.
This is enough to make it build with BDB18 support on FreeBSD and keep map
caching functional.
I've submitted a pull request to Xastir for review by the other developers.
https://github.com/Xastir/Xastir/pull/218
However, Xastir's BDB detection is still primitive, looking for headers where
it is told to and libraries in a loop from newest to oldest acceptable
version. So if both DB5 and DB18 are installed and Xastir is told to look for
DB5 headers, it will use those headers but still find the newer libraries.
That results in a runtime detection of the mismatch and disabling of map
caching. This has always been the case with Xastir, which used to trip up
users when multiple old versions (db5 and db4) were both installed and the
header path to the older version was given.
So once this patch is accepted and moved into the official repo and a release,
(or if the patch to acinclude.m4 is added to the Xastir port on FreeBSD in
the interim), the FreeBSD port makefile will have to have "USES=bdb:18" added
lest it fall back to looking for db5 headers by default as I think it would if
it simply had "USES=bdb". Of course that whole problem will go away if
libdb5 is removed from ports altogether or if only the newer one is installed.
On Mon, May 27, 2024 at 10:11:34AM -0600, we recorded a bogon-computron collision of the <russo at bogodyn.org> flavor, containing:
> On Mon, May 27, 2024 at 12:35:44PM +1000, we recorded a bogon-computron collision of the <carl at stagecraft.cx> flavor, containing:
> > Hi Everyone,
> > One of the port system maintainers of FreeBSD has proposed the removal of the dependancy on libdb5 (Berkeley DB 5) from Xastir as libdb5 is deprecated and no longer maintained. Not being in the US I’ve never used Tiger maps and I don't really know if removing the Tiger map caching capability will make them unusable, however given the availability of other maps and the fact libdb5 is no longer being maintained I’ve approved the change.
>
> I'm one of the folks who curates the Xastir repository at Github and
> "maintains" the software there . I also use Xastir on FreeBSD though I do not
> use the port at all and build it myself all the time.
>
> The libdb5 capability in Xastir is not solely for Tiger maps, even though it
> is likely that the documentation makes wild, outdated assertions to that
> effect.
>
> Tiger map servers themselves are long gone and all Tiger-specific map code
> removed from Xastir back in 2019. So DB5 support has nothing to do with
> Tiger maps in the US anymore, even though that was the reason it was
> initially implemented.
>
> In fact, BDB5 is used for general caching of online maps *other* than tiled
> map sets like OpenStreetMaps (a completely different technique is used for
> downloading and caching of OSM tiles). WMS map servers would all make use of
> caching to prevent unnecessary re-download of map images. WMS servers for
> online maps are still plentiful both in and out of the US, and in fact just
> last year we helped a user in Finland get Xastir working with a WMS server
> from the Finish Land Survey (c.f. https://github.com/Xastir/Xastir/discussions/211).
>
> Building Xastir without Berkeley DB support would mean that all users of
> WMS servers would be downloading new images with every map pan or zoom
> operation because downloaded images would no longer be cached. They would
> still be usable, but would be slow and wasteful.
>
> Nobody has gone to through the exercise of trying to adapt the DB5 code in
> Xastir to use a maintained version of Berkeley DB. I don't even know how
> different db18 is from db5 at this point. At a minimum, even if the API
> hasn't changed significantly, the hamfisted technique used in Xastir's
> configure script to find DB headers and libraries would need modification.
>
> I have opened an issue on Xastir's issue tracker to see if we can get a
> volunteer to look into updating the code to make use of a supported version of
> Berkeley DB since DB5 is so ancient. (https://github.com/Xastir/Xastir/issues/217)
>
> I am not, however, in a position to volunteer to take over maintaining the
> Xastir port in the FreeBSD ports tree, though I'm perfectly willing to submit
> PRs with patches from time to time when we release new versions of the code.
>
> --
> Tom Russo KM5VY
> Tijeras, NM
>
> echo "prpv_a'rfg_cnf_har_cvcr" | sed -e 's/_/ /g' | tr [a-m][n-z] [n-z][a-m]
>
> ______________________________________________________________
> BSD-Ham mailing list
> Home: http://mailman.qth.net/mailman/listinfo/bsd-ham
> Help: http://mailman.qth.net/mmfaq.htm
> Post: mailto:BSD-Ham at mailman.qth.net
>
> This list hosted by: http://www.qsl.net
> Please help support this email list: http://www.qsl.net/donate.html
--
Tom Russo KM5VY
Tijeras, NM
echo "prpv_a'rfg_cnf_har_cvcr" | sed -e 's/_/ /g' | tr [a-m][n-z] [n-z][a-m]
More information about the Xastir
mailing list