install systemd on clam and then reboot
This commit is contained in:
parent
d9af8bac5e
commit
0e1b587442
|
@ -3,18 +3,21 @@ import qualified Property.Apt as Apt
|
||||||
import qualified Property.Ssh as Ssh
|
import qualified Property.Ssh as Ssh
|
||||||
import qualified Property.User as User
|
import qualified Property.User as User
|
||||||
import qualified Property.GitHome as GitHome
|
import qualified Property.GitHome as GitHome
|
||||||
|
import qualified Property.Reboot as Reboot
|
||||||
|
|
||||||
main = defaultMain
|
main = defaultMain
|
||||||
[ Apt.stdSourcesList Apt.Unstable `onChange` Apt.upgrade
|
[ Apt.stdSourcesList Apt.Unstable `onChange` Apt.upgrade
|
||||||
, Apt.installed ["etckeeper"]
|
, Apt.installed ["etckeeper"]
|
||||||
, Apt.installed ["ssh"]
|
, Apt.installed ["ssh"]
|
||||||
, Apt.installed ["git", "myrepos"]
|
, Apt.installed ["git", "myrepos"]
|
||||||
, GitHome.installed "root"
|
, GitHome.installedFor "root"
|
||||||
, check (Ssh.hasAuthorizedKeys "root") $
|
, check (Ssh.hasAuthorizedKeys "root") $
|
||||||
Ssh.passwordAuthentication False
|
Ssh.passwordAuthentication False
|
||||||
, User.nonsystem "joey"
|
, User.nonsystem "joey"
|
||||||
|
, Apt.installed ["sudo"]
|
||||||
, fileHasContent "/etc/sudoers" ["joey ALL=(ALL:ALL) ALL"]
|
, fileHasContent "/etc/sudoers" ["joey ALL=(ALL:ALL) ALL"]
|
||||||
, GitHome.installed "joey"
|
, GitHome.installedFor "joey"
|
||||||
, Apt.removed ["exim4"] `onChange` Apt.autoRemove
|
, Apt.removed ["exim4"] `onChange` Apt.autoRemove
|
||||||
, Apt.installed ["tor"]
|
, Apt.installed ["tor"]
|
||||||
|
, Apt.installed ["systemd-sysv"] `onChange` Reboot.scheduled "+10"
|
||||||
]
|
]
|
||||||
|
|
|
@ -13,8 +13,8 @@ import Utility.Monad
|
||||||
import Utility.Exception
|
import Utility.Exception
|
||||||
|
|
||||||
{- Clones Joey Hess's git home directory, and runs its fixups script. -}
|
{- Clones Joey Hess's git home directory, and runs its fixups script. -}
|
||||||
installed :: UserName -> Property
|
installedFor :: UserName -> Property
|
||||||
installed user = check (not <$> hasGitDir user) $
|
installedFor user = check (not <$> hasGitDir user) $
|
||||||
IOProperty ("githome " ++ user) (go =<< homedir user)
|
IOProperty ("githome " ++ user) (go =<< homedir user)
|
||||||
where
|
where
|
||||||
go Nothing = noChange
|
go Nothing = noChange
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
module Property.Reboot where
|
||||||
|
|
||||||
|
import Property
|
||||||
|
import Utility.SafeCommand
|
||||||
|
|
||||||
|
{- Use eg, "+5" to reboot in 5 minutes. -}
|
||||||
|
scheduled :: String -> Property
|
||||||
|
scheduled rebootwhen = cmdProperty "shutdown" [ Param "-r", Param rebootwhen ]
|
Loading…
Reference in New Issue