เปลี่ยนชื่อไฟล์ระหว่างการติดตั้งแพ็คเกจ Debian


15

ฉันมีสคริปต์ไพ ธ อนที่ฉันต้องการจัดทำแพ็กเกจสำหรับ Debian ฉันใช้ไฟล์ debian / install ที่ฉันเขียน

auto_dice.py /usr/bin/

Linitan บ่นเกี่ยวกับ. py (script-with-language-extension)

ฉันเปลี่ยนมันเป็น

auto_dice.py /usr/bin/autodice.py

ซึ่งทำให้เกิดข้อผิดพลาดเพราะตีความautodice.pyเป็นไดเรกทอรี

ฉันจะเปลี่ยนชื่อที่นั่นได้อย่างไร ฉันไม่ต้องการเปลี่ยนชื่อสคริปต์ไพ ธ อนของฉันในแหล่งที่มา

คำตอบ:


13

คุณไม่สามารถเปลี่ยนชื่อไฟล์โดยใช้dh_install(ผ่านทางdebian/install) คุณจะต้องเปลี่ยนชื่อในช่วงdebian/rules"สร้าง" เป้าหมายก่อนที่คุณจะได้รับการdh_installร้องขอ


ดังนั้นมันจะเป็นbuild: \\ mv auto_dice.py autodiceอย่างไร
Martin Ueding

เป็นไปได้ว่า mv จะเกิดขึ้นในไดเรกทอรีเป้าหมายแทนที่จะสร้างไดเรกทอรี แต่ใช่คุณต้องเพิ่มการย้ายก่อนที่จะเรียก dh_install
Kees Cook

สำหรับรายงานข้อผิดพลาดที่ขอคุณสมบัตินี้ให้ดูbugs.debian.org/cgi-bin/bugreport.cgi?bug=245554
Bernhard Reiter

@Kees Cook: หากคุณเปลี่ยนชื่อในไดเรกทอรีเป้าหมาย - apt-get จะยังสามารถลบไฟล์หลังจากการลบ / อัพเกรดแพ็คเกจหรือไม่
zerkms

11

จากDebian bug 245554ได้กล่าวถึงแล้ว:

สิ่งนี้สามารถแก้ไขได้อย่างง่ายดายหากคุณใช้ dh> = 9 และ dh-exec เพียงแค่ทำให้ไฟล์. install ของคุณเพิ่ม #! / usr / bin / dh-exec ไปด้านบนและคุณสามารถใช้ "source => dest" เช่นนี้

#!/usr/bin/dh-exec
debian/default.conf => /etc/my-package/start.conf
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.