8ee10214c8
async tile fetcher
...
we use cqueues, which is the async framework that lua-http is built
on. we integrate it into the glib event loop rather hackily by calling
the cqueues event stepper ever 20ms from a glib timeout function
overpass has very low rate limits so we handle a 429 response by
sleeping for a random length of time and retrying. This is, also,
a bit of a hack
2025-06-01 20:50:26 +01:00
195e028e22
clobber map-surface when bounds change
2025-05-30 23:34:17 +01:00
acbe27e6e2
draw map once only and copy it to screen in on_draw
...
This massively reduces cpu usage, however it doesn't yet work
if we've moved far enough that we'd need to fetch new tiles.
2025-05-30 21:24:28 +01:00
2a86a2bfde
use register-widget more, fewer arrow widget repaints
2025-05-29 21:13:19 +01:00
f64bfeb7fd
invalidate map only when app-state changes
2025-05-29 21:09:24 +01:00
cb0314d1d6
invalidate the map display each time we repaint it
...
really we should only need to do this when the app-state changes
2025-05-29 21:03:02 +01:00
6e61113366
replace in-memory cache with a persistent json cache
...
we just store the raw response from overpass
2025-05-29 18:43:48 +01:00
86682a2ad6
fetch enough tiles to cover the display
2025-05-29 18:13:47 +01:00
995880e5a3
wip
2025-05-29 12:48:21 +01:00
398693bc07
hook the ui up to the overpass data
2025-05-28 18:50:12 +01:00
dc95c2252e
convert lat/lon to tile x/y and back
2025-05-27 23:48:32 +01:00
1deaea2948
whitespace
2025-05-27 17:33:58 +01:00
239f897396
Merge remote-tracking branch 'origin/tninkpad'
2025-05-27 17:32:12 +01:00
ab8ca0d032
update with TODO list
2025-05-27 17:31:35 +01:00
184ba482f9
and decode
2025-05-27 13:34:09 +01:00
26ebbe21b5
hack in rxi-json
2025-05-27 13:31:54 +01:00
a2906f5150
http request to overpass
2025-05-27 13:12:12 +01:00
71fa63eaa7
stolen from liminix
2025-05-27 13:11:48 +01:00
21471654cb
add aroow to show direction of travel
2025-05-18 23:18:15 +00:00
e49173cfdd
hook nmea messages up to widgets
2025-05-18 18:23:27 +00:00
36b1284996
nmea: parse degrees and minutes in lat/long
2025-05-18 18:01:56 +00:00
015caf45c6
write an nmea trace to a unix socket for indoor maps testing
...
while : ; do fennel fake-nmea.fnl foo.nmea ./fake-nmea.sock ; done
2025-05-18 18:00:49 +00:00
97440603f3
maps: accept socket path as command line arg
2025-05-18 18:00:06 +00:00
bf7eac5fac
parse nmea from socket
2025-05-17 23:23:32 +00:00
59c7b53022
nmea: add GGA, RMC
2025-05-17 23:22:37 +00:00
a687c946d2
nmea: convert empty fields to nil
2025-05-17 23:20:55 +00:00
4835b24e03
maps: read from gnss unix socket
2025-05-16 21:19:09 +00:00
ae9c4b0b3c
fix perms on gnss socket
2025-05-15 18:59:17 +01:00
c6cac8bc4b
disable opengl to avoid Satellite app crashes with kernel oops
2025-05-15 18:42:11 +01:00
4deecaa600
disable adbd until we find out why it's broken in nuxos-unstable
2025-05-15 18:38:04 +01:00
58fd046f6c
connect qmi-nmea to /var/run/gnss-share.sock
...
:-) this works with satellite
:-( it doesn't start on boot
it needs to be run after the /dev/wwan0qmi0 is created
2025-05-14 23:00:45 +01:00
3aa64e8fac
add beginnings of an nmea parser
2025-05-14 18:30:14 +01:00
71012d5038
delete unused function and debugging prints
2025-05-12 00:51:04 +01:00
0ae8c85966
rewrite qmi-nmea in python
2025-05-12 00:22:50 +01:00
3a8043a0cb
remove saturnfrom systemPackages, is referenced by cage
2025-05-12 00:02:50 +01:00
b3e505a1e9
using lk2nd/extlinux so nixos can manage /boot
...
and there is no need to update it by dd#'ing the partition image
2025-05-11 23:59:44 +01:00
e2ee645ad0
mount /boot by fs label not partlabel
...
as we are booting nixos from mmc1 (sd card) and it's MBR formatted
so doesn't have partlabels
2025-05-11 23:59:44 +01:00
89cc461c3c
drop local {modem,network}-manager
...
now we have native aarch64 builder we can use the regular nixos
packages for this and don't need to build cross-compilable ones
2025-05-11 23:59:44 +01:00
9dce5a04e6
force running loc-start and loc-follow-nmea
2024-07-23 23:50:01 +01:00
be10ba1b8a
don't need qmicli-helpers either
2024-07-23 21:44:00 +01:00
0ece39d798
squash add
2024-07-23 21:37:22 +01:00
b3ace59a01
delete loc stuff we're not using
2024-07-23 21:36:28 +01:00
618d0dc398
always use proxy
2024-07-23 21:16:45 +01:00
ddc9b85357
allow resizing root fs (but still not partition)
2024-07-23 21:13:05 +01:00
177bd781d7
qmi-nmea: remove non-gps parts of qmicli
2024-07-23 21:12:21 +01:00
1a0e19908a
add qmi-nmea placeholder (copy of qmicli)
2024-07-23 20:56:53 +01:00
b8aa0ae9b1
remove unused package
2024-07-22 22:27:59 +01:00
c3b796ef79
add maps app (doesn't do much yet)
2024-07-22 22:25:25 +01:00
6fd41b7e1c
fix "could not acquire 'org.freedesktop.ModemManager1'" error
...
I don't know why this works, but modemmanager-small needs to be
in environment.systemPackages
2024-07-22 16:16:01 +01:00
d12cb03a4e
clean up README (a bit)
2024-07-22 15:44:55 +01:00