หากคุณไม่ต้องการแพ็กเกจหลามสำหรับผู้ใช้ทั้งหมดคุณสามารถติดตั้งได้ในบ้านของคุณดังนี้:
pip install --user packagename
การติดตั้งในบ้านของคุณจะไม่ขัดแย้งกับผู้จัดการบรรจุภัณฑ์
โดยค่าเริ่มต้นpip install --userจะติดตั้งในไดเรกทอรี "ไซต์ผู้ใช้" ของคุณ /home/lesmana/.local/lib/python3.6/site-packagesโดยปกติแล้วว่าเป็นสิ่งที่ต้องการ:
คำสั่งต่อไปนี้จะพิมพ์ที่ตั้ง "ไซต์ผู้ใช้" ของคุณ:
python -m site
ในการปรับแต่งตำแหน่งการติดตั้ง:
PYTHONUSERBASE=$HOME/some/dir pip install --user packagename
สิ่งนี้จะติดตั้งทุกสิ่งภายใต้ $HOME/some/dir
วิ่ง:
PYTHONUSERBASE=$HOME/some/dir $HOME/some/dir/bin/progname
ดูคู่มือ pipสำหรับข้อมูลเพิ่มเติม
/optถ้าคุณไม่ต้องการแพคเกจหลามสำหรับผู้ใช้ทั้งหมดแล้วสถานที่ที่ดีที่สุดในการติดตั้งคือ เช่นนี้:
PYTHONUSERBASE=/opt/packagedir pip install packagename
(บันทึกที่หายไป--user)
และเพื่อทำงานตามที่กล่าวไว้ข้างต้น:
PYTHONUSERBASE=/opt/packagedir /opt/packagedir/bin/progname
คำอธิบายพื้นหลัง: /optโดยทั่วไปจะได้รับการยอมรับจากการกระจาย gnu / linux เป็นไดเรกทอรีที่ผู้ใช้ท้องถิ่นหรือผู้ดูแลระบบสามารถติดตั้งสิ่งของของตัวเอง ในคำอื่น ๆ : /optผู้จัดการแพคเกจของการกระจายมักจะไม่ได้สัมผัส นี้จะมากหรือน้อยกว่ามาตรฐานในระบบแฟ้มลำดับชั้นมาตรฐาน
เพื่อความสะดวกสบายสำหรับผู้ใช้ที่คุณจะยังคงต้องการที่จะเขียนสคริปต์เสื้อคลุมและวางไว้ในหรือ/bin /usr/binสิ่งนี้ยังคงมีความเสี่ยงในการชนกับตัวจัดการแพ็คเกจการแจกจ่าย แต่อย่างน้อยมันก็เป็นไฟล์สคริปต์ตัวแรปเปอร์เพียงไฟล์เดียว ดังนั้นความเสียหายที่อาจเกิดขึ้นจึงมีน้อยมาก คุณสามารถตั้งชื่อสคริปต์ของ wrapper เช่นlocal-fooหรือcustom-fooเพื่อลดความเสี่ยงของการชนกับตัวจัดการแพ็คเกจการแจกจ่าย
หรือคุณสามารถปรับเปลี่ยนPATHเพื่อรวม/opt/binและวางสคริปต์ตัวตัดคำของคุณที่นั่น แต่สิ่งนี้ต้องการให้คุณแก้ไขไฟล์ระบบ (หรือบางส่วน) PATHอีกครั้งซึ่งมีการกำหนดซึ่งอาจถูกเขียนทับโดยตัวจัดการแพคเกจการกระจายอีกครั้ง
กล่าวโดยย่อ: หากคุณต้องการติดตั้งสำหรับผู้ใช้ทั้งหมดให้ทำเช่น/optนั้น ที่ที่คุณวางสคริปต์ตัวตัดเพื่อความสบายเป็นการเรียกวิจารณญาณ
ข้อมูลเพิ่มเติมเกี่ยวกับ/optและลำดับชั้นของมาตรฐานระบบไฟล์: