ฉันจะติดตั้งซอฟต์แวร์รุ่นล่าสุดได้มากกว่าที่ Debian มีให้อย่างไร


26

สมมติว่าฉันต้องการซอฟต์แวร์รุ่นใหม่กว่าที่มีอยู่ในระบบปฏิบัติการเวอร์ชันปัจจุบันของฉันฉันควรทำอย่างไร

กรณีที่ต้องพิจารณา:

  1. มีแพคเกจเพิ่มเติมอย่างเป็นทางการกึ่งทางการ / เป็นทางการสำหรับเวอร์ชันของระบบปฏิบัติการ เช่น backports.org สำหรับ Debian หรือ PPAs สำหรับ Ubuntu
  2. ไม่มีแพ็คเกจรุ่นล่าสุดสำหรับระบบปฏิบัติการรุ่นนั้นอีกต่อไป แต่มีรุ่นใหม่กว่าพร้อมใช้งานสำหรับระบบปฏิบัติการรุ่นล่าสุด นี่เป็นกรณีมาตรฐานสำหรับ backporting
  3. ไม่มีเวอร์ชันล่าสุดของซอฟต์แวร์เวอร์ชันเพิ่มเติมที่พร้อมใช้งาน ตัวเลือกที่มีคือแพ็คเกจเวอร์ชันล่าสุด

ต่อไปรวบรวมรายชื่อคำถามและคำตอบที่ยอมรับได้นี้มีไว้เพื่อเป็นสถานที่สำหรับใส่คำตอบที่ยอมรับได้สำหรับสิ่งต่อไปนี้ คำตอบควรทำให้ชุมชนเป็นวิกิ


นี่คือการกระจายที่เฉพาะเจาะจงสูง ทำให้ดีขึ้นหนึ่งคำถามต่อการแจกจ่าย
Gilles 'หยุดชั่วร้าย'

2
@Gilles คำถามนี้ไม่ได้เฉพาะเจาะจงการกระจาย ฉันคิดว่ามันจะดีกว่าถ้ามีคำถามหนึ่งข้อพร้อมคำตอบสำหรับการแจกแจงที่ต่างกัน
Faheem Mitha

ตัวอย่างหนึ่งของสิ่งที่ทำและไม่ได้ผล:สำหรับ Debian 8 ฉันต้องการ MySQL 5.6 (แต่โดยปกติแล้ว MySQL 5.5 นั้นสามารถติดตั้งได้เฉพาะ Debian 8 ฉันต้องการ 5.6 สำหรับการเปรียบเทียบกับสิ่งอื่น ๆ ที่ฉันทำ)ฉันพยายามติดตั้ง backport 5.6 แต่มันก็หัก ข้อความแสดงข้อผิดพลาดที่ซ้ำกันบางไฟล์กำลังโหลดอยู่ ฉันรายงานแล้ว แต่จะต้องทำอย่างไร การแก้ปัญหา:ฉันค้นพบว่าคุณสามารถดาวน์โหลด MySQL 5.6 โดยเฉพาะสำหรับ Debian 8 โดยตรงจากเว็บไซต์ MySQL ใช้งานได้ แต่ ... โปรดอ่านความคิดเห็นWORKAROUND
มุมมองรูปไข่

คำตอบ:


33

(หากคุณมีคำถาม / ความคิดเห็นเกี่ยวกับคำตอบนี้โปรดเพิ่มความคิดเห็นหรือถ้าคุณมีตัวแทนเพียงพอคุณสามารถ ping ฉันในการแชท)

ติดตั้งแพ็คเกจไบนารีโดยตรงจาก Debian เวอร์ชันใหม่ไม่ใช่คำตอบ

สมมติว่าคุณกำลังใช้การแจกแจงแบบเดเบียนบางเวอร์ชัน คุณต้องการแพ็คเกจเวอร์ชันใหม่กว่าที่มีให้สำหรับคุณ สิ่งแรกที่ผู้เริ่มต้นทุกคนพยายามทำเพื่อติดตั้งไบนารีแพ็คเกจโดยตรงบน Debian เวอร์ชันของคุณ สิ่งนี้อาจใช้งานได้หรือไม่ขึ้นอยู่กับเวอร์ชันที่คุณใช้และรุ่นที่ใหม่กว่า โดยทั่วไปขั้นตอนนี้จะไม่ทำงานได้ดี

พิจารณาตัวอย่างกรณีที่มีหนึ่งพยายามที่จะติดตั้งแพคเกจไบนารีจากการทดสอบ / ไม่เสถียรโดยตรงบนที่มั่นคง สิ่งนี้จะไม่เป็นไปได้ด้วยดีเว้นแต่ว่าการทดสอบ / ไม่เสถียรจะเกิดขึ้นใกล้กับความเสถียรในขณะนั้น เหตุผลเกี่ยวข้องกับธรรมชาติของการแจกแจงแบบไบนารีบน Linux เช่น Debian ระบบปฏิบัติการดังกล่าวขึ้นอยู่กับไลบรารีที่ใช้ร่วมกันอย่างมากและการพึ่งพาเหล่านี้มักขึ้นอยู่กับรุ่นที่แน่นมาก บ่อยกว่านั้นมากเกินความจำเป็น เดเบียนในปัจจุบันไม่มีวิธีที่ดีในการสร้างการอ้างอิงรุ่น "คับ" - เป็นวิธีที่สั้น ๆ ในการบอกว่าการพึ่งพาเวอร์ชันนั้นมีความเข้มงวดเท่าที่จำเป็น

สิ่งนี้หมายความว่าสำหรับผู้ใช้? สมมติว่าคุณกำลังพยายามติดตั้งระบบบอกว่าslrnจาก Debian ไม่เสถียรไปเป็น Debian เสถียร สิ่งนี้จะมีลักษณะอย่างไร

# apt-get install slrn/unstable
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Selected version '1.0.1-10' (Debian:testing [amd64]) for 'slrn'
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 slrn : Depends: libc6 (>= 2.15) but 2.13-38+deb7u1 is to be installed
E: Unable to correct problems, you have held broken packages.

แม้จะมีข้อผิดพลาดที่ผลิตโดยaptไม่มีแพคเกจที่ขาด แล้วเกิดอะไรขึ้น ปัญหาคือว่าเวอร์ชั่นlibc6ที่ไม่เสถียรslrnถูกคอมไพล์แล้วจะแตกต่างกัน (และมีหมายเลขเวอร์ชันที่สูงกว่า) ที่มีอยู่บนเดเบียนเสถียร ( libc6เป็นไลบรารี GNU C ไลบรารี C เป็นศูนย์กลางของระบบปฏิบัติการ Unix ใด ๆ และไลบรารี GNU C เป็นเวอร์ชันที่ระบบปฏิบัติการบน Linux ใช้อยู่)

ดังนั้นความไม่เสถียรslrnจึงจำเป็นต้องใช้เวอร์ชันที่มีหมายเลขสูงlibc6กว่าเพื่อให้เสถียร โปรดทราบว่าเนื่องจากแพ็คเกจได้รับการรวบรวมกับเวอร์ชันที่สูงกว่าของไลบรารีไม่จำเป็นต้องใช้เวอร์ชันที่สูงกว่าของไลบรารีนั้น แต่มักจะเป็นกรณี

ไวยากรณ์

apt-get install slrn/unstable

หมายถึง: ใช้ความไม่แน่นอนslrnแต่สำหรับแพ็คเกจอื่น ๆ ทั้งหมดให้ใช้เวอร์ชั่นที่เสถียรเท่านั้น เพื่อให้แม่นยำยิ่งขึ้นจะใช้หมายเลขลำดับความสำคัญ ดูman apt_preferencesรายละเอียดที่

ท่านสามารถทำได้

apt-get install -t unstable slrn

สิ่งนี้มีแนวโน้มที่จะทำงานได้มากกว่าปกติ แต่โดยทั่วไปคุณไม่ต้องการทำเช่นนั้น ทำไม?

ซึ่งหมายความว่า: ให้ปฏิบัติต่อแพคเกจทั้งหมดชั่วคราวในสถานการณ์ที่ไม่มั่นคงบนฐานรากที่เท่าเทียมกับแพ็คเกจที่เสถียร ดังนั้นสิ่งนี้จะดึงความไม่แน่นอนslrnของการพึ่งพาจากความไม่แน่นอนหากพวกเขาเป็นหมายเลขรุ่นที่สูงขึ้นและโดยทั่วไปจะเป็น โดยทั่วไปจะรวมไลบรารี GNU C ด้วยเหตุผลที่อธิบายไว้แล้ว ตอนนี้วิธีการนี้โดยทั่วไปจะ "ประสบความสำเร็จ" ในที่การอ้างอิงจะพึงพอใจตามคำนิยาม (ไม่แน่นอนslrnมีการพึ่งพาที่พอใจในความไม่แน่นอน) แต่คุณจบลงด้วยการผสมผสานของแพคเกจที่จู่ ๆ ก็ถูกบังคับให้ทำงานกับรุ่นของห้องสมุด แตกต่างจากสิ่งที่พวกเขาสร้างขึ้น มันอาจจะไม่จบลงด้วยดี

คำตอบคือ ... ภูมิหลัง!

ดังนั้นวิธีที่ถูกต้องในการทำเช่นนี้คืออะไร? มันคือการสร้างแหล่ง Debian ของรุ่นที่ใหม่กว่าในระบบของคุณซึ่งเป็นที่รู้จักกันในนาม "backporting" พิจารณากรณีต่อไปนี้:

มีแหล่งข้อมูลเพิ่มเติมสำหรับแพ็คเกจ Debian เวอร์ชันกึ่งเป็นทางการ / เป็นทางการ

สถานที่แรกที่มองหาคือDebian Backportsซึ่งเป็นเว็บไซต์อย่างเป็นทางการของ Debian backports

สำหรับตัวอย่างที่เป็นรูปธรรม:

เพิ่มบรรทัดแบ็คพอร์ทที่เหมาะสมสำหรับการเปิดตัวและอัปเดตของคุณเพื่อค้นหาแพ็กเกจใหม่จากนั้นติดตั้งบางสิ่งจากแบ็กพอร์ตอย่างชัดเจน

echo "deb http://ftp.debian.org/debian stretch-backports main" | sudo tee /etc/apt/sources.list.d/stretch-backports.list
sudo apt-get update
sudo apt-get install -t stretch-backports git

นี่จะเป็นเวอร์ชั่นล่าสุดของ git ที่เสถียรซึ่งมีฟีเจอร์ใหม่ที่มีประโยชน์มากกว่าแบบเสถียรที่มาพร้อมกับการยืด (เช่น 'รวม' ซึ่งช่วยให้คุณสามารถรวมไฟล์ปรับแต่งหลายไฟล์หรือเปลี่ยนชื่อผู้ใช้สำหรับ ~ / work / project / vs ~ / personal / โครงการ /)

อีกที่ที่ควรดูคือผู้ดูแลระบบ PPA ของ Ubuntu คุณสามารถค้นหา "packagename PPA"

ไม่มีแพ็คเกจรุ่นล่าสุดสำหรับระบบปฏิบัติการรุ่นนั้น แต่มีรุ่นใหม่กว่าสำหรับรุ่น / รุ่นล่าสุดของระบบปฏิบัติการเพิ่มเติม นี่เป็นกรณีมาตรฐานสำหรับ backporting

Backporting หมายความว่าคุณสร้างแหล่ง Debian ใหม่จาก Debian รุ่นที่ใหม่กว่าในรุ่นที่คุณใช้งานอยู่ ขั้นตอนนี้อาจง่ายหรือมีส่วนร่วมและยากขึ้นอยู่กับแพ็คเกจ นี่คือเค้าโครงของวิธีการทำเช่นนี้

บทสรุปการฝึกอบรม Backporting สำหรับผู้เริ่มต้น

เพื่อความเป็นรูปธรรมฉันจะสมมติว่าคุณกำลังเรียกใช้ Debian เสถียรปัจจุบันเสียงดังในขณะนี้ ฉันจะใช้แพ็คเกจslrnเป็นตัวอย่าง

ก่อนอื่นให้สังเกตว่าไฟล์บรรจุภัณฑ์ Debian ทั้งหมดอยู่ในdebian/ไดเรกทอรีย่อยของไดเรกทอรีต้นทาง

ขั้นตอนแรกคือการตรวจสอบว่ามีรุ่นที่ใหม่กว่าหรือไม่ apt-cache policyคุณสามารถทำได้โดยใช้

apt-cache policy slrn

slrn:
  Installed: 1.0.0~pre18-1.3
  Candidate: 1.0.0~pre18-1.3
  Version table:
     1.0.1-10 0
         50 http://debian.lcs.mit.edu/debian/ testing/main amd64 Packages
         50 http://debian.lcs.mit.edu/debian/ unstable/main amd64 Packages
 *** 1.0.0~pre18-1.3 0
        500 http://debian.lcs.mit.edu/debian/ wheezy/main amd64 Packages
        100 /var/lib/dpkg/status
     1.0.0~pre18-1.1 0
        500 http://debian.lcs.mit.edu/debian/ squeeze/main amd64 Packages

1.0.1-10เราอยากจะย้ายกลับ

ขั้นตอนที่ 1:

หมายเหตุ: ตรวจสอบให้แน่ใจว่าสายสำหรับรุ่นแหล่งที่คุณต้องการดาวน์โหลดปรากฏในของคุณdeb-src /etc/apt/sources.listตัวอย่างเช่นหากคุณต้องการดาวน์โหลดเวอร์ชันที่ไม่เสถียรslrnคุณต้องมีdeb-srcบรรทัดที่ไม่เสถียรหรือไม่สามารถใช้งานได้ โปรดทราบว่าคุณไม่จำเป็นต้องมีdebบรรทัดที่สอดคล้องกันเพื่อดาวน์โหลดแหล่งข้อมูลแม้ว่าจะapt-cache policyใช้ข้อมูลนั้นดังนั้นหากคุณไม่มีdebบรรทัดที่เกี่ยวข้องดังนั้นapt-cache policyจะไม่แสดงเวอร์ชันที่เกี่ยวข้องให้คุณเห็น หากคุณมีdebเส้นอย่าลืมที่จะตรึงรุ่นที่ใหม่กว่าโดยใช้รายการใน/etc/apt/preferencesหรือคล้ายกัน รายการใน/etc/apt/preferencesลักษณะนี้ (สำหรับไม่แน่นอน) จะใช้งานได้ตัวอย่างเช่น

Package: *
Pin: release a=unstable
Pin-Priority: 50

หากคุณเพิ่มบรรทัดใน/etc/apt/sources.listอย่าลืมเรียกใช้ในapt-get updateภายหลัง

slrnดาวน์โหลดแหล่งที่มาสำหรับ /usr/local/src/slrnสถานที่ที่ดีคือ

apt-get source slrn=1.0.1-10

ขั้นตอนที่ 2:

เปลี่ยนหมายเลขเวอร์ชั่นเล็กน้อยเพื่อแยกความแตกต่าง backport ของคุณจากเวอร์ชันอัปสตรีม เรียกใช้dch -iซึ่งจะเพิ่มรายการลงในdebian/changelogไฟล์โดยอัตโนมัติ จากนั้นเปลี่ยนรายการให้มีลักษณะเช่นนี้ตัวอย่างเช่น

slrn (1.0.1-10.username) UNRELEASED; urgency=low

  * Backport to wheezy.

 -- User <user@domain>  Sun, 02 Feb 2014 23:54:13 +0530

ขั้นตอนที่ 3:

พยายามสร้างแหล่งที่มา หากแพ็กเกจที่จำเป็นสำหรับบิลด์ไม่พร้อมใช้งานความพยายามจะล้มเหลว เปลี่ยนไดเรกทอรีเป็นไดเรกทอรีต้นทาง ใช้debuildจากdevtoolsแพ็คเกจ

cd slrn-1.0.1/
debuild -uc -us

หากการสร้างการพึ่งพานั้นเป็นที่พอใจแล้วแหล่งที่มาจะสร้างและสร้าง debs บางอย่างที่ระดับเหนือไดเรกทอรีต้นทาง ในกรณี/usr/local/src/slrnนี้

ขั้นตอนที่ 4:

สมมติว่าการพึ่งพาสร้างไม่พอใจ จากนั้นคุณต้องลองติดตั้งการอ้างอิงสร้าง สิ่งนี้อาจหรืออาจไม่ทำงานเนื่องจากการอ้างอิงอาจไม่พร้อมใช้งานสำหรับรุ่นของคุณหรือถ้ามีอาจไม่พร้อมใช้งานในรุ่นที่เหมาะสม

หมายเหตุ: มันน่าเสียดายที่ไม่ใช่เรื่องแปลกสำหรับแพคเกจ Debian ที่จะต้องใช้รุ่นของการพึ่งพาการสร้างที่สูงกว่าที่จำเป็น ไม่มีวิธีอัตโนมัติใน Debian เพื่อตรวจสอบเรื่องนี้และบ่อยครั้งที่ผู้ดูแลแพคเกจไม่สนใจตราบใดที่มันทำงานกับรุ่น / รีลีสที่เกี่ยวข้อง ดังนั้นจงใช้ทัศนคติที่สงสัยต่อรุ่นอ้างอิงและใช้สามัญสำนึก ตัวอย่างเช่นแพคเกจที่ใช้กันอย่างแพร่หลายเช่น Python และเครื่องมือ GNU จะไม่ขึ้นอยู่กับเวอร์ชันที่เฉพาะเจาะจงของการขึ้นต่อกันของพวกเขา

ไม่ว่าในกรณีใดคุณสามารถลองติดตั้งได้

apt-get build-dep slrn=1.0.1-10

หากสิ่งนี้สำเร็จให้ลองสร้างแพ็คเกจอีกครั้ง (ขั้นตอนที่ 2) หากล้มเหลวก็จำเป็นต้องทำงานเพิ่มเติม โปรดทราบว่าdebuildดูที่การอ้างอิงสร้างในdebian/controlไฟล์และคุณสามารถเปลี่ยนแปลงสิ่งเหล่านี้ได้หากจำเป็น ดังนั้นให้เราคุยกันในตอนนี้ นี่คือ Build Dependencies สำหรับ slrn

Build-Depends: debhelper (>=9), libslang2-dev, libuu-dev,
 exim4 | mail-transport-agent, libgnutls-openssl-dev, po-debconf, autoconf,
 libcanlock2-dev, autotools-dev, dpkg-dev (>= 1.16.0), chrpath, dh-autoreconf, inn2-inews

อีกทางเลือกหนึ่งในการใช้apt-get build-depคือติดตั้งด้วยตนเองโดยทำ

apt-get install debhelper libslang2-dev ...

หากคุณเริ่มเปลี่ยนค่าเหล่านี้ในไฟล์ควบคุมคุณควรเปลี่ยนไปใช้การติดตั้งด้วยตนเองเนื่องจากapt-get build-depจะไม่ทำสิ่งที่ถูกต้องอีกต่อไป

ไม่มีเวอร์ชันล่าสุดของซอฟต์แวร์เวอร์ชันเพิ่มเติมที่พร้อมใช้งาน ตัวเลือกที่มีคือแพ็คเกจเวอร์ชันล่าสุด

ในหลายกรณีหนึ่งสามารถใช้บรรจุภัณฑ์จากซอฟต์แวร์รุ่นก่อนหน้าร่วมกับแหล่งที่มาใหม่ วิธีการนี้อาจพบปัญหาแพทช์ที่ใช้กับซอฟต์แวร์รุ่นก่อนหน้าอาจไม่ได้ใช้ที่นี่ดังนั้นวิธีการหนึ่งอาจต้องซิงค์ใหม่กับแหล่งที่มา รูปแบบซอร์ส 3.0 (ผ้าห่ม) ซึ่งตอนนี้กลายเป็นมาตรฐานใช้ผ้าห่มและแพทช์อยู่ในdebian/patchesไดเรกทอรี

อย่างไรก็ตามการอภิปรายโดยละเอียดเกี่ยวกับปัญหาเหล่านี้อยู่นอกขอบเขตสำหรับโพสต์นี้


นี่เป็นการกระจายทั่วไป (เฉพาะที่ repositores รหัสสำหรับสิ่งที่ใหม่กว่าสามารถเรียกว่าแตกต่างกันหรือคุณจะต้องได้รับสิ่งจากสถานที่พิเศษ) ตรวจสอบคู่มือการกระจายของคุณ
vonbrand

2

วิธีหนึ่งที่ใช้งานได้เสมอไม่เพียง แต่ใน Debian เท่านั้นคือการรวบรวมซอฟต์แวร์ที่จำเป็นด้วยตัวคุณเอง (ฉันทำสิ่งนี้มานานหลายปีแล้วกับ Debian ทั้งเมื่อฉันต้องการรุ่นใหม่ที่พร้อมใช้งานและเมื่อไม่ได้ให้ซอฟต์แวร์เลย)

ฉันเก็บแพ็กเกจที่คอมไพล์ในเครื่อง/use/localโดยใช้stowซึ่งทำให้ฉันสามารถเก็บไฟล์ทั้งหมดที่เกี่ยวข้องกับแพ็คเกจในแผนผังย่อยและจากนั้นก็สร้าง symlink ให้กับต้นไม้นั้น ซึ่งทำให้การจัดการแพคเกจที่รวบรวมนั้นง่าย: ไฟล์ที่ติดตั้งจะไม่ชนกับไฟล์ที่จัดหาโดย Debian และฉันสามารถลบแพ็คเกจด้วยคำสั่งเดียวได้

ขั้นตอนในการคอมไพล์และติดตั้งแพ็กเกจsome_softwareโดยทั่วไปแล้วจะแตกต่างกันดังต่อไปนี้:

  1. ดาวน์โหลด.tarไฟล์อื่น ๆ /usr/local/src/เข้าไป

  2. สร้างไฟล์/usr/local/packages/some_softwareที่อธิบายตำแหน่งที่ฉันดาวน์โหลดซอฟต์แวร์มันทำอะไรมันเป็นเวอร์ชันอะไรและมีโน้ตที่ฉันต้องทำเพื่อให้คอมไพล์ (ดูด้านล่าง)

  3. เนื้อหาแกะของไฟล์ลงใน.tar/usr/local/tmp/some_software

  4. หรือถ้ารวบรวมจากแหล่งเก็บตรวจสอบพื้นที่เก็บข้อมูลในไดเรกทอรีย่อยที่เหมาะสม (เช่น/usr/local/git/some_software) และรวบรวมที่นั่น

  5. cdลงในไดเรกทอรีนี้ดูที่README, INSTALLฯลฯ

  6. ในกรณีส่วนใหญ่มีสคริปต์ autotools configureในแพ็คเกจ โทรด้วย./configure --prefix /usr/local/stow/some_software-versionไฟล์เพื่อรับการติดตั้งในไดเรกทอรีย่อยนี้ มิฉะนั้นอ่านMakefileและหาวิธีตั้งค่าพา ธ สำหรับไฟล์ที่ติดตั้ง

  7. makeคอมไพล์ด้วย

  8. make installติดตั้งด้วย

  9. cd /usr/local/stowจากนั้น stow some_software-version

  10. ทดสอบถ้ามันใช้งานได้

บ่อยครั้งการคอมไพล์ไม่ทำงานในครั้งแรก: แพคเกจอาจต้องใช้ไลบรารีและไฟล์ที่เกี่ยวข้องดังนั้นจึงต้องติดตั้ง...-devแพคเกจที่ถูกต้องจาก Debian หรือgccอาจบ่นเกี่ยวกับสิ่งต่าง ๆgccที่ผู้เขียนแพ็คเกจใช้ไม่ได้บ่น ดังนั้นบางครั้งเราต้องอ่านรหัสและแก้ไขสิ่งเหล่านี้ แต่นั่นไม่ได้เกิดขึ้นบ่อยเกินไป


ความตั้งใจของคำถามนี้แม้ว่าอาจจะไม่ชัดเจนก็คือเพื่ออธิบายวิธีการติดตั้งแพคเกจซอฟต์แวร์สำหรับ Debian บางทีฉันควรทำให้คำถามชัดเจนขึ้น ไม่stowสร้างแพคเกจ Debian? จากหน้าคนมันไม่เหมือน
Faheem Mitha

@FaheemMitha Stow ไม่ทราบเกี่ยวกับแพ็คเกจเดเบียน มันจะจัดการลิงก์สัญลักษณ์จากชุดของไดเรกทอรีการติดตั้งแยกต่างหากไปยังไดเรกทอรีเดียว
Kusalananda

@FaheemMitha: หากคุณต้องการเปลี่ยนซอฟต์แวร์ที่คอมไพล์ด้วยตนเองให้เป็นแพ็คเกจ Debianคุณต้องทำการแพ็กเกจเองเช่นเดียวกับผู้ดูแลแพคเกจ Debian แต่นั่นเป็นปัญหามากเกินไปหากคุณจะเป็นผู้ใช้คนเดียวการติดตั้งใน/usr/localนั้นง่ายกว่ามากและstowช่วยจัดการไฟล์ที่เก็บไว้ที่นั่น หรือวางในลักษณะที่แตกต่าง: ซอฟต์แวร์ไม่จำเป็นต้องอยู่ในแพ็คเกจ Debian เพื่อใช้บน Debian
dirkt

มีข้อดีอย่างหนึ่งที่สำคัญสำหรับซอฟต์แวร์บรรจุภัณฑ์เป็นแพ็คเกจ Debian แม้สำหรับการใช้งานในท้องถิ่นเท่านั้น: หากคุณอธิบายการพึ่งพาได้อย่างถูกต้องการติดตั้งแพคเกจจะช่วยให้มั่นใจว่ายังคงติดตั้งการพึ่งพาอยู่ ...
Stephen Kitt

@StephenKitt: หากซอฟต์แวร์บรรจุภัณฑ์อย่างถูกต้องเป็นแพคเกจ Debian เป็นโซลูชั่นที่เหนือกว่า ข้อเสียคือต้องใช้เวลาในการบรรจุหีบห่ออย่างเหมาะสม ...
dirkt
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.