#!/usr/bin/env bash #shellcheck disable=SC2155,SC2034,SC2256 #shellcheck source=/dev/null # /usr/share/bigbashview/bcc/apps/big-store/view_snap.sh.htm # Description: Control Center to help usage of BigLinux # # Created: 2022/02/28 # Altered: 2023/09/25 # # Copyright (c) 2023-2023, Vilmar Catafesta # 2022-2023, Bruno Gonçalves # 2022-2023, Rafael Ruscher # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # 1. Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # 2. Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES # OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. # IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT # NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. APP="${0##*/}" _VERSION_="1.0.0-20230925" export BOOTLOG="/tmp/bigcontrolcenter-$USER-$(date +"%d%m%Y").log" export LOGGER='/dev/tty8' export HOME_FOLDER="$HOME/.bigstore" export TMP_FOLDER="/tmp/bigstore-$USER" LIBRARY=${LIBRARY:-'/usr/share/bigbashview/bcc/shell'} [[ -f "${LIBRARY}/bcclib.sh" ]] && source "${LIBRARY}/bcclib.sh" [[ -f "${LIBRARY}/bstrlib.sh" ]] && source "${LIBRARY}/bstrlib.sh" function sh_config { #Translation export TEXTDOMAINDIR="/usr/share/locale" export TEXTDOMAIN=big-store declare -g snap_info_file="$TMP_FOLDER/snap_info.txt" declare -g Executar=$"Executar" declare -g Remover=$"Remover" declare -g Instalar=$"Instalar" declare -g Instalando=$"Instalando" declare -g Cancelar=$"Cancelar" declare -g Removendo=$"Removendo" declare -g Programas_Snap=$"Programas Snap" declare -g Fechar=$"Fechar" declare -g Pacote=$"Pacote:" declare -g Versao=$"Versão disponível:" declare -g Licenca=$"Licença:" declare -g Repositorio=$"Repositório:" declare -g Empacotador=$"Empacotador:" declare -g AUR=$"AUR" } function SNAP_INFO() { jq -r ."${1}" "$snap_info_file"; } function SNAP_ICON() { jq -r '.media[] | select(.type == "icon" ) | .url' "$snap_info_file"; } function SNAP_SCREENSHOT() { jq -r '.media[] | select(.type == "screenshot" ) | .url' "$snap_info_file" | grep -v banner; } function sh_main { jq -r "._embedded.\"clickindex:package\"[] | select(.snap_id == \"$pkg_id\" )" "$(grep -rl "$pkg_id" "$HOME_FOLDER/snap_list_files/")" | jq -s .[0] >"$snap_info_file" if [[ "$pkg_install" = "y" ]]; then ACTION="install_snap" PACKAGE_NAME="$(SNAP_INFO package_name)" sh_run_action "$ACTION" "$WINDOW_ID" "$PACKAGE_NAME" "$PACKAGE_ID" "$REPOSITORY" "$DRIVER" fi if [[ "$pkg_remove" = "y" ]]; then ACTION="remove_snap" PACKAGE_NAME="$(SNAP_INFO package_name)" sh_run_action "$ACTION" "$WINDOW_ID" "$PACKAGE_NAME" "$PACKAGE_ID" "$REPOSITORY" "$DRIVER" fi cat <<-EOF
$Instalando
$Removendo
EOF source header.sh.htm # SNAP_INSTALLED_LIST="|$(snap list | cut -f1 -d" " | tail -n +2 | tr '\n' '|')" SNAP_INSTALLED_LIST="|$(awk 'NR>1 {printf "%s|", $1} END {printf "\b\n"}' <(snap list))" cat <<-EOF
$Programas_Snap
EOF TITLE="$(SNAP_INFO title)" if [[ -n "$(SNAP_ICON)" ]]; then echo '
' else echo "
${TITLE:0:3}
" fi cat <<-EOF
$TITLE
$(SNAP_INFO summary)
EOF if [[ "$(echo "$SNAP_INSTALLED_LIST" | grep -i -m1 "|$(SNAP_INFO package_name)|")" != "" ]]; then cat <<-EOF
EOF else cat <<-EOF
EOF fi #
echo '
' #Confere se a igualdade é verdadeira if [[ -n "$(SNAP_SCREENSHOT)" ]]; then echo '

' for i in $(SNAP_SCREENSHOT); do echo "
" done cat <<-EOF

EOF fi cat <<-EOF
$(SNAP_INFO description)
$Pacote
$(SNAP_INFO package_name)
$Versao
$(SNAP_INFO version)
$Licenca
$(SNAP_INFO license)
$Repositorio
$AUR
$Empacotador
$(SNAP_INFO developer_name)
EOF } #sh_debug sh_config sh_main "$@"