Cập nhật câu trả lời:
Kể từ năm 2019, tôi đã hy vọng sử dụng kho lưu trữ AUR của Arch (Nhưng vẫn còn trên hệ thống Debian của tôi ). Bây giờ tôi cũng đã thực hiện điều này trên FreeBSD, với bản vá nhỏ (hơi tầm thường). Đây KHÔNG phải là câu trả lời "chuyển sang Arch".
Ban đầu hơi khó cài đặt, nhưng ý chính của nó là trên thực tế bạn có thể biên dịch makepkg
chương trình của Arch và sử dụng nó để biên dịch các kho lưu trữ AUR trên Debian. Tôi đã làm như vậy (mặc dù tôi có thể đã quên một số phụ thuộc):
Câu trả lời cũ của tôi vẫn còn sau khi dải phân cách gần phía dưới.
1) Tòa nhà 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) Chuẩn bị biên dịch các nguồn GTK3:
Bây giờ, để xây dựng và cài đặt gtk3-typeahead
. Để có được tất cả các phụ thuộc xây dựng (debian), ít nhiều giống với Arch, trước tiên bạn phải có một deb-src
dòng trong nguồn.list để có apt-get build-dep
thể tìm nạp thành công các -dev
gói cần thiết .
My sources.list
chứa dòng sau để làm điều đó. Thay đổi dòng dựa trên bản phát hành của bạn và máy chủ gần nhất.
deb-src http://ftp.us.debian.org/debian/ sid main contrib
3) Tòa nhà gtk3-typeahead
:
Sau đó, bạn có thể chạy các bước sau để xây dựng 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
Sau khi làm điều này, các nhị phân sẽ được đóng gói trong .tar.gz
kho lưu trữ một cấp trên cây git. Trong ví dụ của tôi, đây sẽ là into
thư mục.
Để cài đặt nó:
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"
Điều này có tính kịch bản cao, và ít rắc rối hơn so với việc xử lý các kịch bản cũ của tôi theo quan điểm khiêm tốn của tôi. Nó cũng không còn phụ thuộc vào debian.
Câu trả lời gốc:
Đã một năm và điều này vẫn làm tôi khó chịu, vì những người GTK3 đã quyết định mã hóa hành vi này, không có cách nào để hoàn nguyên nó mà không biên dịch lại.
Tuy nhiên, kiểu chữ đã được vá lại thành gtk3 như được phân phối trong Ubuntu.
Ubuntu cũng làm cho trình chọn tệp yêu cầu doubleclick để chọn tệp, thay vì chỉ yêu cầu một lần nhấp nếu tệp đã được chọn. Nếu bạn đồng ý với việc vá mã nguồn gtk3, tôi đã tạo một bản vá hoạt động kể từ gtk + 3.22.7 kết hợp các bản vá ubfox và cập nhật chúng lên phiên bản GTK mới hơn.
Ngoài ra, tôi đã tạo một tập lệnh cho hệ thống debian của mình, nó tự động tải xuống nguồn cho phiên bản mới nhất trong trình quản lý gói, vá nó và biên dịch nó. Chạy chính xác trên Debian Sid và cũng hoạt động tốt đối với các bản phát hành Debian khác.