Jawaban yang diperbarui:
Pada 2019, saya sejak itu menggunakan repositori Arch's AUR (Tapi masih di sistem Debian saya ). Saya juga melakukan ini di FreeBSD, sekarang, dengan patch kecil (agak sepele). Ini BUKAN jawaban "beralih ke Lengkungan".
Agak sulit untuk mengatur pada awalnya, tetapi intinya adalah bahwa Anda sebenarnya bisa mengkompilasi makepkg
program Arch dan menggunakannya untuk mengkompilasi repositori AUR pada Debian. Saya melakukan ini seperti itu (walaupun saya mungkin telah melupakan beberapa dependensi):
Jawaban lama saya masih ada setelah pemisah di dekat bagian bawah.
1) Bangunan 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) Persiapan untuk mengkompilasi sumber GTK3:
Sekarang, untuk membangun dan menginstal gtk3-typeahead
. Untuk mendapatkan semua dependensi build (debian), yang kurang lebih sama dengan yang di Arch, Anda harus terlebih dahulu memiliki deb-src
baris di sources.list Anda sehingga apt-get build-dep
akan berhasil mengambil -dev
paket yang diperlukan .
My sources.list
berisi baris berikut untuk melakukan itu. Ubah jalur berdasarkan rilis Anda dan server terdekat.
deb-src http://ftp.us.debian.org/debian/ sid main contrib
3) Bangunan gtk3-typeahead
:
Kemudian, Anda dapat menjalankan yang berikut ini untuk membangun 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
Setelah melakukan ini, binari akan dikemas dalam .tar.gz
arsip satu tingkat di atas pohon git. Dalam contoh saya, ini akan menjadi into
direktori.
Untuk menginstalnya:
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"
Ini sangat bisa dituliskan, dan sedikit lebih sulit daripada berurusan dengan skrip lama saya menurut pendapat saya yang sederhana. Itu juga tidak lagi tergantung pada debian.
Jawaban asli:
Sudah setahun dan ini masih mengganggu saya, karena orang-orang GTK3 memutuskan untuk melakukan hardcode perilaku ini, dengan tidak ada cara untuk mengembalikannya tanpa kompilasi ulang.
Namun, typeahead di-patch kembali ke gtk3 yang didistribusikan di Ubuntu.
Ubuntu juga membuat pemilih file memerlukan klik dua kali untuk memilih file, alih-alih hanya memerlukan satu klik jika file sudah dipilih. Jika Anda setuju dengan menambal kode sumber gtk3, saya telah membuat tambalan yang berfungsi pada gtk + 3.22.7 menggabungkan tambalan ubuntu dan memutakhirkannya ke versi GTK yang lebih terkini.
Selain itu, saya membuat skrip untuk sistem debian saya yang secara otomatis mengunduh sumber untuk versi terbaru di manajer paket, menambalnya, dan mengompilasinya. Berjalan dengan benar di Debian Sid, dan seharusnya berfungsi dengan baik untuk distro Debian lainnya juga.