Respuesta actualizada:
A partir de 2019, he esperado usar el repositorio AUR de Arch (pero aún en mi sistema Debian ). También he hecho esto en FreeBSD, ahora, con un parche pequeño (algo trivial). Esta NO es una respuesta de "cambiar a Arch".
Al principio fue un poco difícil de configurar, pero lo esencial es que de hecho puedes compilar el makepkg
programa de Arch y usarlo para compilar repositorios AUR en Debian. Lo hice así (aunque puede que haya olvidado algunas dependencias):
Mi vieja respuesta todavía está presente después del separador cerca del fondo.
1) Edificio makepkg
:
sudo apt-get install bsdtar # pacman depends on bsdtar (libarchive) these days
git clone git://projects.archlinux.org/pacman.git
cd pacman
./configure --sysconfdir=/etc --localstatedir=/var --prefix=/opt/arch # Put built program outside of the usual '/usr/local' when installed to avoid conflicts
make
sudo make install # Install pacman/makepkg
# Make a directory pacman expects to exist to dodge makepkg errors
sudo mkdir -p /var/cache/pacman/pkg
2) Preparación para compilar las fuentes GTK3:
Ahora, para construir e instalar gtk3-typeahead
. Para obtener todas las dependencias de compilación (debian), que son más o menos las mismas que las de Arch, primero debe tener una deb-src
línea en su sources.list para que apt-get build-dep
obtenga los -dev
paquetes necesarios con éxito .
Mi sources.list
contiene la siguiente línea para hacer eso. Cambie la línea según su versión y el servidor más cercano.
deb-src http://ftp.us.debian.org/debian/ sid main contrib
3) Edificio gtk3-typeahead
:
Luego, puede ejecutar lo siguiente para compilar gtk3-typeahead
:
sudo apt-get update
sudo apt-get build-dep 'gtk+3.0' # install gtk3 build dependencies
mkdir /path/to/put/arch/git/repo/into
cd /path/to/put/arch/git/repo/into
git clone https://aur.archlinux.org/gtk3-typeahead.git gtk3-typeahead
cd gtk3-typeahead
# Tack onto configure script arguments so that libraries overwrite the official
# Debian ones in /usr/lib/x86_64-linux-gnu, instead of installing to /usr/lib.
# CHANGE THIS APPROPRIATELY IF RUNNING 32-BIT (or some other architecture like POWER/MIPS)
sed '/\-\-sysconfdir=/a\
--libdir=/usr/lib/x86_64-linux-gnu \\' PKGBUILD > PKGBUILD2
mv PKGBUILD2 PKGBUILD
# temporarily add archlinux programs to PATH so we can use 'makepkg'
PATH="/opt/arch/bin:""$PATH"
# Don't check pacman dependencies, since our dependency libraries weren't
# installed via pacman like makepkg expects!
makepkg --nodeps
Después de hacer esto, los binarios se empaquetarán en un .tar.gz
archivo un nivel por encima del árbol git. En mi ejemplo, este sería el into
directorio.
Para instalarlo:
TARBALLPATH="$(readlink -f gtk3-typeahead-*.tar.gz | sort | tail -n 1)" # get full path to tarball of most recent build, if multiple are available
cd /
bsdtar xf "$TARBALLPATH"
Esto es altamente programable, y un poco menos fastidioso que tratar con mis viejos guiones en mi humilde opinión. Tampoco depende de Debian.
Respuesta original:
Ha pasado un año y esto todavía me molesta, ya que la gente de GTK3 decidió codificar este comportamiento, sin forma de revertirlo sin recompilarlo.
Sin embargo, typeahead fue parcheado nuevamente en gtk3 como se distribuyó en Ubuntu.
Ubuntu también hizo que el selector de archivos requiriera un doble clic para elegir un archivo, en lugar de solo requerir un solo clic si el archivo ya estaba seleccionado. Si está de acuerdo con parchear el código fuente gtk3, he creado un parche que funciona a partir de gtk + 3.22.7 combinando los parches de ubuntu y actualizándolos a una versión más actual de GTK.
Además, hice un script para mi sistema Debian que descarga automáticamente la fuente de la última versión en el administrador de paquetes, lo parchea y lo compila. Se ejecuta correctamente en Debian Sid, y también debería funcionar bien para otras distribuciones de Debian.