이것이 할 수있는 일입니까? 예를 들어, 종종 내 사용자 계정과 때때로 루트 계정에서 emacs를 사용합니다. 패키지 관리자 (예 : 마멀레이드 또는 기타)를 사용할 때 각 계정마다 동일한 패키지를 별도로 설치해야합니까? 그들은 당신의 홈 디렉토리에 설치되는 것 같습니다.
이것이 할 수있는 일입니까? 예를 들어, 종종 내 사용자 계정과 때때로 루트 계정에서 emacs를 사용합니다. 패키지 관리자 (예 : 마멀레이드 또는 기타)를 사용할 때 각 계정마다 동일한 패키지를 별도로 설치해야합니까? 그들은 당신의 홈 디렉토리에 설치되는 것 같습니다.
답변:
Nsukami가 지적한 것처럼 package.el은 시스템 전체 패키지를 지원합니다. 그러나 후속 질문에서 지적한 것처럼 시스템 전체 방식으로 패키지 를 설치하는 데 특별한 도움이되지 않습니다 .
당신이 할 수있는 한 가지 방법은 다음과 같은 것을 사용하는 것입니다.
(setq package-user-dir "/usr/share/emacs/site-lisp/elpa")
루트 계정에서 ~/.emacs
. 이렇게하면 루트 사용자의 설치된 패키지가 모든 사용자가 사용할 수있게됩니다 ( /usr/share/emacs/site-lisp/elpa
일반적으로 기본값 인으로 표시 되므로 package-directory-list
).
설명서에 따르면 :
package-directory-list의 값은
( "/usr/local/share/emacs/24.4/site-lisp/elpa" "/ usr / local / share / emacs / site-lisp / elpa" "/ usr / share / emacs / 24.4 / site-lisp / elpa ""/ usr / share / emacs / site-lisp / elpa ")이 변수는 파일 로컬 변수로 사용될 경우 위험 할 수 있습니다.
문서 : Emacs Lisp 패키지가 포함 된 추가 디렉토리 목록. 각 디렉토리 이름은 절대적이어야합니다.
이 디렉토리에는 시스템 전체를위한 패키지가 포함되어 있습니다. 대조적으로`package-user-dir '은 개인용 패키지를 포함합니다.
이 변수를 사용자 정의 할 수 있습니다.
이 변수는 Emacs 24.1 버전에서 도입되었거나 기본값이 변경되었습니다.
다른 문서 :
Emacs는 package-user-dir 외에도 package-directory-list에 나열된 디렉토리에서 설치된 패키지를 찾습니다. 이 디렉토리는 시스템 관리자가 시스템 전체에서 Emacs 패키지를 사용할 수 있도록하기위한 것입니다. 이맥스 자체는 패키지를 설치하지 않습니다.
따라서 사이트 전체 설치의 경우 시스템 관리자로서 / usr / local / share / emacs / site-lisp / elpa 내부에 패키지를 수동으로 설치하는 것이 좋습니다. 또는 @Stefan이 제안한대로 할 수도 있습니다.