diff options
author | Peter Simons <simons@cryp.to> | 2011-11-20 10:38:26 +0000 |
---|---|---|
committer | Peter Simons <simons@cryp.to> | 2011-11-20 10:38:26 +0000 |
commit | 9de905ee613d4b9c7fd8ee118939464b4d66f362 (patch) | |
tree | c04bb99c459f5528d7093956de55060e1590b62c /modules/programs | |
parent | d89f4b6c7672465277f4bf239b6a09eb7f05b0c6 (diff) | |
download | nixpkgs-9de905ee613d4b9c7fd8ee118939464b4d66f362.tar nixpkgs-9de905ee613d4b9c7fd8ee118939464b4d66f362.tar.gz nixpkgs-9de905ee613d4b9c7fd8ee118939464b4d66f362.tar.bz2 nixpkgs-9de905ee613d4b9c7fd8ee118939464b4d66f362.tar.lz nixpkgs-9de905ee613d4b9c7fd8ee118939464b4d66f362.tar.xz nixpkgs-9de905ee613d4b9c7fd8ee118939464b4d66f362.tar.zst nixpkgs-9de905ee613d4b9c7fd8ee118939464b4d66f362.zip |
modules/programs/wvdial.nix: added support for configuring wvdial
For example, I use the following settings to configure T-Mobile Internet access on my laptop, which is connected to the cell phone by USB: | environment.wvdial.dialerDefaults = '' | Init1 = AT+CGDCONT=1,"IP","internet.t-mobile" | Modem Type = USB Modem | Phone = *99# | ISDN = 0 | Username = tm | Password = tm | Modem = /dev/ttyACM0 | Baud = 460800 | ''; svn path=/nixos/trunk/; revision=30489
Diffstat (limited to 'modules/programs')
-rw-r--r-- | modules/programs/wvdial.nix | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/modules/programs/wvdial.nix b/modules/programs/wvdial.nix new file mode 100644 index 00000000000..6d24efef531 --- /dev/null +++ b/modules/programs/wvdial.nix @@ -0,0 +1,73 @@ +# Global configuration for wvdial. + +{ config, pkgs, ... }: + +with pkgs.lib; + +let + + configFile = '' + [Dialer Defaults] + PPPD PATH = ${pkgs.ppp}/sbin/pppd + ${config.environment.wvdial.dialerDefaults} + ''; + + cfg = config.environment.wvdial; + +in +{ + ###### interface + + options = { + + environment.wvdial = { + + dialerDefaults = mkOption { + default = ""; + type = types.string; + example = ''Init1 = AT+CGDCONT=1,"IP","internet.t-mobile"''; + description = '' + Contents of the "Dialer Defaults" section of + <filename>/etc/wvdial.conf</filename>. + ''; + }; + + pppDefaults = mkOption { + default = '' + noipdefault + usepeerdns + defaultroute + persist + noauth + ''; + type = types.string; + description = "Default ppp settings for wvdial."; + }; + + }; + + }; + + ###### implementation + + config = mkIf (cfg.dialerDefaults != "") { + + environment = { + + etc = + [ + { source = pkgs.writeText "wvdial.conf" configFile; + target = "wvdial.conf"; + } + { source = pkgs.writeText "wvdial" cfg.pppDefaults; + target = "ppp/peers/wvdial"; + } + ]; + + systemPackages = [ pkgs.wvdial ]; + + }; + + }; + +} |