Improve keyboard config generation
This commit is contained in:
parent
6f0c4d6360
commit
cd42e11d81
17
install.sh
17
install.sh
@ -235,14 +235,13 @@ set_locale() {
|
|||||||
echo "done"
|
echo "done"
|
||||||
|
|
||||||
echo -n "Setting keyboard layout..."
|
echo -n "Setting keyboard layout..."
|
||||||
echo "KEYMAP=\"$KBD_LAYOUT\"" > /mnt/etc/vconsole.conf
|
|
||||||
|
|
||||||
XKBD="$(awk -F, '$1 ~ /^'$KBD_LAYOUT'$/ {print $0; exit 0}' keyboard-map.csv)"
|
IFS=, read -r dummy XKBD_LAYOUT XKBD_MODEL XKBD_VARIANT XKBD_OPTIONS <<< "$(grep "^$KBD_LAYOUT," -m1 keyboard-map.csv)"
|
||||||
XKBD_LAYOUT="$(echo $XKBD | awk -F, '{print $2}')"
|
|
||||||
XKBD_MODEL="$(echo $XKBD | awk -F, '{print $3}')"
|
echo "KEYMAP=$KBD_LAYOUT" > /mnt/etc/vconsole.conf
|
||||||
XKBD_VARIANT="$(echo $XKBD | awk -F, '{print $4}')"
|
|
||||||
XKBD_OPTIONS="$(echo $XKBD | awk -F, '{print $5}')"
|
|
||||||
echo "keymap=\"$XKBD_LAYOUT\"" > /mnt/etc/conf.d/keymaps
|
echo "keymap=\"$XKBD_LAYOUT\"" > /mnt/etc/conf.d/keymaps
|
||||||
|
|
||||||
local XKBD_CONF="/mnt/etc/X11/xorg.conf.d/00-keyboard.conf"
|
local XKBD_CONF="/mnt/etc/X11/xorg.conf.d/00-keyboard.conf"
|
||||||
mkdir -p $(dirname $XKBD_CONF)
|
mkdir -p $(dirname $XKBD_CONF)
|
||||||
echo "Section \"InputClass\"" > $XKBD_CONF
|
echo "Section \"InputClass\"" > $XKBD_CONF
|
||||||
@ -250,9 +249,11 @@ set_locale() {
|
|||||||
echo " MatchIsKeyboard \"on\"" >> $XKBD_CONF
|
echo " MatchIsKeyboard \"on\"" >> $XKBD_CONF
|
||||||
echo " Option \"XkbLayout\" \"$XKBD_LAYOUT\"" >> $XKBD_CONF
|
echo " Option \"XkbLayout\" \"$XKBD_LAYOUT\"" >> $XKBD_CONF
|
||||||
echo " Option \"XkbModel\" \"$XKBD_MODEL\"" >> $XKBD_CONF
|
echo " Option \"XkbModel\" \"$XKBD_MODEL\"" >> $XKBD_CONF
|
||||||
[ -n $XKBD_VARIANT ] && echo " Option \"XkbVariant\" \"$XKBD_VARIANT\"" >> $XKBD_CONF
|
[ -n "$XKBD_VARIANT" ] && echo " Option \"XkbVariant\" \"$XKBD_VARIANT\"" >> $XKBD_CONF
|
||||||
[ -n $XKBD_OPTIONS ] && echo " Option \"XkbOptions\" \"$XKBD_OPTIONS\"" >> $XKBD_CONF
|
[ -n "$XKBD_OPTIONS" ] && echo " Option \"XkbOptions\" \"$XKBD_OPTIONS\"" >> $XKBD_CONF
|
||||||
echo "EndSection" >> $XKBD_CONF
|
echo "EndSection" >> $XKBD_CONF
|
||||||
|
|
||||||
|
[ "$INIT_SYS" = "openrc-init" ] && quiet right_chroot /mnt rc-update add keymaps boot
|
||||||
echo "done"
|
echo "done"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -183,6 +183,7 @@ print_phase() {
|
|||||||
|
|
||||||
install_aur() {
|
install_aur() {
|
||||||
qpushd "$AUR_BUILD_DIR"
|
qpushd "$AUR_BUILD_DIR"
|
||||||
|
[ -e "$1" ] && qpopd && return 0
|
||||||
quiet sudo -u nobody git clone -q "https://aur.archlinux.org/$1.git" "$1"
|
quiet sudo -u nobody git clone -q "https://aur.archlinux.org/$1.git" "$1"
|
||||||
qpushd "$1"
|
qpushd "$1"
|
||||||
|
|
||||||
@ -238,8 +239,14 @@ install_try_aur() {
|
|||||||
fi
|
fi
|
||||||
set +e
|
set +e
|
||||||
ultra_quiet pacman -Sq --needed --noconfirm $1
|
ultra_quiet pacman -Sq --needed --noconfirm $1
|
||||||
[ $? -ne 0 ] && set -e && echo "not found: will try from AUR" && install_aur $1
|
if [ $? -ne 0 ]; then
|
||||||
set -e
|
set -e
|
||||||
|
echo "not found: will try from AUR"
|
||||||
|
install_aur $1
|
||||||
|
else
|
||||||
|
set -e
|
||||||
|
echo "done"
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
prompt() {
|
prompt() {
|
||||||
@ -457,7 +464,7 @@ install_dash() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
repos() {
|
repos() {
|
||||||
echo "Detected distro $DISTRO Linux. Proceeding with enabling more repositories."
|
echo "Detected distro $DISTRO Linux. Proceeding with enabling more repositories"
|
||||||
if [ "$DISTRO" = "artix" ]; then
|
if [ "$DISTRO" = "artix" ]; then
|
||||||
pacman_repo lib32
|
pacman_repo lib32
|
||||||
local ARCH_REPOS="$DEFAULT_INCLUDE-arch"
|
local ARCH_REPOS="$DEFAULT_INCLUDE-arch"
|
||||||
@ -509,7 +516,6 @@ install_dotfiles() {
|
|||||||
[ "$INSTAL" = "PACKAGES" ] && return 0
|
[ "$INSTAL" = "PACKAGES" ] && return 0
|
||||||
|
|
||||||
print_phase "Dotfile installation"
|
print_phase "Dotfile installation"
|
||||||
install git
|
|
||||||
|
|
||||||
qpushd "$HOME_DIR"
|
qpushd "$HOME_DIR"
|
||||||
install_dotfiles_for "$INSTALL_USER"
|
install_dotfiles_for "$INSTALL_USER"
|
||||||
@ -527,6 +533,7 @@ install_dotfiles() {
|
|||||||
install_src() {
|
install_src() {
|
||||||
# source code is stored in /root/builds
|
# source code is stored in /root/builds
|
||||||
qpushd "$HOME"
|
qpushd "$HOME"
|
||||||
|
[ -e "$1" ] && qpopd && return 0
|
||||||
local PKG_NAME="$(basename "$1")"
|
local PKG_NAME="$(basename "$1")"
|
||||||
if [ -z "$2" ]; then
|
if [ -z "$2" ]; then
|
||||||
echo -ne "Installing ${LGREEN}$PKG_NAME${NC} from source..."
|
echo -ne "Installing ${LGREEN}$PKG_NAME${NC} from source..."
|
||||||
@ -571,8 +578,8 @@ install_packages() {
|
|||||||
|
|
||||||
change_shells() {
|
change_shells() {
|
||||||
echo -n "Configuring zsh..."
|
echo -n "Configuring zsh..."
|
||||||
chsh -s /bin/zsh "root"
|
quiet chsh -s /bin/zsh "root"
|
||||||
chsh -s /bin/zsh "$INSTALL_USER"
|
quiet chsh -s /bin/zsh "$INSTALL_USER"
|
||||||
sed 's/^export PROMPT=.*/export PROMPT='"'"'%B%F{166}[%F{172}%n@%m %F{white}%~%F{166}]$%b%f '"'"'/' < "$HOME/.zshrc" > /tmp/zshrc
|
sed 's/^export PROMPT=.*/export PROMPT='"'"'%B%F{166}[%F{172}%n@%m %F{white}%~%F{166}]$%b%f '"'"'/' < "$HOME/.zshrc" > /tmp/zshrc
|
||||||
mv /tmp/zshrc "$HOME/.zshrc"
|
mv /tmp/zshrc "$HOME/.zshrc"
|
||||||
echo "done"
|
echo "done"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user