ambevar-dotfiles/.scripts/homeinit

122 lines
3.8 KiB
Bash
Executable File

#!/bin/sh
################################################################################
## Home session initialization.
## 2013-06-14
################################################################################
SOURCEDIR="$HOME/personal/dataperso"
[ -z "$XDG_CONFIG_HOME" ] && XDG_CONFIG_HOME="$HOME/.config"
[ -z "$XDG_DATA_HOME" ] && XDG_DATA_HOME="$HOME/.local/share"
[ -z "$XDG_DATA_DIRS" ] && XDG_DATA_DIRS="/usr/local/share"
## Temp folder
echo "==> 'temp' folder"
mkdir -p "$HOME/temp"
echo
## Advanced keymaps. They need to be in X11 shared dir to be loaded.
installkeymap ()
{
if [ -f "$HOME/.xkb/symbols/$1" ] && ( [ ! -f "/usr/share/X11/xkb/symbols/$1" ] || \
[ ! "$(sha1sum "$HOME/.xkb/symbols/$1" | cut -f1 -d' ')" = "$(sha1sum /usr/share/X11/xkb/symbols/$1 | cut -f1 -d ' ')" ] ); then
echo "==> '$1' keymap (press Ctrl-D to skip)"
sudo sh -c "install -m644 $HOME/.xkb/symbols/$1 /usr/share/X11/xkb/symbols/"
echo
fi
}
installkeymap frex
installkeymap usex
if [ -d "$SOURCEDIR/contacts" ]; then
echo "==> Abook"
ln -snf "$SOURCEDIR/contacts" "$HOME/.abook"
echo
fi
if command -v mutt >/dev/null 2>&1; then
echo "==> Mutt"
[ -d "$SOURCEDIR" ] && ln -snf "$SOURCEDIR/mails" "$HOME/.mutt.d"
mkdir -p "$HOME/.cache/mutt/hcache"
echo
fi
if [ -d "$SOURCEDIR/todo" ]; then
echo "==> To-Do"
ln -snf "$SOURCEDIR/todo/todo.org" "$HOME/todo.org"
echo
fi
if command -v rtorrent >/dev/null 2>&1; then
echo "==> rtorrent"
## We need the evaluation of the result, otherwise the variables will not
## get expanded, should it be '~' or "$HOME".
mkdir -p "$(eval echo $(awk -F'=' '/^session *= */{gsub(/^ +| +$/,"",$2); res=$2} END {printf res}' ~/.rtorrent.rc))"
echo
fi
## Luakit -- Install the adblock modules
if command -v luakit >/dev/null 2>&1; then
echo "==> Luakit"
git clone https://github.com/Plaque-fcc/luakit-adblock/ "$HOME/luakit-adblock"
cp -fv ~/luakit-adblock/*.lua "$XDG_CONFIG_HOME/luakit"
rm -rvf "$HOME/luakit-adblock"
## Update the adblock lists
mkdir -p "$XDG_DATA_HOME/luakit/adblock"
wget https://easylist-downloads.adblockplus.org/easylist.txt \
https://easylist-downloads.adblockplus.org/easyprivacy.txt \
https://easylist-downloads.adblockplus.org/easylistgermany.txt \
http://lian.info.tm/liste_fr.txt \
-P "$XDG_DATA_HOME/luakit/adblock"
echo
fi
## dwb -- Install extensions.
if command -v dwb >/dev/null 2>&1 && [ ! -f "$XDG_DATA_HOME/dwb/extensions/adblock_subscriptions" ] ; then
echo "==> dwb"
dwbem -Ni adblock_subscriptions
dwbem -Ni navtools
dwbem -Ni contenthandler
# dwbem -Ni youtube_html5
echo
fi
## Bookmarks
if [ -d "$SOURCEDIR" ]; then
echo "==> Bookmarks"
if [ -z "$BROWSER" ]; then
echo "Variable BROWSER is not set."
else
BROWSER_DATA_DIR="$XDG_DATA_HOME/$BROWSER/"
[ "$BROWSER" = "dwb" ] && BROWSER_DATA_DIR="$XDG_CONFIG_HOME/$BROWSER/default/"
[ -d "$SOURCEDIR" ] && ln -sf "$SOURCEDIR/bookmarks/bookmarks" "$BROWSER_DATA_DIR"
[ -d "$SOURCEDIR" ] && ln -sf "$SOURCEDIR/bookmarks/quickmarks" "$BROWSER_DATA_DIR"
[ -d "$SOURCEDIR" ] && ln -sf "$SOURCEDIR/bookmarks/cookies.allow" "$BROWSER_DATA_DIR"
fi
echo
fi
## News
if command -v newsbeuter >/dev/null 2>&1; then
echo "==> Newsbeuter"
mkdir -p "$XDG_DATA_HOME/newsbeuter"
[ -d "$SOURCEDIR" ] && ln -sf "$SOURCEDIR/news/urls" "$XDG_CONFIG_HOME/newsbeuter/"
[ -d "$SOURCEDIR" ] && ln -sf "$SOURCEDIR/news/news_starred" "$XDG_CONFIG_HOME/newsbeuter/"
echo
fi
## Launchers
if [ -d "$SOURCEDIR" ]; then
echo "==> Launchers"
ln -snf "$SOURCEDIR/launchers" "$HOME/.launchers"
echo
fi
## Temp scripts
if [ -d "$SOURCEDIR" ]; then
echo "==> Hackpool"
ln -snf "$SOURCEDIR/hackpool" "$HOME/.hackpool"
echo
fi