คำตอบที่อัปเดต:
ตั้งแต่ปี 2019 ฉันเริ่มใช้พื้นที่เก็บข้อมูล AUR ของ Arch (แต่ยังอยู่ในระบบ Debian ของฉัน ) ฉันเคยทำสิ่งนี้ใน FreeBSD ด้วยแพทช์เล็ก ๆ นี่ไม่ใช่คำตอบ "เปลี่ยนเป็น Arch"
มันค่อนข้างยากในการตั้งค่าในตอนแรก แต่ส่วนสำคัญของมันคือคุณสามารถรวบรวมmakepkg
โปรแกรมของ Arch และใช้เพื่อรวบรวม AUR repository ใน Debian ฉันทำเช่นนี้ (แต่ฉันอาจลืมการอ้างอิงบางอย่าง):
คำตอบเก่าของฉันยังคงปรากฏหลังจากตัวแยกใกล้ด้านล่าง
1) อาคาร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) การเตรียมการเพื่อรวบรวมแหล่ง GTK3:
gtk3-typeahead
ตอนนี้ที่จะสร้างและติดตั้ง ในการรับค่าการสร้าง (debian) ทั้งหมดซึ่งมากกว่าหรือน้อยกว่านั้นเหมือนกับ Arch คุณต้องมีdeb-src
บรรทัดในแหล่งที่มาของคุณรายการเพื่อที่apt-get build-dep
จะสามารถดึง-dev
แพ็คเกจที่จำเป็นได้สำเร็จ
My sources.list
มีบรรทัดต่อไปนี้ที่จะทำ เปลี่ยนบรรทัดตามรีลีสและเซิร์ฟเวอร์ที่ใกล้ที่สุด
deb-src http://ftp.us.debian.org/debian/ sid main contrib
3) อาคารgtk3-typeahead
:
จากนั้นคุณสามารถเรียกใช้สิ่งต่อไปนี้เพื่อสร้าง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
หลังจากทำเช่นนี้แล้วไบนารีจะถูกบรรจุใน.tar.gz
ไฟล์เก็บถาวรหนึ่งระดับเหนือต้นไม้คอมไพล์ ในตัวอย่างของฉันนี่จะเป็นinto
ไดเรกทอรี
วิธีติดตั้ง:
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"
นี่เป็นสคริปต์อย่างมากและฟินนิคกี้น้อยกว่าการจัดการกับสคริปต์เก่าของฉันในความเห็นต่ำต้อยของฉัน นอกจากนี้ยังไม่ขึ้นอยู่กับเดเบียนอีกต่อไป
คำตอบเดิม:
เป็นเวลาหนึ่งปีแล้วและสิ่งนี้ยังทำให้ฉันรำคาญอีกครั้งเนื่องจากกลุ่ม GTK3 ตัดสินใจที่จะเข้ารหัสพฤติกรรมนี้โดยไม่มีทางที่จะย้อนกลับโดยไม่ต้องคอมไพล์ใหม่
อย่างไรก็ตาม typeahead ได้รับการแก้ไขใน gtk3 ตามที่เผยแพร่ใน Ubuntu
อูบุนตูยังเลือกผู้เลือกไฟล์ด้วยการคลิกสองครั้งเพื่อเลือกไฟล์แทนที่จะต้องคลิกเพียงครั้งเดียวหากไฟล์นั้นถูกเลือกแล้ว หากคุณตกลงกับการแก้ไขซอร์สโค้ด gtk3 ฉันได้ทำการแก้ไขซึ่งทำงานเหมือนกับ gtk + 3.22.7 ที่รวมแพตช์ ubuntu และอัปเดตเป็น GTK เวอร์ชันปัจจุบัน
นอกจากนี้ฉันได้สร้างสคริปต์สำหรับระบบเดเบียนของฉันซึ่งดาวน์โหลดแหล่งที่มาสำหรับเวอร์ชันล่าสุดโดยอัตโนมัติในตัวจัดการแพคเกจแก้ไขและรวบรวม ทำงานอย่างถูกต้องบน Debian Sid และควรทำงานได้ดีสำหรับ Debian distros อื่น ๆ เช่นกัน