如何通过cli将应用程序添加到lxpanel应用程序启动栏?


11

LXDE工具栏上是否可以通过终端更改快速启动部分上的哪些应用程序,以便可以将其放入批处理文件中以在多个客户端上进行更改?


我可以确认Stranger的回答,在Pi3上使用Jessie,桌面文件位于/ usr / share / raspi-ui-overrides / applications /中。从/ usr / share / applications /复制eclipse.desktop的那一刻起,它的图标出现在Appliaction中启动栏首选项,我能够将其添加到启动栏。
伊什特万阿兰尼

Answers:


17

通过.desktop为要添加到菜单中的每个应用程序创建文件,可以轻松完成此操作。所有这些在LXDE Wiki的主菜单1中都有清楚的解释。

*。桌面位置

如果您希望该应用程序出现在系统上所有用户的菜单中,请将文件添加到目录中/usr/share/applications/。例如,您可能有/usr/share/applications/gimp.desktop针对gimp的应用程序。软件包通常在此处创建其.desktop文件,建议这样做。

如果要将应用程序添加到特定用户的菜单中,请在目录中创建文件$HOME/.local/share/applications/

* .desktop设置

阅读一些现有.desktop文件,/usr/share/applications/以了解它们的工作方式。它们相当简单,但是Wiki提供了常用设置的简要说明。

这是Wiki中对该warsow.desktop文件的稍作修改的解释。实际设置以粗体显示。

  • [桌面条目] -表示此文件是* .desktop文件
  • 编码= UTF-8-使用 UTF-8编码
  • Exec = warsow-用于启动程序的二进制文件或脚本的路径
  • Icon = / home / USER / my / icons / wsw-icon_80x80.png-条目图标的路径
  • Type = Application-桌面文件正在启动应用程序
  • Terminal = false-该程序将不会在终端中运行
  • 名称=华沙 -菜单中显示的名称
  • GenericName = warsow-条目说明
  • StartupNotify = false-启动通知已关闭
  • Categories = Game-指定将条目放置在菜单中的类别(指定了几个类别,并在它们之间用分号表示,例如“ Game; Education”)

将应用程序添加到应用程序启动栏

如果已创建.desktop文件或在安装应用程序时创建了文件,则可以将应用程序添加到lxpanel内的启动栏中。面板的配置位于配置文件目录中。例如,您的一个小组可能位于$HOME/.config/lxpanel/LXDE/panels/panel

使用编辑文件vim ~/.config/lxpanel/LXDE/panels/panel,我可以看到在哪里添加了launchbar插件和配置。如果尚未将插件添加到面板,则需要为每个用户添加此插件。请注意,启动栏插件将以与该文件相同的顺序出现在面板中。

此外,您将需要为每个希望显示在启动栏中的应用程序添加Button带有文件id路径的配置.desktop。这是一个看起来像的例子。

Plugin {
    type = launchbar
    Config {
        Button {
            id=pcmanfm.desktop
        }
        Button {
            id=/var/lib/menu-xdg/applications/menu-xdg/X-Debian-Applications-Network-File-Transfer-transmission_bittorrent_client_(gtk).desktop
        }
        Button {
            id=/usr/share/applications/gimp.desktop
        }
        Button {
            id=/var/lib/menu-xdg/applications/menu-xdg/X-Debian-Applications-Terminal-Emulators-gnome_terminal.desktop
        }
        Button {
            id=/usr/share/applications/gedit.desktop
        }
        Button {
            id=/usr/share/applications/gcalctool.desktop
        }
        Button {
            id=/usr/share/applications/keepassx.desktop
        }
    }
}

刷新面板

Wiki甚至提供了一个方便的脚本来重新启动lxpanel,以确保它将更新您的更改。

#!/bin/bash

# lxpanel processes must be killed before it can reload an lxpanel profile.
killall lxpanel
# Finds and deletes cached menu items to ensure updates will appear.
find ~/.cache/menus -name '*' -type f -print0 | xargs -0 rm
# Starts lxpanel with the `--profile` option and runs as a background process.
# In this example the profile is LXDE. Profiles are the directories located 
# in $HOME/.config/lxpanel/. In this case, $HOME/.config/lxpanel/LXDE.
lxpanel -p LXDE &

如果您lxpanel在终端中运行该命令,建议您使用该命令,nohup以便在终端关闭时不会杀死lxpanel进程。 nohup lxpanel -p LXDE &


1
问题是关于如何通过终端在应用程序启动器中添加内容,我已经没有如何在开始菜单中添加内容
Jhondoe 2015年

1
答案已被编辑。您仍将需要这些.desktop文件,并且不要忘记刷新面板以显示更改。
iyrin 2015年

请选择此作为答案。
iyrin

2
在Pi 3上使用Jessie时,.desktop文件位于/ usr / share / applications / / / usr / share / raspi-ui-overrides / applications /中。Panel文件需要反映实际位置。两者都可以工作,但是我怀疑后者是新的工作方式。.desktop文件副本的sudo mv将为您提供两个位置的版本。
Wayfaring Stranger

2
要在Raspbian上重新启动面板,命令为lxpanel -p LXDE-pi &
Frank Breitling
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.