Yesterday night it occurred to me that the current handling of missing METAR
strings isn't good enough:
- in case of missing METAR strings, don't re-send the last successful string,
but the last successful string sent to *this* client. (If one client is
running in virtual December, it won't be happy about dropped in summer
weather.)
- fix a bug that allowed -vc notation (options -v and -c), but broke a lot of
other notations (-b/var/tmp). Only -v can now be accumulated again, as
in -vvvv.
Here's a Perl implementation of a METAR proxy server. Tested on Linux only, but
should work on all Unices, and possibly on Windows, too. Its purpose is to:
- provide METAR data for machines without internet connection
- centralize METAR fetching: one machine in a network runs the proxy, all
other connect to the proxy
- deliver defined and reproducible weather for educational purposes
- save weather situations for later use in fgfs
Quick instructions to download the world weather for the last 3 hours
and run proxy and fgfs with it (~ 2MB download; for less bandwidth
consumption see the --record mode):
$ metarproxy --download 3h
$ metarproxy -v -c &
$ fgfs --proxy=localhost:5509 --time-offset=-2 --enable-real-weather-fetch
I made these changes because fltk doesn't recognize path
\\SERVER\SHARE as a normal directory, although plib/ul
function succeed at enumerating the content of such a
path.
I had that problem when I decided to test FG on a loaned
HP xw4100 workstation. I installed it over the network and
the install-source became \\myserver\myshare\. with no
scenery files detected.
I made some changes to current CVS :
- the window is gently resizable, keeping the buttons' height
unchanged, with a minimun size,
- the current activity ( installation or removal ) is displayed
in the progress bar,
- the progress status is exact. For installation, I am
using the total bytes read vs the file size. I had to hack
untarka somehow and bzip2 and Z methods needs to be implemented.
For removal, I am counting files by in-depth traversal, in the
same way remove_dir is working. This seems very quick and
the overhead is unnoticable.
- the Quit button is the only way to quit the program, and it is
deactivated during work. Otherwise, we can get the window hidden
but the program still running in background.
- cleanup on start options that seemed to be copied from fgrun.
Valid options are now :
--silent
to write fgadmin.prefs and stop immediately
--install-source=<DIR>
--scenery-dest=<DIR>