]> gitweb.morketsmerke.org Git - immudex-testing.git/commitdiff
Testy nowego narzędzia - immudex_addons
authorxf0r3m <jakubstasinski@protonmail.com>
Fri, 23 Jun 2023 08:15:23 +0000 (10:15 +0200)
committerxf0r3m <jakubstasinski@protonmail.com>
Fri, 23 Jun 2023 08:15:23 +0000 (10:15 +0200)
addons/iwlwifi
addons/lampstack [new file with mode: 0644]
addons/ncspot
tools/101/immudex_addons [new file with mode: 0755]

index 93ad51040ad184a718fe4829be247bb380748bc2..cfb411e7b1a977a2ab04fe2c1b4af6ca56d6d145 100644 (file)
@@ -1,9 +1,14 @@
 #!/bin/bash
 
-dhclient;
-
+if [ "$1" ]; then
+  case $1 in
+    "install") echo "Installation $(basename $0) addon...";
+                if [ ! -d /usr/share/immudex_addons ]; then
+                  mkdir /usr/share/immudex_addons;
+                fi
+                cat >> $(basename $0)_installer << EOF
 if [ ! -d /boot ]; then
-       mkdir /boot;
+  mkdir /boot;
        apt purge linux-image* --purge -y;
        apt install linux-image-amd64;
 fi
@@ -21,5 +26,28 @@ apt-get autoclean;
 apt-get autoremove;
 apt-get clean;
 apt-get clean;
-
-
+EOF
+                bash $(basename $0)_installer;
+                if [ $? -eq 0 ]; then
+                  rm $(basename $0)_installer;
+                  echo $(basename $0) | tee -a /usr/share/immudex_addons/installed_addons;
+                  echo "Installation $(basename $0) addon...[ OK ]";
+                fi;;
+    "remove") echo "Removing $(basename $0) addon...";
+                cat >> $(basename $0)_uninstaller << EOF
+apt remove firmware-iwlwifi;
+apt-get autoclean;
+apt-get autoremove;
+apt-get clean;
+EOF
+                bash $(basename $0)_uninstaller;
+                if [ $? -eq 0 ]; then
+                  rm $(basename $0)_uninstaller;
+                  sed -i "s/$(basename $0)//g" /usr/share/immudex_addons/installed_addons;
+                  echo "Removing $(basename $0) addon...[ OK ]";
+                fi;;
+  esac
+else
+  echo "Internal error: action must be given.";
+  exit 1;
+fi
diff --git a/addons/lampstack b/addons/lampstack
new file mode 100644 (file)
index 0000000..7e3b7d5
--- /dev/null
@@ -0,0 +1,60 @@
+#!/bin/bash
+
+if [ "$1" ]; then
+  case $1 in
+    "install") echo "Installation $(basename $0) addon...";
+                if [ ! -d /usr/share/immudex_addons ]; then
+                  mkdir /usr/share/immudex_addons;
+                fi
+                cat >> $(basename $0)_installer << EOF
+baseVersion=\$(head -1 /etc/apt/sources.list | awk '{print \$3}')
+
+wget https://dev.mysql.com/get/mysql-apt-config_0.8.25-1_all.deb;
+dpkg -i mysql-apt-config_0.8.25-1_all.deb;
+
+sed -i "s/\$baseVersion/bullseye/g" /etc/apt/sources.list;
+
+apt update;
+apt install mysql-server -y
+apt-mark hold libmecab2 libssl1.1 mecab-ipadic mecab-ipadic-utf8 mecab-utils mysql-client mysql-common mysql-community-client mysql-community-client-core mysql-community-client-plugins mysql-community-server mysql-community-server-core
+
+sed -i "s/bullseye/\$baseVersion/g" /etc/apt/sources.list; 
+apt update
+apt install apache2 libapache2-mod-php php php-mysql -y;
+
+apt autoremove;
+apt autoclean;
+apt clean;
+apt clean;
+
+rm mysql-apt-config_0.8.25-1_all.deb;
+EOF
+                bash $(basename $0)_installer;
+                if [ $? -eq 0 ]; then
+                  rm $(basename $0)_installer;
+                  echo $(basename $0) | tee -a /usr/share/immudex_addons/installed_addons;
+                  echo "Installation $(basename $0) addon...[ OK ]";
+                fi;;
+    "remove") echo "Removing $(basename $0) addon...";
+                cat >> $(basename $0)_uninstaller << EOF
+apt-mark unhold libmecab2 libssl1.1 mecab-ipadic mecab-ipadic-utf8 mecab-utils mysql-client mysql-common mysql-community-client mysql-community-client-core mysql-community-client-plugins mysql-community-server mysql-community-server-core
+
+apt-get remove libssl1.1  mysql-client mysql-common mysql-community-client mysql-community-client-core mysql-community-client-plugins mysql-community-server mysql-community-server-core apache2 libapache2-mod-php php php-mysql mysql-apt-config
+
+apt-get upgrade libmecab2 mecab-utils mecab-ipadic mecab-ipadic-utf8;
+
+apt-get autoclean
+apt-get autoremove
+apt-get clean
+EOF
+                bash $(basename $0)_uninstaller;
+                if [ $? -eq 0 ]; then
+                  rm $(basename $0)_uninstaller;
+                  sed -i "s/$(basename $0)//g" /usr/share/immudex_addons/installed_addons;
+                  echo "Removing $(basename $0) addon...[ OK ]";
+                fi;;
+  esac
+else
+  echo "Internal error: action must be given.";
+  exit 1;
+fi
index e0d357a69bb6529df5f08ae8866aa178581d67f2..b1ce054df1f9aca643b50a680427d0843ce88091 100644 (file)
@@ -1,7 +1,37 @@
 #!/bin/bash
 
-dhclient;
+if [ "$1" ]; then
+  case $1 in
+    "install") echo "Installation $(basename $0) addon...";
+                if [ ! -d /usr/share/immudex_addons ]; then
+                  mkdir /usr/share/immudex_addons;
+                fi
+                cat >> $(basename $0)_installer << EOF
 apt update;
-sudo apt install -y libdbus-1-dev libncursesw5-dev libpulse-dev libssl-dev libxcb1-dev libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev
+apt install -y libdbus-1-dev libncursesw5-dev libpulse-dev libssl-dev libxcb1-dev libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev
 wget https://ftp.morketsmerke.org/immudex/testing/addons/ncspot-bin-0.13.1.tar.gz -O /tmp/ncspot-bin-0.13.1.tar.gz;
 tar -xzvf /tmp/ncspot-bin-0.13.1.tar.gz -C /usr/local/bin;
+rm /tmp/ncspot-bin-0.13.1.tar.gz;
+EOF
+                bash $(basename $0)_installer;
+                if [ $? -eq 0 ]; then
+                  rm $(basename $0)_installer;
+                  echo $(basename $0) | tee -a /usr/share/immudex_addons/installed_addons;
+                  echo "Installation $(basename $0) addon...[ OK ]";
+                fi;;
+    "remove") echo "Removing $(basename $0) addon...";
+                cat >> $(basename $0)_uninstaller << EOF
+apt remove -y libdbus-1-dev libncursesw5-dev libpulse-dev libssl-dev libxcb1-dev libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev;
+rm /usr/local/bin/ncspot;
+EOF
+                bash $(basename $0)_uninstaller;
+                if [ $? -eq 0 ]; then
+                  rm $(basename $0)_uninstaller;
+                  sed -i "s/$(basename $0)//g" /usr/share/immudex_addons/installed_addons;
+                  echo "Removing $(basename $0) addon...[ OK ]";
+                fi;;
+  esac
+else
+  echo "Internal error: action must be given.";
+  exit 1;
+fi
diff --git a/tools/101/immudex_addons b/tools/101/immudex_addons
new file mode 100755 (executable)
index 0000000..bd56ea3
--- /dev/null
@@ -0,0 +1,34 @@
+#!/bin/bash
+
+if [ ! "$immudexAddonsPath" ]; then 
+  immudexAddonsPath=$(sudo find / -ipath '*immudex-testing/addons' -print | head -1);
+  if [ ! "$immudexAddonsPath" ]; then
+    if [ ! -x /usr/bin/git ]; then apt-get install git; fi
+    cd; 
+    git clone https://github.com/xf0r3m/immudex-testing.git;
+    immudexAddonsPath="${HOME}/immudex-testing/addons";
+  fi
+fi
+
+installedAddonsFile="/usr/share/immudex_addons/installed_addons"; 
+
+listAddons=$(ls $immudexAddonsPath);
+if [ -f $installedAddonsFile ]; then
+  for installed in $(cat $installedAddonsFile | awk '{printf $1" "}'); do
+    listAddons2=$(echo $listAddons | sed "s/$installed/${installed}\[installed\]/g")
+    listAddons=$listAddons2;
+  done 
+fi 
+
+export PS3="immudex_addons> ";
+select addon in $listAddons; do
+  if [ ! "$addon" ]; then break;
+  else
+    if echo $addon | grep -q 'installed'; then
+      addon=$(echo $addon | sed 's/\[installed\]//');
+      bash ${immudexAddonsPath}/${addon} remove;
+    else
+      bash ${immudexAddonsPath}/${addon} install;
+    fi 
+  fi
+done