moby: init GPS during boot

This commit is contained in:
Colin 2023-08-22 04:53:40 +00:00
parent 940711878b
commit 5d349ce042
4 changed files with 29 additions and 5 deletions

View File

@ -37,10 +37,6 @@
];
sane.gui.sxmo.enable = true;
# sane.services.eg25-manager.enable = true;
# i only need eg25-manager for GPS purposes;
# but modemmanager outright fails -- blocking eg25-manager -- unless i provide it a sim.
sane.services.eg25-manager.package = pkgs.eg25-manager.override { withModemManager = false; };
sane.programs.guiApps.suggestedPrograms = [ "handheldGuiApps" ];
# sane.programs.consoleUtils.enableFor.user.colin = false;
# sane.programs.guiApps.enableFor.user.colin = false;

View File

@ -20,5 +20,5 @@
services.gpsd.enable = true;
services.gpsd.devices = [ "/dev/ttyUSB1" ];
# TODO: enable eg25-manager, and bring online both the modem and GPS on boot
sane.services.eg25-control.enable = true;
}

View File

@ -2,6 +2,7 @@
{
imports = [
./dyn-dns.nix
./eg25-control.nix
./eg25-manager.nix
./kiwix-serve.nix
./mautrix-signal.nix

View File

@ -0,0 +1,27 @@
{ config, lib, pkgs, ... }:
let
cfg = config.sane.services.eg25-control;
in
{
options.sane.services.eg25-control = with lib; {
enable = mkEnableOption "Quectel EG25 modem configuration scripts. alternative to eg25-manager";
package = mkOption {
type = types.package;
default = pkgs.eg25-control;
};
};
config = lib.mkIf cfg.enable {
systemd.services.eg25-control-defaults = {
serviceConfig = {
Type = "simple";
ExecStart = "${cfg.package}/bin/eg25-control --power-on --enable-gps --dump-debug-info --verbose";
Restart = "on-failure";
RestartSec = "60s";
};
after = [ "ModemManager.service" ];
wants = [ "ModemManager.service" ];
wantedBy = [ "multi-user.target" ];
};
};
}