solução para cannot open display: :0 no ubuntu 17.10

Nesse final de semana, instalei o ubuntu 17.10 em um notebook, fui rodar o gaparted com sudo e eis que me deparo com esse erro:

felipebraz@sistemas01:~$ sudo gparted
[sudo] senha para felipebraz: 
Invalid MIT-MAGIC-COOKIE-1 key
(gpartedbin:3991): Gtk-WARNING **: cannot open display: :0

Essa deu um pouco de trabalho pra solucionar, mas no fim, como habitual, resolvemos isso com um único comando.

felipebraz@sistemas01:~$ xhost +si:localuser:root
localuser:root being added to access control list

Depois disso, todos os comandos estão rodando com sudo sem qualquer dificuldade =)

Trocar editor padrão no ubuntu

Quando o ubuntu é instalado, o editor padrão em linha de comando é o nano, porém um das primeiras coisas que sempre faço é instalar o vim.

Mas mesmo após instalar o vim, o editor padrão continua sendo o nano. Pra resolver isso é só usar o alternatives pra trocar o default.

sudo update-alternatives --config editor

Exemplo da saída do comando:

    $ sudo update-alternatives –config editor

    There are 5 alternatives which provide `editor’.
    Selection Alternative
    ———————————————–
    1 /usr/bin/vim
    2 /bin/ed
    *+ 3 /bin/nano
    4 /usr/bin/vim.basic
    5 /usr/bin/vim.tiny
    Press enter to keep the default[*], or type selection number:

Basta escolher o editor pelo número e apertar enter. =)

Controle de cache com PHP

Para nunca fazer cache de uma página

$ts = gmdate("D, d M Y H:i:s") . " GMT";
header("Expires: $ts");
header("Last-Modified: $ts");
header("Pragma: no-cache");
header("Cache-Control: no-cache, must-revalidate");

Para fazer cache de 1 hora (3600 segundos)

$seconds_to_cache = 3600;
$ts = gmdate("D, d M Y H:i:s", time() + $seconds_to_cache) . " GMT";
header("Expires: $ts");
header("Pragma: cache");
header("Cache-Control: max-age=$seconds_to_cache");