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