Me gusta el tema del escalado HD en escritorios Linux. Al igual que las fuentes, es una de las áreas más descuidadas de la experiencia del usuario en el espacio Tux. En general, Plasma es el único entorno que escala bien. Las otras computadoras de escritorio se llevan bien con la escala de enteros completos, los ajustes de DPI de fuente y, si tiene suerte, algunas escalas fraccionarias, con incrementos del 25% y demás.
Las cosas se vuelven más interesantes cuando usa Plasma con aplicaciones no nativas, es decir, cosas que van más allá del conjunto de Plasma predeterminado. Hablé sobre esto en mi primer artículo sobre escalado HD en Plasma, donde les mostré un montón de ajustes para software como Firefox, Chrome, cosas antiguas de GTK2 y demás. Ahora, quiero explicarte y mostrarte cómo escalar las instantáneas, en aquellos escenarios donde la escala no funciona bien desde el primer momento. Sígueme.
Un pequeño descargo de responsabilidad
Antes de seguir adelante con gusto y entusiasmo, aclaremos un par de cosas. Primero, estoy involucrado con el proyecto snap, por lo tanto, debe esperar parcialidad en este artículo y, por lo tanto, con cuidado, con una pizca de sal, tome o ignore mi consejo. Sin embargo, tenga en cuenta que estoy escribiendo este artículo sin ninguna consideración explícita o implícita específica a mi trabajo. Este tutorial es parte de mi serie de artículos sobre escalado HD en Linux, y habrá otros, que tocarán diferentes escritorios, herramientas y demás, incluido el escritorio Gnome, pantallas UHD y más. A partir de ahora termina toda y cualquier relación con lo que hago profesionalmente.
Dos, idealmente, independientemente de la tecnología de la que estemos hablando, todo debería funcionar sin problemas y perfectamente. Pero ese no es el caso, por muchas razones. Tres, la razón por la que las instantáneas son interesantes es que son aplicaciones independientes, diseñadas para ejecutarse aisladas del sistema subyacente. Esto trae consigo la importante cuestión de la integración del complemento al sistema. ¿Cómo obtienen las instantáneas y usan configuraciones globales como temas, íconos, valor de DPI, etc.?
La respuesta a esa pregunta es bastante complicada. En algunos casos, obtienen y utilizan esta configuración sin ningún problema. El resultado real también depende de cómo se empaquetan las instantáneas específicas. TL;DR:puede haber instantáneas que no necesariamente "verán" o "recogerán" la configuración de escritorio seleccionada de forma predeterminada.
En esencia, esto no es diferente a lo que vimos con Chrome sin complemento en el artículo anterior, para el caso. La única diferencia es CÓMO se aplican las configuraciones relevantes. Da la casualidad de que en mi Slimbook, estoy usando el mismo ajuste de escala con Microsoft Edge, exactamente de la misma manera que los ajustes que introduje con Chrome hace dos años. Necesitamos centrarnos en la implementación técnica real del cambio, y es por eso que tenemos este pequeño tutorial.
Problema con más detalle
Bien. Así que ahora, el problema al que se enfrenta:una aplicación, cuando se instala con el mecanismo tradicional de empaquetado de Linux, puede escalar de manera diferente en su escritorio en comparación con la misma aplicación instalada en un abrir y cerrar de ojos. Caso en cuestión:VLC. Pero no solo Sin embargo, lo interesante es que VLC es una aplicación basada en Qt.
Solución
Como usuario final, puede indicarle al complemento (VLC) que use un factor de escala diferente. Esto es como lo hicimos con los navegadores en el ejercicio anterior. Necesitamos encontrar y editar el archivo de escritorio VLC. Las aplicaciones estándar de Linux mantienen los archivos de escritorio en /usr/share/applications. Las instantáneas almacenan las suyas en:
/var/lib/snapd/desktop/aplicaciones
Ahora, necesitamos abrir el archivo vlc_vlc.desktop y cambiar la línea Exec. Sin embargo, el cambio es diferente al que usamos con Google Chrome. El motivo es que VLC se empaqueta con un conjunto diferente de tecnologías, y la bandera que se aplica a los navegadores basados en Chromium no se aplica aquí. Si intenta con el indicador de factor de escala del dispositivo y forzar el factor de escala del dispositivo, obtendrá un error:
vlc:opción desconocida o argumento obligatorio faltante '--force-device-scale-factor=1.25'
En su lugar, necesita el QT_SCALE_FACTOR. Sugerencia, esto es aplicable para todas las aplicaciones basadas en Qt razonablemente modernas. Ahora, edite la línea Exec en el archivo de escritorio de la que se muestra a continuación:
Exec=env BAMF_DESKTOP_FILE_HINT=/var/lib/snapd/desktop/applications/vlc_vlc.desktop /snap/bin/vlc %U
A esta línea aquí:
Exec=env BAMF_DESKTOP_FILE_HINT=/var/lib/snapd/desktop/applications/vlc_vlc.desktop QT_SCALE_FACTOR=1.XX /snap/bin/vlc %U
Por ejemplo, utilice cualquier escala, como 1,16 o 1,25 o la que desee.
Implementaciones alternativas
Si no se siente cómodo editando estos archivos (también necesita sudo), puede crear su propio iniciador de contenedor para la aplicación. Una frase de una sola línea como:
QT_SCALE_FACTOR=1.25 instantánea ejecutar vlc
Luego puede poner esto en su propio script personalizado o acceso directo. Del mismo modo, puede crear su propio iniciador de menú de Plasma (entrada). Como describí en mi artículo Plasma es increíble, este entorno de escritorio es increíblemente flexible y amigable, y puedes modificar cualquier cosa y todo lo que quieras. Entre otras cosas, puede agregar manualmente nuevos elementos de aplicación en el menú del sistema.
Haga clic con el botón derecho en el icono de menú> Editar aplicaciones. Luego, haga clic en Nuevo elemento y complete los campos a la derecha con la información necesaria. Puede copiar los datos de cualquier entrada de VLC existente e incluso configurar un ícono personalizado si lo desea, para que pueda distinguir fácilmente entre las diferentes ediciones. Lo más importante es configurar el comando en la entrada que tenemos arriba. También puede usar la variable de entorno QT_FONT_DPI o DPI como una forma diferente de escalar el programa.
Otros marcos de aplicación
VLC es solo uno de los muchos tipos de aplicaciones que podrían verse afectados. Para navegadores basados en Chromium y aplicaciones Electron, puede usar el mismo truco que probamos con Chrome (y Edge). Agregue las banderas de factor de escala a la línea Exec. Puedes probar uno, el otro o ambos:
--factor-de-escala-del-dispositivo=1.25
--force-device-scale-factor=1.25
Para aplicaciones basadas en GTK3, puede usar la siguiente variable de entorno:
exportar GDK_SCALE="nuevo valor"
En su mayor parte, eso debería cubrir la mayor parte de los programas que encontrará en el uso diario. También es muy posible que no tengas ningún problema. Pero entonces, si lo hace, Qt, GTK y Electron son realmente las formas más comunes en que se construye el software hoy en día. Ahora, si está interesado en otros tipos de aplicaciones y los cambios necesarios, la wiki de Arch Linux tiene una ENORME lista de ajustes y las diversas formas en que puede cambiar la escala HD:esto es aplicable con o sin instantáneas.
Conclusión
Si bien las pantallas HD han existido durante bastante tiempo, los verdaderos problemas del uso de HD aún están por venir. Por ejemplo, si tiene un monitor lo suficientemente grande, es posible que nunca sienta que los elementos de la interfaz son demasiado pequeños para molestarse en ajustar el factor de escala. Pero en aquellas situaciones en las que lo necesitas, las cosas se desmoronan. No es solo Linux:también tuve muchos problemas con el escalado HD en Windows. En este sentido, Plasma está realmente por delante en este juego.
Hasta ahora, cuando se trata de cosas HD, cubrimos una variedad de navegadores, mencionamos varias aplicaciones GTK2 y GTK3. Oye, incluso te mostré cómo cambiar la escala y/o DPI para aplicaciones WINE, sí, sí. Ahora, también hemos cubierto las instantáneas. A primera vista, las cosas pueden parecer extrañas o complicadas, pero en realidad no lo son. ¿El siguiente en la lista? Gnome, y luego dispositivos 4K. Y también, aquí es donde usted entra. Si tiene alguna solicitud, pregunta o sugerencia, díganos. Hay toneladas de otros marcos y herramientas en el mundo de Linux, y tenemos que explorarlos todos. De todos modos, espero que este haya sido un ejercicio útil y divertido. Nos vemos.