แบบแผนการตั้งชื่อแพ็คเกจเดเบียน


12

มันสับสนมาก มีตัวอย่างที่แตกต่างกันออกไปเช่น:

<package-name>_<epoch>:<upstream-version>-<debian.version>-<architecture>.deb

แหล่งที่มา: ชื่อไฟล์แพคเกจเดเบียน

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

ในหัวข้อนี้วิกิพีเดียเกี่ยวกับรูปแบบที่เก็บมันไม่ได้โดดพูดอะไรเกี่ยวกับการประชุมเดียวกันในคู่มือนักพัฒนาปฏิบัติที่ดีที่สุด

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

<package-name>_<version>.<revision>-<debiancodename>_<architecture>.deb

ที่<debiancodename>เป็นเพียงหรือsqueezewheezy


ส่วนของนโยบายอ้างถึงไฟล์การเปลี่ยนแปลงเท่านั้น เพียงเปลี่ยนชื่อdebและปรับ.changesไฟล์
Ulrich Dangel

หมายความว่าไม่มีการประชุมเกี่ยวกับชื่อไฟล์สำหรับไฟล์. deb?
Preexo

1
@prexo มี แต่ไม่มีคำจำกัดความที่เป็นทางการ และถ้าคุณต้องการปรับชื่อไฟล์เพียงแค่เปลี่ยนชื่อ deb และปรับเปลี่ยนไฟล์ หากคุณไม่ทำการอัปโหลดจะเป็นการเพียงพอที่จะเปลี่ยนชื่อไฟล์ deb
Ulrich Dangel

ขอบคุณ! ใช่ฉันไม่ได้อัปโหลดดังนั้นปัญหาจะแก้ไขได้ครับ;) ให้คำตอบกับที่และอาจจะเกี่ยวกับวิธีการที่เข้มงวดการประชุมและฉันจะยอมรับว่ามันเป็นคำตอบ :)
Preexo

คำตอบ:


11

ความเข้าใจของฉันคือการที่คุณต้องการกระจาย / ปรับใช้แพคเกจการกระจายตาม Debian หลาย

ในโลก Debian / Ubuntu คุณไม่ควรให้.debไฟล์แต่ละไฟล์เพื่อดาวน์โหลดและติดตั้ง คุณควรระบุที่เก็บ APT แทน (ในโลก Fedora / Red Hat / CentOS ฉันจะให้คำแนะนำที่คล้ายกันเพื่อให้พื้นที่เก็บข้อมูล YUM) ไม่เพียง แต่จะแก้ปัญหาเรื่องวิธีตั้งชื่อไฟล์ deb แต่เป็นวิธีที่มีประสิทธิภาพในการจัดทำแพ็คเกจรุ่นใหม่กว่าของคุณรวมถึงการแก้ไขข้อบกพร่องและการปรับปรุงความปลอดภัย การสร้างที่เก็บ APT นั้นอยู่นอกเหนือวัตถุประสงค์ของหน้า / คำถามนี้เพียงแค่ค้นหา"วิธีการตั้งค่าพื้นที่เก็บข้อมูล apt"

กลับไปที่คำถามของคุณ: "แบบแผนการตั้งชื่อแพ็คเกจ":

เมื่อคุณสร้างแพ็คเกจด้วยdpkg-buildpackageแพ็คเกจจะถูกตั้งชื่อตามวิธีมาตรฐาน การอ้างอิงmanpage dpkg-name :

ชื่อแพ็กเกจแบบเต็มประกอบด้วย package_version_architecture.package-type ตามที่ระบุในไฟล์ควบคุมของแพ็คเกจ

package_version_architecture.package-type

นโยบาย Debian เป็นสถานที่ที่เหมาะสมที่จะรู้ไวยากรณ์ของไฟล์ควบคุม: ชื่อ (ทั้งที่มาและแพคเกจไบนารี), รุ่น , สถาปัตยกรรม , แพคเกจประเภท

ไม่มีข้อกำหนดในการระบุการกระจายเพราะนี่ไม่ใช่สิ่งที่เกิดขึ้น

หากคุณต้องการคอมไพล์แพคเกจเวอร์ชันเดียวกันสำหรับการกระจายหลาย ๆ ครั้งคุณจะเปลี่ยนversionฟิลด์ (ในdebian/changelogและdebian/controlไฟล์) บางคนใช้ชื่อการแจกจ่ายในฟิลด์เวอร์ชั่น เช่นopenssl :

0.9.8o-4squeeze14 
1.0.1e-2+deb7u14
1.0.1k-1 

ถ้านั่นคือสิ่งที่คุณต้องการจะทำให้แน่ใจว่าจะอ่านเดเบียนนโยบายเกี่ยวกับdebian_revisionในรุ่น

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