git-annex/Command/Dead.hs

40 lines
776 B
Haskell

{- git-annex command
-
- Copyright 2011 Joey Hess <joey@kitenet.net>
-
- Licensed under the GNU GPL version 3 or higher.
-}
module Command.Dead where
import Common.Annex
import Command
import qualified Remote
import Logs.Trust
import Logs.Group
import qualified Data.Set as S
def :: [Command]
def = [command "dead" (paramRepeating paramRemote) seek
SectionSetup "hide a lost repository"]
seek :: [CommandSeek]
seek = [withWords start]
start :: [String] -> CommandStart
start ws = do
let name = unwords ws
showStart "dead " name
u <- Remote.nameToUUID name
next $ perform u
perform :: UUID -> CommandPerform
perform uuid = do
markDead uuid
next $ return True
markDead :: UUID -> Annex ()
markDead uuid = do
trustSet uuid DeadTrusted
groupSet uuid S.empty