Date: Monday, August 27, 2012 @ 16:15:48
Author: tomegun
Revision: 165634
upgpkg: filesystem 2012.8-1
move archrlinux(7) and locale.sh from initscripts
(the previous commit to initscripts should have read "kill archlinux and
locale.sh")
locale.sh: add support for user-specific locale.conf
We use the first configuration file we find out of:
* $XDG_CONFIG_HOME/locale.conf
* /etc/locale.conf
* /etc/rc.conf
All subsequent config files are ignored. E.g., an emtpy /etc/locale.conf
means that LOCALE from rc.conf is ignored.
Note that currently $XDG_CONFIG_HOME is unlikely to be set when
locale.sh is sourced, so it will not have any effect. In the future this
might change, so we kept it in.
This will easily allow users to set one locale to be used for
daemons/boot and a separate one to be used for users consoles etc.
This eliminates the need for DAEMON_LOCALE, so remove that
functionality. A post-install note will be added.
The constraints that led to this suggestion:
1) The default locale should work even if locale-gen has not been run,
i.e., it should be "C".
2) It is common to want the system locale to be "English", which a
priori "C" satisfies. However, "C" is not UTF-8, which causes issues
when the user locale is in UTF-8 (as it is the system locale that
configures the console mode).
3) Users might (and often do) want a different locale than what is used
system-wide. Moreover, different users might want different locales.
Added:
filesystem/trunk/archlinux.7.txt
filesystem/trunk/locale.sh
Modified:
filesystem/trunk/PKGBUILD
-----------------+
PKGBUILD | 20 +++++++++++--
archlinux.7.txt | 81 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
locale.sh | 28 ++++++++++++++++++
3 files changed, 126 insertions(+), 3 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2012-08-27 20:05:16 UTC (rev 165633)
+++ PKGBUILD 2012-08-27 20:15:48 UTC (rev 165634)
@@ -2,7 +2,7 @@
# Maintainer: Tom Gundersen <[email protected]>
pkgname=filesystem
-pkgver=2012.7
+pkgver=2012.8
pkgrel=1
pkgdesc='Base filesystem'
arch=('any')
@@ -10,14 +10,21 @@
url='http://www.archlinux.org'
groups=('base')
install='filesystem.install'
+makedepends=('asciidoc')
depends=('iana-etc' 'bash' 'coreutils')
backup=('etc/fstab' 'etc/crypttab' 'etc/group' 'etc/hosts' 'etc/ld.so.conf'
'etc/passwd'
'etc/shadow' 'etc/gshadow' 'etc/resolv.conf' 'etc/motd'
'etc/nsswitch.conf'
'etc/shells' 'etc/host.conf' 'etc/securetty' 'etc/profile' 'etc/issue')
source=('group' 'issue' 'nsswitch.conf' 'securetty' 'host.conf' 'ld.so.conf'
'passwd' 'shadow' 'fstab' 'crypttab' 'hosts' 'motd' 'os-release'
'resolv.conf'
- 'shells' 'gshadow' 'profile' 'modprobe.d.usb-load-ehci-first')
+ 'shells' 'gshadow' 'profile' 'modprobe.d.usb-load-ehci-first'
'archlinux.7.txt'
+ 'locale.sh')
+build() {
+ cd ${srcdir}
+ a2x -d manpage -f manpage archlinux.7.txt
+}
+
package() {
cd ${pkgdir}
@@ -45,6 +52,7 @@
done
touch etc/arch-release
install -D -m644 ${srcdir}/modprobe.d.usb-load-ehci-first
usr/lib/modprobe.d/usb-load-ehci-first.conf
+ install -m755 ${srcdir}/locale.sh etc/profile.d/locale.sh
# setup /var
for d in cache/man local opt log/old lib/misc empty; do
@@ -67,6 +75,10 @@
install -d -m755 usr/share/man/man${d}
done
+ #
+ # install archlinux(7) manpage
+ #
+ install -D -m644 ${srcdir}/archlinux.7 usr/share/man/man7/archlinux.7
#
# setup /usr/local hierarchy
@@ -93,4 +105,6 @@
'22518e922891f9359f971f4f5b4e793c'
'f95416882cef800edef08382a1176b7d'
'f3b6ae7db8adffaaa4bffc6099dcbd50'
- 'a8a962370cd0128465d514e6a1f74130')
+ 'a8a962370cd0128465d514e6a1f74130'
+ '3b6d203a3808943a47fb19498816537f'
+ '3807d07215d9116331fe1cf8feeaa0f8')
Added: archlinux.7.txt
===================================================================
--- archlinux.7.txt (rev 0)
+++ archlinux.7.txt 2012-08-27 20:15:48 UTC (rev 165634)
@@ -0,0 +1,81 @@
+/////
+vim:set ts=4 sw=4 syntax=asciidoc noet:
+/////
+archlinux(7)
+============
+
+NAME
+----
+archlinux - basic configuration
+
+SYNOPSIS
+--------
+Overview of the basic configuration of Arch Linux.
+
+DESCRIPTION
+-----------
+Arch Linux exposes the user to the system without hiding any details. This
manpage gives a
+brief overview of the configuration files that should be set up on a fresh
install.
+
+INITSCRIPTS[[I]]
+----------------
+The initscripts are configured in rc.conf. Here you configure what daemons to
start on boot, what storage
+technologies should be enabled and, optionally, a basic network setup.
+
+HOSTNAME[[H]]
+-------------
+The hostname of the machine should be set in /etc/hostname. Additionally,
either /etc/hosts should be
+configured accordingly, or nss-myhostname should be used. This is needed so
the hostname can always
+be resolved to the current machine, which is required by some programs.
+
+LOCALIZATION[[L]]
+-----------------
+Various locales may be enabled in /etc/locale.gen, and generated by
locale-gen. The system-wide locale to be used
+can be configured in /etc/locale.conf. These settings can be overridden on a
par-user basis by keeping a
+user-spcefic locale.conf in $HOME/.config/locale.conf. The user-specific file
will take precedence if it exists.
+
+VIRTUAL CONSOLE[[V]]
+--------------------
+The virtual console is configured in /etc/vconsole.conf. It allows you to set
a font and a keyboard layout, among
+other things. Note that these settings only apply to the console, and not if
you use X.
+
+TIME[[T]]
+---------
+The local timezone is configured by *symlinking* /etc/localtime to the correct
zoneinfo file under
+/usr/share/zoneinfo/. E.g.,
+
+ /etc/localtime -> /usr/share/zoneinfo/Europe/Paris
+
+The real-time clock, which keeps track of time when the computer is off, can
be configured to either
+be in UTC or in localtime in /etc/adjtime. The default is UTC.
+
+FILESYSTEMS[[F]]
+----------------
+Filesystems are configured in /etc/fstab, and encryption mappings are
configured in /etc/crypttab.
+
+INITRAMFS[[R]]
+--------------
+The initramfs is generated by mkinitcpio, and can be configured in
/etc/mkinitcpio.conf.
+
+PACKAGE MANAGER[[P]]
+--------------------
+The package manager, pacman, is configured in /etc/pacman.conf.
+
+BOOTLOADER[[B]]
+---------------
+GRUB's configuration is generated from /etc/default/grub by grub-mkconfig.
Syslinux is configured in /boot/syslinux/syslinux.cfg
+
+MODULES[[M]]
+------------
+Most modules should be loaded on-demand. Modules to be unconditionally loaded
at boot can be specified in /etc/modules-load.d/,
+and modules to be blacklisted from auto-loading can be configured in
/etc/modprobe.d/.
+
+SEE ALSO
+--------
+
+rc.conf(5), hostname(5), hosts(5), nsswitch.conf(5), locale.conf(5),
vconsole.conf(5), timezone(3), hwclock(8), fstab(5), crypttab(5),
+mkinitcpio(8), pacman(8), pacman.conf(5), grub-mkconfig(8), syslinux(1),
modules-load.d(5), modprobe.d(5)
+
+AUTHORS
+-------
+Written by Tom Gundersen.
Added: locale.sh
===================================================================
--- locale.sh (rev 0)
+++ locale.sh 2012-08-27 20:15:48 UTC (rev 165634)
@@ -0,0 +1,28 @@
+#!/bin/sh
+
+unset 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
+
+if [ -n "$XDG_CONFIG_HOME" ] && [ -r "$XDG_CONFIG_HOME/locale.conf" ]; then
+ . "$XDG_CONFIG_HOME/locale.conf"
+elif [ -n $HOME ] && [ -r $HOME/.config/locale.conf ]; then
+ . "$HOME/.config/locale.conf"
+elif [ -r /etc/locale.conf ]; then
+ . /etc/locale.conf
+elif [ -r /etc/rc.conf ]; then
+ LANG=$(. /etc/rc.conf 2>/dev/null; echo "$LOCALE")
+fi
+
+export LANG="${LANG:-C}"
+[ -n "$LC_CTYPE" ] && export LC_CTYPE
+[ -n "$LC_NUMERIC" ] && export LC_NUMERIC
+[ -n "$LC_TIME" ] && export LC_TIME
+[ -n "$LC_COLLATE" ] && export LC_COLLATE
+[ -n "$LC_MONETARY" ] && export LC_MONETARY
+[ -n "$LC_MESSAGES" ] && export LC_MESSAGES
+[ -n "$LC_PAPER" ] && export LC_PAPER
+[ -n "$LC_NAME" ] && export LC_NAME
+[ -n "$LC_ADDRESS" ] && export LC_ADDRESS
+[ -n "$LC_TELEPHONE" ] && export LC_TELEPHONE
+[ -n "$LC_MEASUREMENT" ] && export LC_MEASUREMENT
+[ -n "$LC_IDENTIFICATION" ] && export LC_IDENTIFICATION