This makes it hopefully a bit easier to see what we're doing because you
don't need to chase the files down. We don't re-use that functionality
anywhere. Neither would we.
A more important change is not restarting the gl-tertf service.
First of all, there seems to be no process attached to gl-tertf. It is
the "Bandwidth Monitor" and part of the kmod-gl-sdk4-tertf package, so
it's kernel module. It does not appear to be holding the clients.db.
There is, however, gl_clients which also makes sense, naming wise.
That service defines that /usr/bin/gl_clients_update ought to be run.
And stracing it shows that it does indeed touch the database:
open("/etc/oui-tertf/client.db",
O_RDWR|O_CREAT|O_LARGEFILE|O_NOFOLLOW|O_CLOEXEC, 0644) = 7
It also appears to be re-creating the file when it's missing.
Anyway, we have the service stopped during installation so that we can
safely delete the file without the process complaining. We also install
our volatile mac service s.t. it runs ahead of the gl-client service so
that the clientdb gets saved in volatile memory.
When toggling the switch, a lock is held for a relatively long time,
preventing another toggling of the switch to be noticed. With this
change, I hope we can first shutdown the modem, wait for a toggle, and
then continue.
We're losing the abort function but I currently don't know how we would
be able to keep that functionality given that the toggle is queued and
we don't get the notification.
Somehow it disconnects me from the wifi, I guess it's related to
restarting the gl-tertf service. I wonder whether the installation
completes so I make a message appear.
So with the commas only, it installed without complaining. Which is
weird, because what does it recognise as dependency that it think is
fulfilled? The long name with all the commas?
The intention is to have the system recognise our dependencies and to
reject installation if the dependencies are not met. Better yet, have it
install the dependencies!
- Triggers on push events to any branch
- Builds the blue-merle package using the 23.05.0 SDK
- Currently does not sign the package
- Adapts Makefile: switches from Runtime + Buildtime dependencies
to Runtime dependencies only
Before this change, uninstalling the package would complain about
/tmp/sim_change_start not existing:
root@GL-E750:/tmp# opkg remove blue-merle
Removing package blue-merle from root...
The /tmp/ directory exists.
The /etc/ directory exists.
killall: gltertf: no process killed
No file found within /tmp/tertf. No shredding to be done there.
No file found within /etc/tertf. No shredding to be done there.
Looks like /tmp/ is clean!
Looks like /etc/ is clean!
rm: can't remove '/tmp/sim_change_start': No such file or directory
rm: can't remove '/tmp/sim_change_switch': No such file or directory
No packages removed.
Collected errors:
* pkg_run_script: package "blue-merle" postrm script returned status 1.
root@GL-E750:/tmp#
So we use -f to not raise an error if the file does not exist.
We assume that the version 3 series is compatible, but still prompt the
user if they are using a version that we have not yet tested.
We know that version 4 is not compatible, so we bail out directly.
The double-dollar is for escaping the Makefile.