Pular para o conteúdo

Atualização dos Menus do Wine

Dica publicada em Shell Script / Miscelânea
Rafael rafaelbarlete
Hits: 2.720 Categoria: Shell Script Subcategoria: Miscelânea
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Atualização dos Menus do Wine

Saudações, amigos!

Wine é uma mão na roda e funciona bem na maioria dos casos, se você o usa, provavelmente já deve ter presenciado algum problema com seu menu, costuma acontecer quando removemos algum programa e ele insiste em permanece na lista, ou também, por vezes, novos programas não aparecem no menu.

Esta dica pode ser útil, executando este script será apagado todo o menu e gerado um novo a partir dos programas instalados no Wine. Um detalhe é importante, mudar as variáveis "wine" e "rm", caso estes estejam em caminhos diferentes do padrão.

#!/bin/sh

wine="wine"
rm="/bin/rm"

iterate_start_menu ()
{
 local menu_dir
 local oldIFS
 menu_dir=$1
# don't use space as field-separator otherwise "paths with spaces" will fail to parse correctly
 oldIFS=$IFS
 IFS=?
 echo "menu_dir=${menu_dir}"
# add a trailing slash to the directory name, then the glob wildcard
 for entry in ${menu_dir}/*; do
  if [ -f "$entry" ]; then
   echo "Link: $entry";
    "$wine" winemenubuilder "$entry" 2>/dev/null
  elif [ -d "$entry" ]; then
   echo "Directory: $entry";
   iterate_start_menu "$entry"
  else
   echo "Empty: $entry";
  fi
 done

 IFS=$oldIFS
}

# Delete current user-defined wine menus
"$rm" -f $HOME/.config/menus/applications-merged/wine*
"$rm" -rf $HOME/.local/share/applications/wine

# Rebuild Start Menu for all prefixes starting with ".wine-" or ".wine" itself
for prefix in "$HOME/".wine-* "$HOME/".wine; do
 WINEPREFIX="$prefix"
 export WINEPREFIX
# do not use a trailing / at the end of the directory name
 iterate_start_menu "${WINEPREFIX}/drive_c/windows/profiles/*/Start Menu"
done

##Finalizar a atualização
export WINEPREFIX="$prefix"; find $WINEPREFIX/drive_c/ -name "*.lnk" -exec wine winemenubuilder '{}' \;

Fonte: WineHQ Forums • View topic - Wine menus - rebuilding, deleting

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
Nenhuma dica encontrada.

Selecionando registros de um arquivo texto com o awk

Removendo linhas duplicadas de um arquivo texto

Comentando várias linhas em scripts bash

Base de dados mais organizada em shell script

Lendo registros formatados de arquivo de texto em bash

#1 Comentário enviado por rahremix em 11/10/2017 - 16:03h
Já tive esse problema, porém, por não ser nada de muito sério, nunca procurei uma solução.
Obrigado por compartilhar, assim que chegar em casa arrumo meu menu do wine ;-)

------------------------------------------------------------------------------------------------------
http://www.gnu.org/philosophy/free-software-even-more-important.pt-br.html

Contribuir com comentário

Entre na sua conta para comentar.