Just a bit of heads up about the recent changes taking place in systemd  ( 195 )  for F18+...

The following sysconfig files are being deprecated /etc/sysconfig/clock, /etc/sysconfig/i18n,/etc/sysconfig/keyboard, /etc/sysconfig/network ( Hostname only )

These changes should be transparent  ( they are migrated to systemd native files ) but various applications might still using the deprecated files so be on the look out and report any bug you come across.

Ofcourse the fastest way to detect such breakage and to have it fixed, along with avoiding users confusion would be simply to delete those files...

So here's the break down...

/etc/sysconfig/clock has been replaced by /etc/localtime

The time zone is now configured by creating an appropriate /etc/localtime symlink to the relevant timezone.

To list available timezone run the following command

# timedatectl list-timezone

To set timezone run the following command ( If you live in Iceland like I do )

# timedatectl set-timezone Atlantic/Reykjavik"

Systemd uses UTC for the hardware clock by default however I recommend people setup and use ntp

To set the system clock directly run

# set-time "2012-10-27 01:02:03"

I highly recommend against setting the hardware clock to localtime but because I know some of you guys are dual booting with windows and to lazy to fix the registry here's how you set the hardware clock to use localtime instead..

# timedatectl set-local-rtc 1

To set configure the clock to use network time protocol start by configuring ntp then enable the service

# systemctl enable ntpd.service

And run

# timedatectl set-ntp 1

And finally to see the current setting run

# timedatectl status

I think I have cover most uses case so see man timedatectl and man localtime to explore it further..

/etc/sysconfig/i18n has been replaced by /etc/locale.conf

LANG + All LC_* variables found in /etc/sysconfig/i18n as in....

LANG=
LC_CTYPE=
LC_NUMERIC=
LC_TIME=
LC_COLLATE=
LC_MONETARY=
LC_MESSAGES=
LC_PAPER=
LC_NAME=
LC_ADDRESS=
LC_TELEPHONE=
LC_MEASUREMENT=
LC_IDENTIFICATION=

belong in /etc/locale.conf

The locale settings configured in here are system-wide and are inherited by every service or user, unless overridden or unset by individual programs or individual users.
See  man locale.conf for further details

/etc/sysconfig/keyboard has been change to /etc/vconsole.conf

The virtual console configuration is /etc/vconsole.conf

NOTE THAT THE VARIABLES BEING USED HAVE CHANGED

SYSFONT= becomes FONT=
SYSFONTACM= becomes FONT_MAP=
UNIMAP= becomes FONT_UNIMAP=
KEYTABLE= becomes KEYMAP=

Kernel keymap and fonts is the default being used if FONT= or KEYMAP= are not set or empty

/etc/sysconfig/network ( hostname only ) to /etc/hostname

There are now three distinguished hostnames in use..

The "pretty" a.k.a the high level one as in "my laptop"
The "static" hostname a.k.a kernel hostname at boot ( the one that got migrated usually <fqdn> of the host>
The "transient" hostname ( temporary network hostname like dhcp-foo )

To set the pretty one run

# hostnamectl set-hostname <name> --pretty

To set the static one run

# hostnamectl set-hostname <name> --static

To set the transient one run

# hostnamectl set-hostname <name> --transient

To set the same hostname for all three run

# hostnamectl set-hostname <fqdn>

To see the hostname settings run

# hostnamectl status

See man hostname and man hostnamectl for further details.

I think that's about it for the most part so keep watching out for those bugs

JBG