EDITAR: Resulta que pude resolver parcialmente mi propio problema; no estoy seguro de los detalles particulares, pero que yo sepa, la creación / edición ~/.bash_profile
simplemente hace que Terminal ejecute scripts en ese archivo automáticamente cuando se inicia. Parece que ~/.bashrc
otros archivos hacen cosas similares pero diferentes, pero no conozco los detalles. Lo que hice para arreglar fue editar mi .bash_profile
archivo existente y agregar la export GPG_TTY=$(tty)
línea al final. Esto solucionó GPG / git en la Terminal.
El título puede ser confuso, así que déjenme explicar un poco.
Mi código a partir de ahora es así:
#!/bin/bash
clear
echo "This script fixes errors with ioctl in GPG."
export GPG_TTY=$(tty)
La última línea ayuda con la solución ( problema detallado aquí ; solución utilizada ), pero tengo que ejecutarla varias veces, cada vez que vuelvo a abrir una nueva ventana de Terminal. Aunque el script puede no ser necesariamente más rápido que simplemente escribirlo, todavía me ayudaría.
A partir de ahora, el resultado es que abre una nueva ventana en Terminal, con el resultado de esta manera:
This script fixes errors with ioctl in GPG.
logout
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.
[Process completed]
Esto no ayuda con ninguna de las otras ventanas que estoy usando, entonces, ¿hay alguna manera de hacer que esta solución se aplique a otras ventanas o se abra en la última ventana de terminal utilizada?
Además, ¿hay una solución permanente para ioctl para GPG, o hay una manera de ejecutar automáticamente este script cada vez que abro una nueva ventana de Terminal, o cuando uso un comando que usa GPG (por ejemplo, git commit
)?
¿Estoy obligado a ingresar el código manualmente o usar un archivo de script para hacer esto?
Esta puede ser una pregunta mala o simple, pero me gustaría hacerla de todos modos.
Gracias por adelantado.