4
das script
Milk.H edited this page 2024-11-25 13:57:29 +01:00
#!/bin/bash
check_and_install() {
PACKAGE_NAME=$1
CHECK_COMMAND=$2
if ! eval "$CHECK_COMMAND" &>/dev/null; then
echo "$PACKAGE_NAME ist nicht installiert, wird installiert..."
sudo apt update && sudo apt install -y $PACKAGE_NAME
else
echo "$PACKAGE_NAME ist schon installiert"
fi
}
check_and_install "git" "command -v git"
check_and_install "emacs" "command -v emacs"
# beispiel von Fonts installieren
check_and_install "fonts-firacode" "fc-list | grep -i 'firacode'"
echo "Konfiguriere Git"
git config --global user.name "milk"
git config --global user.email "milk@milkte.ch"
GIT_REPO="https://got.milkte.ch/milk/emacs-config"
DOOM_CONFIG="$HOME/.config/doom"
EMACS_CONFIG="$HOME/.config/emacs"
echo "Doom emacs Konfiguration checken"
if [ ! -d "$DOOM_CONFIG" ]; then
echo "Konfiguration herunterladen"
git clone $GIT_REPO $DOOM_CONFIG
else
echo "Konfiguration existiert schon, nimm die neuste Version"
cd $DOOM_CONFIG && git pull
fi
# man muss die Konfiguration zuerst herunterladen, damit es einfacher ist, doom emacs erstellt die Default Konfiguration nicht wenn sie schon eine Konfiguration findet
echo "doom emacs installieren"
if [ ! -d "$EMACS_CONFIG" ]; then
git clone --depth 1 https://github.com/doomemacs/doomemacs $EMACS_CONFIG
chmod +x $EMACS_CONFIG/bin/doom
$EMACS_CONFIG/bin/doom install
else
echo "Doom Emacs ist schon installiert"
fi
$EMACS_CONFIG/bin/doom sync