Để xây dựng trên câu trả lời trước: Canopy được dựa trên một 3 hệ thống lớp, lớp 0 chứa tối thiểu cho giao diện Canopy GUI hoạt động; lớp 1 chứa tất cả các gói "Hệ thống", được phân phối với Canopy và có thể được cập nhật khi các phiên bản mới xuất hiện; cuối cùng, lớp 2 là môi trường "Người dùng" nơi người dùng có thể cài đặt bất kỳ gói nào họ thích. Bằng cách này, nếu người dùng cài đặt một gói phá vỡ Canopy, người dùng có thể luôn quay trở lại lớp 1 hoặc thậm chí là lớp 0 để đặt lại hệ thống.
Ba lớp được quản lý bằng thư viện phổ biến, virtualenv
. Trong virtualenv
, bạn có thể tạo các môi trường Python riêng biệt bằng bộ thư viện riêng của chúng. Ví dụ, nếu bạn đang phát triển một số ứng dụng, mỗi ứng dụng đòi hỏi các gói xung đột, bạn có thể phát triển chúng trong các môi trường ảo riêng biệt. Sử dụng virtualenv
, Canopy có thể thực hiện tương tự: bạn có thể có nhiều môi trường "Người dùng" (mặc dù tính năng đó chưa được hiển thị thông qua GUI).
Một kích hoạt một môi trường ảo sử dụng "kích hoạt" của kịch bản, mà Canopy làm trong .bash_profile
dòng
~/Library/Enthought/Canopy_64bit/User/bin/activate
như chỉ ra bởi đôn.
Theo mặc định, virtualenv
sửa đổi dấu nhắc bash của bạn để bạn có thể nhớ môi trường ảo bạn đang ở, đó là lý do tại sao bạn nhìn thấy dấu nhắc "(Canopy 64bit)". Để loại bỏ nó, bạn có thể loại bỏ các dòng từ .bash_profile
, nhưng điều này có nghĩa rằng bạn sẽ phải tự hệ thống của bạn để thực thi python bên phải và các thư viện bên phải.
giải pháp punchagan chỉ đơn giản là tắt chức năng mặc định virtualenv
nhanh chóng, rời khỏi môi trường ảo Canopy bản thân còn nguyên vẹn:
VIRTUAL_ENV_DISABLE_PROMPT=true
Điều này không chỉ loại bỏ các văn bản bổ sung trong PS1 của bạn, nhưng cũng thay đổi PATH của bạn, remo ving các thư mục kịch bản tán từ PATH của bạn. Vì vậy, bạn sẽ phải cung cấp đường dẫn đầy đủ cho bất kỳ tập lệnh nào được cài đặt bởi Canopy để chạy chúng. – punchagan