Накопительный вклад в «прокачку» системы

Dr.AKULAvich

2008-05-21

Часто бывает, найдешь полезный hack-tip, сделаешь все, согласно инструкциям, порадуешься да забудешь. При чистой установке придется опять наращивать былой функционал. Накропал на досуге скрипт, который автоматизирует некоторые операции. В моем примере отключается задержка контекстных меню в GTK и применяются некоторые опции для bash из этой статьи. Также планирую добавить отключение спикерфона (раздражает меня это писк). Реализация скрипта может не совсем удачная, не могу похвастаться умениями в скриптописательстве. С радостью приму ваши пожелания, предложения и критику.
#!/bin/bash
# Скрипт создан для быстрого применения полезных находок на новой системе
# 
# Ускоряем отображение popup меню в GNOME
echo "Желаете установить задержку popup-menu в ноль (y/n)? "
read answer

case "$answer" in
[yY]) 	gtkrc=~/.gtkrc-2.0
	if [ -f "$gtkrc" ] # существует ли файл?
	then
		if [ "`grep "gtk-menu-popup-delay" $gtkrc`" = "" ]
 		then
  			echo "gtk-menu-popup-delay = 0" >> "$gtkrc"
 		else
  			echo "Задержка popup menu уже установлена"
 		fi
	else
		echo "gtk-menu-popup-delay = 0" > "$gtkrc"
	fi
      ;;
*)    echo "Задержка .";;
esac

echo

# Полезные опции при работе с BASH
echo "Желаете применить некоторые улучшения для Bash (y/n)? "
read answer

case "$answer" in
[yY]) 	bashrc=~/.bashrc
	if [ -f "$bashrc" ] # существует ли файл?
	then
		# Делаем общую историю для всех консолей
		if [ "`grep "shopt -s histappend" $bashrc`" = "" ]
		then
			echo "# General history" >> "$bashrc"
			echo "shopt -s histappend" >> "$bashrc"
			echo "PROMPT_COMMAND='history -a'" >> "$bashrc"
		else
			echo "Изменения для .history уже применены"
		fi

		# Включаем исправление мелких ошибок при наборе cd
		if [ "`grep "shopt -s cdspell" $bashrc`" = "" ]
		then
			echo "# check mistakes" >> "$bashrc"
			echo "shopt -s cdspell" >> "$bashrc"
		else
			echo "Эвристическое исправление ошибок директорий уже активировано"
		fi

		# Включаем игнорирование подряд идущих дубликатов команд в истории
		if [ "`grep "export HISTCONTROL="ignoredups"" $bashrc`" = "" ]
		then
			echo "# History duplicates" >> "$bashrc"
			echo "export HISTCONTROL="ignoredups"" >> "$bashrc"
		else
			echo "Игнорирование подряд идущих дубликатов команд в истории уже активировано"
		fi
	fi
      ;;
*)    echo "Изменения настроек Bash отменены.";;
esac

echo
exit 0
Скачать готовый скрипт.