sábado, 10 de junho de 2023

Lançado o Debian Bookworm

 




Depois de 1 ano, 9 meses e 28 dias de desenvolvimento. O projeto Debian acaba de lançar, agora a pouco, a versão 12 de sua distribuição. Também conhecida como Bookworm.


Esta versão vem com várias novidades como a criação de mais uma seção nos repositórios, separando o firmwares não livres do non-free, criado a non-free-firmware. Melhoria nas traduções e muitos outros detalhes que podem ser vistos no link do anúncio do lançamento.


Para baixar os cds, dvds e outras mídias para instalação é só acessar o site https://www.debian.org.


Tenham um bom final de semana.

domingo, 29 de janeiro de 2023

Como que o ChatGPT conseguiu recriar o Palpite para Mega Sena.

 

Hoje é dia de mexer com a moda do momento.




Ultimamente só se fala no ChatGPT e no que ele consegue fazer. Nos últimos dias resolvi brincar com ele e ver no que ele consegue fazer. 

Vendo a capacidade dele de gerar códigos eu lembrei que tem um que já tem o código aberto. O Palpite para Mega Sena, que gera seis números aleatórios para apostar na Mega Sena.

Então eu tive uma ideia. Que tal ele tentar gerar o código explicando como ele faz. Comecei com C usando a seguinte descrição:



O resultado impressiona já que chega perto do que estava precisando. Depois de solicitar os ajustes necessários, consegui rodar o programa com perfeição

Depois pedi para reescrever em Bash, em  Pascal, python e outros. Em bash, para ajudar, eu ofereci algumas funções e conseguiu adaptar numa boa.

Em assembly já desistiu de cara:



Mas prossegui com as perguntas e testes. Alguns desses testes foram feitos nas minhas máquinas Linux. Outros foi usado o https://tio.run/, que oferece uma sandbox para rodar qualquer código que ele suporta.

O resultado de tudo isso eu juntei e disponibilizei em um repositório do Github. Lembrando que nem tudo é perfeito e alguns códigos não foram testados. Quem quiser testar fique a vontade e compartilha a resposta ou pergunte ao ChatGPT se consegue corrigir ou não.

Por enquanto é só isso. Tenham uma boa semana.

segunda-feira, 3 de outubro de 2022

Criando pacotes NVIDIA para Debian usando kernel 6.0

Finalmente o kernel 6.0 foi lançado ( https://lkml.iu.edu/hypermail/linux/kernel/2210.0/00685.html  ) e já é hora de atualizar a minha máquina para esta versão do kernel.


Mas, primeiro, tenho que verificar o site http://rglinuxtech.com/ para ver se tem alguma pegadinha. E encontrei uma em http://rglinuxtech.com/?p=3060. Existe uma versão recente do driver da NVIDIA mas, na época em que estou escrevendo esta publicação, a última versão disponível no Debian experimental é a 510.85.02-2. E eu preciso da versão 515.76.

Então me resta duas opções. Aplicar um patch no 510.85.02 ou pegar os fontes de https://salsa.debian.org/nvidia-team/nvidia-graphics-drivers. Eu preferi fazer um fork.

Tem algumas diferenças entre a 510 e a 515. Mas, depois de um tempo, finalmente criei todos os pacotes e atualizei o meu sistema.

Se estiver impaciente e não pode esperar que a Debian libere esta versão ou não gosta de usar o instalador da NVIDIA. Você pode pegar os fontes em https://github.com/adilsond/nvidia-graphics-drivers . Infelizmente eu só tenho PPA's do Ubuntu e não encontrei um equivalente para a Debian. Então você precisa ler as instruções para gerar todos os pacotes.

Tenham uma boa semana.

Building NVIDIA packages for Debian using kernel 6.0

Finally kernel 6.0 has been released ( https://lkml.iu.edu/hypermail/linux/kernel/2210.0/00685.html  ) and it time to update my machine for this kernel.



But first I have to check http://rglinuxtech.com/ if there is some catch. And I found one from NVIDIA:  http://rglinuxtech.com/?p=3060 .  There is a recent NVIDIA driver but, when I was writing this, the last version available from Debian experimental is: 510.85.02-2. And I need 515.76.


So there are only two options. Patch 510.85.02 or get their source code from https://salsa.debian.org/nvidia-team/nvidia-graphics-drivers . I choose forking it.

There are a few differences between 510 and 515 but, after some time, I finally build all packages needed to update my system.

If you are impatient and you cannot wait Debian to release this version or you don't like to use NVIDIA installer. You can get the sources from: https://github.com/adilsond/nvidia-graphics-drivers . Unfortunately I have only Ubuntu PPA's and there is no Debian equivalent. So you have to read the instructions for building all packages.

Have a nice week

terça-feira, 17 de maio de 2022

Legacy G Suite continuará existindo de forma gratuita para contas pessoais

 

Hoje é uma dica de economia para os usuários do antigo Google Apps gratuito

Para entender como é essa história do Google Workspace (Antigo G Suite, mais antigo Google Apps) gratuito, vamos rebobinar até quando isso tudo começou.

Tudo começou com o Google Apps, que permite utilizar o Gmail com o seu próprio domínio e a edição mais simples era gratuita. Ou seja, você só paga pelo domínio no registro.br ou em outras empresas de registro.

Eu tive contato em 2009 e, ao registrar o adilson.net.br, criei a conta no Google Apps para usar como o meu email principal, a partir de 2010. Era bom até 2012, quando a versão gratuita foi descontinuada. Mas, quem tinha, podia manter a versão gratuita para sempre.


Seria para sempre até, em janeiro de 2022, veio a má notícia:



Sim, o estrago é grande já que pagar para usar o Workspace não é nada agradável ainda sendo um usuário comum. Isso não era somente comigo. Várias pessoas, ao redor do mundo, reclamaram já que criaram as suas contas gratuitas  antes de 2012 e se viram traídos já que a promessa de manter gratuito não seria cumprida.


Vão acabar com a versão gratuita e não sou empresa para gastar. Meus aplicativos do Android, meus arquivos e emails...


A reclamação foi tanta que liberaram um formulário para levantar quem usava a versão legada do G Suite para uso pessoal. A forma de uso pessoal é o seguinte: Pode ser o seu próprio uso ou era usado por uma família inteira.  Sim, muitos criaram a conta do G Suite e tinham um domínio para a família inteira. Davam contas do Gmail para esposa, filhos, primos.

Com base no formulário o Google ia entrar em contato com alguma opção para quem tinha até 10 contas de usuário ativas. O que complica com quem distribuiu contas com o seu domínio com muita gente. E tinham que fazer até o dia 1º de maio, quando houver uma mudança automática de planos (Isso se não for feita a migração antecipada ou cancelasse a conta).

Mas o Google muda os planos, adia a data da mudança para 1º de junho e cria uma lista de espera para um plano 'sem custo' e sem Gmail com seu domínio personalizado. Para alguns, como o meu caso, isso não resolve já que uso bastante o email. Também criaram descontos por 1 ano para a versão Business starter para quem migrar antes.

Mesmo assim não era o ideal. Mas, nesta segunda-feira, tudo mudou. E este tweet resume tudo:


Ou seja, criaram a opção de se manter onde está. Desde que não seja conta comercial, pode optar por este caminho. Ou seja, finalmente uma notícia que agradou muita gente.

Para quem se encaixa, como eu, no G Suite Legacy, pode acessar a opção via painel do administrador. Caso não apareça é só ir em: https://admin.google.com/?action_id=SE_SELF_TRANSITION e seguir as instruções na tela.

Só ir no Personal use.

Depois de revisar, confirma que é para uso pessoal (personal use)
    
Pronto, seus problemas terminaram. Não precisa se preocupar em pagar.

Com isso termina a agnoia para muita gente, que não tem dinheiro para pagar um monte de contas de usuários só porque é pessoa física. Fica como tudo era antes e é um alivio.

Para empresas, não tem outra saída, terá que pagar, até para ter acesso a recursos empresariais.  E a data limite mudou para 27 de junho.


Com isso a novela do Google Workspace fica resumida assim:



Assim, desde que marque a opção, tudo vai continuar igual como antes. O que é um final feliz nisso. E finalizando: 

Ainda mais continuando com a versão 0800.
    

Obs: Se fez a migração depois de 19 de janeiro de 2022, desde que a sua conta gratuita foi criada até  2012, quando esta opção deixou de existir, entre em contato com o suporte neste link: https://support.google.com/a/answer/1047213 que vão reverter de volta a versão Legacy.

quarta-feira, 23 de fevereiro de 2022

/etc/apt/trusted.gpg mostrando warning no apt. Como resolver essa mensagem.

 A última versão do apt começa a mostrar uma pequena mensagem. Mais ou menos semelhantes a essa:

W: https://repo.skype.com/deb/dists/stable/InRelease: Key is stored in legacy tr
usted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key
(8) for details.

Isso por conta de uma mudança no próprio aplicativo do apt, que interfere nas chaves gpg utilizadas.

apt (2.4.0) unstable; urgency=medium

 GPG verification now first tries only the trusted.gpg.d keys, before
 then falling back to the legacy trusted.gpg keyring and issuing a
 warning to migrate keys if verification succeeded in the fallback.

-- Julian Andres Klode <jak@debian.org>  Tue, 22 Feb 2022 20:01:00 +0100

"A verificação GPG agora, primeiramente, apenas as chaves dentro do trusted.gpg.d, antes de voltar para o chaveiro legado trusted.gpg e emitindo um alerta para migrar as chaves se a verificação for bem sucedida no fallback."


Isso só acontece na versão 2.4.0 que já entrou no Debian Sid e pode aparecer no Ubuntu e derivados em breve.



Mas como silenciar essas mensagens??


A solução é bem mais simples.


Entra no /etc/apt/trusted.gpg.d e rode o comando


ln -s /etc/apt/trusted.gpg


Assim é criado um link simbólico e o apt nem solta a mensagem. É uma solução prática, rápida e não trará nenhuma dor de cabeça mais para frente.


Tenham uma boa semana.

domingo, 15 de agosto de 2021

Criando um pendrive com mais de um sistema operacional com o Ventoy

Nestes tempos em que muitas máquinas não vem mais com drive de CD/DVD, precisamos nos virar com os pendrives e bootar pela porta USB. Mas isso nem sempre é fácil.

Para uma distribuição Linux atual podemos pegar uma imagem e rodar o comando:

dd if=imagem.iso of=/dev/sdd (Usei sdd como exemplo. Mas pode ser sdb, sdc ou qualquer outro dependendo da sua máquina. Só não pode ser sda ou algum outro ocupado por um HD senão perde os seus arquivos e talvez terá que reinstalar o seu sistema operacional).

No Windows você pode apelar para o Rufus.

Já uma imagem de instalação Windows, tem a ferramenta própria da Microsoft (Media Creation Tool) ou, se estiver no Linux, procurar por algumas ferramentas, por exemplo: https://github.com/WoeUSB

Mas hoje eu esbarrei em uma nova ferramenta que permite fazer algo que facilita muito as coisas. Você, simplesmente, joga algumas isos e pode bootar elas em um menu, na inicialização. Essa ferramenta se chama Ventoy.


Para usar só é preciso fazer um download em https://www.ventoy.net/en/download.html e escolher o arquivo conforme o seu sistema operacional. Aqui vou usar o Linux, por exemplo. Neste caso o ventoy-1.0.50-linux.tar.gz que é a última versão no momento da publicação. Descompacta, entra dentro da pasta ventoy-1.0.50 e rode o comando, como root ou  usando o sudo antes: bash VentoyWeb.sh

Vai aparecer uma mensagem assim:


===============================================================
 Ventoy Server 1.0.50 is running ...
 Please open your browser and visit http://127.0.0.1:24680
===============================================================

################## Press Ctrl + C to exit #####################

Acessa o site que vai encontrar a interface web do programa:



Se estiver em inglês pode ir em Languages se quiser mudar. De preferência deixe um pendrive plugado. Neste exemplo estou usando um de 8 GB para testar. Vai em Instalar. Ele vai alertar que os dados serão perdidos já que será reformatado e clica em OK 2 vezes. (Verificação dupla para não se arrepender depois).

Após a instalação o pendrive estará pronto para uso. Entre no pendrive e copie algumas isos.


No exemplo coloquei as imagens do Clonezilla, do Debian Bullseye, que saiu ontem, o Gparted Live, o Rocky Linux e a instalação do Windows 10.

Só não coloquei o Ubuntu por falta de espaço.

Agora pegue um computador e inicializa pela usb que vai encontrar a seguinte tela:


Neste ponto é só escolher uma imagem no menu e, pronto, a iso vai iniciar sem problemas.

Quando quiser atualizar é só colocar uma nova imagem no pendrive e ele estará pronto para o uso.

As vezes pode acontecer de uma iso não funcionar e deixar a tela bagunçada. Nos testes isso aconteceu em um notebook Dell com as imagens da Debian e Rocky Linux e não aconteceu em uma máquina virtual. Neste caso existe um workaround.

Crie uma pasta ventoy dentro do pendrive e baixe o arquivo https://www.ventoy.net/download/ventoy.json nele . O conteúdo este arquivo é simplesmente:
{
    "theme": {        
        "display_mode": "CLI"
    }
}

Ele muda a interface para texto, no estilo simples do GRUB, e a inicialização das isos ocorre sem problemas.

OBS: No FAQ ele menciona o problema em imagens Windows. Mas nos testes isso ocorreu nestas duas imagens Linux e o Windows inicializou normal. Pelo menos a solução deu certo no notebook Dell.

Com isso você terá um pendrive inicializável com a opção de rodar qualquer imagem de uma maneira fácil e prática.

Como referência vou deixar este vídeo, que foi no qual descobri esta ferramenta do canal TechHut. Ele está em inglês mas mostra a ferramenta já em ação.


Tenham um bom domingo.

sábado, 14 de agosto de 2021

Lançado o Debian Bullseye

 



Depois de 2 anos, 1 mês, 9 dias de desenvolvimento e um sábado inteiro de atualizações, foi lançando, agora a pouco, a versão 11.0 da distribuição Debian, também conhecida como Bullseye, o cavalo do Woody.

Existem várias novidades que está descrito no link de lançamento, o que pode incluir o suporte ao sistema exFAT dentro do kernel oficial. A inclusão do pacote ipp-usb, para uso de impressoras, via USB sem um driver específico e muitos outros.

Para baixar os cds, dvds e outras mídias para instalação é só acessar o site https://www.debian.org.

Tenham um bom final de semana.

domingo, 27 de junho de 2021

Como migrar de CentOS 8 para o Rocky Linux 8

Aconteceram várias coisas nesta semana. Dentre elas o anuncio de uma nova versão do Windows pela MicrosoftCPI pegando fogo no Senado (Que sexta foi essa??) e mais algumas outras. Mas nós vamos focar em um lançamento no mundo Linux: O lançamento do Rocky Linux 8.4.



Como foi explicado em https://www.adilson.net.br/2020/12/o-centos-como-conhecemos-chegara-ao-fim.html, o Rocky Linux pretende ser uma distribuição 100% compatível com o Red Hat Enterprise Linux (RHEL), o que o tornará o que o CentOS deixará de ser no final do ano. Um clone gratuito do RHEL no qual não será necessário pagar para baixar as atualizações.

"Ain, mas a Red Hat já disponibilizou o RHEL gratuito para pequena escala."

Eu sei, a pressão dos usuários leva a isso. Mas aí já é tarde demais. E se precisar de ir além de 16 máquinas, alguma alternativa? É aí que comentei no post anterior sobre o assunto. Se um projeto não está mais agradando a comunidade, vamos partir para um fork?

É neste ponto que o Gregory Kurtzer, um dos criadores originais do CentOS, resolveu agir e, com ajuda de usuários e empresas, como a Amazon Web Services, Google, e Microsoft, chegamos na disponibilização de uma versão estável do Rocky Linux.

E como o Rocky Linux é um clone do RHEL, é possível passar do CentOS 8 para o Rocky Linux 8. Uma publicação em https://ostechnix.com/how-to-migrate-to-rocky-linux-8-from-centos-8-linux/ explica como isso é feito e vou reproduzir logo abaixo.

OBS: Este blog não se responsabiliza por estragos causados por quem seguir as dicas a seguir. Se não quer ter problemas no seu sistema ou no sistema dos outros, FAÇA UM BACKUP PRIMEIRO. Seja gerando uma imagem em disco do sistema On Premise, gerando um snapshot da sua máquina virtual ou do seu provedor em nuvem, ou tendo uma máquina reserva com o sistema antigo. Depois não venha chorando dizendo que fez besteira.

E a explicação será sem o sudo, diferente da publicação original estarei usando os comandos como usuário root. Mas quem tem usuário no arquivo sudoers pode rodar com o sudo por mais segurança.

1) Atualize os pacotes para a sua última versão:

dnf --refresh upgrade

2) Se houver atualizações, principalmente de kernel, rode o comando 'reboot'

3) Veja se está rodando o CentOS 8 no seu sistema (A migração não funciona com CentOS 7)

cat /etc/redhat-release

A saída tem que ser algo parecido com isso:

CentOS Linux release 8.4.2105

Ainda pode rodar outro comando para confirmar

cat /etc/os-release

A saída tem que ser algo parecido com isso:

NAME="CentOS Linux"

 VERSION="8"

 ID="centos"

 ID_LIKE="rhel fedora"

 VERSION_ID="8"

 PLATFORM_ID="platform:el8"

 PRETTY_NAME="CentOS Linux 8"

 ANSI_COLOR="0;31"

 CPE_NAME="cpe:/o:centos:centos:8"

 HOME_URL="https://centos.org/"

 BUG_REPORT_URL="https://bugs.centos.org/"

 CENTOS_MANTISBT_PROJECT="CentOS-8"

 CENTOS_MANTISBT_PROJECT_VERSION="8"

4) Vamos baixar o script de migração. O migrate2rocky.sh

curl -O https://raw.githubusercontent.com/rocky-linux/rocky-tools/main/migrate2rocky/migrate2rocky.sh

O curl tem algumas pegadinhas, verifique se baixou o script correto com um editor (vi, nano, less) ou rodando um 'head migrate2rocky.sh'.

5) Dê permissão de execução ao script.

chmod +x migrate2rocky.sh

6) Rode o script para iniciar a migração

./migrate2rocky.sh -r

A partir deste ponto terá início a atualização dos pacotes. Nos testes que fiz ele só reclamou de um problema nos locales. Isso porque o script foi desenvolvido para usar a localização en_US ao invés de setarem no C padrão. E como a máquina usada usa pt_BR isso gerou alguns erros. Se virem essas mensagens, simplesmente ignore.

Na atualização deve aparecer estas mensagens:

Preparing to migrate CentOS Linux 8 to Rocky Linux 8.


Determining repository names for CentOS Linux 8.....


Found the following repositories which map from CentOS Linux 8 to Rocky Linux 8:

CentOS Linux 8  Rocky Linux 8

appstream       appstream

baseos          baseos

extras          extras


Getting system package names for CentOS Linux 8.......


Found the following system packages which map from CentOS Linux 8 to Rocky Linux 8:

CentOS Linux 8        Rocky Linux 8

centos-backgrounds    rocky-backgrounds

centos-gpg-keys       rocky-gpg-keys

centos-logos          rocky-logos

centos-indexhtml      rocky-indexhtml

centos-linux-release  rocky-release

centos-linux-repos    rocky-repos

[...]


Aí vai baixar um monte de pacotes, mudar tudo de CentOS para Rocky Linux até chegar em:

[...] 

 Complete!

 Done, please reboot your system.

 A log of this installation can be found at /var/log/migrate2rocky.log


7) Veja se ainda em alguma atualização.

dnf distro-sync -y 

8) Estando tudo ok, rode o comando 'reboot'.

9) (Opcional) Se quiser mudar o hostname pode rodar o comando:

hostnamectl set-hostname rocky8

Desloga e reloga do sistema ou,  se algum serviço estiver incomodado com a mudança de nome, dê um novo reboot.

E assim teremos um Rocky Linux a partir de um CentOS 8.

Os testes foram feitos em uma máquina virtual no Virtualbox e deixo uma demonstração da migração no vídeo logo abaixo:


Nele mostra praticamente todos os comandos usados para a migração. O tempo pode variar de instalação em instalação do CentOS 8. Tanto que, no vídeo, cortei o processo de baixar e instalar os pacotes senão ele teria a duração de quase 3,5 Pirulas (Quem assiste o canal do Pirula entende a referência). Então ele só tem um pouquinho mais de meio Pirula.


Espero que tenham gostado. Se tiverem algo relacionado ao vídeo, comentem falem. Podem criticar a vontade já que é o primeiro vídeo com a minha voz narrando.  Também aceito sugestões e podem ter certeza que será tudo considerado (quase tudo já que os trolls e haters serão ignorados) para produção de futuros vídeos de melhor qualidade.

Para baixar o Rocky Linux: https://rockylinux.org/

Tenham uma boa semana.

domingo, 18 de abril de 2021

Como redirecionar um site do Google App Engine para https.

 



Estava mexendo em um site que é o Palpite para Mega Sena e já tinha habilitado ele para https já tem algum tempo. Ele roda no Google App Engine com php desde 2013 como um experimento e conseguir uns números aleatórios para fazer uma fezinha.

Mas tinha uma coisa que não conseguia era redirecionar do http para https. Se eu entrava na versão http ele ficava como http e não prosseguia. Então teria que adicionar o s no http para que fosse para um lugar seguro.

Fazendo algumas pesquisas cheguei neste resultado em: https://stackoverflow.com/questions/33878825/how-to-permanently-redirect-http-and-www-urls-to-https  Em algumas plataformas uma edição no app.yaml resolve. Mas, em outras, precisa adicionar o redirecionamento na aplicação.  Como nenhuma das respostas incluía o php, então fiz mais uma pesquisa e encontrei a resposta em https://stackoverflow.com/questions/5106313/redirecting-from-http-to-https-with-php que tinha um código que é assim:

if (empty($_SERVER['HTTPS']) || $_SERVER['HTTPS'] === "off") {
    $location = 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
    header('HTTP/1.1 301 Moved Permanently');
    header('Location: ' . $location);
    exit;
}

O código verifica se existe a variável HTTPS no servidor ou que está setado como "off". Se for verdade é enviado um comando de redirecionamento para a versão https do site.

A partir daí, acessando via https, o código novo não será executado e o restante do script é executado normalmente.

E como fazer isso?? Pode usar o SDK do Google Cloud ou rodar um Cloud Shell na sua conta do Google Cloud. O processo sempre é o mesmo. No início do código , depois do <?php e antes do código original, adiciona o código acima, salva ele e rode o seguinte comando:

gcloud app deploy --version 1 (ou qualquer outro número de versão)

Espera fazer o deploy e verifica se as mudanças surtiram efeito.

Funcionando, todo acesso http é redirecionado para a versão em https.

Detalhes de como funciona o script da Mega Sena: https://wiki.adilson.net.br/diversos/mega-sena.

Tenham uma boa semana.