Bläddra i källkod

fix: don't install desktop file w/o xdg-desktop-menu (#3229)

opalmay 2 år sedan
förälder
incheckning
1fbdcabf19
2 ändrade filer med 4 tillägg och 5 borttagningar
  1. 2 3
      utils/installer/install.sh
  2. 2 2
      utils/installer/uninstall.sh

+ 2 - 3
utils/installer/install.sh

@@ -458,7 +458,7 @@ function setup_lvim() {
 function create_desktop_file() {
   OS="$(uname -s)"
   # TODO: Any other OSes that use desktop files?
-  [ "$OS" != "Linux" ] && return
+  ([ "$OS" != "Linux" ] || ! command -v xdg-desktop-menu &>/dev/null) && return
   echo "Creating desktop file"
 
   for d in "$LUNARVIM_BASE_DIR"/utils/desktop/*/; do
@@ -467,8 +467,7 @@ function create_desktop_file() {
     cp "$LUNARVIM_BASE_DIR/utils/desktop/$size_folder/lvim.svg" "$XDG_DATA_HOME/icons/hicolor/$size_folder/apps"
   done
 
-  cp "$LUNARVIM_BASE_DIR/utils/desktop/lvim.desktop" "$XDG_DATA_HOME/applications/lvim.desktop"
-  xdg-desktop-menu forceupdate
+  xdg-desktop-menu install --novendor "$LUNARVIM_BASE_DIR/utils/desktop/lvim.desktop"
 }
 
 function print_logo() {

+ 2 - 2
utils/installer/uninstall.sh

@@ -63,11 +63,11 @@ function remove_lvim_bin() {
 function remove_desktop_file() {
   OS="$(uname -s)"
   # TODO: Any other OSes that use desktop files?
-  [ "$OS" != "Linux" ] && return
+  ([ "$OS" != "Linux" ] || ! command -v xdg-desktop-menu &>/dev/null) && return
   echo "Removing desktop file..."
 
   find "$XDG_DATA_HOME/icons/hicolor" -name "lvim.svg" -type f -delete
-  rm "$XDG_DATA_HOME/applications/lvim.desktop"
+  xdg-desktop-menu uninstall lvim.desktop
 }
 
 function main() {