summaryrefslogtreecommitdiff
path: root/src/Propellor/Property/Timezone.hs
blob: 96a5e59cb3b3efab81298bf8c14f5bfa37331ccf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
-- | Maintainer: Sean Whitton <spwhitton@spwhitton.name>

module Propellor.Property.Timezone where

import Propellor.Base
import qualified Propellor.Property.Apt as Apt
import qualified Propellor.Property.File as File

-- | A timezone from /usr/share/zoneinfo
type Timezone = String

-- | Sets the system's timezone
configured :: Timezone -> Property DebianLike
configured zone = File.hasContent "/etc/timezone" [zone]
	`onChange` update
	`describe` (zone ++ " timezone configured")
  where
	update = Apt.reConfigure "tzdata" mempty
		-- work around a bug in recent tzdata.  See
		-- https://bugs.launchpad.net/ubuntu/+source/tzdata/+bug/1554806/
		`requires` File.notPresent "/etc/localtime"