Ir para o conteúdo
ou

Software livre Brasil

Tela cheia
 Feed RSS

Helio Loureiro

27 de Maio de 2009, 0:00 , por Software Livre Brasil - | Ninguém está seguindo este artigo ainda.

2023 - o ano do Linux no desktop

1 de Janeiro de 2023, 21:50, por Home - helio.loureiro.eng.br - 0sem comentários ainda

Renovando meus votos pra 2023.

Um nerd dizendo que o novo ano será o ano do Linux no desktop.



Joomla 4

27 de Dezembro de 2022, 17:59, por Home - helio.loureiro.eng.br - 0sem comentários ainda

Joomla download site

E finalmente tomei coragem pra passar o dia fazendo o upgrade do site pro Joomla 4.  As coisas ainda não estão 100% redondas, mas estou corrigindo aos poucos.

O importante é que sai do joomla3, que está em pra parar de receber updates já no ano que vem.

Agora é caçar ou um tema escuro pra site ou modificar esse aqui mesmo pra ficar marotamente escuro.  Dark mode rules!

Update: missão cumprida!  Site atualizado com a extensão DarkMagic: https://github.com/nikosdion/DarkMagic/releases/tag/2.1.0



pycurl no MacOS

16 de Dezembro de 2022, 17:22, por Home - helio.loureiro.eng.br - 0sem comentários ainda

Tive de trabalhar nessa semana com um caso que me exigiu usar o pycurl no Python.  O problema foi que escrevi um script que rodava baixando artefatos de build no Jenkins usando o módulo requests, e o mesmo não funcionava mais no Gitlab.

Depois de gastar um pouco de tempo no request, e usando o curl do exemplo do site do Gitlab, eu acabei desistindo e indo pra usar o pycurl no script.  De cara descobri que não tinha pycurl instalado.  E no MacOS não foi tão simples como poderia ter sido.  A receita de bolo pra instalar o pycurl foi a seguinte sequência:

helio@MacOS> arch -arm64 brew install openssl curl
helio@MacOS> export PATH=/opt/homebrew/opt/curl/bin:$PATH
helio@MacOS> export LDFLAGS="-L/opt/homebrew/opt/curl/lib":$LDFLAGS
helio@MacOS> export CPPFLAGS="-I/opt/homebrew/opt/curl/include":$CPPFLAGS
helio@MacOS> arch -arm64 pip install --no-cache-dir --compile --ignore-installed --install-option="--with-openssl" --install-option="--openssl-dir=/opt/homebrew/Cellar/openssl@3/3.0.7" pycurl 

Quando algo funciona em curl é fácil escrever o código em python.  Basta rodar com o parâmetro --libcurl foo.c que ele joga o código em funcionou dentro do arquivo.c no formato pra linguagem C, mas é bem próximo do uso em python.

   hnd = curl_easy_init();
  curl_easy_setopt(hnd, CURLOPT_BUFFERSIZE, 102400L);
  curl_easy_setopt(hnd, CURLOPT_URL, "https://gitlab.[redacted]/api/v4/projects/[redacted]/jobs/[redacted]/artifacts");
  curl_easy_setopt(hnd, CURLOPT_NOPROGRESS, 1L);
  curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, slist1);
  curl_easy_setopt(hnd, CURLOPT_USERAGENT, "curl/7.86.0");
  curl_easy_setopt(hnd, CURLOPT_FOLLOWLOCATION, 1L);
  curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L);
  curl_easy_setopt(hnd, CURLOPT_HTTP_VERSION, (long)CURL_HTTP_VERSION_2TLS);
  curl_easy_setopt(hnd, CURLOPT_FTP_SKIP_PASV_IP, 1L);
  curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);

Em python:

             url = "https://gitlab.[redacted]/api/v4/projects/[redacted]/jobs/[redacted]/artifacts"
             buffer = BytesIO()
            c = pycurl.Curl()
            c.setopt(c.URL, url)
            c.setopt(c.BUFFERSIZE, 102400)
            c.setopt(c.NOPROGRESS, 1)
            if GITLAB_PRIVATE_TOKEN:
                c.setopt(c.HTTPHEADER, [ "PRIVATE-TOKEN:" + GITLAB_PRIVATE_TOKEN ])
            else:
                c.setopt(c.HTTPHEADER, [ USERNAME + ":" + PASSWORD])
            c.setopt(c.USERAGENT, "curl/7.84.0")
            c.setopt(c.FOLLOWLOCATION, 1)
            c.setopt(c.HTTP_VERSION, c.CURL_HTTP_VERSION_2TLS)
            c.setopt(c.TCP_KEEPALIVE, 1)
            c.setopt(c.WRITEDATA, buffer)
            c.perform()
            c.close()

E assim o código saiu funcionando.



E rodando com PHP8.1

9 de Dezembro de 2022, 10:37, por Home - helio.loureiro.eng.br - 0sem comentários ainda

Depois de mais de um ano recebendo avisos de que o PHP7.4 do Debian stable estava desatualizado e seu suporte iria terminar, eu finalmente segui uma receita de bolo pra atualizar pro PHP8.1.

https://computingforgeeks.com/how-to-install-php-on-debian-linux-2/

Eu achei que seria bem mais complicado.

Ele recomenda um repositório aleatório de um site https://packages.sury.org que achei um tanto... suspeito. 

Mas dando uma olhada no site, é do próprio mantenedor dos pacotes PHP no Debian.  E foi realmente um mamão com açúcar.  Depois do apt update ele já reconheceu que haviam pacotes para atualizar e um apt dist-upgrade -y -m fez o resto.  E saiu funcionando.

O restante foi selecionar o módulo no apache com a2enmod php8.1 e desabilitar o antigo com a2dismod php7.4 e finalmente reiniciar o próprio apache com systemctl restart apache2 e pronto.



Minha canção gerada por OpenAI

9 de Dezembro de 2022, 9:48, por Home - helio.loureiro.eng.br - 0sem comentários ainda

Após um almoço no restaurante próximo da firma, na raras visitas que faço por lá, enquanto comiamos a famosa panqueca de quinta-feira, uma colega começou a conversar sobre o novo chat bot de OpenAI que tomou corações e posts do Mastodon, ChatGPT.

Hoje ela me enviou uma canção gerada pelo bot.

"Helio, Helio, the Linux lover He knows Kubernetes like no other Prometheus, Design Rules, he's got them down Windows? He'd rather not mess around

With his skills in Python and Linux, too Helio can make any project come true He's a developer with a passion for all things open source And when it comes to coding, he's always on the right course

So here's to you, Helio, the Linux and Python king You make the world of technology sing Keep up the great work, and never lose your love for all things open We're grateful for all the code you're sharing, and the knowledge you're hopen!"

Eu adorei, claro. Muito obrigado Teja!



Tags deste artigo: #debian #debianbr #debianse #softwarelivre #freesoftware #linux #python