-- -- | Configuration data for lambdabot -- module Config where data Protocol = Irc | Xmpp -- | The 'Config' type provides configurations for lambdabot. It is used -- when lambdabot is started to determine the name of lambdabot, what -- IRC-network lambdabot should join, which channels lambdabot should -- join upon successful connection, etc. -- data Config = Config { name :: String, -- ^ The nickname of lambdabot userinfo :: String, -- ^ The userinfo string for lambdabot host :: String, -- ^ Host to join port :: Int, -- ^ The port number to use on the host protocol :: Protocol, -- ^ either irc or xmpp/jabber verbose :: Bool, -- ^ Should lambdabot be verbose? textwidth :: Int, -- ^ How many columns should we use autojoin :: [String], -- ^ List of channels to autojoin admins :: [String], -- ^ List of nicknames that are admins proxy :: Maybe ([Char], Integer), -- ^ A proxy given as -- a pair of host and port. -- | The 'path' component is a string to the location where the fortune files -- are located. On some systems, this is /usr/share/games/fortunes, on others -- this is /usr/share/games/fortune. Alter this to suit your configuration fortunePath :: FilePath, -- | Path to the top of $fptools, used by @code fptoolsPath :: FilePath, -- which ghci to use (in @type) ghci :: FilePath, outputDir :: FilePath, -- what prefixes to use for commands commandPrefixes :: [String], -- what prefixes to use for Haskell evalution evalPrefixes :: [String], -- particular commands we'd like to disable -- (to disable whole plugins, remove them from Modules.hs) disabledCommands :: [String] } -- -- Useful defaults for #haskell. -- config :: Config config = Config { name = "jackdonaldson", userinfo = "john.doe", host = "chat.example.com", protocol = Xmpp, port = 5222, verbose = True, textwidth = 350, proxy = Nothing, -- Just ("www-proxy",3128), autojoin = [ "lambda@conference.chat.example.com" , "whee@conference.chat.example.com" ], -- autojoin = [], admins = [ "I ROCk!jeremy.shaw@chat.example.com" , "lambda@conference.chat.example.com" , "I ROCk" ], fortunePath = "/home/dons/fortune/", fptoolsPath = "/home/dons/fptools", ghci = "ghci", outputDir = "State/", commandPrefixes = ["@","?"], evalPrefixes = [">"], disabledCommands = ["listchans", "slap", "echo", "remember", "state"] } ircconfig :: Config ircconfig = Config { name = "zoink", userinfo = "Lambda_Robots:_100%_Loyal", host = "chat.freenode.net", protocol = Irc, port = 6667, verbose = True, textwidth = 350, proxy = Nothing, -- Just ("www-proxy",3128), autojoin = ["#lambdatest"], admins = [ "stepcut" ], fortunePath = "/home/dons/fortune/", fptoolsPath = "/home/dons/fptools", ghci = "ghci", outputDir = "State/", commandPrefixes = ["@","?"], evalPrefixes = [">"], disabledCommands = ["listchans", "slap", "echo", "remember", "state"] }