Estou executando o Arch Linux e o KDE. Instalei o Arch KDE em vários dispositivos e, no caso normal, não há associação especÃfica do tipo mime para .pub
arquivos (que são chaves públicas no meu caso). Eles serão abertos pelo manipulador padrão para documentos de texto simples. Isto é o que eu espero ver na minha instalação padrão do Arch Linux:
$ xdg-mime query filetype id_rsa_test.pub
text/plain
No entanto, na minha área de trabalho principal, .pub
os arquivos estão associados ao ms-publisher.
$ xdg-mime query filetype id_rsa_test.pub
application/vnd.ms-publisher
Eu quero remover esta associação completamente. Aqui estão alguns dos lugares em que encontrei evidências dessa associação:
$ grep -irl '.pub' ./.local/share/mime/
./.local/share/mime/packages/application-vnd.ms-publisher.xml
./.local/share/mime/application/vnd.ms-publisher.xml
./.local/share/mime/globs
./.local/share/mime/globs2
./.local/share/mime/types
./.local/share/mime/mime.cache
$ sudo grep -irl 'ms-publisher' /usr
/usr/share/applications/mimeinfo.cache
/usr/share/mime/packages/freedesktop.org.xml
/usr/share/mime/application/vnd.ms-publisher.xml
/usr/share/mime/globs
/usr/share/mime/globs2
/usr/share/mime/subclasses
/usr/share/mime/types
/usr/share/mime/mime.cache
/usr/share/icons/breeze/mimetypes/64/application-vnd.ms-publisher.svg
/usr/share/icons/breeze/mimetypes/22/application-vnd.ms-publisher.svg
/usr/share/icons/breeze/breeze-icons.rcc
/usr/share/icons/breeze/icon-theme.cache
/usr/share/icons/breeze-dark/mimetypes/22/application-vnd.ms-publisher.svg
/usr/share/icons/breeze-dark/breeze-icons-dark.rcc
/usr/share/icons/breeze-dark/icon-theme.cache
/usr/lib/libreoffice/share/xdg/draw.desktop
De acordo com a xdg-mime
página man, o uninstall
comando pode fazer o truque. No meu caso, pelo menos, o uninstall
comando não tem efeito.
# xdg-mime uninstall /usr/share/mime/application/vnd.ms-publisher.xml
# echo $?
0
# sudo grep -irl 'ms-publisher' /usr
/usr/share/file/misc/magic.mgc
/usr/share/applications/mimeinfo.cache
/usr/share/mime/packages/freedesktop.org.xml
/usr/share/mime/application/vnd.ms-publisher.xml
/usr/share/mime/globs
/usr/share/mime/globs2
/usr/share/mime/subclasses
/usr/share/mime/types
/usr/share/mime/mime.cache
/usr/share/icons/breeze/mimetypes/64/application-vnd.ms-publisher.svg
/usr/share/icons/breeze/mimetypes/22/application-vnd.ms-publisher.svg
/usr/share/icons/breeze/breeze-icons.rcc
/usr/share/icons/breeze/icon-theme.cache
/usr/share/icons/breeze-dark/mimetypes/22/application-vnd.ms-publisher.svg
/usr/share/icons/breeze-dark/breeze-icons-dark.rcc
/usr/share/icons/breeze-dark/icon-theme.cache
/usr/lib/libreoffice/share/xdg/draw.desktop
# grep -irl '.pub' /usr/share/mime/
/usr/share/mime/packages/freedesktop.org.xml
/usr/share/mime/packages/calibre-mimetypes.xml
/usr/share/mime/application/pkcs7-mime.xml
/usr/share/mime/application/pkcs8-encrypted.xml
/usr/share/mime/application/epub+zip.xml
/usr/share/mime/application/x-pkcs7-certificates.xml
/usr/share/mime/application/pkcs8.xml
/usr/share/mime/application/pkcs10.xml
/usr/share/mime/application/pkcs12.xml
/usr/share/mime/application/vnd.ms-publisher.xml
/usr/share/mime/globs
/usr/share/mime/globs2
/usr/share/mime/magic
/usr/share/mime/subclasses
/usr/share/mime/types
/usr/share/mime/generic-icons
/usr/share/mime/mime.cache
Para minha pergunta, quero saber como remover qualquer associação do tipo mime do meu sistema usando apenas ferramentas CLI.
EDIT: resposta a resposta:
Em uma nova conta de usuário, mostro o seguinte:
sudo pacman -Qs shared-mime-info
local/shared-mime-info 1.15-2
Freedesktop.org Shared MIME Info
$ xdg-mime query filetype id_rsa_test.pub
text/plain
$ xdg-mime query default text/plain
atom.desktop
$ less ~/.config/mimeapps.list
/home/deleteme/.config/mimeapps.list: No such file or directory
Este sistema foi atualizado várias vezes (todos os dias) e a associação do ms-publisher com os .pub
arquivos não voltou. Observe que este sistema foi shared-mime-info
instalado e posso abrir arquivos de chave pública com um editor de texto simples, como esperado. Em outra conta de usuário neste sistema, tenho minha associação preferida por meio de uma entrada ~/.config/mimeapps.list
para esse usuário.
$ xdg-mime query default text/plain
org.kde.kate.desktop
Voltando à pergunta principal: Como faço para remover completamente a associação de .pub
arquivos com o Okular e/ou Libre Office Draw no nÃvel do sistema? Mesmo que não seja um método aprovado, como faço?
Não há razão para você esperar isso. O
shared-mime-info
pacote assume que.pub
é um documento do Microsoft Publisher. Se você acha que o padrão deveria serplain/text
, então você precisa reportar isso upstream.Eu, pessoalmente, acho que é um bug e eles não deveriam fazer uma extensão de formato proprietário M$ uma prioridade sobre uma extensão de arquivo nativa GNU/linux. Ou melhor ainda usar magia além de glob
Você não deve remover associações do tipo mime em todo o sistema. Mesmo se você conseguisse fazer isso, ele voltaria mais tarde com atualizações do sistema.
O que você deve fazer é adicionar seu próprio tipo mime que substitui o do sistema. Como você já sabe da sua outra pergunta aqui , você pode usar glob-deleteall para substituir as definições anteriores