diff options
Diffstat (limited to 'Property/User.hs')
| -rw-r--r-- | Property/User.hs | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/Property/User.hs b/Property/User.hs index 733e26ea..8903a9e7 100644 --- a/Property/User.hs +++ b/Property/User.hs @@ -6,12 +6,13 @@ import Common type UserName = String -nonsystem :: UserName -> Property -nonsystem user = check (isNothing <$> homedir user) $ cmdProperty "adduser" +sshAccountFor :: UserName -> Property +sshAccountFor user = check (isNothing <$> homedir user) $ cmdProperty "adduser" [ Param "--disabled-password" , Param "--gecos", Param "" , Param user ] + `describe` ("ssh account " ++ user) {- Removes user home directory!! Use with caution. -} nuked :: UserName -> Property @@ -19,12 +20,14 @@ nuked user = check (isJust <$> homedir user) $ cmdProperty "userdel" [ Param "-r" , Param user ] + `describe` ("nuked user " ++ user) lockedPassword :: UserName -> Property lockedPassword user = check (not <$> isLockedPassword user) $ cmdProperty "passwd" [ Param "--lock" , Param user ] + `describe` ("locked " ++ user ++ " password") isLockedPassword :: UserName -> IO Bool isLockedPassword user = parse . words <$> readProcess "passwd" ["-S", user] |
