How To: Converter um ficheiro PDF numa apresentaçao GIF

No Debian/Ubuntu, instalar o ImageMagick.

Na linha de comando fazer: convert -density 150 -quality 100 -adjoin -delay 1000 fonte.pdf destino.gif

O parametro -delay 1000 indica o tempo entre slides. Os restantes parametros permitem ter uma “boa” definiçao e sao explicados aqui ou no manual, aqui.

How To: Emacs - como exportar um email escrito em Org-mode para mime/html

No Emacs, instalar o pacote MELPA org-mime.

  1. Escrever o texto do email em Org-mode;
  2. Selecionar o texto escrito;
  3. A-x org-mime-htmlize.
  4. É gerado automaticamente um bloco mime em html, com base no texto selecionado, ficando 2 blocos: um, em texto simples e o outro, em html.

Análise de grandes ficheiros de dados com comandos

Em GNU/Linux:

  1. 10 ferramentas em GNU/Linux para analisar dados em ficheiros de texto - aqui

  2. Manipulating Data on Linux - aqui

Em Python/Pandas:

  1. Porquê e Como utilizar o Pandas com “muitos dados” (mas sem ser Big Data) - aqui.

  2. Vale mesmo a pena experimentar o Python Pandas

Porquê um servidor caseiro?!

Porquê ter um servidor em casa em vez de utilizar os serviços de uma “Cloud”?!

O Richard Stallman explica. Vejam aqui.

How To: disable both wifi and bluetooth in raspbian

  1. To completely disable the onboard WiFi from the firmware on the Pi3, Edit config.txt

    nano /boot/config.txt
    
    1. and add

      dtoverlay=pi3-disable-wifi
      dtoverlay=pi3-disable-bt
      
      1. save

      2. If you dont’t have WiFi cards and want to prevent wpa_supplicant from starting after boot, disable service:

      sudo systemctl stop wpa_supplicant.service;
      sudo systemctl mask wpa_supplicant.service
      

How To: unfreeze messages in Exim4 queue

  • To process all frozen messages in the Exim queue:

    sudo exiqgrep -iz | sudo xargs exim -v -M
    

    (source)

    • Delete all frozen messages in the Exim quere:
    sudo exiqgrep -iz | sudo xargs exim -Mrm
    

    (source)

How To: effectively delete a git submodule.

To remove a submodule you need to:

  1. git submodule deinit <path_to_submodule>
  2. git rm -f <path_to_submodule>
  3. git commit-m "Removed submodule "
  4. rm -rf .git/modules/<path_to_submodule>
  5. Delete the relevant section from .git/config.
  6. Stage the .gitmodules changes git add .gitmodules
  7. Run git rm –cached path_to_submodule (no trailing slash).
  8. Run rm -rf .git/modules/path_to_submodule (no trailing slash).
  9. Commit git commit -m “Removed submodule “
  10. Delete the now untracked submodule files rm -rf path_to_submodule

(source)

How To: unban IPs that are blocked by Fail2Ban

First, list the rules in all chains with numeric IPs:

iptables -n -L

e.g.:

Chain fail2ban-apache-noscript (1 references)
target     prot opt source               destination
REJECT     all  --  85.241.169.238       0.0.0.0/0            reject-with icmp-port-unreachable
RETURN     all  --  0.0.0.0/0            0.0.0.0/0

Remove banned IP in selected chain:

sudo fail2ban-client set apache-noscript unbanip 85.241.169.238

How To: non-breaking space in Org Mode

In word processing and digital typesetting, a non-breaking space (” “), also called no-break space, non-breakable space (NBSP), hard space, or fixed space, is a space character that prevents an automatic line break at its position. (from wikipedia)

\nbsp{}

How To: Desligar prefixos (www) e sufixos (.com) nos URL escritos no Mozilla Firefox

Quando escrevemos um URL no Firefox e o servidor leva algum tempo a responder, o browser tenta adivinhar o domínio colocando prefixos e sufixos, normalmente “www” e “.com”, respetivamente.

Para desligar esta funcionalidade, de acordo com este artigo, fazer no Firefox o seguinte:

  • Na barra de URL, escrever o seguinte:

    about:config
    
    • Surge a mensagem: This might void your warranty!.
    • Clicar no botão: I'll be carefull, I promise!
    • Pesquisar o seguinte no campo Search:
    fixup
    
  • Alterar os valores dos seguintes nomes:

    1. browser.fixup.alternate.enabled, fazer duplo clique para colocar a false
    2. browser.fixup.alternate.prefix, colocar [vazio]
    3. browser.fixup.alternate.suffix, colocar [vazio]
  • Fechar o tab.