run_update - Atualizador de Sabayon
Publicado por Alberto Federman Neto. (última atualização em 15/09/2016)
[ Hits: 2.633 ]
Homepage: https://ciencialivre.blog/
Script em Python, para atualizar o Sabayon.
O mérito não é meu. Autoria original de WolfDen, KJS, Dakota do Norte, EUA. Um dos Desenvolvedores do Sabayon Linux:
http://wolf911.us/wgo/script-for-updating-sabayon/
https://github.com/wolfden/Coding/blob/master/python%20files/run_update">https://github.com/wolfden/Coding/blob/master/python%20files/run_update
https://github.com/wolfden
Publico aqui a primeira tradução do script, para o Português Brasileiro.
Observação: não rode, se você usa os repositórios brasileiros como padrão. O comando interno "equo repo mirrorsort" vai bagunçar sua lista de repositórios!
#!/usr/bin/python # Script in Python, for Upgrading Sabayon Linux # created by wolfden # Translated (to Brazilian Portuguese) by: # albfneto <albfneto@fcfrp.usp.br> # my first py file ever # gol - Atualizar Sabayon com muito pouca intervenção Humana. import datetime import subprocess import argparse import sys import time import os # Colocando algumas côres legais! class Bcolors: def __init__(self): pass HEADER = '\033[95m' OKBLUE = '\033[94m' OKGREEN = '\033[92m' WARNING = '\033[93m' FAIL = '\033[91m' ENDC = '\033[0m' BOLD = '\033[1m' UNDERLINE = '\033[4m' # Checando se o usuário é Root: if os.geteuid() != 0: print "Você deve ser Root, ou entre com sua senha para o Sudo" os.execvp("sudo", ["sudo"] + sys.argv) # Argumentos. Otimizar os repositórios: # [--limbo] [--main] [--weekly] [--status] parser = argparse.ArgumentParser() parser.add_argument("--limbo", help="Otimizar Repositorio Limbo", action="store_true") parser.add_argument("--main", help="Otimizar repositório Principal", action="store_true") parser.add_argument("--weekly", help="Otimizar Repositorio Weekly", action="store_true") parser.add_argument("--status", help="Estado dos Repositorios", action="store_true") args = parser.parse_args() if args.limbo: print "Otimizando Repositorio Limbo" time.sleep(1) limbo = subprocess.Popen('equo repo mirrorsort sabayon-limbo', shell=True) retval = limbo.wait() sys.exit() elif args.main: print "Otimizando Repositório SabayonLinux" time.sleep(1) main = subprocess.Popen('equo repo mirrorsort \ sabayonlinux.org', shell=True) retval = main.wait() sys.exit() elif args.weekly: print "Otimizando Repositório Weekly" time.sleep(1) weekly = subprocess.Popen('equo repo mirrorsort \ sabayon-weekly', shell=True) retval = weekly.wait() sys.exit() elif args.status: print "Avaliando Estado do Repositórios" time.sleep(1) status = subprocess.Popen('equo status', shell=True) retval = status.wait() sys.exit() # Horário para Iniciar: startTime = datetime.datetime.now() # Date and Time of Start date_start = subprocess.Popen('date', shell=False) retval = date_start.wait() # Deixe-me quais são os repositórios utilizados: print Bcolors.BOLD + "====Repositorios Ativados====" + Bcolors.ENDC equo_repo = subprocess.check_call("equo repo list", shell=True) # Primeiro precisa atualizar, ou ver seus repositórios correntes print Bcolors.BOLD + "====Updating the Repositories====" + Bcolors.ENDC equo_update = subprocess.check_call('equo update', shell=True) # Sincronizando as licenças, assim não precisa entrar com elas print Bcolors.BOLD + "====Atualizando aceitação das licenças====" + Bcolors.ENDC rsync = subprocess.check_call('rsync -av -H -A -X --delete-during \ "rsync://rsync.at.gentoo.org/gentoo-portage/licenses/" \ "/usr/portage/licenses/"; ls /usr/portage/licenses -1 | \ xargs -0 > /etc/entropy/packages/license.accept', shell=True) # Vendo se o último Entropy está instalado print Bcolors.BOLD + "====Instalando Último Entropy====" + Bcolors.ENDC equo_entropy = subprocess.check_call('equo install app-admin/equo \ sys-apps/entropy --nodeps', shell=True) # Listando atualizações disponíveis print Bcolors.BOLD + "====Quantos pacotes a atualizar?====" + Bcolors.ENDC equo_upgrades_available = subprocess.check_call('equo q updates', shell=True) # Começando as Atualizações print Bcolors.BOLD + "====Começando a Atualizar====" + Bcolors.ENDC equo_upgrade = subprocess.check_call('equo upgrade', shell=True) # Procurando Dependências print Bcolors.BOLD + "====Procurando as Dependências====" + Bcolors.ENDC equo_dep = subprocess.check_call('equo deptest', shell=True) #Limpando print Bcolors.BOLD + "====Limpando as Instalações====" + Bcolors.ENDC equo_clean = subprocess.check_call('equo cleanup', shell=True) print " \n" print "==================Informações do Sistema===================" # Mostrando Informação Complementar no Terminal cpu = subprocess.check_call('uname -p', shell=True) kernel_arch = subprocess.check_call('uname -m', shell=True) release_version = subprocess.check_call('cat /etc/sabayon-release', shell=True) release_edition = subprocess.check_call('cat /etc/sabayon-edition', shell=True) kernel_version = subprocess.check_call('uname -r', shell=True) nodename = subprocess.check_call('uname -n', shell=True) print " \n" print "~~~Memória Livre~~~" mem_free = subprocess.check_call('free -h', shell=True) print " \n" print "~~~Espaço de Disco~~~" disk_space = subprocess.check_call('df -lT --exclude-type=tmpfs \ --exclude-type=rootfs', shell=True) print " \n" print Bcolors.BOLD + "Atualização completada com sucesso" + Bcolors.ENDC # Data da Finalização: date_end = subprocess.Popen('date', shell=False) # Tempo de Execução Total ctime = datetime.datetime.now() - startTime print "Tempo de execução total ", ctime print " \n"
Validador de cartão de crédito
Agora temos uma assistente virtual no fórum!!! (247)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
iso de sistema 32 bit em atividade (13)
Agora temos uma assistente virtual no fórum!!! (247)
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (27)