// // Chicletes para o Cérebro

quarta-feira, 6 de novembro de 2024

Dica - Review - Fone de Condução Óssea - Shokz OpenRun Pro 2

Pessoal,


Contei em um post anterior (aqui) que há algum tempo havia comprado um fone bluetooth de condução óssea para sincronizar com meu Garmin Forerunner 965 na hora de correr.

Na verdade comprei dois fones, um xingling "de primeira linha", da marca AGold, e um outro de uma marca xingling também, Peining.

Ambos são LIXO! Funcionaram pouquíssimo tempo, pararam de sincronizar. Mesmo deixando a bateria esgotar e tentando sincronizar de novo eles não funcionam.

Acabei voltando a correr com o iPod e com fone com fio, mas a bateria do iPod, um iPod Nano 5G de 16GB, comprado em 2009, já está começando a ficar ruim.

Assim tive que voltar ao plano de comprar um fone BT, de preferência de condução óssea, para correr mais tranquilo na rua.

Na época eu tinha até comentado no blog que vi um review do Sérgio Rocha (Corrida no Ar), canal que já conhecia, e um da Júlia Sette, canal que eu não conhecia. As opiniões foram bem interessante: apesar da não ser um som ótimo, quebra bem o galho e é seguro para correr na rua. O problema é que os preços dos fones que eles testaram estavam acima do que eu estava disposto a pagar na época. O Sérgio testou o Aftershokz Aeropex, que custava mais de 1000 reias, e a Júlia testou ou Haylou PurFree BC01, que custava quase 500 reais.

Bom, a Aftershokz mudou de nome e hoje se chama Shokz apenas. E esse Haylou me passou a impressão de ser tipo os outros dois que eu tinha comprado. Assim resolvi pegar o Shokz.

O modelo flagship deles atual é o OpenRun Pro 2. Tem uma versão anunciada pelo Eliud Kipchoge, provavelmente o maior maratonista de todos os tempos, o único ser humano a correr os 42.195 metros em menos de duas horas (ainda que não seja oficial - veja esse vídeo FANTÁSTICO aqui!), com incrível 2:01:09 na maratona de Berlim de 2022. O modelo é lindo!


Uma amiga estava indo para os USA e se ofereceu para compra um pra mim. Infelizmente não chegaria a tempo para a volta dela. Assim, ela foi em DUAS BestBuy em NY para procurar o fone pra mim e esse realmente só tinha pelo site.

Assim ela comprou o modelo "normal", preto, por US$ 180. É um fone caro, mas é o melhor da categoria!
 



A caixa é de um papelão bem firme, parece até um plástico. Reparem o nome da marca escrito na caixa na foto acima.


Tem uma bolsa rígida para proteção do fone, para levar em viagens.




A embalagem passa uma forte sensação de produto premium, compatível com preço cobrado!



Vem com cabo USB-A para USB-C. Ótimo! Modelos mais antigos tinham um cabo de força "proprietário", desses difíceis de encontrar.





Segundo o fabricante, a bateria segura 12 horas, demora 1 hora para carregar e 5 minutos de carga garante 2 horas e meia de uso! Tem proteção IP55, ou seja, aguenta suor e é resistente a água (chuva, não é para nadar!).

O toque ao equipamento é muito bom, parece um material emborrachado, realmente muito bom.

Baixei o app deles, liguei o fone, sincronizei com o BT do iPhone e ele foi prontamente encontrado. Já mostrou até uma atualização de firmware!

O app permite escolher o tipo 4 modos de equalização (padrão, vocal, baixo e agudos). Também permite um emparelhamento multiparto, ou seja, conectar-se a dois equipamentos facilmente. O atendimento de telefone é bom, bem melhor do que eu imaginava.

É caro? É!

Mas é o tipo de produto que deve durar bastante. Afinal, é o topo de linha categoria.

Pessoal, acho que é uma dica do tipo muito boa: um excelente produto!

É isso, até o próximo post!

Olá, Portugal! Acabei de nascer!

Pessoal,




É inegável que uma segunda nacionalidade abre portas em outros países. A depender desta segunda nacionalidade, muitas portas são abertas!

Por motivos óbvios, ser brasileiro é uma profissão de risco. O Brasil é um país politica e economicamente instável. Golpe após golpe, crise após crise. Tiram bandido da cadeia e colocam na presidência. Óbvio que não pode dar certo!

Há vários anos já era interessando pela história da minha família, tanto a família do meu pai quanto da minha mãe. Histórias de migração são sempre sofridas.

A família do meu pai é toda de imigrantes europeus que vieram pra cá no começado século XX, atrás de melhores condições de vida. Um espanhol que casou com uma italiana e um português que casou com outra italiana. Só não contavam que, um século depois, aqui virou zona e lá as coisas melhoraram.

Comecei a revirar os arquivos de casa procurando documentos. Como meus avós, filhos dos imigrantes, já eram falecidos, conversei com parentes mais velhos para saber detalhes. Procurei na internet para ver se achava alguma coisa. 

Precisava entender também como as leis de nacionalidades dos países europeus (no caso, Portugal, Espanha e Itália) funcionavam.

No Brasil, é brasileiro quem é filho de brasileiro (óbvio) mas também quem nasce no Brasil (mesmo que filho de estrangeiros). Isso é chamado de "jus soli", direito do solo. O jus soli foi desenvolvido para povoar países do Novo Mundo, como o Brasil, os Estados Unidos, o Canadá, a Argentina e o Uruguai, por exemplo.

O oposto ao jus soli é o "jus sanguinis", que significa "direito de sangue". Neste caso, a nacionalidade é atribuída com base na ascendência da pessoa, ou seja, na nacionalidade dos seus pais. Isso é muito comum em países antigos, que tiveram grandes emigrações, como os países europeus e o Japão.

Esses conceitos são para a nacionalidade originária, termo que no Brasil conhecemos como "brasileiro nato", aquele que nasceu aqui e tem todos os direitos, inclusive ser eleito para presidente, por exemplo. Um cidadão naturalizado, que tem uma cidadania atribuída, tem amplos direitos também, mas não pode concorrer a alguns cargos públicos (como presidente) ou ter algumas funções militares, por exemplo, por não ser um cidadão "nato", uma vez que conseguiu a cidadania por morar no país por um tempo determinado ou por ser cônjuge de um nacional daquele pais.

Ainda tem um terceiro tipo, como é o caso de Israel. Lá tem uma lei chamada "Lei do Retorno", que diz que qualquer judeu na diáspora pode mudar para Israel. A Agência Hebraica faz todos os trâmites e, chegando lá, o indivíduo já recebe o registro civil israelense pronto! Lindo!

Bom, fui olhar meus casos.

A lei espanhola é a mais restritiva. Espanhol é quem é filho de espanhol. Para o neto de espanhol ter nacionalidade espanhola, ele tem que morar algum tempo na Espanha. Impraticável para meu pai... O bisa era de Barcelona, pelo que contaram. Entretanto, a Espanha é um país profundamente antissemita. Não tenho interesse, obrigado.

A Itália é um caso à parte. Até 1947, as mulheres na Itália não passavam a nacionalidade para seus filhos, apenas os homens. Somente após 1948 é que os filhos de uma italiana passaram a ter direito a receber a cidadania italiana pela via materna. Entretanto, todo mundo com linhagem materna entra na justiça e consegue a cidadania, porém é um processo caro e mais lento, algo em torno de 2 anos.

Por ser uma alternativa, procurei documentos, certidões, passaportes, enfim, tudo que poderia me ajudar. Descobri que um trisavô veio da Itália e, minha bisavó, que sempre achei ser italiana (falavam que ela tinha nascido no navio), era nascida no Brasil (mas seus pais eram italianos).

(Taí o meu trisavô, Michele di Lorenzo, na lista dos imigrantes
que vieram no vapor Navarre, em 1882!)

Sabia que o Michele era da Basilicata, lá no sul da bota. E que a bisa era lá do norte, da Lombardia. Basicamente era família Leo que veio da Lombardia e famílias Lorenzo e Mileo que vieram da Basilicata.



(Familia Leo até que tem bastante na Lombardia)

(Família Mileo é mais comum na Campania e Basalicata)

(Familia Lorenzo tem bastante na Basilicata, mas é mais comum na Puglia)

Esses mapas são da distribuição atual de sobrenomes na Itália, não na época que vieram.

Sobre a bisa da Lombardia, não achei nada. Mas do trisavô da Basilicata, achei tudo! Só não achei a certidão de nascimento da filha dele, minha bisa. Ela nasceu no Brasil, isso eu descobri e tinho certeza. Tenho cópia da certidão de casamento e óbito dela, além do título de eleitor dela. Resolvi isso pedindo ajuda pra um advogado (vou falar mais pra frente).

Essa bisa, filha do Italiano, casou-se com um português. Sabia que ele era de Braga, norte de Portugal, mas não exatamente qual concelho. Assim, peguei as informações que eu tinha (nome completo, nome dos pais dele, data de nascimento - que estava errada), mandei um email para o Arquivo Distrital de Braga (onde estão as certidões de nascimento e batismo lá da região de Braga) e pedi o assento de nascimento dele. Fui muito bem tratado e o sujeito informou que a data de nascimento estava errada mas ele encontrou o documento. Custou 5 euros a pesquisa e 20 euros pra mandar uma cópia pra mim



O problema é que em Portugal, na época, tinha um lei de nacionalidade bem restritiva. Só era português quem era filho de português nascido em Portugal ou nascido no estrangeiro se os pais estivessem a serviço do governo português.

Essa lei foi alterada em 2006, se não me engano, permitindo que o neto (situação do meu pai) fosse naturalizado português se comprovasse contato com a comunidade portuguesa. O problema é que ele só passaria a cidadania para os filhos menores de 18 anos, o que não resolveria nem para mim nem para minha irmã, já que nessa época tínhamos mais de 30 anos :(

Assim, fui deixando de lado tudo isso. Até que em 2015 a lei portuguesa foi alterada novamente. O neto passou a ter direito a cidadania originária, ou seja, cidadão "nato". E assim passaria a cidadania para os filhos mesmo que maiores de idade! A lei original está aqui, a alteração de 2006 está aqui e essa alteração de 2015 está aqui.

Meu pai passou a ter direito à cidadania portuguesa por causa da alínea "d" do artigo 1o da lei 37/1981 alterada em 2015:


E eu e minha irmã adquirimos nosso direito pela alínea "c" da mesma lei, mas com a alteração em 2006.


A lógica jurídica é a seguinte: pela lei de 2015, meu pai passou a ter direito a cidadania portuguesa originária por ser neto de português. E eu e minha irmã, pela lei de 2006, passamos a ter direito por sermos filhos de português nascido no exterior.

Então, precisava comprovar todos esses vínculos aí: o português era português (assento de nascimento em Portugal), que ele era o pai da minha avó, a filha do português (certidão de casamento dele e certidão de nascimento dela) e que ela era a mãe do meu pai, o neto do português (certidão de nascimento dele e de casamento dela).

Primeiro perrengue: não encontrei a certidão da minha bisa, filha do Michele, casada com o português. Não precisaria dela para entrar com o pedido em Portugal, mas se quisesse entrar com o processo na Itália, precisaria. Então pedi na justiça a emissão de uma certidão de nascimento para ela porque não tinha encontrado a dela em lugar nenhum.

Segundo perrengue: quando a minha avó, filha do português, se casou, o tabelião escreveu o nome dela errado. Era pra "Thereza de Lorenzo Oliveira", nome na certidão de nascimento dela, ter virado "Thereza de Lorenzo Oliveira Castilho" após o casamento. Mas virou "Teresinha de Oliveira Castilho". É outra pessoa! Então pedi a retificação do nome dela nas certidões de casamento e de óbito dela.

Terceiro perrengue: como mudei o nome da minha vó, a mãe do meu pai (Teresinha de Oliveira Castilho) passou a ser outra (Thereza de Lorenzo Oliveira Castilho). Então tive que entrar na justiça para retificar o registro de nascimento e de casamento do meu pai. Meus primos, filhos dos irmãos do meu pai, também tiveram que fazer os mesmos pedidos.

Quarto perrengue: como mudou o nome da minha vó, tive que pedir a retificação do meu registro civil de nascimento e casamento, além do da minha irmã.

Quinto perrengue: documentos novos para todo mundo. Carteiras de identidade, certidões de nascimento, casamento e óbito.

Então consegui arrumar tudo. Quase 10 anos arrumando documentos, mudando nomes, emitindo certidões, pedidos judiciais, etc!

Contratar advogado em Lambari mais custas judiciais, emissão e envio de certidões em Lambari para BH, mais certidões após a correção em Lambari, Varginha e BH, mais escritório em Portugal para entrar com as documentações do meu pai e depois para mim e minha irmã... Isso não ficou por menos de R$ 30.000! 
Só que a família toda vai ter seu plano B agora! Ou plano A, vai saber...


Tem até o plano C, caso a gente queira entrar com a documentação na Itália também. Tá tudo pronto, só atualizar as certidões e pagar advogado para entrar lá. Esse deixou de existir com a mudança da lei na Itália agora em 2025 :(

Último perrengue: a gente acha que é só receber o vermelhinho aí de cima, né? Depois de me registrar no Consulado Português, recebei uma cartinha lá de Portugal:


A conta chegou. Em euros! 😅

Bom, esse post foi pra contar essa novidade aqui.

Até o próximo post!

Como jogar jogos antigos em máquinas modernas? #NostalgiaFeelings

Pessoal,


A gente acaba lembrando de épocas mais antigas quando ainda éramos mais novos com um sentimento bom, lembrando só das coisas boas, esquecendo as coisas ruins. Faz parte da vida: a gente guarda o que aquece o coração!

Como sou mais antiguinho aqui na informática, já tive algumas experiências bem legais com jogos mais antigos quando eles ainda eram atuais :)

Taí um coisa que melhorou com o tempo: os jogos de computador. Não apenas melhoraram de aparência, quanto a retrocomputação permitiu desfrutar de jogos antigos em computadores novos sem a gente ter que usar trambolhos como os PCs de 1990!

Vamos falar de alguns programas legais para emular e jogar jogos antigos.


1 - DOSBox

Esse é bem antigo e é muito bom. Como o próprio nome diz, emula um ambiente para jogos e programas para MS-DOS. Segundo os criadores, emula 98% do processador 80286, 91% do 80386 e 95% do 80387, além de reproduzir bem os modos de vídeo (96% do VGA e TXT e 95% do CGA e EGA) e áudio (96% do ADLIB e 95% do PC-Speaker). Até rede mais básica é reproduzida no BOXDos. Roda bem em MacOS, Windows, Linux, OS/2 e outros.

O DOSBox inclusive emula uma pasta do computador como pasta "C:/" ou qualquer outra que você queira para fazer um "HD" virtual ou um drive virtual de CD. Assim, é possível usar uma pasta com HD, criar um HD virtual, montar uma pasta como unidade de disquete, etc. Dá até para montar um arquivo IMG ou ISO diretamente no DOSBox. São vários comandos para usar em linha de comando (veja o manual inteiro aqui) ou então dá para usar alguns launchers (ou frontends, como queira).

Como o DOSBox consome poucos recursos da máquina pois emula uma máquina bem mais antiga, é até possível usar o DOSBox dentro de uma VM!

Vamos lá! Feito o download na sua plataforma (downloads aqui), execute normalmente.


Repare que aparece como drive inicial o drive Z. Além disso são passados comandos básicos para ativar uma placa de som.

Para acessar o drive C, é necessario montá-lo primeiro. Isso vai variar para cada tipo de computador que você for instalar o DOSBox.

Para Windows, crie uma pasta no próprio Windows (por exemplo: C:/DOSGames) e dê os seguintes comandos no DOSBox:
Z:\>mount C C:\DOSGames
Z:\>C:
Pronto, agora você apontou a pasta "DOSGames" criada no Windows para o DOSBox e ele vai chamar esta pasta de drive C:. Tudo que você colocar nesta pasta "DOSGames" ficará disponível no drive virtual C: do DOSBox.

No MacOS, após arrastar o app DOSBox para os Aplicativos, basta criar uma pasta no seu usuário e aponta essa pasta do mesmo modo. Aqui em casa ficou assim:
Z:\>mount C /Users/castilho/DOSGames
Z:\>C:
E para o Linux é mais ou menos do mesmo jeito:
Z:\>mount C /home/castilho/DOSGames
Z:\>C:
Para montar uma unidade de CD-ROM, o comando é algo como (supondo que você criou uma subpasta CDROM dentro de DOSGames):
Z:\>mount D /Users/castilho/DOSGames/CDROM -t cdrom
Agora a pasta D: é um drive de CDROM virtual!

Ótimo, temos muitas coisas para configurar.

Podemos editar o arquivo "CONFIG.SYS", o primeiro que o DOS carrega, para alterar alguns parâmetros do DOS. Também odemos automatizar isso e criar um arquivo AUTOEXEC.BAT para abrirmos o DOSBox e isso já ser feito automaticamente. O DOSBox simula o AUTOEXEC.BAT usando um arquivo chamado "dosbox.conf". Para acessá-lo, também vai depender do seu sistema.

Para Windows, ele estará numa pasta oculta dentro a pasta "Users". O caminho é o seguinte:
C:\Users\jaymebc\AppData\Local\DOSBox\dosbox-0.74-3.conf
No MacOS estará em:
/Users/castilho/Library/Preferences/DOSBox 0.74-3-3 Preferences
No Linux deve ser em:
~/.dosbox/dosbox-0.74.3.conf
Agora é só abrir o arquivo e, lá no final, acrescentar os comandos para montar a pasta C e o CDROM em D.

Fica assim em Windows e em Mac:

("AUTOEXEC.COM" no Windows!)

("AUTOEXEC.COM" no MacOS!)

Muitas outras coisas podem ser "automatizadas": abrir como janela ou tela inteira, resolução, tipo de hardware gráfico para emular, tipo de CPU, etc...

Inclusive, pode incrementar o AUTOEXEC escondendo os comandos com o comando "@ECHO OFF", apagar a tela inicial com o comando "CLS", criar mensagens como o comando "ECHO" ou o que mais você quiser fazer para customizar o seu DOSBox.

Como as máquinas de hoje são muito, muito mais potentes que esses emulados pelo DOSBox, costuma ser perda de tempo (ou escovação de bit) fazer qualquer outra coisa além de simplesmente montar os diretórios e drives.

Tudo está muito bem documentado no Tutorial e no Manual do DOSBox.

Após isso, é só colocar seu jogo em uma pasta dentro da pasta que você criou, navegar dentro do DOSBox e pronto!

(Doom 1!)



Em poucas palavras: é o DOSBox otimizado! Muito otimizado! 

Esse emulador é um fork do DOSBox mas tem otimizações e suporte para rodar até o Windows 95 e Windows 98!

Você ainda pode fazer tudo que faz no DOSBox (montar drives na unha, etc), mas o DOXBox-X tem menus pra acelerar e simplificar tudo isso. Simplesmente entre no menu e faça isso.

(Simples assim!)

Eles tem um Wiki (aqui) que explica muita coisa, mas grosso modo é o DOSBox com esteróides! :) Achei tão mais fácil configurar e usar que acabei apagando o DOSBox original e deixando só esse fork.


3 - 86Box

Bom emulador também, mais amigável no sentido de ter um menu de configurações bem completo para você rodar uma máquina em específico se desejar, porém tem tanta opção que às vezes é até complexo demais para apenas brincar.

Na realidade, o 86Box é um emulador completo, tipo o PCem, que falarei a seguir, só que bem focado em 8088/8086. Então o 86Box é um emulador completo, tipo um QEMU, mas é diferente do VirtualBox ou VMWare, que são hypervisors do tipo 2.

Ao contrário do DOSBox, onde a gente apenas cria uma pasta e coloca os jogos e aplicativos, no 86Box é necessário ter uma imagem de HD.

Assim, a complexidade é bem maior. É necessário criar uma imagem de disco, instalar um SO (DOS ou até o Windows 95) para começar a usar. É preciso escolher o hardware: CPU, velocidade, memória, placas de vídeo, som e rede, colocar CD, HD, ZIP Drive, etc...


É fantástico, muito completo. Mas eu ainda prefiro, para ter tudo isso, o VMWare ou o VirtualBox.


4 - PCem

Criado em 2007, está na versão 17 e só tem para Windows e Linux. Emula 8086, 8088, 286, 386, 486, Pentium (I, Pro e II) e AMD K6-2 e K6-3, além de diversas placas de vídeo e som.

Do mesmo modo com o anterior, tem muita coisa pra configurar. É bem completo, muito capaz mas também tem instalação de SO para fazer.

Neste fórum aqui tem umas dicas para instalar o PCem. Procurando na internet e em fóruns do assunto, é possível encontrar as roms das máquinas do PCem. No GitHub encontrei esse arquivo com as roms para a versão 17 do PCem (versão atual).

Meu pensamento é o mesmo: se é para fazer muita coisa, prefiro um hypervisor. Se é só entrar e jogar, vou de DOSBox.



Felix Rieseberg, um programador americano, fez um fork de um projeto chamado v86 (um projeto de virtualização do x86 em JavaScript) e criou um programa para rodar o Windows 95 como um programa!

Muito bacana. Funciona muito bem. Só que... não consegui instalar programas lá... :(




É a mesma pegada do Windows 95.app e foi criado pelo mesmo autor. Só coloquei porque achei bonito. Mas não achei prático :(



7 - v86

Legal como os dois anteriores, só que roda em browser. Esse é o projeto de virtualização do x86 em JavaScript que originou os dois anteriores.

O bacana deste é que são dezenas de SO diferentes (FreeBSD, NodeOS, BeOS, Windows, MS-DOS, CP/M e mais um monte que eu nem tinha ouvido falar!). 

É possível escolher por plataformas (Linux, BSD, Windows, DOS, Unix), por interface para o usuário (gráfico ou texto), por status (atual ou antigo), por arquitetura (16 ou 32 bits) e até pela linguagem utilizada para o SO!

Outra coisa bacana aqui é que você pode fazer upload de imagens de CD e disquetes com seus programas para usar nos sistemas.

Funciona até legal, mas acho que é mais para matar curiosidade de quem nunca viu essas interfaces antigas.

(Algumas das opções do v86!)

(Windows 3.1 rodando em um navegador!)

Super legal, né?

O problema: não é seu e não está no seu computador. Se o desenvolvedor cansar, ele apaga tudo e pronto, lascou-se!


8 - Amiga

Criado pela Commodore em 1985, a família "Amiga" foi um grande sucesso nos EUA e Europa. Aqui no Brasil só chegava via muamba, graça a nossa linda, maravilhosa e salutar "Reserva de Mercado de Informática". Eu só vi um Amiga 500 em 1990...

Talvez por isso não seja um sistema que me atraia tanto. Enfim, existem 3 bons emuladores:

 - FS-UAE - Tem versões para Mac, Windows e Linux. Tem um launcher bem legal que facilita instalar tudo. Muito bom.

 - WinUAE - Apenas para Windows. Parece ser muito bom também, com um launcher bonito e funcional.

 - Amiga Forever - Esse é pago, porém inclui várias versões do SO do Amiga, jogos, programas, etc. Assim como os demais, também tem um launcher para carregar jogos e programas. É legal? É! Vale a pena pagar por isso? Acho que não!


9 - Atari

Talvez seja a plataforma com o emulador mais bem resolvido do mercado. O Stella, lançado em 1995, funciona muito bem.

Basta instalar o app e escolher a pasta onde estão os jogos. Aqui, no excelente "Atari Mania", você faz o download de praticamente todos os jogos disponíveis pro Atari 2600. Muito simples.


Meu resumão

Jogos antigos podem ser achados na internet facilmente. Um bom site é o DOS Games Archive e outro é o My Abandonware. Já o Replacement Docs contém manuais e mapas de jogos e softwares antigos. Vale conferir.

Para tirar dúvidas, achei um Fórum bem interessante: Vogons! Tem bons guias de instalação, bibliotecas de drivers, emulações de PC, Macs antigos e consoles, etc.

O Linus, do Linus Tech, fez um vídeo bem legal sobre esse assunto. Ele gostou bastante do PCem. Veja o vídeo aqui.

Para jogos de DOS, vá de DOSBox-X.

Para jogos de Windows, vá de emulador tradicional. Aqui no blog tem tutorial para instalar desde o DOS (veja aquiaqui) até o Windows 8 (veja aqui)!

Para jogos de Atari, vá de Stella.

Para jogos de Amiga, vá de FS-UAE.

Para MSX, aí a coisa complica :) Isso merece um post só pra MSX :))

Uma última dica: um site com vários emuladores de vários sistemas diferentes. Veja aqui!

Enfim, é isso pessoal!

Até o próximo post.

domingo, 29 de setembro de 2024

Dica: Convertendo comandos do Docker run para o Docker Compose

Pessoal,


Quando vamos instalar um contêiner Docker em nosso sistema, muitas vezes nos deparamos com uma instalação em comandos do Docker run:


Os comandos do Docker são muitos (veja aqui) e tornam as linhas de comando muitas vezes indecifráveis, principalmente para quem é iniciante no assunto.

Assim, foi criado o Docker Compose, uma forma mais fácil de escrever e ler os mesmos comandos, só que sem ser através de uma linha de comando. O exemplo acima fica deste jeito:


Muito mais legível, né?

Do mesmo modo, veja a diferença abaixo par instalar o Homarr, uma homepage simples para acessar seu home server.

Docker run:
docker run --name Homarr -c 768 --security-opt no-new-privileges:true --restart
on-failure:5 -p 4755:7575 -v /volume1/docker/homarr:/app/data/configs:rw
-v /volume1/docker/homarr/data:/data:rw -v /volume1/docker/homarr/icons:/app/public/icons:rw
-v /var/run/docker.sock:/var/run/docker.sock -e TZ=America/Sao_Paulo
-m 4g ghcr.io/ajnart/homarr:latest

Docker Compose:
version: "3.9"
services:
  homarr:
    container_name: Homarr
    image: ghcr.io/ajnart/homarr:latest
    mem_limit: 4g
    cpu_shares: 768
    security_opt:
      - no-new-privileges:true
    restart: on-failure:5
    ports:
      - 4755:7575
    volumes:
      - /volume1/docker/homarr:/app/data/configs:rw
      - /volume1/docker/homarr/data:/data:rw
      - /volume1/docker/homarr/icons:/app/public/icons:rw
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
     TZ: America/Sao_Paulo
Pois é.

Assim, criaram um serviço gratuito muito legal que transforma um Docker run em Docker Compose e vice-versa.

Para transformar o Docker run em Docker Compose, use o Composerize.

Para transformar o Docker Compose em Docker run, use o Decomposerize.

Pronto, essa a dica de hoje!

Até a próxima, pessoal!

domingo, 25 de agosto de 2024

Dica: Debloating o Windows 11 - Novidades de 2024!

Pessoal,


Já comentei aqui no blog, em pelo menos duas ocasiões, sobre um grande problema do Windows: bloatware!

São programas instalados pelo Windows mas que não são necessários para o sistema. São aplicativos redundantes, desnecessários, que ocupam espaço no HD e consomem processamento e RAM. São coisas como aplicativos para o LinkedIn, o TikTok, etc, além de programas de monitoramento e coleta de dados. Apesar de muito comuns em celulares com Android (a única vez que passou um Galaxy da linha S aqui em casa, um nada saudoso S4, tinha uma interface tão lotada de lixo que o deixava mais lento que outro Galaxy intermediário com Android puro que tinha aqui).

Isso começou há muito tempo e já foi um problema mais sério. Apesar disso, a Microsoft parece que resolveu repetir a dose do Windows 10 só que agora no Windows 11.

Geralmente são softwares que tem a desinstalação difícil ou ela é parcial ou incompleta.

Por sorte temos solução para isso. Métodos que foram citados em posts anteriores (aqui e aqui) já foram deixados de lado e abandonado por seus criadores ou foram incorporados em outros softwares e acabaram, eles mesmos, tornando-se inchados e confusos (a pura definição de BLOATWARE!).

Assim, dois métodos novos podem ser usados: o Revo Uninstaller (recomendo baixar a versão "Pro" e apagá-la depois, uma vez que é gratuita por 30 dias!) e o Optimizer, disponível no GitHub do Hellzerg.

Ambos são bem simples de usar e cumprem bem ao que se propõem!

Essa é a dica de hoje!

Até o próximo post, pessoal!

terça-feira, 13 de agosto de 2024

Instalando versões clássicas do Apple Macintosh!

Pessoal,


Realmente estou sem tempo atualmente. Muito trabalho (graças a D'us), mas com pouco tempo para lazer. Mas a gente vai se divertindo mesmo assim!

Bom, eu nunca tive computadores Apple quando eu era mais novo. Como já contei aqui, meu primeiro computador foi um Gradiente MSX DDPlus e, a seguir, alguns PCs. Meu primeiro Mac, um MacBook White Unibody, foi comprado só em 2009.

Eu sempre achei o Macintosh clássico muito bonito e elegante, mas eles sempre foram muito caros. O modelo Macintosh Classic, de 1990, custava a partir de US$1,000 lá nos EUA (algo como US$ 2,500 em valores atuais). O modelo Macintosh 128K, de 1984, custava $2,495 ($7,700 em valores atuais).


Além de caros, esses computadores eram "impossíveis" de serem comprados no Brasil. Não bastasse o preço, absurdamente caro para a realidade brasileira na década de 1980 ("a década perdida"), ainda tínhamos a fantástica Reserva de Mercado, uma genial idéia para fortalecer a indústria nacional mas que, na prática, proibia a importação de diversos produtos, tornando o Brasil um dos países mais fechados do mundo em termos de comércio internacional e tornando o mercado interno do país um feudo exclusivo de alguns poucos fabricantes que só traziam produtos ultrapassados e caríssimos. Assim, oficialmente a Apple só chegou ao Brasil em 1995, após o fim da Reserva de Mercado e com a criação do Plano Real (veja essa reportagem aqui).

Uma curiosidade: em 1987 uma empresa brasileira, a Unitron, lançou um clone do Macintosh 512K. Esse computador gerou uma batalha comercial entre os EUA e o Brasil. Veja essa história aqui e aqui.

Enfim, vamos voltar ao tópico deste post.

A Apple lançou, desde 1984, uma enormidade de modelos. É até difícil entender o quê vem antes de quê. Achei essa foto no Wikipedia para ilustrar melhor:


É uma enormidade de modelos. Eu até que não me interesso tanto pelos modelos em si, mas preciso saber quais modelos rodam as versões do SO que pretendo instalar.

Os modelos clássicos são divididos em "Old World ROM" e "New World ROM". Os primeiros, de 1984 até 1998, tanto com processadores Motorola 68000 quanto IBM PowerPC, utilizavam o Macintosh Toolbox, uma série de recursos, drivers, rotinas e APIs armazenados na ROM. Isso era devido ao fato da ROM ser mais barata e mais rápida que a RAM, assim uma boa parte do SO era carregado da ROM e não do disco de inicialização. Leia aqui para entender um pouco mais sobre isso. Já os do segundo tipo não tinham esse ToolboxROM na placa lógica, mas usaram uma ROM de inicialização armazenada na pasta "System".

Em 2006 a Apple adotou chips da Intel para toda a sua linha e o boot passou a ser por UEFI e em 2020 a Apple passou a adotar chips de arquitetura ARM desenhados por ela mesma (Apple Silicon).

Assim, para entender qual emulador usar, precisamos definir qual o modelo de Macintosh queremos usar, saber qual o seu processador e sua ROM, escolher a memória e qual a versão do SO desejamos... Muito simples, não?

A Apple usou chips da família Motorola 68000 inicialmente. Os 68000 eram 16-bits com registradores 32-bits, com clock de 5 a 16 MHz. Os 68020 eram 32-bits, usados inicialmente no Macintosh II, com clock de 16 MHz. Os 68030 permitiam memória virtual e tinham um cache para dados, eram 32-bits e tinham clock de 16 a 33MHz. Já os 68040 tinham melhor performance que os 68030 e tinham mais cache de data, além de clock de 25 a 40MHz.

Em 1994 a Apple adotou processadores IBM PowerPC. Foram os modelos PPC 601, 603, 604, G3, G4 e G5. O chip PPC-G4 foi o primeiro a ter clock de 1GHz e o G5 foi o primeiro processador 64-bits para Mac.

Em 2006 a Apple passou a adotar processadores Intel x86, indo dos Core Solo e Duo aos Ice Lake, da 10a geração.

E, por fim, em 2020, a Apple passou a adotar os chips ARM desenvolvidos por ela e produzidos pela TSMC.

Aqui estão todos os chips dos modelos da Apple.

Aqui está a lista de todos os produtos da Apple.

A figura (também obtida da Wikipedia) abaixo mostra a relação da versão do SO, do modelo de Mac e o processador:


Para simplificar, podemos resumir assim as opções para Macintosh clássicos:

 - Macintosh 128 ou 512 - System 1 e 2
 - Macintosh Plus - System 3
 - Macintosh SE e II - System 4 e 5
 - Macintosh IIX e SE - System 6
 - Macintosh LC e Quadra - System 7

Aqui tem um bom resumo de todas essas versões.

Por fim, os emuladores. Atualmente temos 4 opções viáveis:

 - Mini vMac - para emular computadores de 1984 a 1996 (família Motorola 68000), do System 1 ao 7.6; 
 - Basilisk II - para emular os Mac Classic (do System 1 ao 7.6) ou Mac II (System 7.x ao 8.1);
 - SheepShaver - para emular Macs com processadores PowerPC (de 7.5.2 a 9.0.4);
 - Infinit Mac - para emular todos os Macs clássicos e NeXT até o MacOS 9.0. É online!

Dito tudo isso, vamos colocar a mão na massa e instalar alguns máquinas virtuais :)
  • Mini vMac
Após fazer o download do aplicativo (aqui), descompacte ele. Para Mac, ele aparecerá com extensão .app e para Windows aparecerá como .exe.

Após executar, ele fará o bip clássico dos Macs antigos e aparecerá uma mensagem informado que não foi possível encontrar a ROM do computador:


Agora vamos ter que procurar a ROM do sistema desejado. Como dito mais cedo, o Mini vMac emula computadores que rodam do System 1 ao System 7.6, fabricados até 1996 e que usam processadores da família Motorola 68000. Macs que tinham processadores Power PC (G3 em diante, iMac, "New World ROM, etc), não vão rodar neste emulador.

A ROM você consegue baixar no site Macintosh Repository (aqui). Aqui você pode escolher a ROM desejada.

Escolhida a ROM, esta deve estar na mesma pasta que o aplicativo (.app ou .exe) e deve ter o nome "vMac.ROM" (exatamente assim!). Uma vez baixada a ROM, modificado o nome e colocada na pasta, ao executar o Mini vMac, aparecerá a imagem abaixo, informando que o sistema operacional não foi encontrado.


Escolhida a ROM (a máquina), agora vamos escolher a versão do sistema operacional.

Um pequeno adendo: você perceberá que esse disquete com interrogação pisca bem rápido. Isso acontece porque, por padrão, o vMac roda 8 vezes mais rápido que o Mac real. Apertando e mantendo pressionado <Control + S>, você poderá alterar a velocidade do emulador.

Para baixar a versão do sistema operacional desejada, recomendo o WinWorld (aqui), nosso velho conhecido das instalações de versões antigas de DOS e Windows.

Como escolher qual versão? Depende de qual máquina (ROM) você escolheu. Por exemplo o Macintosh 128K roda até o System 3, o 512K roda até o System 4.1, o Plus roda do 3.0 até o 7.5.5, o Classic II roda do 6.0.8 até o 7.6.1 e o Color Classic II roda do 7.1 ao 7.6.1. A lista de compatibilidades pode ser encontrada aqui. Algumas ROMs estão corrompidas, sendo necessário garimpar pela internet. Sites como o Archive.org são boas fontes (veja aqui e aqui, por exemplo). Este site aqui também tem algumas ROMs.

Baixado a versão correta do System, é só deixar na pasta onde já está o aplicativo do Mini vMac e a ROM e arrastar o arquivo (extensão .img) para o Mini vMac em execução.

Uma sugestão: como esse aplicativo é pequeno (apenas 129KB) e as ROMs e IMGs são pequenos também, crie pastas para cada máquina que quiser manter. Assim, por exemplo:


Bom, ao executar o Mini vMac com a ROM adequada e arrastando o disco do SO para o aplicativo, teremos isso aqui:



Veja que, ao iniciar o sistema, temos o disco de instalação mas não temos HD para instalar. Assim, vamos instalar um HD nesse Mac e instalar o SO nesse HD.

A imagem do HD pode ser obtida aqui. Também podemos usar o aplicativo Disk Jockey (aqui) para criar as imagens. Caso escolha o Disk Jockey, lembre-se de escolher para qual tipo de máquina vai usar.

Escolha o tamanho, descompacte a imagem (.dsk), arraste para a máquina aberta e mande instalar no HD. Bem simples esse processo. Vai pedir para adicionar os discos (é só arrastar para o app) e reiniciar a máquina. Agora arraste o a imagem que você criou e instalou o SO e pronto:

("Olá, eu sou o System 6.1, rodando em um HD no Macintosh Plus!")

Para instalar jogos e aplicativos nesse Macintosh, basta arrastar o arquivo .dsk ou .img do programa para a máquina. Há vários sites com aplicativos e jogos, como o o Macintosh Repository e o Archive.org.

Caso o arquivo baixado esteja com final .sit, é porque ele está compactado com o StuffIt, um "ZIP" antigo dos Macs. Para usar programas assim, baixe o arquivo para resolver isso aqui. Para isso, baixe o arquivo dessa página (importfl-1.2.2.zip), descompacte e arraste o .dsk para o vMac. Lá dentro, abra o .dsk e arraste o arquivo "importFl" para o HD, para manter gravado no HD. Depois, ao abrir o arquivo do HD, aparecerá a mensagem "ImportFl: Ready to import...". É só arrastar o .sit.

Primeiro temos que baixar o ResEdit (aqui). Esse programa basicamente dirá ao Mac antigo que um arquivo .sit deve ser lido como um arquivo do StuffIt. É como dizer que um arquivo .doc é para ser lido pelo Word ou um .xls deve ser lido pelo Excel. Coisas de computador antigo.

Depois de baixar, você verá que o arquivo tem esse nome aqui: "resedit_2.1.3.img_.sea__0.bin". Isso nada mais é que um arquivo zipado. Apenas mude o .bin para .zip e descompacte, arraste o arquivo .img que foi descompactado para o vMac e, por fim, arraste-o para o HD. Após abrir o ResEdit e selecionar o arquivo .sit desejado, você receberá uma mensagem assim:


Para resolver isso, clique em "ok" para criarmos a ligação entre o .sit e o programa StuffIt. Vá em File -> Get Info for <seu arquivo.sit>.

Aqui temos que mudar as informações em "Type" e "Creator":


Essas informações podem ser obtidas no site MacDisk. Este site mostra a assinatura do criador do programa, qual o tipo do arquivo, qual a extensão e qual o criador. Veja a figura abaixo:


Assim, os arquivos .sit são da StuffIt e, no ResEdit, vamos colocar como tipo "SIT!" e como criador "SIT!". Deve ficar assim:


Agora pode fechar o arquivo (clicando no quadrado do canto superior esquerdo) e salvá-lo e sair do ResEdit.

Isso talvez seja necessário para cada arquivo que você fizer... Coisas de retrocomputação...

Agora precisamos do StuffIt e você pode baixá-lo aqui. O processo é o mesmo de outros programas: baixar, descompactar, arrastar o .dsk para o Mac e copiar o executável para o HD. Agora execute o StuffIt, escolha o .sit que deseja abrir e pronto!

Basicamente isso é o necessário para o Mini vMac! Achei um vídeo no YouTube com um bom tutorial também (veja aqui).

  • Basilisk II
Basilisk II é um emulador multiplataforma (Unix, MacOS, Windows, BeOS e até AmigaOS) que emula desde o Mac Classic (rodando do System 1.x até o 7.6) ao Mac II (rodando System 7.x, 8.0 e 8.1), porém apenas para processadores Motorola 68xxx. Entretanto o projeto foi interrompido em 2008 mas é mantido por voluntários.

O download pode ser obtido aqui, no GitHub do projeto, ou aqui, no Emaculation. No caso do Basilisk II, é necessário baixar o aplicativo e um aplicativo adicional para a interface mais amigável (BasiliskGUI, aqui). Também é necessário baixar ROM para a máquina (baixei aqui), mas já deixei outras opções acima, no tutorial do Mini vMac. Além disso, também é necessário fazer o download do sistema operacional (aqui).

Após realizar os downloads, crie uma pasta e deixe os arquivos para cada máquina que deseja criar lá, assim como mostrei no Mini vMac. Fica bem mais fácil e organizado, ainda que ocupe um pouco mais de espaço. A ROM, neste emulador, pode ter qualquer nome (prefiro deixar o nome da máquina que vou emular), uma vez que o programa vai ser informado do nome e localização da ROM.

Também precisaremos de uma imagem de disco como HD. Podemos usar as imagens limpas que eu tinha mostrado antes ou o aplicativo Disk Jockey (aqui) para criar as imagens. Caso escolha o Disk Jockey, lembre-se de escolher para qual tipo de máquina vai usar.

Agora abra o Basilisk II GUI.


Primeiro vamos adicionar os discos. A ordem deve ser o disco de instalação e depois o HD. Depois, em "Unix root", indique uma pasta para poder transferir arquivos entre o computador atual e a VM. Agora, em 
"Graphics/Sound", escolha a atualização da tela (preferi deixar em 30MHz) e o tamanho da janela que você quer. Em "System", escolha o tipo de máquina, o tamanho da RAM e o processador e indique onde está a ROM escolhida. O botão "Start" só inicia a VM se ela estiver na pasta "Aplicativos", caso contrário nada ocorre.

Na pasta onde colocou tudo, simplesmente inicie clicando em "Basilisk II". Abra a imagem com a instalação e escolha instalar no HD. Ao final da instalação, saia da VM, execute novamente o GUI e retire o volume de instalação, deixando só o volume do HD.

Na primeira vez que executar após a instalação, talvez apareça esse erro aqui:


Para solucionar, reinicie a VM com o SHIFT apertado (talvez precise fazer isso algumas vezes), vá na pasta "System Folder -> Extensions" e apague a extensão "A/ROSE". Outra opção pode ser escolher uma VM com processador menor (inicialmente tinha escolhido o 68040, que deu este problema e, depois, com o 68020, não tive problemas).

Pessoalmente achei o Basilisk II mais fácil de configurar que o Mini vMac.

Aqui, no Emaculation, tem um bom tutorial para a instalação do Basilisk em MacOS. E aqui, no YouTube, tem um bom também (baseado no Emaculation).

Um detalhe é que algumas imagens do System 8.1 podem dar problema para instalação. Aparece uma mensagem assim: "Error: The system software on the startup disk functions on the original media, not if copied to another drive." Esse erro é basicamente porque o sistema interpreta que a sua cópia é ilegal e para resolver basta ir clicar com o botão direito sobre a imagem, ir em "Obter informações" (ou Propriedades do Arquivo, caso esteja no Windows) e mudar o arquivo para "Read Only". Pronto! :)



  • SheepShaver
Esse é o terceiro emulador para rodar Apple antigo. Ao contrário dos emuladores anteriores, este emula o processador IBM PowerPC que equipava os Macs até a Apple migrar para os processadores Intel.

PowerPC é um acrônimo de "Performance Optimization With Enhanced RISC - Performance Computing" e refere-se a uma arquitetura de processador RISC criada por uma associação entre Apple, IBM e Motorola. Produziu processadores de 32 e 64bits e equipou, além desses Macs clássicos, vários consoles como XBox 360, PlayStation 3, Game Cube e Wii.

Como curiosidade, um modelo em especial dos PowerPC é usado até hoje: é o modelo RAD750, um processador já citado aqui no blog (veja aqui), desenhado em 2001 para tolerar altos graus de radiação (200.000 a 1.000.000 Rads) e temperatura (-55 a 125 graus). Esse modelo de 32bits, produzido em um "arcaico" processo de 150nm e opera em 110 a 200MHz, equipa vários satélites e, inclusive, o Perseverance (enviado para Marte). Custa singelos US$ 340.000 e são idênticos aos processadores utilizados pelos PowerBook G3, iMacs coloridos e os primeiros iBooks!

Voltando ao SheepShaver: assim como nos emuladores anteriores, crie uma pasta para colocar o aplicativo baixado aqui, a ROM baixada aqui e o System 9.0.4 baixado aqui (o SheepShaver emula do 7.5.2 ao 9.0.4, portanto o 9.1 e 9.2 não funcionarão aqui).

A ROM baixada deve ter exatamente esse nome: "Mac OS ROM", sem extensão.

Assim que você executar o SheepShaver, irá aparecer o disco com interrogação, informando que a ROM não foi encontrada. Vamos ter que fazer algumas configurações antes de funcionar tudo!

("Olá! Sou o SheepShaver e não encontrei o arquivo de ROM!!")

A primeira coisa que faremos é ir no menu do canto superior esquerdo do Mac e clicar no SheepShaver -> Settings. Nessa tela faremos todas as configurações necessárias.


Vá em "Create" para criar um disco virtual e escolha o nome que quiser, porém com a extensão ".hfv". Criei um HD de 500MB. Depois vá em "Add" para adicionar a ISO de instalação (lembre-se de marcar a ISO para Read Only, como explicado mais para cima no post. Depois mude a RAM para pelo menos 512MB.

Em "Audio/Volume" ajuste a taxa de atualização da tela (coloquei em Dynamic) e coloquei o tamanho da tela em 1024x768.

Em "Miscellaneous" certifique-se que "Ignore illegal instructions" e "Ignore illegal memory accesses" estejam marcados. Agora reinicie o emulador e instale normalmente!


Esse é, de longe, o mais "amigável" para instalar. É bem melhor que o Basilisk II e muito, muito melhor que o Mini vMac.




Bom, tá instalado! Não consegui ainda fazer a internet funcionar, mas o som está funcionando sem problemas.

Tem um bom tutorial aqui e um vídeo no YT aqui, ambos recomendados!

Tirando a curiosidade de ver ele funcionando, tem pouca utilidade prática! Se você quiser, pode fazer um Mac Clássico com um Raspberry Pi, como aqui!

Outra opção é essa aqui: o MacintoshPi! Pelo que entendi, ele permite que você escolha entre as versões do Mac OS 7, Mac OS 8 ou Mac OS 9 para emular no Raspberry Pi, e a instalação é praticamente automatizada. Ao executar o script principal ./build_all.sh, ele baixa e instala automaticamente todas as dependências, pacotes, ROMs, imagens do sistema e configurações necessárias. O processo leva cerca de duas horas para compilar tudo.

Depois de instalado, você pode rodar o sistema desejado com comandos simples, como mac os7, mac os8 ou mac os9. Além disso, o projeto suporta som, conexão à internet e emulação de modem, tudo sem precisar de um gerenciador gráfico (X.org), o que deixa a emulação mais leve e autêntica. Ele também inclui emuladores para Commodore 64/128/PET como bônus. Vale notar que ele não roda no Raspberry Pi 4 (e acredito que nem no 5), apenas em modelos como Zero 2 W, 2, 3, 3B, 3B+, e requer o Raspberry Pi OS (Legacy).

Outra coisa quem percebi é que a instalação dessas versões antigas do MacOS eram muito mais fáceis que as do Windows! Impressionante!!

Mas é isso por hoje! Até o próximo post, pessoal!