summaryrefslogtreecommitdiff
path: root/Property/User.hs
diff options
context:
space:
mode:
Diffstat (limited to 'Property/User.hs')
-rw-r--r--Property/User.hs13
1 files changed, 13 insertions, 0 deletions
diff --git a/Property/User.hs b/Property/User.hs
index 3ab5f570..47d6fb5b 100644
--- a/Property/User.hs
+++ b/Property/User.hs
@@ -17,5 +17,18 @@ nonsystem user = check (isNothing <$> homedir user) $ cmdProperty "adduser"
, Param user
]
+{- Removes user home directory!! Use with caution. -}
+nuked :: UserName -> Property
+nuked user = check (isJust <$> homedir user) $ cmdProperty "userdel"
+ [ Param "-r"
+ , Param user
+ ]
+
+lockedPassword :: UserName -> Property
+lockedPassword user = cmdProperty "passwd"
+ [ Param "--lock"
+ , Param user
+ ]
+
homedir :: UserName -> IO (Maybe FilePath)
homedir user = catchMaybeIO $ homeDirectory <$> getUserEntryForName user