+++ /dev/null
-#!/bin/bash
-
-GREEN="\e[32m";
-ENDCOLOR="\e[0m";
-
-set -e
-
-echo "-== Starting immudex_build: $(date) ==-" >> immudex_build.log;
-
-function help() {
- echo "-== Help printed: $(date) ==-" >> immudex_build.log;
- echo "immudex_build - script for building immudex LiveCD.";
- echo "morketsmerke.net @ 2022";
- echo "Options:";
- echo " --update --<amd64/i386> - scripts doing only three activities, which";
- echo " commonly used when upgrading LiveCD image";
- echo "Usage:";
- echo " ./immudex_build [--update] --<amd64/i386>";
-}
-
-function create_enviroment() {
- echo -n "Installation of packages needed to build immudex...";
- sudo apt update >> ~/immudex_build.log 2>&1;
- sudo apt install -y debootstrap squashfs-tools xorriso isolinux syslinux-efi grub-pc-bin grub-efi-amd64-bin mtools dosfstools >> immudex_build.log 2>&1;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-}
-
-#Under this condition i put three activities, which are taking
-#place after updates in chroot environment.
-if [ "$1" ] && [ "$1" = "--update" ]; then
- if [ "$2" ] && [ "$2" = "--amd64" ]; then arch="64";
- elif [ "$2" ] && [ "$2" = "--i386" ]; then arch="32";
- else help; exit 1;
- fi
-
- if [ ! -f /sbin/debootstrap ]; then
- create_enviroment
- fi
-
- #Purging staging/live catalog:
- echo -n "Purging staging/live catalog...";
- sudo rm -vf ~/immudex-testing/${arch}/staging/live/* >> ~/immudex_build.log 2>&1;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
- #Removing old iso files:
- echo -n "Removing old iso image...";
- sudo rm -vf ~/immudex-testing/${arch}/immudex${arch}.iso >> ~/immudex_build.log 2>&1;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
- #Creating squashfs archive:
- echo -n "Creating squashfs archive...";
- sudo mksquashfs ~/immudex-testing/${arch}/chroot ~/immudex-testing/${arch}/staging/live/filesystem.squashfs -e boot >> ~/immudex_build.log 2>&1;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
- #Copying kernel and initrd (core files) from chroot:
- echo -n "Copying kernel and initrd (core files) from chroot...";
- cp -v $(ls -v ~/immudex-testing/${arch}/chroot/boot/vmlinuz-* | tail -1) ~/immudex-testing/${arch}/staging/live/vmlinuz >> ~/immudex_build.log 2>&1;
- cp -v $(ls -v ~/immudex-testing/${arch}/chroot/boot/initrd.img-* | tail -1) ~/immudex-testing/${arch}/staging/live/initrd >> ~/immudex_build.log 2>&1;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
- if [ "$3" ]; then
- echo -n "Creating version file...";
- echo $3 > ~/immudex-testing/${arch}/staging/live/version;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
- fi
-
- #Create iso image:
- echo -n "Creating iso image...";
- cd ~/immudex-testing/${arch};
- xorriso as mkisofs -iso-level 3 -o "immudex-testing${arch}.iso" -full-iso9660-filenames -volid "immudex-testing${arch}" -isohybrid-mbr /usr/lib/ISOLINUX/isohdpfx.bin -eltorito-boot isolinux/isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table --eltorito-catalog isolinux/isolinux.cat -eltorito-alt-boot -e /boot/grub/efiboot.img -no-emul-boot -isohybrid-gpt-basdat -append_partition 2 0xef ~/immudex-testing/${arch}/staging/boot/grub/efiboot.img ~/immudex-testing/${arch}/staging >> ~/immudex_build.log 2>&1;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
- exit 0;
-fi
-
-#Determing requested architecture and
-if [ "$1" ] && [ "$1" = "--amd64" ]; then arch="64";
-elif [ "$1" ] && [ "$1" = "--i386" ]; then arch="32";
-else
- help;
- exit 1;
-fi
-
-if [ ! -f /sbin/debootstrap ]; then
- create_enviroment
- #Creating enviroment:
- #echo -n "Installation of packages needed to build immudex...";
- #sudo apt update >> ~/immudex_build.log 2>&1;
- #sudo apt install -y debootstrap squashfs-tools xorriso isolinux syslinux-efi grub-pc-bin grub-efi-amd64-bin mtools dosfstools >> immudex_build.log 2>&1;
- #if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-fi
-
-#Creating root directory sturcture for immudex build:
-if [ ! -d ~/immudex-testing/${arch} ]; then
- echo -n "Creating root directory structure for immudex build...";
- mkdir -pv ~/immudex-testing/${arch} >> immudex_build.log 2>&1;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-fi
-
-#Fetching testing vanilla Debian base system files:
-echo -n "Fetching testing vanilla Debian base system files...";
-sudo /sbin/debootstrap --arch=$(echo $1 | sed 's/-//g') bookworm ~/immudex-testing/${arch}/chroot http://ftp.icm.edu.pl/debian >> ~/immudex_build.log 2>&1;
-if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
-#Getting project files:
-echo -n "Getting project files...";
-mkdir -v ~/Pobrane >> ~/immudex_build.log 2>&1;
-cd ~/Pobrane;
-git clone https://github.com/xf0r3m/immudex-testing.git >> ~/immudex_build.log 2>&1;
-if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
-
-#Copying chroot script to chroot directory:
-echo -n "Copying chroot script to chroot directory...";
-sudo cp -vv ~/Pobrane/immudex-testing/versions/base.sh ~/immudex-testing/${arch}/chroot >> ~/immudex_build.log 2>&1;
-if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
-#Executing chroot script, at least i trying:
-sudo chroot ~/immudex-testing/${arch}/chroot /bin/bash /base.sh $arch;
-
-#Removing chroot script.
-echo -n "Remove chroot script...";
-sudo rm -vf ~/immudex-testing/${arch}/chroot/base.sh >> immudex_build.log 2>&1;
-if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
-versionsList=$(ls -v ~/Pobrane/immudex-testing/versions --hide=base.sh --hide=100.sh | awk '{printf $1" "}');
-for i in $versionsList; do
- echo -n "Executing version script: $i ...";
- sudo cp -v ~/Pobrane/immudex-testing/versions/${i} ~/immudex-testing/${arch}/chroot >> ~/immudex_build.log 2>&1;
- sudo chroot ~/immudex-testing/${arch}/chroot /bin/bash $i;
- sudo rm -vf ~/immudex-testing/${arch}/chroot/${i} >> ~/immudex_build.log 2>&1;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-done
-
-#Creating LiveCD directory structure:
-echo -n "Creating LiveCD directory structure...";
-mkdir -pv ~/immudex-testing/${arch}/{staging/{EFI/boot,boot/grub/x86_64-efi,isolinux,live},tmp} >> immudex_build.log 2>&1;
-if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
-#Creating squasfs archive:
-echo -n "Creating squashfs archive...";
-sudo mksquashfs ~/immudex-testing/${arch}/chroot ~/immudex-testing/${arch}/staging/live/filesystem.squashfs -e boot >> immudex_build.log 2>&1;
-if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
-#Copying kernel and initrd (core files) from chroot:
-echo -n "Copying kernel and initrd (core files) from chroot...";
-cp -v $(ls -v ~/immudex-testing/${arch}/chroot/boot/vmlinuz-* | tail -1) ~/immudex-testing/${arch}/staging/live/vmlinuz >> immudex_build.log 2>&1;
-cp -v $(ls -v ~/immudex-testing/${arch}/chroot/boot/initrd.img-* | tail -1) ~/immudex-testing/${arch}/staging/live/initrd >> immudex_build.log 2>&1;
-if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
-#Getting and copying bootloader files
-echo -n "Copying bootloader files...";
-arch2=$(echo $1 | sed 's/-//g');
-cp -v immudex-testing/isolinux/${arch2}/* ~/immudex-testing/${arch}/staging/isolinux >> ~/immudex_build.log 2>&1;
-cp -v immudex-testing/grub/${arch2}/* ~/immudex-testing/${arch}/staging/boot/grub >> ~/immudex_build.log 2>&1;
-if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
-#Removing Pobrane dir
-echo -n "Removing Pobrane directory...";
-cd ~;
-rm -rvf ~/Pobrane >> ~/immudex_build.log 2>&1;
-if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
-#Create grubstandalone config:
-echo "-==Create grub-standalone config: $(date)==-" >> ~/immudex_build.log;
-echo -n "Create grub-standalone config...";
-cat >> ~/immudex-testing/${arch}/tmp/grub-standalone.cfg <<EOF
-search --set=root --file /DEBIAN
-set prefix=(\$root)/boot/grub
-configfile /boot/grub/grub.cfg
-EOF
-if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
-
-#Create an empty file, which will be used to set root directory for GRUB:
-echo "-==Create empty file for setting root directory for GRUB: $(date)==-" >> ~/immudex_build.log;
-echo -n "Create empty file for GRUB...";
-touch ~/immudex-testing/${arch}/staging/DEBIAN;
-if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
-#Copying isolinux files:
-echo -n "Copiying isolinux files...";
-cp -v /usr/lib/ISOLINUX/isolinux.bin ~/immudex-testing/${arch}/staging/isolinux >> immudex_build.log 2>&1;
-cp -v /usr/lib/syslinux/modules/bios/* ~/immudex-testing/${arch}/staging/isolinux >> immudex_build.log 2>&1;
-if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
-#Copying grub files:
-echo -n "Copying isolinux files...";
-cp -rv /usr/lib/grub/x86_64-efi/* ~/immudex-testing/${arch}/staging/boot/grub/x86_64-efi >> immudex_build.log 2>&1;
-if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
-#Creating grub-efi bootloader file:
-echo "-==Creating grub-efi bootloader file: $(date)==-" >> immudex_build.log;
-echo -n "Creating grub-efi bootloader file...";
-myHOME=$(pwd);
-grub-mkstandalone --format=x86_64-efi --output=${myHOME}/immudex-testing/${arch}/staging/EFI/boot/bootx64.efi --locales="" --fonts="" "boot/grub/grub.cfg=${myHOME}/immudex-testing/${arch}/tmp/grub-standalone.cfg";
-if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
-#Creating additional EFI partition:
-cd ~/immudex-testing/${arch}/staging/boot/grub;
-echo -n "Creating addtitional EFI partition...";
-dd if=/dev/zero bs=1M of=efiboot.img count=20 >> ~/immudex_build.log 2>&1;
-sudo mkfs.vfat efiboot.img >> ~/immudex_build.log 2>&1;
-echo "-==Creating MS-DOS directory: $(date)==-" >> ~/immudex_build.log;
-sudo mmd -i efiboot.img efi efi/boot >> ~/immudex_build.log 2>&1;
-sudo mcopy -vi efiboot.img ~/immudex-testing/${arch}/staging/EFI/boot/bootx64.efi ::efi/boot >> ~/immudex_build.log 2>&1;
-if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
-#Create iso image:
-echo -n "Creating iso image...";
-cd ~/immudex-testing/${arch};
-xorriso as mkisofs -iso-level 3 -o "immudex-testing${arch}.iso" -full-iso9660-filenames -volid "immudex-testing${arch}" -isohybrid-mbr /usr/lib/ISOLINUX/isohdpfx.bin -eltorito-boot isolinux/isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table --eltorito-catalog isolinux/isolinux.cat -eltorito-alt-boot -e /boot/grub/efiboot.img -no-emul-boot -isohybrid-gpt-basdat -append_partition 2 0xef ~/immudex-testing/${arch}/staging/boot/grub/efiboot.img ~/immudex-testing/${arch}/staging >> ~/immudex_build.log 2>&1;
-if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
+++ /dev/null
-#!/bin/bash
-
-BRANCH="testing";
-VERSION=$1;
-
-function okorfail() {
- if [ $1 -eq 0 ]; then echo -e "[ \e[32mOK\e[0m ]";
- else echo -e "[ \e[31mFAIL\e[0m ]";
- fi
-}
-
-function prepare_mirror() {
- mirror=$1;
- shift;
- SSH_OPTS=$(echo "$@" | tr [A-Z] [a-z]);
- connection="$SSH_OPTS $(echo $mirror | cut -d ':' -f 1)";
- mirrorRootPath=$(echo $mirror | cut -d ":" -f 2);
- ssh $connection "mkdir -p ${mirrorRootPath}/${BRANCH}/{iso/${VERSION},upgrades/${VERSION}/{32,64}}";
- return $?;
-}
-
-function finish_upload() {
- mirror=$1;
- shift;
- SSH_OPTS=$(echo "$@" | tr [A-Z] [a-z]);
- connection="$SSH_OPTS $(echo $mirror | cut -d ':' -f 1)";
- EOLVersion=$(ssh $connection "ls ${mirrorRootPath}/${BRANCH}/iso --sort=time | tail -1");
- echo -n "Removing old latest symlink...";
- ssh $connection "rm ${mirrorRootPath}/${BRANCH}/upgrades/latest";
- okorfail $?;
- echo -n "Creating new latest symlink...";
- ssh $connection "cd ${mirrorRootPath}/${BRANCH}/upgrades && ln -s $VERSION latest;";
- okorfail $?;
- echo -n "Removing EOL immudex version from upgrades directory...";
- ssh $connection "rm -rf ${mirrorRootPath}/${BRANCH}/upgrades/${EOLVersion}";
- okorfail $?
- echo -n "Removing EOL immudex version from iso directory...";
- ssh $connection "rm -rf ${mirrorRootPath}/${BRANCH}/iso/${EOLVersion}";
- okorfail $?
-}
-
-function upload() {
- mirror=$1;
- shift;
- SSH_OPTS="$@";
- echo -n "Uploading iso files...";
- scp $SSH_OPTS immudex-testing/{32,64}/*.{iso,txt} ${mirror}/${BRANCH}/iso/${VERSION};
- okorfail $?;
- echo -n "Uploading 32-bit live (upgrades) files...";
- scp $SSH_OPTS immudex-testing/32/staging/live/* ${mirror}/${BRANCH}/upgrades/${VERSION}/32;
- okorfail $?
- echo -n "Uploading 64-bit live (upgrades) files...";
- scp $SSH_OPTS immudex-testing/64/staging/live/* ${mirror}/${BRANCH}/upgrades/${VERSION}/64;
- okorfail $?
-}
-
-#echo -n "Getting mirrors list...";
-#wget -q https://raw.githubusercontent.com/xf0r3m/immudex-testing/main/mirrors.txt -O /tmp/mirrors.list;
-#okorfail $?;
-function main() {
- mirrorsList=$(awk '{printf $1" "}' /tmp/mirrors.list)
- for mirror in $mirrorsList; do
- echo "Uploading immudex-testing version to mirror: $(echo $mirror | cut -d "@" -f2 | cut -d ":" -f 1)...";
- field2=$(grep "^${mirror}" /tmp/mirrors.list | awk '{printf $2}');
- field3=$(grep "^${mirror}" /tmp/mirrors.list | awk '{printf $3}');
- if [ "$field2" ]; then
- if $(echo $field2 | grep -q '^[0-9]$'); then
- port=$field2;
- if [ "$field3" ]; then
- idFile=$field3;
- SSH_OPTS="-P $port -i $idFile";
- else
- SSH_OPTS="-P $port";
- fi
- else
- idFile=$field2;
- SSH_OPTS="-i $idFile";
- fi
- fi
- echo -n "Creating necessary directory structure in mirror...";
- prepare_mirror $mirror $SSH_OPTS;
- okorfail $?;
- upload $mirror $SSH_OPTS;
- echo -n "Finishing upload new version of immudex...";
- finish_upload $mirror $SSH_OPTS;
- done
-}
-
-
+++ /dev/null
-#!/bin/bash
-
-set -e
-
-GREEN="\e[32m";
-ENDCOLOR="\e[0m";
-
-if [ "$1" ]; then
- isoPath=$1;
- if echo $isoPath | grep -q 'http'; then wget $isoPath; fi
- filename=$(basename $isoPath);
-
- if echo $filename | grep -q 'immudex-testing'; then
- branch="immudex-testing";
- branchAltName="testing";
- elif echo $filename | grep -q 'immudex-niko'; then
- branch="immudex";
- branchAltName="niko"
- else
- branch="immudex";
- branchAltName="stable";
- fi
-
- if echo $filename | grep -q '64'; then
- arch="64";
- else
- arch="32";
- fi
- echo "-== Starting immudex_rebuildenv $(date) ==-" >> immudex_rebuildenv.log;
- echo -n "Creating necessary directory structure...";
- mkdir -pv build/${branchAltName}/${branch}/${arch}/{chroot,staging,tmp} >> immudex_rebuildenv.log 2>&1;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
- rootPath="build/${branchAltName}";
- echo -n "Fetching immudex_build script...";
- wget https://github.com/xf0r3m/${branch}/raw/main/immudex_build -O build/${branchAltName}/immudex_build >> immudex_rebuildenv.log 2>&1;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
- echo -n "Setting execution permissions for immudex_build script..."
- chmod +x build/${branchAltName}/immudex_build;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
-
- echo -n "Creating /tmp/iso directory...";
- mkdir -v /tmp/iso >> immudex_rebuildenv.log 2>&1;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
- echo -n "Mounting iso image...";
- sudo mount -v $isoPath /tmp/iso >> immudex_rebuildenv.log 2>&1;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
- echo -n "Copying iso image content to...";
- sudo cp -rvv /tmp/iso/* ${rootPath}/${branch}/${arch}/staging >> immudex_rebuildenv.log 2>&1;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
- echo -n "Setting copied files ownership properly...";
- sudo chown -Rv ${USER}:${USER} ${rootPath}/${branch}/${arch}/staging >> immudex_rebuildenv.log 2>&1;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
- echo -n "Unmounting iso image...";
- sudo umount -v /tmp/iso >> immudex_rebuildenv.log 2>&1;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
- echo -n "Removing /tmp/iso directory...";
- sudo rmdir -v /tmp/iso >> immudex_rebuildenv.log 2>&1;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
- echo -n "Creating grub-standalone.cfg file...";
- cat > ${rootPath}/${branch}/${arch}/tmp/grub-standalone.cfg <<EOF
-search --set=root --file /DEBIAN
-set prefix=($root)/boot/grub
-configfile /boot/grub/grub.cfg
-EOF
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
- echo "-== Print grub-standalone.cfg $(date) ==-" >> immudex_rebuildenv.log;
- cat ${rootPath}/${branch}/${arch}/tmp/grub-standalone.cfg >> immudex_rebuildenv.log 2>&1;
- echo "-== End Print ==-" >> immudex_rebuildenv.log;
-
- echo -n "Unpacking squashfs archive...";
- sudo unsquashfs -f -d ${rootPath}/${branch}/${arch}/chroot ${rootPath}/${branch}/${arch}/staging/live/filesystem.squashfs >> immudex_rebuildenv.log 2>&1;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
- echo -n "Creating chroot script...";
- if [ "$arch" = "64" ]; then
- linuxKernel="linux-image-amd64";
- else
- linuxKernel="linux-image-686-pae";
- fi
- cat > chrtcmd.sh <<EOF
-#!/bin/bash
-
-mkdir /boot;
-apt purge -y linux-image*;
-dhclient;
-apt update;
-apt install -y $linuxKernel;
-echo > /root/.bash_history;
-history -c;
-EOF
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
- echo "-== Print chrtcmd.sh $(date) ==-" >> immudex_rebuildenv.log;
- cat chrtcmd.sh >> immudex_rebuildenv.log 2>&1;
- echo "-== End Print ==-" >> immudex_rebuildenv.log;
-
- echo -n "Moving chrtcmd.sh script into chroot directory...";
- sudo mv -v chrtcmd.sh ${rootPath}/${branch}/${arch}/chroot >> immudex_rebuildenv.log;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
- echo -n "Executing chrtcmd.sh script into chroot environment...";
- sudo chroot ${rootPath}/${branch}/${arch}/chroot bash chrtcmd.sh;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-
- echo -n "Removing unecessary chrtcmd.sh script...";
- sudo rm -v ${rootPath}/${branch}/${arch}/chroot/chrtcmd.sh >> immudex_rebuildenv.log;
- if [ $? -eq 0 ]; then echo -e "[ ${GREEN}OK${ENDCOLOR} ]"; fi
-fi