lcavalheiro
(usa Slackware)
Enviado em 09/10/2015 - 03:00h
Eu acabei mexendo um pouco no meu script. Ele não usa mais xterm + links, mas alguns usos do xterm + dialog mesmo. Só que agora ele me permite ver que ChangeLog eu quero ver:
#!/bin/bash
#
# ------------------------------- Legal notice -------------------------------
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# Tradução não-oficial:
#
# Este programa é um software livre; você pode redistribuí-lo e/ou
# modificá-lo dentro dos termos da Licença Pública Geral GNU como
# publicada pela Fundação do Software Livre (FSF); na versão 3 da
# Licença, ou (na sua opinião) qualquer versão.
#
# Este programa é distribuído na esperança de que possa ser útil,
# mas SEM NENHUMA GARANTIA; sem uma garantia implícita de ADEQUAÇÃO
# a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a
# Licença Pública Geral GNU para maiores detalhes.
#
# Você deve ter recebido uma cópia da Licença Pública Geral GNU junto
# com este programa. Se não, veja <http://www.gnu.org/licenses/>.
#
# ------------------------------- Legal notice -------------------------------
download_changelog(){
# Com todas as opções definidas, agora é proceder ao download do
# ChangeLog desejado:
if [ "$arch" == "ARM" ] ; then
ChangeLog="ftp://ftp.arm.slackware.com/slackwarearm/slackwarearm-$versao/ChangeLog.txt"
elif [ "$arch" == "x86" ] ; then
ChangeLog="ftp://ftp.osuosl.org/pub/slackware/slackware-$versao/ChangeLog.txt"
else
ChangeLog="ftp://ftp.osuosl.org/pub/slackware/slackware64-$versao/ChangeLog.txt"
fi
dialog --stdout \
--backtitle 'Leitor do ChangeLog do Slackware do Dino®' \
--title 'Recuperando o ChangeLog selecionado' \
--no-collapse \
--infobox "Fazendo o download do ChangeLog do Slackware $arch $versao..." \
0 0
wget ${ChangeLog} -O /tmp/ChangeLog_Slackware.txt 2> /dev/null
dialog --stdout \
--backtitle 'Leitor do ChangeLog do Slackware do Dino®' \
--title "Slackware $arch $versao ChangeLog:" \
--textbox /tmp/ChangeLog_Slackware.txt \
15 74
rm -rf /tmp/ChangeLog_Slackware.txt
}
escolhe_changelog(){
# Limpeza prévia em caso de interrupção forçada do script:
rm -rf /tmp/ChangeLog_Slackware.txt
# Primeiro menu do script. Permite selecionar de qual versão o usuário quer
# ler o ChangeLog:
versao=$(
dialog --stdout \
--backtitle 'Leitor do ChangeLog do Slackware do Dino®' \
--title 'Versão' \
--menu 'Selecione de qual versão do Slackware você quer ver o ChangeLog' \
0 0 0 \
'current' 'Slackware Current, versão de testes da distribuição' \
'14.1' 'Slackware 14.1, versão estável da distribuição' ) &&
# Segundo menu do script. Permite selecionar de qual arquitetura o usuário
# quer ler o ChangeLog:
arch=$(
dialog --stdout \
--backtitle 'Leitor do ChangeLog do Slackware do Dino®' \
--title 'Arquitetura' \
--menu 'Selecione agora de qual arquitetura você deseja ver o ChangeLog' \
0 0 0 \
'x86' 'Arquitetura 32-bits' \
'x86_64' 'Arquitetura 64-bits' \
'ARM' 'Arquitetura ARM' ) &&
# Terceiro menu do script. Submete os dados escolhidos à verificação do
# usuário:
confirma=$(
dialog --stdout \
--backtitle 'Leitor do ChangeLog do Slackware do Dino®' \
--title 'Confirmação' \
--no-collapse \
--yesno "Versão: $versao
Arquitetura: $arch
" 0 0 )
}
escolhe_changelog && download_changelog
Ainda não está elegante, mas faz bem o serviço a que ele se presta
--
Luís Fernando Carvalho Cavalheiro
Public GPG signature: 0x246A590B
Só Slackware é GNU/Linux e Patrick Volkerding é o seu Profeta