{- git-annex command - - Copyright 2012 Joey Hess - - Licensed under the GNU GPL version 3 or higher. -} module Command.AddUnused where import Common.Annex import Logs.Location import Command import qualified Command.Add import Command.Unused (withUnusedMaps, UnusedMaps(..), startUnused) import Types.Key cmd :: [Command] cmd = [notDirect $ command "addunused" (paramRepeating paramNumRange) seek SectionMaintenance "add back unused files"] seek :: CommandSeek seek = withUnusedMaps start start :: UnusedMaps -> Int -> CommandStart start = startUnused "addunused" perform (performOther "bad") (performOther "tmp") perform :: Key -> CommandPerform perform key = next $ do logStatus key InfoPresent Command.Add.addLink file key Nothing return True where file = "unused." ++ key2file key {- The content is not in the annex, but in another directory, and - it seems better to error out, rather than moving bad/tmp content into - the annex. -} performOther :: String -> Key -> CommandPerform performOther other _ = error $ "cannot addunused " ++ otherĀ ++ "content"