¿Cómo puedo agregar aplicaciones a la barra de inicio de la aplicación lxpanel a través de cli?

11

¿Hay alguna forma en la barra de herramientas de LXDE para cambiar qué aplicaciones están en la parte de inicio rápido a través del terminal para que pueda colocarse en un archivo por lotes para cambiar en varios clientes?

Jhondoe
fuente
Puedo confirmar la respuesta de Stranger, con Jessie en Pi3, los archivos de escritorio están dentro / usr / share / raspi-ui-overrides / aplicaciones / En el momento en que copié eclipse.desktop desde / usr / share / aplicaciones / su icono apareció en la Appliaction Launch Bar, y pude agregarlo a Launch Bar.
István Arany

Respuestas:

17

Esto se puede hacer fácilmente creando un .desktoparchivo para cada aplicación que le gustaría agregar al menú. Todo esto se explica claramente en la wiki de LXDE para el menú principal 1 .

* Ubicaciones de escritorio

Si desea que la aplicación aparezca en los menús de todos los usuarios de un sistema, agregue el archivo al directorio /usr/share/applications/. Por ejemplo, puede tener /usr/share/applications/gimp.desktoppara la aplicación gimp. Aquí es donde los paquetes normalmente crean sus .desktoparchivos y se recomienda.

Si desea agregar la aplicación al menú de un usuario específico, cree el archivo en el directorio $HOME/.local/share/applications/.

* Configuración de escritorio

Lea algunos de sus .desktoparchivos existentes /usr/share/applications/para comprender cómo funcionan. Son bastante sencillos, pero el wiki proporciona una breve explicación de la configuración de uso común.

Aquí hay una explicación ligeramente modificada de la wiki para el warsow.desktoparchivo. La configuración real está en negrita.

  • [Entrada de escritorio] : indica que este archivo es un archivo * .desktop
  • Codificación = UTF-8 : se utiliza la codificación UTF-8
  • Exec = warsow - ruta de un binario o script utilizado para iniciar el programa
  • Icon = / home / USER / my / icons / wsw-icon_80x80.png : ruta al icono de la entrada
  • Tipo = Aplicación : el archivo de escritorio está iniciando una aplicación
  • Terminal = falso : el programa no se ejecutará en una terminal
  • Nombre = Warsow - nombre mostrado en el menú
  • GenericName = warsow - descripción de la entrada
  • StartupNotify = false : la notificación de inicio está desactivada
  • Categorías = Juego : especifica las categorías en las que se colocará la entrada en el menú (varias categorías se especifican con un punto y coma entre ellas, por ejemplo, 'Juego; Educación')

Agregar una aplicación a una barra de inicio de aplicaciones

Si ha creado un .desktoparchivo o se creó uno cuando se instaló la aplicación, puede agregar la aplicación a una barra de inicio dentro de un lxpanel. Las configuraciones para paneles se encuentran en el directorio de perfil. Por ejemplo, uno de sus paneles puede estar en $HOME/.config/lxpanel/LXDE/panels/panel.

Editando el archivo con vim ~/.config/lxpanel/LXDE/panels/panel, puedo ver dónde se agrega el complemento y la configuración de la barra de inicio. Si el complemento aún no se ha agregado al panel, deberá agregarlo para cada usuario. Observe que los complementos de la barra de inicio aparecerán en el panel en el mismo orden en que aparecen en este archivo.

Además, deberá agregar la Buttonconfiguración con una idruta al .desktoparchivo para cada aplicación que desee que aparezca en la barra de inicio. Aquí hay un ejemplo de cómo se ve.

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
        }
    }
}

Refrescando el Panel

La wiki incluso proporciona un útil script para reiniciar lxpanel para garantizar que actualizará sus cambios.

#!/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 &

Si está ejecutando el lxpanelcomando en su terminal, recomiendo usarlo nohuppara que no elimine el proceso lxpanel cuando el terminal está cerrado. nohup lxpanel -p LXDE &

iyrin
fuente
1
La pregunta era cómo agregar cosas desde el
iniciador de
1
La respuesta ha sido editada. Aún necesitará los .desktoparchivos y no olvide actualizar el panel para que aparezcan los cambios.
iyrin
Por favor seleccione esto como la respuesta.
iyrin
2
Con Jessie en un Pi 3, los archivos .desktop se encuentran en / usr / share / aplicaciones / y / usr / share / raspi-ui-overrides / aplicaciones / El archivo del Panel debe reflejar la ubicación real. Cualquiera funcionará, pero sospecho que la última es la nueva forma de hacer las cosas. sudo mv de una copia del archivo .desktop le dará una versión en ambas ubicaciones.
Wayfaring Stranger
1
Para reiniciar el panel en Raspbian, el comando es lxpanel -p LXDE-pi &.
Frank Breitling