EDITAR: Acontece que eu consegui resolver parcialmente o meu próprio problema - não tenho certeza sobre os detalhes específicos, mas até onde eu sei criar / editar ~/.bash_profile
simplesmente faz o Terminal rodar scripts nesse arquivo automaticamente quando iniciado. Parece que ~/.bashrc
e outros arquivos fazem coisas similares, mas ainda assim diferentes, mas eu não sei os detalhes. O que fiz para corrigir foi editar meu arquivo .bash_profile
existente e adicionar a linha export GPG_TTY=$(tty)
ao final. Este fixo GPG / git no Terminal.
O título pode ser confuso, então deixe-me elaborar um pouco.
Meu código a partir de agora é assim:
#!/bin/bash
clear
echo "This script fixes errors with ioctl in GPG."
export GPG_TTY=$(tty)
A última linha ajuda com a correção ( problema detalhado aqui ; solução usada ), mas eu tenho que executá-lo várias vezes, toda vez que eu reabrir uma nova janela do Terminal. Embora o script não seja necessariamente mais rápido do que simplesmente digitá-lo, ainda assim seria útil para mim.
A partir de agora, o resultado é que ele abre uma nova janela no Terminal, com a saída assim:
This script fixes errors with ioctl in GPG.
logout
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.
[Process completed]
Isso não ajuda em nenhuma das outras janelas que estou usando, então há uma maneira de fazer essa correção se aplicar a outras janelas ou abrir na última janela de terminal usada?
Além disso, existe uma correção permanente para o ioctl para GPG, ou existe uma maneira de executar este script automaticamente sempre que eu abro uma nova janela do Terminal, ou quando eu uso um comando que usa GPG (por exemplo, git commit
)?
Eu sou forçado a entrar no código manualmente ou usar um arquivo de script para fazer isso?
Esta pode ser uma pergunta ruim ou simples, mas eu gostaria de perguntar do mesmo jeito.
Obrigado antecipadamente.