aboutsummaryrefslogtreecommitdiff
path: root/Types/Distribution.hs
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2013-11-22 16:04:20 -0400
committerGravatar Joey Hess <joey@kitenet.net>2013-11-22 16:04:20 -0400
commitb45b9d64280be90e552a187ab2e99a2e77f8346f (patch)
tree44d8b76f84013d2d3ceedb2295e540efec9ed337 /Types/Distribution.hs
parent8e6e6c47702e2af19b2b319b0ebc37e5a749ff27 (diff)
annex.autoupgrade setting
Diffstat (limited to 'Types/Distribution.hs')
-rw-r--r--Types/Distribution.hs16
1 files changed, 16 insertions, 0 deletions
diff --git a/Types/Distribution.hs b/Types/Distribution.hs
index 4382dd072..4201f49ad 100644
--- a/Types/Distribution.hs
+++ b/Types/Distribution.hs
@@ -9,6 +9,7 @@ module Types.Distribution where
import Types.Key
import Data.Time.Clock
+import Git.Config (isTrue, boolConfig)
data GitAnnexDistribution = GitAnnexDistribution
{ distributionUrl :: String
@@ -20,3 +21,18 @@ data GitAnnexDistribution = GitAnnexDistribution
deriving (Read, Show, Eq)
type GitAnnexVersion = String
+
+data AutoUpgrade = AskUpgrade | AutoUpgrade | NoAutoUpgrade
+ deriving (Eq)
+
+toAutoUpgrade :: (Maybe String) -> AutoUpgrade
+toAutoUpgrade Nothing = AskUpgrade
+toAutoUpgrade (Just s)
+ | s == "ask" = AskUpgrade
+ | isTrue s == Just True = AutoUpgrade
+ | otherwise = NoAutoUpgrade
+
+fromAutoUpgrade :: AutoUpgrade -> String
+fromAutoUpgrade AskUpgrade = "ask"
+fromAutoUpgrade AutoUpgrade = boolConfig True
+fromAutoUpgrade NoAutoUpgrade = boolConfig False