{-# LANGUAGE ViewPatterns #-}
import System.Environment (getArgs)
import Filesystem.Path.CurrentOS (decodeString)
import Data.Conduit.Network (runTCPServer, serverSettings, HostPreference(HostAny), serverNeedLocalAddr)
import Network.FTP.Server (ftpServer)
import Network.FTP.Backend.FileSystem (runFSBackend, FSConf(FSConf))
main :: IO ()
main = do
[read -> port, d] <- getArgs
let serverConf = (serverSettings port HostAny){serverNeedLocalAddr=True}
runFSBackend (FSConf (decodeString d)) $
runTCPServer serverConf ftpServer