Làm thế nào mà điều ~ / .local / bin bắt đầu? Nó lan rộng như thế nào?


22

Tôi tìm thấy ngày càng nhiều công cụ đưa các tệp thực thi vào ~ / .local / bin. Tôi đã già và đối với tôi ~ / bin là nơi trong $ HOME của tôi để thực thi.

Thời trang mới điên rồ này bắt nguồn từ đâu? Tại sao mọi người làm điều này? Nó lan rộng như thế nào? Nó được chính thức hóa ở bất cứ đâu? Nó không có trong đặc tả thư mục XDG.

Có một câu hỏi liên quan: Những bản phân phối nào có $ HOME / .local / bin trong $ PATH?

Một nhận xét cho một câu hỏi khác liên quan đến https://www.python.org/dev/peps/pep-0370 đã có từ năm 2008: Tại sao chương trình này cài đặt vào ~ / .local / bin ... đó là lần đầu tiên thời gian tôi đã thấy điều đó xảy ra?


Đây là một phỏng đoán: Để tránh những người khó chịu khi tạo ra nhiều thư mục con lạ trong $ HOME, 'bin' đã bị ẩn trong ~ / .local Nhưng làm thế nào về ~ / Máy tính để bàn và ~ / Tải xuống sẽ hỏi ai?
hschou

1
Nó không có trong $ PATH trong Ubuntu 14.04 - nhưng nó có ở 16.04. Cho đến nay tôi không có gói nào sử dụng ~ / .local / bin, nhưng sau đó tôi không nghĩ bất kỳ gói nào đã tự động đặt tệp vào ~ / bin. Có lẽ đó là nguyên tắc đằng sau nó - có lẽ các gói không nên tự động cài đặt tệp vào ~ / bin để người dùng sử dụng?
Joe P

@hschou, trong khi tôi đồng ý với bạn liên quan đến ~ / Tải xuống và ~ / Máy tính để bàn, tôi nghĩ rằng việc ẩn một thư mục chứa nhị phân là một ý tưởng tồi tệ. Điều gì đã quá tệ về ~ / bin hoặc ở một đoạn đường, ~ / bin / python?
Graham Nicholls

Câu trả lời:


8

Bạn đã có câu trả lời: Python là người dùng chính của ~/.local. Đó là lần duy nhất tôi nhớ gặp phải. Trong Python, nó được sử dụng là PEP 370 .

PEP 370 đưa ra một số lý do là tại sao ~/.local được chọn. Một số phần rõ ràng: nó phải nằm trong thư mục chính của người dùng, vì đây là phần cài đặt cho mỗi người dùng. Nó phải là một tệp chấm để nó bị ẩn khỏi con mắt khó hiểu, giống như các tệp cấu hình khác. Tên .localbắt chước /usr/local.

Vị trí đã được FreeDesktop sử dụng . Tôi không biết bất kỳ ứng dụng nào sử dụng nó.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.