summaryrefslogtreecommitdiffstats
path: root/lass
diff options
context:
space:
mode:
authorlassulus <lass@aidsballs.de>2016-07-05 09:18:16 +0200
committerlassulus <lass@aidsballs.de>2016-07-05 09:21:02 +0200
commite578dfcd67d62add1a9c016af7794309a2dc2d62 (patch)
treec6b471afdfb66bb9e1d432ea4d25523cfb8c493e /lass
parent54e6eecc9282b4a6e7ae06a0130a02684864afb9 (diff)
l: build module from 2/umts
Diffstat (limited to 'lass')
-rw-r--r--lass/1systems/mors.nix11
-rw-r--r--lass/1systems/uriel.nix6
-rw-r--r--lass/3modules/default.nix1
-rw-r--r--lass/3modules/umts.nix (renamed from lass/2configs/umts.nix)51
4 files changed, 57 insertions, 12 deletions
diff --git a/lass/1systems/mors.nix b/lass/1systems/mors.nix
index f26f0ed5f..d065d4dfa 100644
--- a/lass/1systems/mors.nix
+++ b/lass/1systems/mors.nix
@@ -25,7 +25,6 @@
../2configs/c-base.nix
../2configs/mail.nix
../2configs/krebs-pass.nix
- ../2configs/umts.nix
../2configs/repo-sync.nix
{
#risk of rain port
@@ -54,6 +53,16 @@
# package = pkgs.postgresql;
# };
#}
+ {
+ lass.umts = {
+ enable = true;
+ modem = "/dev/serial/by-id/usb-Lenovo_F5521gw_38214921FBBBC7B0-if09";
+ initstrings = ''
+ Init1 = AT+CFUN=1
+ Init2 = AT+CGDCONT=1,"IP","pinternet.interkom.de","",0,0
+ '';
+ };
+ }
];
krebs.build.host = config.krebs.hosts.mors;
diff --git a/lass/1systems/uriel.nix b/lass/1systems/uriel.nix
index 92996c181..6b56419d7 100644
--- a/lass/1systems/uriel.nix
+++ b/lass/1systems/uriel.nix
@@ -16,6 +16,12 @@ with builtins;
../2configs/bitlbee.nix
../2configs/weechat.nix
../2configs/skype.nix
+ {
+ lass.umts = {
+ enable = true;
+ modem = "/dev/serial/by-id/usb-HUAWEI_Technologies_HUAWEI_Mobile-if00-port0";
+ };
+ }
];
krebs.build.host = config.krebs.hosts.uriel;
diff --git a/lass/3modules/default.nix b/lass/3modules/default.nix
index b3037205e..6a3b41ca4 100644
--- a/lass/3modules/default.nix
+++ b/lass/3modules/default.nix
@@ -5,6 +5,7 @@ _:
./folderPerms.nix
./mysql-backup.nix
./power-action.nix
+ ./umts.nix
./urxvtd.nix
./wordpress_nginx.nix
./xresources.nix
diff --git a/lass/2configs/umts.nix b/lass/3modules/umts.nix
index c1fce9ea2..01adc0409 100644
--- a/lass/2configs/umts.nix
+++ b/lass/3modules/umts.nix
@@ -3,6 +3,36 @@
with config.krebs.lib;
let
+ cfg = config.lass.umts;
+
+ out = {
+ options.lass.umts = api;
+ config = lib.mkIf cfg.enable imp;
+ };
+
+ api = {
+ enable = mkEnableOption "umts";
+ modem = mkOption {
+ type = types.str;
+ default = "/dev/ttyUSB0";
+ };
+ initstrings = mkOption {
+ type = types.str;
+ default = ''
+ Init1 = ATZ
+ Init2 = ATQ0 V1 E1 S0=0 &C1 &D2
+ '';
+ };
+ username = mkOption {
+ type = types.str;
+ default = "default";
+ };
+ password = mkOption {
+ type = types.str;
+ default = "default";
+ };
+ };
+
nixpkgs-1509 = import (pkgs.fetchFromGitHub {
owner = "NixOS"; repo = "nixpkgs-channels";
rev = "91371c2bb6e20fc0df7a812332d99c38b21a2bda";
@@ -11,33 +41,32 @@ let
wvdial = nixpkgs-1509.wvdial; # https://github.com/NixOS/nixpkgs/issues/16113
- modem-device = "/dev/serial/by-id/usb-Lenovo_F5521gw_38214921FBBBC7B0-if09";
+ #modem-device = "/dev/serial/by-id/usb-Lenovo_F5521gw_38214921FBBBC7B0-if09";
+ modem-device = "/dev/serial/by-id/usb-HUAWEI_Technologies_HUAWEI_Mobile-if00-port0";
# TODO: currently it is only netzclub
umts-bin = pkgs.writeScriptBin "umts" ''
#!/bin/sh
set -euf
- systemctl stop wpa_supplicant
systemctl start umts
- trap "systemctl stop umts && systemctl start wpa_supplicant;trap - INT TERM EXIT;exit" INT TERM EXIT
+ trap "systemctl stop umts;trap - INT TERM EXIT;exit" INT TERM EXIT
echo nameserver 8.8.8.8 | tee -a /etc/resolv.conf
journalctl -xfu umts
'';
wvdial-defaults = ''
- Modem = ${modem-device}
- Init1 = AT+CFUN=1
- Init2 = AT+CGDCONT=1,"IP","pinternet.interkom.de","",0,0
+ Modem = ${cfg.modem}
+ ${cfg.initstrings}
+ Modem Type = Analog Modem
Baud = 460800
phone= *99#
- Username = netzclub
- Password = netzclub
+ Username = ${cfg.username}
+ Password = ${cfg.password}
Stupid Mode = 1
Idle Seconds = 0
'';
-
- out = {
+ imp = {
environment.shellAliases = {
umts = "sudo ${umts-bin}/bin/umts";
};
@@ -58,5 +87,5 @@ let
};
};
};
-in out
+in out