Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save fititnt/8d94b0574c6a4ec7e8c4088c64743969 to your computer and use it in GitHub Desktop.
Save fititnt/8d94b0574c6a4ec7e8c4088c64743969 to your computer and use it in GitHub Desktop.
Modulo de segurança da GAS Tecnologia (WARSAW) + BB | hda-bb_0.1_all descompactado, nome/email editado
# Download de https://cloud.gastecnologia.com.br/bb/downloads/ws/hda-bb_0.1_all.deb
$ wget https://cloud.gastecnologia.com.br/bb/downloads/ws/hda-bb_0.1_all.deb
$ dpkg -x hda-bb_0.1_all.deb warsaw-deb-descompactado
$ cd warsaw-deb-descompactado/
$ tree
.
└── usr
├── local
│   └── bin
│   └── HDA_BB
│   ├── HDA_BB
│   ├── HDA_BB.desktop
│   ├── ICON
│   │   ├── shield_bb_64.png
│   │   └── Shield_BB.png
│   └── IMG
│   ├── DIG
│   │   ├── alert0.png
│   │   ├── alert.png
│   │   ├── bug-512.png
│   │   ├── bug-64.png
│   │   ├── caution-63.png
│   │   ├── caution-64.png
│   │   ├── check.png
│   │   ├── clipboard-64.png
│   │   ├── close.png
│   │   ├── close_red.png
│   │   ├── distro_2.png
│   │   ├── distro.png
│   │   ├── folder.png
│   │   ├── folder_sub.png
│   │   ├── idea.png
│   │   ├── install.png
│   │   ├── libs_2.png
│   │   ├── libs_64.png
│   │   ├── libs.png
│   │   ├── locked_64.png
│   │   ├── modulo.png
│   │   ├── net.png
│   │   ├── play-64.png
│   │   ├── proxy.png
│   │   ├── server.png
│   │   ├── socket.png
│   │   ├── tick_green.png
│   │   ├── tick.png
│   │   ├── unlocked-64.png
│   │   └── user.png
│   ├── INSTALL
│   │   ├── fedora.png
│   │   ├── mint.png
│   │   ├── opensuse.png
│   │   └── ubuntu.png
│   └── MAIN
│   ├── Ajuda.png
│   ├── Diagnostico.png
│   ├── Exit.png
│   ├── Install.png
│   ├── lock-24.png
│   ├── Remove.png
│   ├── Safety01-24.png
│   └── unlock-24.png
└── share
└── applications
└── HDA_BB.desktop
11 directories, 47 files
#!/bin/bash
#################################################################################################################################
# HDA-BB #
# Program : Diagnóstico do Módulo de segurança #
# Version : 0.1 #
# Author : NOMEEDITADO [email protected] #
# #
#################################################################################################################################
###################################################CHECAGEM-DIAGNOSTICO##########################################################
# DISTRO_CHECK - #
# NETWORING_CHECK - #
# WARSAW_CHECK - #
# SOCKET_ON - #
# PERMS_CHECK - #
# PERMS_VALID - #
# LIB_WARSAW_CHECK - #
# LIB_WARSAW_INSTALL - #
# ROOT_LOGIN - #
# INSTALL_WARSAW - #
# DIAGNOSTICO_CHECK - #
#################################################################################################################################
#======================================================DISTRO_CHECK==============================================================#
#CHECAR DISTRIBUIÇÃO DE FORMA AUTOMATICA
function DISTRO_CHECK() {
BITS=$(uname -i)
if [[ $BITS != "x86_64" ]]; then
BITS="x86_32"
fi
while read LINHA; do
if [[ $LINHA == *"Ubuntu"* ]]; then
DIST=Ubuntu
break
elif [[ $LINHA == *"openSUSE"* ]]; then
DIST=openSUSE
break
elif [[ $LINHA == *"Mint"* ]]; then
DIST=Mint
break
elif [[ $LINHA == *"Fedora"* ]]; then
DIST=Fedora
break
fi
done < /etc/os-release
echo "$DIST"
if [ ! -z $DIST ]; then
DIST_BITS="$DIST"_"$BITS"
fi
}
export -f DISTRO_CHECK
#********************************************************************************************************************************#
#=====================================================NETWORING_CHECK============================================================#
#REQ - Variável temporaria
#NET - Status da rede do usuário
#SEG - Status do SEG.BB
#================================================================================================================================#
function NETWORING_CHECK() {
#CHECAR SE O COMPUTADOR ESTÁ COM ACESSO A INTERNET
#REQ=true
end=$((SECONDS+0))
while [ $SECONDS -lt $end ]; do
REQ=$(ping -c1 google.com | grep From | awk -F' ' '{ print $4 $5 $6}')
echo $REQ
done
if [[ "$REQ" == "DestinationPortUnreachable" ]]; then
#se o ip não responder mostra offline!
#echo "OFFLINE"
NET=false
else
#se o ip responder o ping mostra online
#echo "online!"
NET=true
fi
#CHECAR A DISPONIBILIDADE DO SEG.BB
while [ $SECONDS -lt $end ]; do
REQ=$(ping -c1 cloud.gastecnologia.com.br | grep From | awk -F' ' '{ print $4 $5 $6}')
echo $REQ
done
if [[ "$REQ" == "DestinationPortUnreachable" ]]; then
#se o ip não responder mostra offline!
#echo "OFFLINE"
SEG=false
else
#se o ip responder o ping mostra online
#echo "online!"
SEG=true
fi
}
export -f NETWORING_CHECK
#********************************************************************************************************************************#
#======================================================WARSAW_CHECK==============================================================#
# $1 - A distribuição do do usuário #
# WARSAW - Status do Warsaw na máquina, verifica se está started ou não. #
#================================================================================================================================#
#VERIFICAR SE O WARSAW ESTA INSTALADO
function WARSAW_CHECK() {
DISTRO_CHECK DIST
BIN_DIR=/usr/local/bin/warsaw/
CORE_FILE=core
WARSAW=false
if [ -e "$BIN_DIR$CORE_FILE" ] ; then
#WARSAW=true
if [[ "$DIST" == "Ubuntu" ]] || [[ "$DIST" == "Mint" ]]; then
dpkg -l warsaw >> /dev/null
if [ "$?" = 0 ]; then
WARSAW=true
fi
elif [[ "$DIST" == "Fedora" ]] || [[ "$DIST" == "openSUSE" ]]; then
$(rpm -qa | grep warsaw >> /dev/null)
if [[ "$?" = 0 ]]; then
WARSAW=true
fi
fi
fi
}
export -f WARSAW_CHECK
#********************************************************************************************************************************#
#======================================================BROWSER_CHECK=============================================================#
# Verifica navegadores abertos e solicita ao usuario para fehcar todos os browsers #
#================================================================================================================================#
#VERIFICAR SE O WARSAW ESTA INSTALADO
function BROWSER_CHECK() {
FFOUT_PID=`ps -ef|grep firefox|grep -v grep`
FFOUT_PID=($?)
CHOUT_PID=`ps -ef|grep chrome|grep -v grep`
CHOUT_PID=($?)
OPOUT_PID=`ps -ef|grep opera|grep -v grep`
OPOUT_PID=($?)
NAVEGADORES_FECHADOS=false
if [[ $FFOUT_PID -eq 0 ]] || [[ $CHOUT_PID -eq 0 ]] || [[ $OPOUT_PID -eq 0 ]]; then
yad --text "É necessário encerrar todos navegadores. Deseja continuar?" --width=300 --center --undecorated \
--text-align=center --on-top --buttons-layout=center
if [[ $? -eq 0 ]]; then
usuario=`whoami`
if [[ "$usuario" == "root" ]]; then
if [[ $FFOUT_PID -eq 0 ]]; then
killall firefox
fi
if [[ $CHOUT_PID -eq 0 ]]; then
killall chrome
fi
if [[ $OPOUT_PID -eq 0 ]]; then
killall opera
fi
else
SENHA_CHECK SENHA
if [[ $FFOUT_PID -eq 0 ]]; then
echo $SENHA | sudo -S killall firefox
fi
if [[ $CHOUT_PID -eq 0 ]]; then
echo $SENHA | sudo -S killall chrome
fi
if [[ $OPOUT_PID -eq 0 ]]; then
echo $SENHA | sudo -S killall opera
fi
fi
NAVEGADORES_FECHADOS=true
sleep 3
fi
else
NAVEGADORES_FECHADOS=true
fi
}
export -f BROWSER_CHECK
#********************************************************************************************************************************#
#=======================================================SOCKET_ON================================================================#
#CHECAR O SOCKET
function SOCKET_ON() {
ws30900=`( echo open 127.0.0.1 30900
exit
) | telnet`
echo "$ws30900" | grep "Escape character" &>> /dev/null
if [[ "$?" == 0 ]]; then
WEBSOCKET=true
else
WEBSOCKET=false
fi
#fs30800=`( echo open 127.0.0.1 30800
# exit
# ) | telnet`
#echo "$fs30800" | grep "Escape character" &>> /dev/null
#if [ "$?" == 0 ]; then
# FLASHSOCKET=true
#else
# FLASHSOCKET=false
#fi
}
export -f SOCKET_ON
#********************************************************************************************************************************#
#======================================================PERMS_CHECK===============================================================#
#CHECAR PERMISSOES
function PERMS_CHECK() {
in_perm=$(stat -c "%a %n" /usr/local/bin/warsaw/core)
aux_perm=($in_perm)
out_perm=${aux_perm[0]}
if [[ "${out_perm}" -ge "755" ]]; then
#echo ${out_perm:6}
CORE_FOLDER=true
else
CORE_FOLDER=false
fi
in_perm=$(stat -c "%a %n" /etc/xdg/autostart/warsaw.desktop)
aux_perm=($in_perm)
out_perm=${aux_perm[0]}
if [[ "${out_perm}" -ge "755" ]]; then
#echo ${out_perm:6}
WARSAW_DESKTOP=true
else
WARSAW_DESKTOP=false
fi
in_perm=$(stat -c "%a %n" /usr/local/lib/warsaw/ld-linux-x86-64.so.2)
aux_perm=($in_perm)
out_perm=${aux_perm[0]}
if [[ "${out_perm}" -ge "755" ]]; then
#echo ${out_perm:6}
LD_LINUX_64=true
LD_LINUX=true
else
LD_LINUX_64=false
LD_LINUX=false
fi
if [[ $LD_LINUX_64 = "false" ]]; then
in_perm=$(stat -c "%a %n" /usr/local/lib/warsaw/ld-linux.so.2)
aux_perm=($in_perm)
out_perm=${aux_perm[0]}
if [[ "${out_perm}" -ge "755" ]]; then
#echo ${out_perm:6}
LD_LINUX_64=true
LD_LINUX=true
else
LD_LINUX_64=false
LD_LINUX=false
fi
fi
#in_perm=$(ls -ld /usr/local/bin/warsaw/uninstall_core)
#aux_perm=($in_perm)
#out_perm=${aux_perm[0]}
#if [ "${out_perm:6}" == "xr-x" ]; then
# echo ${out_perm:6}
UNINSTALL_CORE=true
#else
# UNINSTALL_CORE=false
#fi
in_perm=$(stat -c "%a %n" /etc/init.d/warsaw)
aux_perm=($in_perm)
out_perm=${aux_perm[0]}
if [[ "${out_perm}" -ge "744" ]]; then
#echo ${out_perm}
INIT_WARSAW=true
else
INIT_WARSAW=false
fi
in_perm=$(stat -c "%a %n" /usr/local/etc/warsaw/local.cfg)
aux_perm=($in_perm)
out_perm=${aux_perm[0]}
if [[ "${out_perm}" -ge "666" ]]; then
#echo ${out_perm:6}
LOCAL_CFG=true
else
LOCAL_CFG=false
fi
#print "1CORE_FOLDER" $CORE_FOLDER
#print "1WARSAW_DESKTOP" $WARSAW_DESKTOP
#print "1LD_LINUX_64" $LD_LINUX_64
#print "1LD_LINUX" $LD_LINUX
#print "1UNINSTALL_CORE" $UNINSTALL_CORE
#print "1INIT_WARSAW" $INIT_WARSAW
#print "1LOCAL_CFG" $LOCAL_CFG
}
export -f PERMS_CHECK
#********************************************************************************************************************************#
#======================================================PERMS_VALID===============================================================#
#MUDAR PERMISSOES DAS PASTAS
function PERMS_VALID() {
usuario=`whoami`
if [[ "$usuario" == "root" ]]; then
chmod +x /usr/local/bin/warsaw/core
chmod +x /etc/xdg/autostart/warsaw.desktop
if [[ -f /usr/local/lib/warsaw/ld-linux-x86-64.so.2 ]] ; then
chmod +x /usr/local/lib/warsaw/ld-linux-x86-64.so.2
else
if [[ -f /usr/local/lib/warsaw/ld-linux.so.2 ]] ; then
chmod +x /usr/local/lib/warsaw/ld-linux.so.2
fi
fi
#[ -f /usr/local/bin/warsaw/uninstall_core ] && chmod 0744 /usr/local/bin/warsaw/uninstall_core
chmod 0744 /etc/init.d/warsaw
chmod 0666 /usr/local/etc/warsaw/local.cfg
else
SENHA_CHECK SENHA
echo $SENHA | sudo -S chmod +x /usr/local/bin/warsaw/core
echo $SENHA | sudo -S chmod +x /etc/xdg/autostart/warsaw.desktop
if [[ -f /usr/local/lib/warsaw/ld-linux-x86-64.so.2 ]] ; then
echo $SENHA | sudo -S chmod +x /usr/local/lib/warsaw/ld-linux-x86-64.so.2
else
if [[ -f /usr/local/lib/warsaw/ld-linux.so.2 ]] ; then
echo $SENHA | sudo -S chmod +x /usr/local/lib/warsaw/ld-linux.so.2
fi
fi
#[ -f /usr/local/bin/warsaw/uninstall_core ] && chmod 0744 /usr/local/bin/warsaw/uninstall_core
echo $SENHA | sudo -S chmod 0744 /etc/init.d/warsaw
echo $SENHA | sudo -S chmod 0666 /usr/local/etc/warsaw/local.cfg
fi
notify-send "Arquivos Permissionados"
}
export -f PERMS_VALID
#********************************************************************************************************************************#
#====================================================LIB_WARSAW_CHECK============================================================#
#CHECAR SE O COMPUTADOR POSSUI AS LIBS NESCESSARIAS
function LIB_WARSAW_CHECK() {
DISTRO_CHECK DIST_BITS
if [[ "$DIST_BITS" == "Ubuntu_x86_64" ]] || [[ "$DIST_BITS" == "Ubuntu_x86_32" ]] || [[ "$DIST_BITS" == "Mint_x86_64" ]] || [[ "$DIST_BITS" == "Mint_x86_32" ]]; then
DEPENDS="openssl libnss3-tools libcurl3"
dpkg -l $DEPENDS &>> /dev/null
if [ "$?" = 0 ]; then
CHAVELIBNSS3=true
else
CHAVELIBNSS3=false
fi
elif [[ "$DIST_BITS" == "Fedora_x86_64" ]] || [[ "$DIST_BITS" == "Fedora_x86_32" ]]; then
(rpm -qa | grep nss-tools && rpm -qa | grep libcurl) &>> /dev/null
if [ "$?" = 0 ]; then
CHAVELIBNSS3=true
else
CHAVELIBNSS3=false
fi
elif [[ "$DIST_BITS" == "openSUSE_x86_64" ]] || [[ "$DIST_BITS" == "openSUSE_x86_32" ]]; then
DEPENDS="mozilla-nss-tools"
rpm -qa | grep $DEPENDS >> /dev/null
if [[ "$?" = 0 ]]; then
CHAVELIBNSS3=true
else
CHAVELIBNSS3=false
fi
fi
}
export -f LIB_WARSAW_CHECK
#********************************************************************************************************************************#
#===================================================LIB_WARSAW_INSTALL===========================================================#
#INSTALAR AS LIBS QUE FALTAM NO SISTEMA
function LIB_WARSAW_INSTALL() {
RELOAD_GUI "DIAG_LIB_CLOSE"
RELOAD_GUI "DIAG_CLOSE"
DISTRO_CHECK DIST BITS
usuario=`whoami`
if [[ "$usuario" == "root" ]]; then
if [[ "$DIST" == "Ubuntu" ]] || [[ "$DIST" == "Mint" ]]; then
apt-get install -y openssl dbus libdbus-1-3 libdbus-1-dev libnss3-tools libcurl3 libssl-dev libssl1.0.0 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
elif [[ "$DIST" == "Fedora" ]]; then
dnf install -y openssl openssl openssl-libs openssl-devel nss-tools libcurl dbus-libs dbus-devel 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
elif [[ "$DIST" == "openSUSE" ]]; then
zypper install -y openssl mozilla-nss-tools libcurl-devel libcurl4 dbus-1 dbus-1-devel libdbus-1-3 libopenssl-devel libopenssl1_0_0 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
fi
else
SENHA_CHECK SENHA
if [[ "$DIST" == "Ubuntu" ]] || [[ "$DIST" == "Mint" ]]; then
echo $SENHA | sudo -S apt-get install -y openssl dbus libdbus-1-3 libdbus-1-dev libnss3-tools libcurl3 libssl-dev libssl1.0.0 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
elif [[ "$DIST" == "Fedora" ]]; then
echo $SENHA | sudo -S dnf install -y openssl openssl-libs openssl-devel nss-tools libcurl dbus-libs dbus-devel 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
elif [[ "$DIST" == "openSUSE" ]]; then
echo $SENHA | sudo -S zypper install -y openssl mozilla-nss-tools libcurl-devel libcurl4 dbus-1 dbus-1-devel libdbus-1-3 libopenssl-devel libopenssl1_0_0 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
fi
fi
RELOAD_GUI "DIAG_OPEN"
notify-send "Dependencias Instaladas"
}
export -f LIB_WARSAW_INSTALL
#********************************************************************************************************************************#
#CHECAR SE ESTA SENDO EXECUTADO COMO ROOT
function ROOT_CHECK() {
while read LINHA; do
if [[ $LINHA == "ROOT: true" ]]; then
ROOT=true
elif [[ $LINHA == "ROOT: false" ]]; then
ROOT=false
fi
done < /tmp/HDA.tmp
if [[ $ROOT == false ]]; then
usuario=`whoami`
if [[ "$usuario" == "root" ]]; then
ROOT=true
echo $(sed -i 's/ROOT: false/ROOT: true/' /tmp/HDA.tmp)
else
ROOT=false
echo $(sed -i 's/ROOT: true/ROOT: false/' /tmp/HDA.tmp)
fi
fi
}
export -f ROOT_CHECK
#********************************************************************************************************************************#
#=======================================================ROOT_LOGIN===============================================================#
#LOGAR COMO ROOT
function ROOT_LOGIN() {
DISTRO_CHECK DIST BITS DIST_BITS
GUI=$1
SECTION=$2
OPEN=$3
while read LINHA; do
if [[ $LINHA == "ROOT: true" ]]; then
ROOT=true
elif [[ $LINHA == "ROOT: false" ]]; then
ROOT=false
fi
done < /tmp/HDA.tmp
if [[ $ROOT == false ]]; then
if [[ $DIST == "openSUSE" ]];then
SENHA_CHECK="false"
while [[ $SENHA_CHECK == "false" ]]; do
senha=$(kdialog --password "A ação solicitada precisa de <b>prívilegios de superusuário</b>. Digite abaixo a senha do <b>superusuário (root)</b>:" --title "Executar como root");
if [ "$?" == 1 ]; then
exit
echo $(rm /tmp/HDA.tmp)
fi
echo $senha | sudo -S su root /dev/null
if [ "$?" == 0 ]; then
SENHA_CHECK="true"
#echo $(chmod 777 /tmp/HDA.tmp)
elif [ "$?" == 1 ]; then
kdialog --error "Senha incorreta";
SENHA_CHECK="false"
else
kdialog --error "Senha incorreta";
SENHA_CHECK="false"
fi
done
else
while true
do
# Pega a senha do login gráfico
resp=$(yad --form --columns="1" \
--on-top \
--center --image="$LOCAL/IMG/DIG/user.png" \
--undecorated \
--text="Digite a senha de superusuário:" \
--field="":H "" \
--button="gtk-ok":0)
senha=$(echo "$resp" | cut -f1 -d'|')
# Passa a senha
echo $senha | sudo -S -u root yad --image="gtk-dialog-info" --undecorated --info --center --on-top --button="gtk-ok":0 --text "<b>Senha Correta </b>" 1 2>/dev/null && break
yad --form \
--on-top \
--text '<b>Senha Incorreta.\nTentar novamente?</b>' \
--undecorated \
--center \
--question \
--image="gtk-dialog-error" \
--button="gtk-cancel":1 \
--button="gtk-ok":0
# Sair se pressionou cancelar.
(( $? )) && exit
done
fi
ROOT=true
echo $(sed -i 's/ROOTPW: false/ROOTPW: '$senha'/' /tmp/HDA.tmp)
echo $(sed -i 's/ROOT: false/ROOT: true/' /tmp/HDA.tmp)
if [[ $GUI == true ]]; then
RELOAD_GUI $SECTION $OPEN
fi
fi
}
export -f ROOT_LOGIN
#********************************************************************************************************************************#
#=======================================================SENHA_CHECK==============================================================#
function SENHA_CHECK() {
while read LINHA; do
OP=($LINHA)
if [[ ${OP[0]} == "ROOTPW:" ]]; then
if [[ ${OP[0]} != "ROOTPW: false" ]]; then
SENHA=${OP[1]}
fi
fi
done < /tmp/HDA.tmp
}
export -f SENHA_CHECK
#********************************************************************************************************************************#
#=====================================================DOWNLOAD_WARSAW============================================================#
#DOWNLOAD DO PACOTE DEB OU RPM, DE ACORDO COM A DISTRIBUIÇÃO.
function DOWNLOAD_WARSAW() {
#URL
URL_WARSAW32_DEB=https://cloud.gastecnologia.com.br/bb/downloads/ws/warsaw_setup.deb
URL_WARSAW64_DEB=https://cloud.gastecnologia.com.br/bb/downloads/ws/warsaw_setup64.deb
URL_WARSAW32_RPM=https://cloud.gastecnologia.com.br/bb/downloads/ws/warsaw_setup.rpm
URL_WARSAW64_RPM=https://cloud.gastecnologia.com.br/bb/downloads/ws/warsaw_setup64.rpm
DISTRO_CHECK DIST BITS
#UBUNTU OU MINT (DEB)
if [[ "$DIST" == "Ubuntu" ]] || [[ "$DIST" == "Mint" ]]; then
#FAZER DOWNLOAD DA VERSÃO DE 64 BITS
if [[ "$BITS" == x86_64 ]]; then
wget $URL_WARSAW64_DEB -O /tmp/warsaw_setup64.deb 2>&1 | sed -u 's/.* \([0-9]\+%\)\ \+\([0-9.]\+.\) \(.*\)/\1\n# Velocidade: \2\/s : \3/' | yad --progress --auto-close --no-buttons --undecorated --width 300 --center --on-top
#FAZER DOWNLOAD DA VERSÃO DE 32 BITS
elif [[ "$BITS" == x86_32 ]]; then
wget $URL_WARSAW32_DEB -O /tmp/warsaw_setup.deb 2>&1 | sed -u 's/.* \([0-9]\+%\)\ \+\([0-9.]\+.\) \(.*\)/\1\n# Velocidade: \2\/s : \3/' | yad --progress --auto-close --no-buttons --undecorated --width 300 --center --on-top
fi
#FEDORA OU OPENSUSE (RPM)
elif [[ "$DIST" == "Fedora" ]] || [[ "$DIST" == "openSUSE" ]]; then
#FAZER DOWNLOAD DA VERSÃO DE 64 BITS
if [[ "$BITS" == x86_64 ]]; then
wget $URL_WARSAW64_RPM -O /tmp/warsaw_setup64.rpm 2>&1 | sed -u 's/.* \([0-9]\+%\)\ \+\([0-9.]\+.\) \(.*\)/\1\n# Velocidade: \2\/s : \3/' | yad --progress --auto-close --no-buttons --undecorated --width 300 --center --on-top
elif [[ "$BITS" == x86_32 ]]; then
wget $URL_WARSAW32_RPM -O /tmp/warsaw_setup.rpm 2>&1 | sed -u 's/.* \([0-9]\+%\)\ \+\([0-9.]\+.\) \(.*\)/\1\n# Velocidade: \2\/s : \3/' | yad --progress --auto-close --no-buttons --undecorated --width 300 --center --on-top
fi
fi
}
export -f DOWNLOAD_WARSAW
#********************************************************************************************************************************#
#======================================================INSTALL_WARSAW============================================================#
#DETECTAR AUTOMATICAMENTE, OU SER ESCOLHIDO PELO USUÁRIO A IDENTIFICAÇÃO DE DISTRIBUIÇÃO E ARQUITETURA QUE WARSAW SERÁ INSTALADO.
function INSTALL_WARSAW() {
RELOAD_GUI "DIAG_INST_CLOSE"
TMP_WARSAW=/tmp
BROWSER_CHECK NAVEGADORES_FECHADOS
if [[ $NAVEGADORES_FECHADOS == true ]]; then
DISTRO_CHECK DIST BITS
DOWNLOAD_WARSAW
#echo $(SAIR_GUI Distro) #remover
usuario=`whoami`
if [[ "$usuario" == "root" ]]; then
if [[ $DIST == "Ubuntu" ]] || [[ $DIST == "Mint" ]]; then
if [[ "$BITS" == x86_64 ]]; then
dpkg -i $TMP_WARSAW/warsaw_setup64.deb 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
elif [[ "$BITS" == x86_32 ]]; then
dpkg -i $TMP_WARSAW/warsaw_setup.deb 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
fi
elif [[ $DIST == "Fedora" ]]; then
if [[ "$BITS" == x86_64 ]]; then
rpm -i $TMP_WARSAW/warsaw_setup64.rpm --nodeps --replacefiles 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
elif [[ "$BITS" == x86_32 ]]; then
rpm -i $TMP_WARSAW/warsaw_setup.rpm --nodeps --replacefiles 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
fi
elif [[ $DIST == "openSUSE" ]]; then
if [[ "$BITS" == x86_64 ]]; then
rpm -i $TMP_WARSAW/warsaw_setup64.rpm 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
elif [[ "$BITS" == x86_32 ]]; then
rpm -i $TMP_WARSAW/warsaw_setup.rpm 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
fi
fi
else
SENHA_CHECK SENHA
if [[ $DIST == "Ubuntu" ]] || [[ $DIST == "Mint" ]]; then
if [[ "$BITS" == x86_64 ]]; then
echo $SENHA | sudo -S dpkg -i $TMP_WARSAW/warsaw_setup64.deb 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
elif [[ "$BITS" == x86_32 ]]; then
echo $SENHA | sudo -S dpkg -i $TMP_WARSAW/warsaw_setup.deb 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
fi
elif [[ $DIST == "Fedora" ]]; then
if [[ "$BITS" == x86_64 ]]; then
echo $SENHA | sudo -S rpm -i $TMP_WARSAW/warsaw_setup64.rpm --nodeps --replacefiles 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
elif [[ "$BITS" == x86_32 ]]; then
echo $SENHA | sudo -S rpm -i $TMP_WARSAW/warsaw_setup.rpm --nodeps --replacefiles 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
fi
elif [[ $DIST == "openSUSE" ]]; then
if [[ "$BITS" == x86_64 ]]; then
echo $SENHA | sudo -S rpm -i $TMP_WARSAW/warsaw_setup64.rpm 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
elif [[ "$BITS" == x86_32 ]]; then
echo $SENHA | sudo -S rpm -i $TMP_WARSAW/warsaw_setup.rpm 2>&1 | yad --progress --pulstate --progress-text "Por favor, aguarde a instalação..." --auto-close --width=300 --center --undecorated --no-buttons --text-align=center --on-top
fi
fi
fi
notify-send "Componente de Segurança Instalado"
echo $(SAIR_GUI Distro)
fi
}
export -f INSTALL_WARSAW
#********************************************************************************************************************************#
#======================================================REMOVE_WARSAW=============================================================#
#DETECTAR AUTOMATICAMENTE, OU SER ESCOLHIDO PELO USUÁRIO A IDENTIFICAÇÃO DE DISTRIBUIÇÃO E ARQUITETURA QUE WARSAW SERÁ INSTALADO.
function REMOVE_WARSAW() {
BROWSER_CHECK NAVEGADORES_FECHADOS
if [[ $NAVEGADORES_FECHADOS == true ]]; then
DISTRO_CHECK DIST
usuario=`whoami`
if [[ "$usuario" == "root" ]]; then
if [[ "$DIST" == "Ubuntu" ]] || [[ "$DIST" == "Mint" ]]; then
dpkg --purge --force-all warsaw 2>&1 | yad --progress --pulstate --title="Instalando" --progress-text "Por favor, aguarde a desinstalação..." --width=300 --center --undecorated --no-buttons --text-align=center --on-top --auto-close
apt-get --force-yes remove -y warsaw 2>&1 | yad --progress --pulstate --title="Instalando" --progress-text "Por favor, aguarde a desinstalação..." --width=300 --center --undecorated --no-buttons --text-align=center --on-top --auto-close
elif [[ "$DIST" == "Fedora" ]]; then
dnf remove -y warsaw 2>&1 | yad --progress --pulstate --title="Instalando" --progress-text "Por favor, aguarde a desinstalação..." --width=300 --center --undecorated --no-buttons --text-align=center --on-top --auto-close
elif [[ "$DIST" == "openSUSE" ]]; then
zypper remove -y warsaw 2>&1 | yad --progress --pulstate --title="Instalando" --progress-text "Por favor, aguarde a desinstalação..." --width=300 --center --undecorated --no-buttons --text-align=center --on-top --auto-close
fi
else
SENHA_CHECK SENHA
if [[ "$DIST" == "Ubuntu" ]] || [[ "$DIST" == "Mint" ]]; then
echo $SENHA | sudo -S dpkg --purge --force-all warsaw 2>&1 | yad --progress --pulstate --title="Instalando" --progress-text "Por favor, aguarde a desinstalação..." --width=300 --center --undecorated --no-buttons --text-align=center --on-top --auto-close
echo $SENHA | sudo -S apt-get --force-yes remove -y warsaw 2>&1 | yad --progress --pulstate --title="Instalando" --progress-text "Por favor, aguarde a desinstalação..." --width=300 --center --undecorated --no-buttons --text-align=center --on-top --auto-close
elif [[ "$DIST" == "Fedora" ]]; then
echo $SENHA | sudo -S dnf remove -y warsaw 2>&1 | yad --progress --pulstate --title="Instalando" --progress-text "Por favor, aguarde a desinstalação..." --width=300 --center --undecorated --no-buttons --text-align=center --on-top --auto-close
elif [[ "$DIST" == "openSUSE" ]]; then
echo $SENHA | sudo -S zypper remove -y warsaw 2>&1 | yad --progress --pulstate --title="Instalando" --progress-text "Por favor, aguarde a desinstalação..." --width=300 --center --undecorated --no-buttons --text-align=center --on-top --auto-close
fi
fi
notify-send "Componente de Segurança Removido"
fi
}
export -f REMOVE_WARSAW
#********************************************************************************************************************************#
#====================================================DIAGNOSTICO_CHECK===========================================================#
function DIAGNOSTICO_CHECK() {
#CHAMAR FUNCÕES QUE CHECAM PARAMETROS DE FUNCIONAMENTO
WARSAW_CHECK WARSAW
ROOT_CHECK ROOT
LIB_WARSAW_CHECK $1 CHAVELIBNSS3
SOCKET_ON WEBSOCKET
NETWORING_CHECK NET SEG
PERMS_CHECK CORE_FOLDER WARSAW_DESKTOP LD_LINUX_64 LD_LINUX UNINSTALL_CORE INIT_WARSAW LOCAL_CFG
#SETAGEM DAS VARIAVES DE ACORDO COM A CHECAGEM DO FUNCIONAMENTO
#WARSAW INSTALADO
if [[ $WARSAW == true ]]; then
warsaw_fig="tick.png"
#-----------------------------PERMS------------------------------#
#DIRETORIOS COM PERMISSOES CORRETAS
#print "CORE_FOLDER" $CORE_FOLDER
#print "WARSAW_DESKTOP" $WARSAW_DESKTOP
#print "LD_LINUX_64" $LD_LINUX_64
#print "LD_LINUX" $LD_LINUX
#print "UNINSTALL_CORE" $UNINSTALL_CORE
#print "INIT_WARSAW" $INIT_WARSAW
#print "LOCAL_CFG" $LOCAL_CFG
if [[ $CORE_FOLDER == true ]] && [[ $WARSAW_DESKTOP == true ]] && [[ $LD_LINUX_64 == true ]] && [[ $LD_LINUX == true ]] && [[ $UNINSTALL_CORE == true ]] && [[ $INIT_WARSAW == true ]] && [[ $LOCAL_CFG == true ]]; then
folder_fig="tick.png"
else
folder_fig="close.png"
fi
#-----------------------------SOCKET-----------------------------#
#if [ "$WEBSOCKET" == true ] && [ "$FLASHSOCKET" == true ]; then
if [[ "$WEBSOCKET" == true ]]; then
socket_fig="tick.png"
else
socket_fig="close.png"
fi
else
warsaw_fig="close.png"
folder_fig="caution-63.png"
socket_fig="caution-63.png"
fi
#DISTRIBUIÇÃO LINUX OFICIALMENTE SUPORTADA
if [[ -z $1 ]]; then
dist_fig="close.png"
else
dist_fig="tick.png"
fi
#LOGADO COMO ROOT
if [[ $ROOT == true ]]; then
root_fig="tick.png"
else
root_fig="close.png"
fi
#DEPENDENCIAS SATISFEITAS
if [[ $CHAVELIBNSS3 == true ]]; then
lib_fig="tick.png"
else
lib_fig="close.png"
fi
#INTERNET
if [[ $NET == true ]] && [[ $SEG == true ]]; then
net_fig="tick.png"
else
net_fig="close.png"
fi
#INTERNET
if [[ $SEG == true ]]; then
seg_fig="tick.png"
else
seg_fig="close.png"
fi
}
export -f DIAGNOSTICO_CHECK
#********************************************************************************************************************************#
#========================================================AUTO_DIAG===============================================================#
function AUTO_DIAG() {
if [[ $1 == true ]];then
ROOT_LOGIN
fi
if [[ $2 == true ]];then
INSTALL_WARSAW
fi
if [[ $3 == true ]];then
LIB_WARSAW_INSTALL
fi
if [[ $4 == true ]];then
PERMS_CHECK
fi
}
export -f AUTO_DIAG
#********************************************************************************************************************************#
#%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++#
#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#
#####################################################INTERFACE GRAFICA############################################################
# RELOAD_GUI - #
# INSTALL_GUI - #
# PROXY_GUI - #
# DIAGNOSTICO_GUI - #
# DIAGNOSTICO_SUB_GUI - #
# AJUDA_GUI - #
# SAIR_GUI - #
# MAIN - #
##################################################################################################################################
#=========================================================RELOAD_GUI=============================================================#
function RELOAD_GUI() {
SECTION=$1
OPEN=$2
case $SECTION in
#JANELA PRINCIPAL
"MAIN")
#CHECAR APLICATIVOS ABERTO PARA FECHAR NA SAIDA DO MAIN
in_pid=$(ps aux|grep 'yad --form --undecorated --title=Segurança BB --no-buttons --geometry=+0+0 --columns=5')
out_pid=($in_pid)
kill ${out_pid[1]}
case $OPEN in
"INST")
bash -c MAIN & bash -c INSTALL_GUI
;;
"REMO")
bash -c MAIN & bash -c REMOVE_WARSAW
;;
"DIAG")
bash -c MAIN & bash -c DISTRO_CHECK DIST_BITS & bash -c DIAGNOSTICO_GUI $DIST_BITS
;;
*)
bash -c MAIN
;;
esac
;;
"DIAG_INST_CLOSE")
#Fechar Janela de instalacao do Modulo (onde aparecem as distro)
IN_PID=$(ps aux|grep 'yad --form --undecorated --title=Instalação')
OUT_PID=($IN_PID)
kill ${OUT_PID[1]}
;;
"DIAG_OPEN")
#Abrir Janela do Diagnostico
bash -c DISTRO_CHECK DIST_BITS & bash -c DIAGNOSTICO_GUI $DIST_BITS
;;
"DIAG_CLOSE")
#Fechar Janela do Diagnostico
IN_PID=$(ps aux|grep 'yad --form --undecorated --title=Diagnóstico --window-icon='favicon.ico' --columns=3')
OUT_PID=($IN_PID)
kill ${OUT_PID[1]}
;;
"DIAG_MOD_CLOSE")
#Fechar Janela do Modulo apos clique na falha no Diagnostico
IN_PID=$(ps aux|grep 'yad --form --title=Módulo de Segurança --columns=2')
OUT_PID=($IN_PID)
kill ${OUT_PID[1]}
;;
"DIAG_LIB_CLOSE")
#Fechar Janela das Libs necessarias apos clique na falha no Diagnostico
IN_PID=$(ps aux|grep 'yad --form --title=Dependências --columns=2')
OUT_PID=($IN_PID)
kill ${OUT_PID[1]}
;;
esac
}
export -f RELOAD_GUI
#********************************************************************************************************************************#
#========================================================INSTALL_GUI=============================================================#
function INSTALL_GUI() {
#LENDO O ARQUIVO HDA.tmp, PARA VERIFICAR SE INSTALL_GUI JÁ ESTÁ ABERTO
#TRUE ABERTO,FALSE FECHADO.
RELOAD_GUI "DIAG_MOD_CLOSE"
RELOAD_GUI "DIAG_CLOSE"
DISTRO_CHECK DIST_BITS
while read LINHA; do
if [[ $LINHA == "INSTALL_GUI: true" ]]; then
echo $LINHA
INSTALL_GUI=true
elif [[ $LINHA == "INSTALL_GUI: false" ]]; then
echo $LINHA
INSTALL_GUI=false
fi
done < /tmp/HDA.tmp
if [[ $INSTALL_GUI == false ]]; then
echo $(sed -i 's/INSTALL_GUI: false/INSTALL_GUI: true/' /tmp/HDA.tmp)
if [[ $DIST_BITS == "Ubuntu_x86_64" ]] || [[ $DIST_BITS == "Ubuntu_x86_32" ]]; then
fig="ubuntu.png"
elif [[ $DIST_BITS == "Mint_x86_64" ]] || [[ $DIST_BITS == "Mint_x86_32" ]]; then
fig="mint.png"
elif [[ $DIST_BITS == "Fedora_x86_64" ]] || [[ $DIST_BITS == "Fedora_x86_32" ]]; then
fig="fedora.png"
elif [[ $DIST_BITS == "openSUSE_x86_64" ]] || [[ $DIST_BITS == "openSUSE_x86_32" ]]; then
fig="opensuse.png"
fi
yad --form --undecorated --title="Instalação" --window-icon='favicon.ico' --columns="5" --center \
--on-top \
--text-align=center \
--buttons-layout=center \
--text "<big>Informe sua <b>Distribuição Linux</b></big>" \
--field " ":LBL ' ' \
--field "!$LOCAL/IMG/INSTALL/ubuntu.png! Ubuntu":BTN "bash -c 'INSTALL_WARSAW Ubuntu'" \
--field=" Ubuntu":LBL ' '\
--field=" ":LBL ' ' \
--field "!$LOCAL/IMG/INSTALL/mint.png! Mint":BTN "bash -c 'INSTALL_WARSAW Mint'" \
--field=" Mint":LBL ' ' \
--field=" ":CB '64 Bits!32 Bits' \
--field "!$LOCAL/IMG/INSTALL/fedora.png! Fedora":BTN "bash -c 'INSTALL_WARSAW Fedora'" \
--field=" Fedora":LBL ' ' \
--field=" ":LBL ' ' \
--field "!$LOCAL/IMG/INSTALL/opensuse.png! openSUSE":BTN "bash -c 'INSTALL_WARSAW openSUSE'" \
--field=" openSUSE":LBL ' ' \
--field=" ":LBL ' ' \
--field "!$LOCAL/IMG/INSTALL/$fig! Auto-Instalação":BTN "bash -c 'INSTALL_WARSAW Auto'" \
--field=" Auto-Instalação \n <b>$DIST_BITS</b>":LBL ' ' \
--button='gtk-ok':1
fi
echo $(sed -i 's/INSTALL_GUI: true/INSTALL_GUI: false/' /tmp/HDA.tmp)
}
export -f INSTALL_GUI
#********************************************************************************************************************************#
function PROXY_GUI() {
echo "PROXY_GUI: true" >> $HDA_TMP
yad --form --center \
--columns="2" \
--undecorated \
--title="Configurar Conexão" \
--image="accessories-text-editor" \
--field="HTTP:" "$HTTP" \
--field="Login:" "$USER" \
--field="Senha:":H "123456"\
--field="Porta:" "$PORT_HTTP" \
--field="Autenticar":CHK FALSE
}
export -f PROXY_GUI
#=======================================================DIAGNOSTICO_GUI==========================================================#
#CHECAR A INSTALAÇÃO E CONFIGURAÇÃO DO WARSAW
function DIAGNOSTICO_GUI() {
while read LINHA; do
if [[ $LINHA == "DIAGNOSTICO_GUI: true" ]]; then
echo $LINHA
DIAGNOSTICO_GUI=true
elif [[ $LINHA == "DIAGNOSTICO_GUI: false" ]]; then
echo $LINHA
DIAGNOSTICO_GUI=false
fi
done < /tmp/HDA.tmp
if [[ $DIAGNOSTICO_GUI == false ]]; then
echo $(sed -i 's/DIAGNOSTICO_GUI: false/DIAGNOSTICO_GUI: true/' /tmp/HDA.tmp)
#CHAMAR FUNCÕES QUE CHECAM PARAMETROS DE FUNCIONAMENTO
DIAGNOSTICO_CHECK $1 $2 warsaw_fig dist_fig socket_fig root_fig lib_fig folder_fig net_fig set_fig WARSAW ROOT CHAVELIBNSS3 WEBSOCKET CORE_FOLDER WARSAW_DESKTOP LD_LINUX_64 LD_LINUX UNINSTALL_CORE INIT_WARSAW LOCAL_CFG
#INTERFACE GRAFICA
if [[ $WARSAW == true ]] && [[ $ROOT == true ]] && [[ $CHAVELIBNSS3 == true ]] && [[ $WEBSOCKET == true ]] && [[ $CORE_FOLDER == true ]] && [[ $WARSAW_DESKTOP == true ]] && [[ $LD_LINUX_64 == true ]] && [[ $LD_LINUX == true ]] && [[ $UNINSTALL_CORE == true ]] && [[ $INIT_WARSAW == true ]] && [[ $LOCAL_CFG == true ]]; then
yad --form --undecorated --title="Diagnóstico" --window-icon='favicon.ico' --columns="3" --center \
--buttons-layout=center \
--text-align=center \
--on-top \
--text "<big><b>Diagnóstico</b></big>" \
--field="!$LOCAL/IMG/DIG/modulo.png!":BTN "" \
--field="!$LOCAL/IMG/DIG/distro_2.png!":BTN "" \
--field "!$LOCAL/IMG/DIG/net.png!":BTN "" \
--field="!$LOCAL/IMG/DIG/server.png!":BTN "" \
--field="!$LOCAL/IMG/DIG/socket.png!":BTN "" \
--field="!$LOCAL/IMG/DIG/user.png!":BTN "" \
--field="!$LOCAL/IMG/DIG/libs_2.png!":BTN "" \
--field="!$LOCAL/IMG/DIG/folder.png!":BTN "" \
--field="Módulo":LBL ' ' \
--field="Distribuição":LBL ' ' \
--field="Conexão":LBL ' ' \
--field="Servidor":LBL ' '\
--field="Socket":LBL ' '\
--field="Root":LBL ' ' \
--field="Depedências":LBL ' ' \
--field="Permissões":LBL ' ' \
--field="!$LOCAL/IMG/DIG/$warsaw_fig!":BTN "bash -c 'DIAGNOSTICO_SUB_GUI Modulo' " \
--field="!$LOCAL/IMG/DIG/$dist_fig!":BTN "bash -c 'DIAGNOSTICO_SUB_GUI Distro' " \
--field="!$LOCAL/IMG/DIG/$net_fig!":BTN "bash -c 'DIAGNOSTICO_SUB_GUI Conex' " \
--field="!$LOCAL/IMG/DIG/$seg_fig!":BTN "bash -c 'DIAGNOSTICO_SUB_GUI Server' " \
--field="!$LOCAL/IMG/DIG/$socket_fig!":BTN "bash -c 'DIAGNOSTICO_SUB_GUI Socket' " \
--field="!$LOCAL/IMG/DIG/$root_fig!":BTN "bash -c 'DIAGNOSTICO_SUB_GUI Root' " \
--field="!$LOCAL/IMG/DIG/$lib_fig!":BTN "bash -c 'DIAGNOSTICO_SUB_GUI Lib' " \
--field="!$LOCAL/IMG/DIG/$folder_fig!":BTN "bash -c 'DIAGNOSTICO_SUB_GUI Perm' " \
--button='gtk-ok':1
#echo $?
else
yad --form --undecorated --title="Diagnóstico" --window-icon='favicon.ico' --columns="3" --center \
--buttons-layout=center \
--text-align=center \
--on-top \
--text "<big><b>Diagnóstico</b></big>" \
--field="!$LOCAL/IMG/DIG/modulo.png!":BTN "" \
--field="!$LOCAL/IMG/DIG/distro_2.png!":BTN "" \
--field "!$LOCAL/IMG/DIG/net.png!":BTN "" \
--field="!$LOCAL/IMG/DIG/server.png!":BTN "" \
--field="!$LOCAL/IMG/DIG/socket.png!":BTN "" \
--field="!$LOCAL/IMG/DIG/user.png!":BTN "" \
--field="!$LOCAL/IMG/DIG/libs_2.png!":BTN "" \
--field="!$LOCAL/IMG/DIG/folder.png!":BTN "" \
--field="Módulo":LBL ' ' \
--field="Distribuição":LBL ' ' \
--field="Conexão":LBL ' ' \
--field="Servidor":LBL ' '\
--field="Socket":LBL ' '\
--field="Root":LBL ' ' \
--field="Depedências":LBL ' ' \
--field="Permissões":LBL ' ' \
--field="!$LOCAL/IMG/DIG/$warsaw_fig!":BTN "bash -c 'DIAGNOSTICO_SUB_GUI Modulo' " \
--field="!$LOCAL/IMG/DIG/$dist_fig!":BTN "bash -c 'DIAGNOSTICO_SUB_GUI Distro' " \
--field="!$LOCAL/IMG/DIG/$net_fig!":BTN "bash -c 'DIAGNOSTICO_SUB_GUI Conex' " \
--field="!$LOCAL/IMG/DIG/$seg_fig!":BTN "bash -c 'DIAGNOSTICO_SUB_GUI Server' " \
--field="!$LOCAL/IMG/DIG/$socket_fig!":BTN "bash -c 'DIAGNOSTICO_SUB_GUI Socket' " \
--field="!$LOCAL/IMG/DIG/$root_fig!":BTN "bash -c 'DIAGNOSTICO_SUB_GUI Root' " \
--field="!$LOCAL/IMG/DIG/$lib_fig!":BTN "bash -c 'DIAGNOSTICO_SUB_GUI Lib' " \
--field="!$LOCAL/IMG/DIG/$folder_fig!":BTN "bash -c 'DIAGNOSTICO_SUB_GUI Perm' " \
--button='gtk-ok':1
#echo $?
fi
fi
echo $?
echo $(sed -i 's/DIAGNOSTICO_GUI: true/DIAGNOSTICO_GUI: false/' /tmp/HDA.tmp)
}
export -f DIAGNOSTICO_GUI
#********************************************************************************************************************************#
#=====================================================DIAGNOSTICO_SUB_GUI========================================================#
function DIAGNOSTICO_SUB_GUI() {
#CONDIÇÕES DE FUNCIONAMENTO PARA WARSAW
PR_01='Módulo de Segurança'
PR_02='Distribuição'
PR_03='Conexão'
PR_04='Servidor'
PR_04='Servidor'
PR_05='Socket'
PR_06='Root'
PR_07='Dependências'
PR_08='Permissões'
#STATUS DE FUNCIONAMENTO DAS CONDIÇÕES DE FUNCIONAMENTO
SL_01='OK'
SL_02='OK'
SL_03='OK'
SL_04='OK'
SL_05='OK'
SL_06='OK'
SL_07='OK'
SL_08='OK'
#VERIFICAR OS
DISTRO_CHECK DIST BITS DIST_BITS
#VERIFICAR MODULOS
DIAGNOSTICO_CHECK $DIST_BITS WARSAW ROOT CHAVELIBNSS3 WEBSOCKET CORE_FOLDER WARSAW_DESKTOP LD_LINUX_64 LD_LINUX UNINSTALL_CORE INIT_WARSAW LOCAL_CFG NET SEG
if [[ $WARSAW == false ]]; then
SL_01='Instalar'
fi
if [[ $DIST != "Ubuntu" ]] && [[ $DIST != "Mint" ]] && [[ $DIST != "Fedora" ]] && [[ $DIST != "openSUSE" ]]; then
SL_02='Instale o .run'
fi
if [[ $WEBSOCKET == false ]]; then
SL_05='Nada à fazer'
fi
if [[ $ROOT == false ]]; then
SL_06='Autenticar'
fi
if [[ $CHAVELIBNSS3 == false ]]; then
SL_07='Instalar'
fi
if [[ $CORE_FOLDER == false ]] || [[ $WARSAW_DESKTOP == false ]] || [[ $LD_LINUX_64 == false ]] || [[ $LD_LINUX == false ]] || [[ $UNINSTALL_CORE == false ]] || [[ $INIT_WARSAW == false ]] || [[ $LOCAL_CFG == false ]]; then
SL_08='Mudar permissões'
fi
while read LINHA; do
if [[ $LINHA == "DIAG_SUB_GUI_MODULO: false" ]]; then
MODULO=false
fi
if [[ $LINHA == "DIAG_SUB_GUI_DISTRO: false" ]]; then
DISTRO=false
fi
if [[ $LINHA == "DIAG_SUB_GUI_CONEX: false" ]]; then
CONEX=false
fi
if [[ $LINHA == "DIAG_SUB_GUI_SERVER: false" ]]; then
SERVER=false
fi
if [[ $LINHA == "DIAG_SUB_GUI_SOCKET: false" ]]; then
SOCKET=false
fi
if [[ $LINHA == "DIAG_SUB_GUI_ROOT: false" ]]; then
WROOT=false
fi
if [[ $LINHA == "DIAG_SUB_GUI_LIB: false" ]]; then
LIB=false
fi
if [[ $LINHA == "DIAG_SUB_GUI_PERM: false" ]]; then
PERM=false
fi
if [[ $LINHA == "DIAG_SUB_GUI_ALL: false" ]]; then
ALL=false
fi
done < /tmp/HDA.tmp
#$1 É REFERENTE A OPÇÃO DE MENU EM DIAGNOSTICO_GUI
case $1 in
"Modulo")
if [[ $MODULO == false ]]; then
echo $(sed -i 's/DIAG_SUB_GUI_MODULO: false/DIAG_SUB_GUI_MODULO: true/' /tmp/HDA.tmp)
if [[ $WARSAW != true ]]; then
yad --form --title="Módulo de Segurança" --columns="2" --image="$LOCAL/IMG/DIG/modulo.png" --undecorated --center \
--buttons-layout=center --text-align=center --width=300 --align=center --on-top \
--text "O modulo de segurança não está instalado.\n" \
--field="<b>Instalar</b>":BTN "bash -c 'INSTALL_GUI $DIST_BITS'" \
--button="gtk-ok":1
fi
fi
echo $(sed -i 's/DIAG_SUB_GUI_MODULO: true/DIAG_SUB_GUI_MODULO: false/' /tmp/HDA.tmp)
;;
"Distro")
if [[ $DISTRO == false ]]; then
echo $(sed -i 's/DIAG_SUB_GUI_DISTRO: false/DIAG_SUB_GUI_DISTRO: true/' /tmp/HDA.tmp)
if [[ $DIST != "Ubuntu" ]] && [[ $DIST != "Mint" ]] && [[ $DIST != "Fedora" ]] && [[ $DIST != "openSUSE" ]]; then
yad --form --title="Distribuição" --columns="2" --undecorated --center \
--buttons-layout=center --text-align=center --width=300 --align=center \
--on-top \
--text "<big><b></b></big>\n\nSua distribuição não é suportada!" \
--button="gtk-ok":1
fi
echo $(sed -i 's/DIAG_SUB_GUI_DISTRO: true/DIAG_SUB_GUI_DISTRO: false/' /tmp/HDA.tmp)
fi
;;
"Conex")
if [[ $CONEX == false ]]; then
echo $(sed -i 's/DIAG_SUB_GUI_CONEX: false/DIAG_SUB_GUI_CONEX: true/' /tmp/HDA.tmp)
if [[ $NET != true ]]; then
yad --form --title="Conexão" --undecorated --center --image="$LOCAL/IMG/DIG/net.png" \
--buttons-layout=center --text-align=center --width=300 --align=center --on-top \
--text "<big><b></b></big>\n\nInternet não encontrada.\n\nVerifique configurações de proxy do sistema." \
--button="gtk-ok":1
fi
echo $(sed -i 's/DIAG_SUB_GUI_CONEX: true/DIAG_SUB_GUI_CONEX: false/' /tmp/HDA.tmp)
fi
;;
"Server")
if [[ $SERVER == false ]]; then
echo $(sed -i 's/DIAG_SUB_GUI_SERVER: false/DIAG_SUB_GUI_SERVER: true/' /tmp/HDA.tmp)
if [[ $SEG != true ]]; then
yad --form --title="Server" --undecorated --center --image="$LOCAL/IMG/DIG/server.png" \
--buttons-layout=center --text-align=center --width=300 --align=center \
--on-top \
--text "<big><b></b></big>\n\nServidor não encontrado.\n\nVerifique configurações de proxy do sistema." \
--button="gtk-ok":1
fi
echo $(sed -i 's/DIAG_SUB_GUI_SERVER: true/DIAG_SUB_GUI_SERVER: false/' /tmp/HDA.tmp)
fi
;;
"Socket")
if [[ $SOCKET == false ]]; then
echo $(sed -i 's/DIAG_SUB_GUI_SOCKET: false/DIAG_SUB_GUI_SOCKET: true/' /tmp/HDA.tmp)
if [[ $WARSAW == true ]]; then
if [[ $WEBSOCKET != true ]]; then
SL_05='Nada à fazer'
yad --form --title="Socket" --undecorated --center --image="$LOCAL/IMG/DIG/socket.png" \
--buttons-layout=center --text-align=center --width=300 --align=center \
--on-top \
--text "\n\nNão foi possível conectar\nao Websocket.\n\nReinstale o componente!" \
--button="gtk-ok":1
fi
else
yad --form --title="Módulo de Segurança" --columns="2" --image="$LOCAL/IMG/DIG/modulo.png" --undecorated --center \
--buttons-layout=center --text-align=center --width=300 --align=center --on-top \
--text "O modulo de segurança não está instalado.\n" \
--field="<b>Instalar</b>":BTN "bash -c 'INSTALL_GUI $DIST_BITS'" \
--button="gtk-ok":1
fi
echo $(sed -i 's/DIAG_SUB_GUI_SOCKET: true/DIAG_SUB_GUI_SOCKET: false/' /tmp/HDA.tmp)
fi
;;
"Root")
if [[ $WROOT == false ]]; then
echo "WROOT" $WROOT
echo $(sed -i 's/DIAG_SUB_GUI_ROOT: false/DIAG_SUB_GUI_ROOT: true/' /tmp/HDA.tmp)
if [[ $ROOT != true ]]; then
yad --form --title="Root" --columns="2" --image="$LOCAL/IMG/DIG/user.png" --undecorated --center \
--on-top \
--text "<big><b>Root</b></big>\n\nVocê não está autenticado como Root." \
--field="!$LOCAL/IMG/DIG/locked_64.png! Autenticar!":BTN "bash -c ROOT_LOGIN" \
--field="<b>Autenticar</b>":LBL ' ' \
--button="gtk-ok":1
fi
echo $(sed -i 's/DIAG_SUB_GUI_ROOT: true/DIAG_SUB_GUI_ROOT: false/' /tmp/HDA.tmp)
fi
;;
"Lib")
if [[ $LIB == false ]]; then
echo $(sed -i 's/DIAG_SUB_GUI_LIB: false/DIAG_SUB_GUI_LIB: true/' /tmp/HDA.tmp)
if [[ $CHAVELIBNSS3 != true ]]; then
yad --form --title="Dependências" --columns="2" --image="$LOCAL/IMG/DIG/libs_2.png" --undecorated --center \
--buttons-layout=center --text-align=center --width=300 --align=center --on-top \
--text "As depedências nescessárias não estão instaladas!\n" \
--field="<b>Instalar</b>":BTN "bash -c 'LIB_WARSAW_INSTALL'" \
--button="gtk-ok":1
fi
echo $(sed -i 's/DIAG_SUB_GUI_LIB: true/DIAG_SUB_GUI_LIB: false/' /tmp/HDA.tmp)
fi
;;
"Perm")
if [[ $PERM == false ]]; then
echo $(sed -i 's/DIAG_SUB_GUI_PERM: false/DIAG_SUB_GUI_PERM: true/' /tmp/HDA.tmp)
if [[ $WARSAW == true ]]; then
if [[ $CORE_FOLDER != true ]] || [[ $WARSAW_DESKTOP != true ]] || [[ $LD_LINUX_64 != true ]] || [[ $LD_LINUX != true ]] || [[ $UNINSTALL_CORE != true ]] || [[ $INIT_WARSAW != true ]] || [[ $LOCAL_CFG != true ]]; then
yad --form --title="Permissões" --columns="2" --image="$LOCAL/IMG/DIG/folder.png" --undecorated --center \
--buttons-layout=center --text-align=center --width=300 --align=center --on-top \
--text "Os diretórios utilizados não \nestão com as permissões corretas.!\n" \
--field="<b>Permissionar</b>":BTN "bash -c PERMS_VALID" \
--button="gtk-ok":1
fi
else
yad --form --title="Módulo de Segurança" --columns="2" --image="$LOCAL/IMG/DIG/modulo.png" --undecorated --center \
--buttons-layout=center --text-align=center --width=300 --align=center --on-top \
--text "O modulo de segurança não está instalado.\n" \
--field="<b>Instalar</b>":BTN "bash -c 'INSTALL_GUI $DIST_BITS'" \
--button="gtk-ok":1
fi
echo $(sed -i 's/DIAG_SUB_GUI_PERM: true/DIAG_SUB_GUI_PERM: false/' /tmp/HDA.tmp)
fi
;;
"All")
if [[ $ALL == false ]]; then
echo $(sed -i 's/DIAG_SUB_GUI_ALL: false/DIAG_SUB_GUI_ALL: true/' /tmp/HDA.tmp)
yad --list \
--title='Correções' --width=500 --height=500 \
--on-top \
--image-on-top --borders=50 \
--undecorated --sticky --center \
--image="$LOCAL/IMG/DIG/bug-64.png"\
--text="Os seguintes problemas devem ser corrigidos:\nDeseja tentar Corrigir?" \
--button='gtk-cancel':1 --button='gtk-ok':0 \
--column='OP':NUM --column='Requisitos':TEXT --column='Opções':TEXT\
1 "$PR_01" "$SL_01"\
2 "$PR_02" "$SL_02"\
3 "$PR_03" "$SL_03"\
4 "$PR_04" "$SL_04"\
5 "$PR_05" "$SL_05"\
6 "$PR_06" "$SL_06"\
7 "$PR_07" "$SL_07"\
8 "$PR_08" "$SL_08"
echo $(sed -i 's/DIAG_SUB_GUI_ALL: true/DIAG_SUB_GUI_ALL: false/' /tmp/HDA.tmp)
fi
if [[ $? == 1 ]];then
AUTO_DIAG
fi
;;
esac
}
export -f DIAGNOSTICO_SUB_GUI
#********************************************************************************************************************************#
#==========================================================AJUDA_GUI=============================================================#
#AJUDA,SEG BB.
function AJUDA_GUI() {
echo "$(firefox https://seg.bb.com.br/duvidas.html)"
}
export -f AJUDA_GUI
#********************************************************************************************************************************#
#==========================================================SAIR_GUI==============================================================#
#FECHAR JANELAS GRÁFICAS
function SAIR_GUI() {
case $1 in
#JANELA PRINCIPAL
"Main")
#CHECAR APLICATIVOS ABERTO PARA FECHAR NA SAIDA DO MAIN
while read LINHA; do
if [[ $LINHA == "ROOT: true" ]]; then
IN_PID=$(ps aux|grep 'yad --form --title=Root')
OUT_PID=($IN_PID)
kill ${OUT_PID[1]}
fi
if [[ $LINHA == "INSTALL_GUI: true" ]]; then
IN_PID=$(ps aux|grep 'yad --form --undecorated --title=Instalação')
OUT_PID=($IN_PID)
kill ${OUT_PID[1]}
fi
if [[ $LINHA == "DIAGNOSTICO_GUI: true" ]]; then
IN_PID=$(ps aux|grep 'yad --form --undecorated --title=Diagnóstico')
OUT_PID=($IN_PID)
kill ${OUT_PID[1]}
fi
if [[ $LINHA == "DIAG_SUB_GUI_MODULO: true" ]]; then
IN_PID=$(ps aux|grep 'yad --form --title=Módulo de Segurança')
OUT_PID=($IN_PID)
kill ${OUT_PID[1]}
fi
if [[ $LINHA == "DIAG_SUB_GUI_DISTRO: true" ]]; then
IN_PID=$(ps aux|grep 'yad --form --title=Distribuição')
OUT_PID=($IN_PID)
kill ${OUT_PID[1]}
fi
if [[ $LINHA == "DIAG_SUB_GUI_CONEX: true" ]]; then
IN_PID=$(ps aux|grep 'yad --form --title=Conexão')
OUT_PID=($IN_PID)
kill ${OUT_PID[1]}
fi
if [[ $LINHA == "DIAG_SUB_GUI_SERVER: true" ]]; then
IN_PID=$(ps aux|grep 'yad --form --title=Server')
OUT_PID=($IN_PID)
kill ${OUT_PID[1]}
fi
if [[ $LINHA == "DIAG_SUB_GUI_SOCKET: true" ]]; then
IN_PID=$(ps aux|grep 'yad --form --title=Socket')
OUT_PID=($IN_PID)
kill ${OUT_PID[1]}
fi
if [[ $LINHA == "DIAG_SUB_GUI_ROOT: true" ]]; then
IN_PID=$(ps aux|grep 'yad --form --title=Root')
OUT_PID=($IN_PID)
kill ${OUT_PID[1]}
fi
if [[ $LINHA == "DIAG_SUB_GUI_LIB: true" ]]; then
IN_PID=$(ps aux|grep 'yad --form --title=Depedências')
OUT_PID=($IN_PID)
kill ${OUT_PID[1]}
fi
if [[ $LINHA == "DIAG_SUB_GUI_PERM: true" ]]; then
IN_PID=$(ps aux|grep 'yad --form --title=Permissões')
OUT_PID=($IN_PID)
kill ${OUT_PID[1]}
fi
done < /tmp/HDA.tmp
in_pid=$(ps aux|grep ''$LOCAL'/./HDA_BB')
out_pid=($in_pid)
in_pid=$(ps aux|grep 'yad --form --undecorated --title=Segurança BB --no-buttons --geometry=+0+0 --columns=5')
out_pid=($in_pid)
in_pid_2=$(ps aux|grep 'yad --form --undecorated --title=Segurança BB')
out_pid_2=($in_pid_2)
echo $(rm /tmp/HDA.tmp)
kill ${out_pid[1]} && kill ${out_pid_2[1]}
exit 0
;;
esac
echo $(clear)
}
export -f SAIR_GUI
#********************************************************************************************************************************#
#===========================================================MAIN=================================================================#
function MAIN() {
DISTRO_CHECK DIST BITS DIST_BITS
#WARSAW_CHECK $DIST_BITS WARSAW
#ROOT_CHECK ROOT
if [[ $DIST == "openSUSE" ]];then
rpm -qa | grep yad >> /dev/null
if [[ $? == 1 ]]; then
usuario=`whoami`
if [[ "$usuario=" == root ]]; then
SUCESS="false"
while [[ $SUCESS == "false" ]]; do
if [[ $BITS == "x86_32" ]];then
progress=$(kdialog --progressbar "Instalando dependências" 2);
qdbus $progress Set "" value 1 > /dev/null;
kdialog --title "HDA BB" --passivepopup \
"Instalando dependências" 10
$(rpm -i /usr/local/bin/HDA_BB/YAD/yad-0.38.0-2.2.i586.rpm)
if [[ $? == 0 ]]; then
SUCESS="true"
else
SUCESS="false"
fi
qdbus $progress Set "" value 2 > /dev/null;
sleep 1;
qdbus $progress close > /dev/null;
if [[ $SUCESS == true ]]; then
kdialog --title "HDA BB" --passivepopup \
"A instalação das dependências foi concluída com sucesso" 10
elif [[ $SUCESS == false ]]; then
kdialog --error "A instalação das dependências falhou";
kdialog --title "A instalação das dependências falhou" --yesno "Tentar novamente instalar as dependências?"
if [[ $? == 1 ]]; then
exit
echo $(rm /tmp/HDA.tmp)
fi
fi
elif [[ $BITS == "x86_64" ]];then
progress=$(kdialog --progressbar "Instalando dependências" 2);
qdbus $progress Set "" value 1 > /dev/null;
kdialog --title "HDA BB" --passivepopup \
"Instalando dependências" 10
$(rpm -i /usr/local/bin/HDA_BB/YAD/yad-0.38.0-2.2.x86_64.rpm)
if [[ $? == 0 ]]; then
SUCESS="true"
else
SUCESS="false"
fi
qdbus $progress Set "" value 2 > /dev/null;
sleep 1;
qdbus $progress close > /dev/null;
if [[ $SUCESS == true ]]; then
kdialog --title "HDA BB" --passivepopup \
"A instalação das dependências foi concluída com sucesso" 10
elif [[ $SUCESS == false ]]; then
kdialog --error "A instalação das dependências falhou";
kdialog --title "A instalação das dependências falhou" --yesno "Tentar novamente instalar as dependências?"
if [[ $? == 1 ]]; then
exit
echo $(rm /tmp/HDA.tmp)
fi
fi
fi
done
else
SENHA_CHECK="false"
while [[ $SENHA_CHECK == "false" ]]; do
PASS=$(kdialog --password "A ação solicitada precisa de <b>prívilegios de superusuário</b>. Digite abaixo a senha do <b>superusuário (root)</b>:" --title "Executar como root");
if [ "$?" == 1 ]; then
exit
echo $(rm /tmp/HDA.tmp)
fi
echo $PASS | sudo -S su root /dev/null
if [ "$?" == 0 ]; then
SENHA_CHECK="true"
echo $(sed -i 's/ROOTPW: false/ROOTPW: '$PASS'/' /tmp/HDA.tmp)
echo $(sed -i 's/ROOT: false/ROOT: true/' /tmp/HDA.tmp)
echo $(chmod 777 /tmp/HDA.tmp)
elif [ "$?" == 1 ]; then
kdialog --error "Senha incorreta";
SENHA_CHECK="false"
else
kdialog --error "Senha incorreta";
SENHA_CHECK="false"
fi
done
SUCESS="false"
while [[ $SUCESS == "false" ]]; do
if [[ $BITS == "x86_32" ]];then
kdialog --title "HDA BB" --passivepopup \
"Instalando dependências" 10
progress=$(kdialog --progressbar "Instalando dependências" 2);
qdbus $progress Set "" value 1 > /dev/null;
echo $PASS | sudo -S rpm -i /usr/local/bin/HDA_BB/YAD/yad-0.38.0-2.2.i586.rpm
if [[ $? == 0 ]]; then
SUCESS="true"
elif [[ $SUCESS == false ]]; then
SUCESS="false"
fi
qdbus $progress Set "" value 2 > /dev/null;
sleep 1;
qdbus $progress close > /dev/null;
if [[ $SUCESS == true ]]; then
kdialog --title "HDA BB" --passivepopup \
"A instalação das dependências foi concluída com sucesso" 10
elif [[ $SUCESS == false ]]; then
kdialog --error "A instalação das dependências falhou";
kdialog --title "A instalação das dependências falhou" --yesno "Tentar novamente instalar as dependências?"
if [[ $? == 1 ]]; then
exit
echo $(rm /tmp/HDA.tmp)
fi
fi
elif [[ $BITS == "x86_64" ]];then
kdialog --title "HDA BB" --passivepopup \
"Instalando dependências" 10
progress=$(kdialog --progressbar "Instalando dependências" 2);
qdbus $progress Set "" value 1 > /dev/null;
echo $PASS | sudo -S rpm -i /usr/local/bin/HDA_BB/YAD/yad-0.38.0-2.2.x86_64.rpm
if [[ $? == 0 ]]; then
SUCESS="true"
else
SUCESS="false"
fi
qdbus $progress Set "" value 2 > /dev/null;
sleep 1;
qdbus $progress close > /dev/null;
if [[ $SUCESS == true ]]; then
kdialog --title "HDA BB" --passivepopup \
"A instalação das dependências foi concluída com sucesso" 10
elif [[ $SUCESS == false ]]; then
kdialog --error "A instalação das dependências falhou";
kdialog --title "A instalação das dependências falhou" --yesno "Tentar novamente instalar as dependências?"
if [[ $? == 1 ]]; then
exit
echo $(rm /tmp/HDA.tmp)
fi
fi
fi
done
fi
fi
fi
#DISTRO_CHECK DIST BITS DIST_BITS
WARSAW_CHECK $DIST_BITS WARSAW
ROOT_CHECK ROOT
while read LINHA; do
if [[ $LINHA == "DIAG_SUB_GUI_ROOT: true" ]]; then
echo $LINHA
ROOT_GUI=true
elif [[ $LINHA == "DIAG_SUB_GUI_ROOT: false" ]]; then
echo $LINHA
ROOT_GUI=false
fi
done < /tmp/HDA.tmp
if [[ $ROOT == true ]] || [[ $ROOT_GUI == true ]];then
un_lock=lock-24.png
else
un_lock=unlock-24.png
fi
if [[ $ROOT == true ]]; then
yad --form --undecorated --title="Segurança BB" --no-buttons --geometry="+0+0" \
--columns="5" \
--field=" ":LBL ' ' \
--field="!$LOCAL/IMG/MAIN/Install.png! Instalar!":BTN "bash -c 'INSTALL_GUI'" \
--field=" Instalar":LBL ' ' \
--field=" ":LBL ' ' \
--field="!$LOCAL/IMG/MAIN/Remove.png! Remover!":BTN "bash -c 'REMOVE_WARSAW'" \
--field=" Remover":LBL ' ' \
--field=" ":LBL ' ' \
--field="!$LOCAL/IMG/MAIN/Diagnostico.png! Diagnostico!":BTN "bash -c 'DIAGNOSTICO_GUI $DIST_BITS $ROOT'" \
--field=" Diagnostico":LBL ' ' \
--field=" ":LBL ' ' \
--field="!$LOCAL/IMG/MAIN/Ajuda.png! Ajuda!":BTN "bash -c AJUDA_GUI" \
--field=" Ajuda":LBL ' ' \
--field="!$LOCAL/IMG/MAIN/$un_lock! Desbloquear!":BTN "bash -c 'ROOT_LOGIN true MAIN'" \
--field="!$LOCAL/IMG/MAIN/Exit.png! Sair!":BTN "bash -c 'SAIR_GUI Main'" \
--field=" Sair":LBL ' '
elif [[ $ROOT == false ]]; then
yad --form --undecorated --title="Segurança BB" --no-buttons --geometry="+0+0" \
--columns="5" \
--field=" ":LBL ' ' \
--field="!$LOCAL/IMG/MAIN/Install.png! Instalar!":BTN "bash -c 'ROOT_LOGIN true MAIN INST'" \
--field=" Instalar":LBL ' ' \
--field=" ":LBL ' ' \
--field="!$LOCAL/IMG/MAIN/Remove.png! Remover!":BTN "bash -c 'ROOT_LOGIN true MAIN REMO'" \
--field=" Remover":LBL ' ' \
--field=" ":LBL ' ' \
--field="!$LOCAL/IMG/MAIN/Diagnostico.png! Diagnostico!":BTN "bash -c 'ROOT_LOGIN true MAIN DIAG'" \
--field=" Diagnostico":LBL ' ' \
--field=" ":LBL ' ' \
--field="!$LOCAL/IMG/MAIN/Ajuda.png! Ajuda!":BTN "bash -c AJUDA_GUI" \
--field=" Ajuda":LBL ' ' \
--field="!$LOCAL/IMG/MAIN/$un_lock! Desbloquear!":BTN "bash -c 'ROOT_LOGIN true MAIN'" \
--field="!$LOCAL/IMG/MAIN/Exit.png! Sair!":BTN "bash -c 'SAIR_GUI Main'" \
--field=" Sair":LBL ' '
fi
}
export -f MAIN
#********************************************************************************************************************************#
#ARQUIVO TEMPORARIO DE VARIAVES
HDA_TMP=/tmp/HDA.tmp
export HDA_TMP
ROOT_CHECK ROOT
#GRAVA OS ESTADOS DAS VARIAVES NO ARQUIVO TEMPORARIO "/tmp/HDA.tmp"
echo "MAIN: true" >> $HDA_TMP
if [[ $ROOT == "true" ]]; then
echo "ROOT: true" >> $HDA_TMP
else
echo "ROOT: false" >> $HDA_TMP
fi
echo "ROOTPW: false" >> $HDA_TMP
echo "INSTALL_GUI: false" >> $HDA_TMP
echo "DIAGNOSTICO_GUI: false" >> $HDA_TMP
echo "DIAG_SUB_GUI_MODULO: false" >> $HDA_TMP
echo "DIAG_SUB_GUI_DISTRO: false" >> $HDA_TMP
echo "DIAG_SUB_GUI_CONEX: false" >> $HDA_TMP
echo "DIAG_SUB_GUI_SERVER: false" >> $HDA_TMP
echo "DIAG_SUB_GUI_SOCKET: false" >> $HDA_TMP
echo "DIAG_SUB_GUI_ROOT: false" >> $HDA_TMP
echo "DIAG_SUB_GUI_LIB: false" >> $HDA_TMP
echo "DIAG_SUB_GUI_PERM: false" >> $HDA_TMP
echo "DIAG_SUB_GUI_ALL: false" >> $HDA_TMP
#ARQUIVO DE LOG
#LOG=/var/log/hdabb.log
#export LOG
LOCAL="/usr/local/bin/HDA_BB"
export LOCAL
#Chamada se quiser user sempre root
#ROOT_LOGIN true
#CHAMADA DA FUNCAO MAIN
MAIN
[Desktop Entry]
Name=HDA_BB
Comment=Change the background and the theme
Exec=hda_bb
Icon=/usr/local/bin/HDA_BB/ICON/Shield_BB.png
Terminal=false
Type=Application
StartupNotify=true
Categories=GNOME;GTK;Settings;DesktopSettings;X-Unity-Settings-Panel;X-GNOME-PersonalSettings
OnlyShowIn=Unity;
#X-Unity-Settings-Panel=appearance
Keywords=Wallpaper;Background;Screen;Desktop;Theme;Appearance;Launcher;Unity;Menus;
X-Ubuntu-Gettext-Domain=unity-control-center
Name[pt_BR]=HDA_BB
Comment[pt_BR]=HDA Linux 0.1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment