propellor spin
This commit is contained in:
parent
f0a4e642c4
commit
d67d59a25a
|
@ -86,7 +86,7 @@ clam = standardSystem "clam.kitenet.net" Unstable "amd64"
|
||||||
& Network.ipv6to4
|
& Network.ipv6to4
|
||||||
& Tor.isRelay
|
& Tor.isRelay
|
||||||
& Tor.named "kite1"
|
& Tor.named "kite1"
|
||||||
& Tor.bandwidthRate "128 kibibytes"
|
& Tor.bandwidthRate (Tor.PerMonth "400 GB")
|
||||||
|
|
||||||
& Docker.configured
|
& Docker.configured
|
||||||
& Docker.garbageCollected `period` Daily
|
& Docker.garbageCollected `period` Daily
|
||||||
|
|
|
@ -80,15 +80,24 @@ configured settings = File.fileProperty "tor configured" go mainConfig
|
||||||
toconfig (k, v) = k ++ " " ++ v
|
toconfig (k, v) = k ++ " " ++ v
|
||||||
fromconfig = separate (== ' ')
|
fromconfig = separate (== ' ')
|
||||||
|
|
||||||
type BwLimit = String
|
data BwLimit
|
||||||
|
= PerSecond String
|
||||||
|
| PerDay String
|
||||||
|
| PerMonth String
|
||||||
|
|
||||||
-- | Limit incoming and outgoing traffic to the specified
|
-- | Limit incoming and outgoing traffic to the specified
|
||||||
-- amount, per second.
|
-- amount each.
|
||||||
--
|
--
|
||||||
-- For example, "30 kibibytes" is the minimum limit for a useful relay.
|
-- For example, PerSecond "30 kibibytes" is the minimum limit
|
||||||
|
-- for a useful relay.
|
||||||
bandwidthRate :: BwLimit -> Property NoInfo
|
bandwidthRate :: BwLimit -> Property NoInfo
|
||||||
bandwidthRate s = case readSize dataUnits s of
|
bandwidthRate (PerSecond s) = bandwidthRate' s 1
|
||||||
Just sz -> configured [("BandwidthRate", show sz ++ " bytes")]
|
bandwidthRate (PerDay s) = bandwidthRate' s (24*60*60)
|
||||||
|
bandwidthRate (PerMonth s) = bandwidthRate' s (31*24*60*60)
|
||||||
|
|
||||||
|
bandwidthRate' :: String -> Integer -> Property NoInfo
|
||||||
|
bandwidthRate' s divby = case readSize dataUnits s of
|
||||||
|
Just sz -> configured [("BandwidthRate", show (sz `div` divby) ++ " bytes")]
|
||||||
Nothing -> property ("unable to parse " ++ s) noChange
|
Nothing -> property ("unable to parse " ++ s) noChange
|
||||||
|
|
||||||
hiddenServiceAvailable :: HiddenServiceName -> Int -> Property NoInfo
|
hiddenServiceAvailable :: HiddenServiceName -> Int -> Property NoInfo
|
||||||
|
|
Loading…
Reference in New Issue