O Firefox só usa URLs como parâmetros da linha de comando , não como stdin, e essas são coisas distintas. Então o tubo não está quebrado, é apenas a ferramenta errada.
Você precisa de uma das seguintes opções:
-
"Substituição de comando" usando os operadores
$(…)
ou'…'
:firefox $(xclip -o -selection clipboard)
-
Um programa que faz recebe entrada de stdin, e converte para argumentos da linha de comando:
xclip -o -selection clipboard | xargs firefox