如何让HOME分区中自行编译的GNU-Emacs成为系统级应用?
如何让HOME分区中自行编译的GNU-Emacs成为系统级应用?
兄弟,我来帮你搞定这个问题!你已经把Emacs编译好了,现在就差让系统把它当成正经应用识别出来,分几步走就行,完全适配MX Linux这种Debian系发行版:
第一步:确保GUI和终端都能找到Emacs二进制
你已经把PATH加到了.profile和.bashrc,但GUI应用通常不会读bashrc这类终端专属配置。更稳妥的是用environment.d来全局(对当前用户)设置路径:- 先创建配置目录:
mkdir -p ~/.config/environment.d - 编辑配置文件:
nano ~/.config/environment.d/99-emacs-path.conf,写入下面内容:PATH="$HOME/somedir/emacs/src:$PATH" - 重启系统或者重新登录一次,这样不管是终端还是桌面应用,都能找到你的自定义Emacs了。
- 先创建配置目录:
第二步:创建桌面快捷方式(让它出现在应用列表)
系统里的应用都是靠.desktop配置文件识别的,咱们自己建一个:- 打开文本编辑器,创建
~/.local/share/applications/emacs-custom.desktop文件,粘贴以下内容(注意把$HOME换成你实际的主目录,或者直接用~也没问题):[Desktop Entry] Name=GNU Emacs (自定义编译版) Comment=可扩展、可定制、自文档化的实时显示编辑器 Exec=emacs %F Icon=emacs Terminal=false Type=Application Categories=Development;TextEditor;Utility; MimeType=text/plain;application/x-emacs-lisp;application/x-org;application/xml;text/html; Keywords=编辑器;文本;开发;
简单解释下关键项:
Exec=emacs %F:%F是让Emacs支持打开选中的文件,这样右键“打开方式”里才会出现它Icon=emacs:如果系统里有默认的Emacs图标(一般都有),会自动调用;要是没有,你可以换成编译目录里的图标路径,比如~/.somedir/emacs/etc/images/icons/hicolor/48x48/apps/emacs.pngMimeType:这里列了Emacs能打开的文件类型,确保它能出现在对应文件的“打开方式”里
- 打开文本编辑器,创建
第三步:让系统识别新的桌面配置
执行下面的命令更新桌面数据库:update-desktop-database ~/.local/share/applications现在去应用列表里找,就能看到“GNU Emacs (自定义编译版)”了!
第四步:验证“打开方式”功能
随便找个文本文件右键,选“打开方式”,现在应该能看到你的自定义Emacs了。要是没立刻出现,重启一下文件管理器(比如MX默认的Thunar)就行。
要是你想让所有用户都能用这个自定义Emacs,那把.desktop文件放到/usr/share/applications/,把environment.d的配置文件放到/etc/environment.d/,操作时记得加sudo,而且路径要写绝对路径(比如/home/你的用户名/somedir/emacs/src)。
备注:内容来源于stack exchange,提问作者niru
相关产品推荐
相关产品推荐

