Esto se hace fácilmente para un solo tipo de archivo, como se respondió en ¿Cómo asociar un tipo de archivo dentro de Wine con una aplicación nativa? , creando un .reg
para el tipo de archivo deseado. Pero esto es solo para AVI. Utilizo algunas aplicaciones de vino (uTorrent, Soulseek, Eudora, por nombrar algunas) que pueden lanzar una amplia gama de archivos. Los archivos adjuntos de correo electrónico, por ejemplo, pueden ser JPG, DOC, PDF, PPS ... es imposible (y no deseable) rastrear todos los tipos de archivos posibles que uno puede recibir en un correo electrónico o descargar en un torrent.
Así que necesito una solución para ser más genérico y amplio. Necesito la asociación de archivos para honrar cualquier aplicación nativa que esté configurada actualmente. Y quiero que esto se haga para todos los tipos de archivos configurados en mi sistema.
Ya he descubierto cómo hacer que la solución sea genérica. Simplemente reemplazando la aplicación iniciada .reg
por winebrowser
, así:
[HKEY_CLASSES_ROOT\.pdf]
@="PDFfile"
"Content Type"="application/pdf"
[HKEY_CLASSES_ROOT\PDFfile\Shell\Open\command]
@="C:\\windows\\system32\\winebrowser.exe \"%1\""
He probado esto y funciona correctamente. Dado que winebrowser lo utiliza xdg-open
como backend y convierte mi ruta de Windows a Unix, se inicia la aplicación correcta (Linux).
Así que necesito un actualizador "por lotes" para el registro de Wine, una especie de wine-update-associations
script que puedo ejecutar cada vez que se instala una nueva aplicación. Quizás una herramienta que pueda:
- Enumerar todos los tipos de Tipos Mime en mi sistema que tienen una aplicación instalada predeterminada asociada
- Extraiga toda la información necesaria (glob, tipo mime, etc.)
- Genere el archivo .REG en el formato anterior
La parte difícil es: he buscado MUCHO para encontrar información sobre cómo se realiza la asociación en Ubuntu 10.10 en adelante, y la documentación es escasa y confusa, por decir lo menos. Freedesktop.org no tiene especificaciones completas, e incluso los documentos de Gnome son obsoletos. Hasta ahora he reunido 4 archivos que contienen información de asociación, pero no tengo idea de qué (o por qué) usar, o cómo usarlos para generar el .reg
archivo:
~/.local/share/applications/mimeapps.list
~/.local/share/applications/miminfo.cache
/usr/share/applications/miminfo.cache
/etc/gnome/defaults.list
¡Cualquier ayuda, guión o explicación sería muy apreciada!
¡Gracias!
Everything
sí, pero solo quería informarle