diff options
| author | Joey Hess <joey@kitenet.net> | 2014-05-14 19:47:17 -0400 |
|---|---|---|
| committer | Joey Hess <joey@kitenet.net> | 2014-05-14 19:47:17 -0400 |
| commit | 39217c55690de5641a9fe4ef2236d6127ebbcbb3 (patch) | |
| tree | 31284fd462e2d02cf9bf0b8077c0e8dd34181988 /src/Propellor/Property/Network.hs | |
| parent | eb6e6fe11290971b37a18d9a78f6d9b78228c06f (diff) | |
| parent | 7115d1ec162b4059b3e8e8f84bd8d5898c1db025 (diff) | |
Merge branch 'joeyconfig'
Diffstat (limited to 'src/Propellor/Property/Network.hs')
| -rw-r--r-- | src/Propellor/Property/Network.hs | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/Propellor/Property/Network.hs b/src/Propellor/Property/Network.hs new file mode 100644 index 00000000..6009778a --- /dev/null +++ b/src/Propellor/Property/Network.hs @@ -0,0 +1,30 @@ +module Propellor.Property.Network where + +import Propellor +import Propellor.Property.File + +interfaces :: FilePath +interfaces = "/etc/network/interfaces" + +-- | 6to4 ipv6 connection, should work anywhere +ipv6to4 :: Property +ipv6to4 = fileProperty "ipv6to4" go interfaces + `onChange` ifUp "sit0" + where + go ls + | all (`elem` ls) stanza = ls + | otherwise = ls ++ stanza + stanza = + [ "# Automatically added by propeller" + , "iface sit0 inet6 static" + , "\taddress 2002:5044:5531::1" + , "\tnetmask 64" + , "\tgateway ::192.88.99.1" + , "auto sit0" + , "# End automatically added by propeller" + ] + +type Interface = String + +ifUp :: Interface -> Property +ifUp iface = cmdProperty "ifup" [iface] |
