diff options
author | Ludovic Courtès <ludo@gnu.org> | 2013-12-10 21:46:59 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2013-12-10 21:46:59 +0100 |
commit | 3141a8bdb35a6df12975d335ee05409fc604ab4c (patch) | |
tree | cbd613bf0557113ca1118f7dd4c7a3557601f663 /gnu/system.scm | |
parent | dfb74e50b790c9d31a1ff1f71f93d5230cc03924 (diff) |
gnu: Honor the operating system's locale and timezone.
* gnu/system.scm (etc-directory): Add 'locale' and 'timezone'
parameters. Set 'LC_ALL', 'TZ', and 'TZDIR' in /etc/profile.
(operating-system-derivation): Adjust call accordingly.
* gnu/system/vm.scm (%demo-operating-system): Change locale to
'en_US.UTF-8'. Add TZDATA to 'packages'.
Diffstat (limited to 'gnu/system.scm')
-rw-r--r-- | gnu/system.scm | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/gnu/system.scm b/gnu/system.scm index 642e4b275c..0516112553 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -85,7 +85,8 @@ guile bash (@ (gnu packages dmd) dmd) - guix))) + guix + tzdata))) (timezone operating-system-timezone) ; string (locale operating-system-locale) ; string @@ -214,6 +215,7 @@ directories or regular files." #:inputs inputs))) (define* (etc-directory #:key + (locale "C") (timezone "Europe/Paris") (accounts '()) (groups '()) (pam-services '()) @@ -238,9 +240,18 @@ GNU dmd (http://www.gnu.org/software/dmd/). You can log in as 'guest' or 'root' with no password. ")) + ;; Assume TZDATA is installed---e.g., as part of the system packages. + ;; Users can choose not to have it. + (tzdir (package-file tzdata "share/zoneinfo")) + ;; TODO: Generate bashrc from packages' search-paths. (bashrc (text-file "bashrc" (string-append " export PS1='\\u@\\h\\$ ' + +export LC_ALL=\"" locale "\" +export TZ=\"" timezone "\" +export TZDIR=\"" tzdir "\" + export PATH=$HOME/.guix-profile/bin:" profile "/bin:" profile "/sbin export CPATH=$HOME/.guix-profile/include:" profile "/include export LIBRARY_PATH=$HOME/.guix-profile/lib:" profile "/lib @@ -297,6 +308,8 @@ alias ll='ls -l' (profile -> (derivation->output-path profile-drv)) (etc-drv (etc-directory #:accounts accounts #:groups groups #:pam-services pam-services + #:locale (operating-system-locale os) + #:timezone (operating-system-timezone os) #:profile profile)) (etc -> (derivation->output-path etc-drv)) (dmd-conf (dmd-configuration-file services etc)) |