#!/usr/bin/env bash #shellcheck disable=SC2155,SC2034,SC1135,SC2256 #shellcheck source=/dev/null # /usr/share/bigbashview/bcc/apps/big-store/header.sh.htm # Description: Control Center to help usage of BigLinux # # Created: 2020/11/01 # Altered: 2024/08/04 # # Copyright (c) 2023-2024, 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-20240805 - 23:23" LIBRARY=${LIBRARY:-'/usr/share/bigbashview/bcc/shell'} [[ -f "${LIBRARY}/bcclib.sh" ]] && source "${LIBRARY}/bcclib.sh" [[ -f "${LIBRARY}/tinilib.sh" ]] && source "${LIBRARY}/tinilib.sh" [[ -f "${LIBRARY}/bstrlib.sh" ]] && source "${LIBRARY}/bstrlib.sh" function sh_header_sh_htm_config() { #Translation export TEXTDOMAINDIR='/usr/share/locale' export TEXTDOMAIN=big-store declare -g ABOUT_APPSTREAM=$" Programas nativos possuem uma integração mais robusta com o sistema operacional.
Eles passam por extensos testes antes de serem disponibilizados, garantindo uma maior confiabilidade.
Por essas razões, optar por um programa nativo é especialmente recomendado quando o software desejado
está disponível em várias opções de instalação.
" declare -g ABOUT_AUR=$" Programas AUR são scripts criados por usuários
para instalar programas que não estão disponíveis
diretamente nos repositórios nativos do sistema.
Os programas instalados por esse método funcionam
bem, mas não passam pelos mesmos testes feitos
com os programas nativos." declare -g ABOUT_FLATPAK=$" Programas Flatpak, são disponibilizados para todas as
distribuições Linux, geralmente são mantidos pelos próprios
criadores dos programas, porém, não possuem algumas
otimizações e integrações com o sistema, como ocorre com
os programas nativos, essa pode ser uma boa alternativa
para quem tem computadores que possuem boa capacidade
de processamento e armazenamento." declare -g ABOUT_SNAP=$" Programas Snap, assim como o Flatpak
disponibiliza programas para todas as distribuições Linux.
Tende a ser mais pesado e menos integrado ao sistema, mas
se o programa que você procura está disponível apenas neste
formato, utilize-o." declare -g ABOUT_MODE_SIMPLE=$" Exibe apenas programas selecionados
e oculta resultados que são úteis
apenas a usuários avançados." declare -g ABOUT_SEARCH_RESULT=$" Ligado : inclui também a descrição dos pacotes na pesquisa
Desligado : pesquisa apenas os nomes dos pacotes
Funcional apenas para termos de pesquisa digitados, não é compatível com o modo categoria." declare -g TYPE_SEARCH=$"Procurar aplicativo" declare -g MODE_SIMPLE=$"Modo Simplificado" declare -g Nativos_text=$"Nativos" declare -g ProgressMessage=$"Aplicando - Aguarde" # declare -g Inicio=$"Início" declare -g Configuracoes=$"Configurações" declare -g Internet=$"Internet" declare -g Escritorio=$"Escritório" declare -g Graficos=$"Gráficos" declare -g Multimidia=$"Multimídia" declare -g Jogos=$"Jogos" declare -g Sistema=$"Sistema" declare -g Desenvolvimento=$"Desenvolvimento" declare -g Sobre=$"Sobre" # declare -g Programas_Nativos=$"Programas Nativos" declare -g Programas_AUR=$"Programas AUR" declare -g Programas_Flatpak=$"Programas Flatpak" declare -g Programas_Snap=$"Programas Snap" declare -g X_Sistema=$"X-Sistema" declare -g Imagem=$"Imagem" declare -g Video=$"Vídeo" declare -g Audio=$"Audio" export appstream_checkbox export aur_checkbox export flatpak_checkbox export snap_checkbox declare -g resultFilter_checkbox declare -g searchFilter_checkbox declare -g SUB_CATEGORY } function sh_header_sh_htm_process_category() { case "$category" in 3d) SUB_CATEGORY=$"Edição 3D e CAD" ;; audioplayer) SUB_CATEGORY=$"Reprodutores de áudio" ;; audioconvert) SUB_CATEGORY=$"Gravadores e conversores de áudio" ;; audioeditor) SUB_CATEGORY=$"Editores de áudio" ;; book) SUB_CATEGORY=$"Visualizadores de PDF, Epub, e-books e mais" ;; browser) SUB_CATEGORY=$"Navegadores" ;; calendar) SUB_CATEGORY=$"Agenda de tarefas e contatos" ;; cloud) SUB_CATEGORY=$"Armazenamento nas nuvens" ;; deveditor) SUB_CATEGORY=$"Editores de código e IDE" ;; devbd) SUB_CATEGORY=$"Banco de dados" ;; devgames) SUB_CATEGORY=$"Criadores de jogos" ;; devwebserver) SUB_CATEGORY=$"Servidores WEB" ;; download) SUB_CATEGORY=$"Download" ;; dvd) SUB_CATEGORY=$"Gravadores e copiadores de CD e DVD" ;; fonts) SUB_CATEGORY=$"Fontes (Tipografia)" ;; gamearcade) SUB_CATEGORY=$"Ação/Arcade" ;; gameboard) SUB_CATEGORY=$"Tabuleiro" ;; gamecard) SUB_CATEGORY=$"Cartas" ;; gameeducational) SUB_CATEGORY=$"Educacional" ;; gameemulator) SUB_CATEGORY=$"Emuladores" ;; gamemanager) SUB_CATEGORY=$"Gerenciadores de jogos" ;; gamepuzzle) SUB_CATEGORY=$"Puzzles" ;; gameretroarch) SUB_CATEGORY=$"Emulador Retroarch" ;; gamerpg) SUB_CATEGORY=$"RPG" ;; gamestrategy) SUB_CATEGORY=$"Estratégia" ;; gameutility) SUB_CATEGORY=$"Utilitários para jogos" ;; imageconvert) SUB_CATEGORY=$"Converter, redimensionar ou compactar imagens" ;; imageditor) SUB_CATEGORY=$"Editores de imagem e ferramentas de desenho" ;; imageplayer) SUB_CATEGORY=$"Visualizadores de imagem" ;; javajar) SUB_CATEGORY=$"Java JRE" ;; mail) SUB_CATEGORY=$"E-mail" ;; messages) SUB_CATEGORY=$"Mensageiros e Conferências" ;; network) SUB_CATEGORY=$"Ferramentas de rede" ;; news) SUB_CATEGORY=$"Notícias, Feeds e RSS" ;; office) SUB_CATEGORY=$"Suíte Office" ;; pdf) SUB_CATEGORY=$"Editores de PDF" ;; radio) SUB_CATEGORY=$"Rádio online" ;; remote) SUB_CATEGORY=$"Acesso Remoto, FTP, SSH, VNC, RDP..." ;; screenshot) SUB_CATEGORY=$"Captura de tela (Screenshot)" ;; storage) SUB_CATEGORY=$"Armazenamento e partições" ;; torrent) SUB_CATEGORY=$"Compartilhadores e Torrent" ;; videoplayer) SUB_CATEGORY=$"Reprodutores de vídeo" ;; videostream) SUB_CATEGORY=$"Vídeo online, IPTV, Youtube..." ;; videoeditor) SUB_CATEGORY=$"Editores e compactadores de vídeo" ;; virtualization) SUB_CATEGORY=$"Virtualização" ;; webcam) SUB_CATEGORY=$"Webcam, gravação de tela e transmissão de vídeo" ;; esac } function sh_header_sh_htm_include_div_he { if sh_lang_he; then echo '
' else echo '
' fi } # Carrega o tema e arquivos essenciais function sh_header_sh_htm_main { cat <<-EOF Big-Store
$ProgressMessage ...
$(sh_bstr_getbgcolor)
EOF # Save search query search="${search//+/ }" if [[ -n "$search" ]]; then echo "$search" >> "${TMP_FOLDER}/query.txt" TIni.Set "$INI_FILE_BIG_STORE" 'bigstore' 'search' "$search" fi resultFilter_checkbox="$(TIni.Get "$INI_FILE_BIG_STORE" 'bigstore' 'resultFilter')" searchFilter_checkbox="$(TIni.Get "$INI_FILE_BIG_STORE" 'bigstore' 'searchFilter')" cat <<-EOF
EOF function sh_toggle_switch_key() { local stream="$1" local session="$2" local key="$3" local checkbox local checked checked="$(TIni.Get "$INI_FILE_BIG_STORE" "$session" "$key")" if [[ -z "$checked" || "$checked" -eq 1 ]]; then checkbox="checked" if [[ "$stream" = "y" ]]; then TIni.Set "$INI_FILE_BIG_STORE" "$session" "$key" '0' checkbox="" fi else checkbox="" if [[ "$stream" = "y" ]]; then TIni.Set "$INI_FILE_BIG_STORE" "$session" "$key" '1' checkbox="checked" fi fi echo "$checkbox" } #APPSTREAM appstream_checkbox="$(sh_toggle_switch_key "$appstream_change" 'appstream' 'appstream_active')" #AUR aur_checkbox="$(sh_toggle_switch_key "$aur_change" 'aur' 'aur_active')" #FLATPAK if TIni.Exist "$INI_FILE_BIG_STORE" "flatpak" "flatpak_active" '1' && [[ -e "/usr/lib/libpamac-flatpak.so" ]]; then flatpak_checkbox="$(sh_toggle_switch_key "$flatpak_change" 'flatpak' 'flatpak_hide')" #FLATPAK else DISABLE_FLATPAK="y" fi #SNAP if TIni.Exist "$INI_FILE_BIG_STORE" "snap" "snap_active" '1' && [[ -e "/usr/lib/libpamac-snap.so" ]]; then snap_checkbox="$(sh_toggle_switch_key "$snap_change" 'snap' 'snap_hide')" #SNAP else DISABLE_SNAP="y" fi cat <<-EOF $(sh_div_lang)
EOF ### Categorias ### # if sh_get_XIVAStudio; then if TIni.Exist "$INI_FILE_BIG_STORE" "XIVA" "xiva_active" '1'; then cat <<-EOF
XIVA Store
$X_Sistema $Imagem $Video $Audio
$(sh_header_sh_htm_include_div_he)
EOF if sh_lang_he; then cat <<-EOF
EOF else echo '
' fi cat <<-EOF
EOF cat <<-EOF
EOF if [[ "$DISABLE_FLATPAK" != "y" ]]; then cat <<-EOF
EOF fi if [[ "$DISABLE_SNAP" != "y" ]]; then cat <<-EOF
EOF fi cat <<-EOF
EOF sh_header_sh_htm_process_category if [[ -n "$SUB_CATEGORY" ]]; then cat <<-EOF
$main_category - $SUB_CATEGORY
EOF fi # Verifica que alguma palavra foi digitada na busca if [[ "${#search}" -ge 2 ]]; then if [[ "$appstream_checkbox" = "checked" ]]; then APPSTREAM_CATEGORY "${search,,}" fi if [[ "$aur_checkbox" = "checked" ]]; then AUR_CATEGORY "${search,,}" fi if [[ "$flatpak_checkbox" = "checked" ]]; then FLATPAK_CATEGORY "${search,,}" fi if [[ "$snap_checkbox" = "checked" ]]; then SNAP_CATEGORY "${search,,}" fi fi } #sh_debug sh_header_sh_htm_config sh_header_sh_htm_main