Skip to main content

the avatar of Hollow Man's Blog

My Google Summer of Code 2021

Blog Posted on openSUSE News about the Project

Project Introduction

IBus Customize @openSUSE by Songlin Jiang (@HollowMan6)

Before GSoC 2021, the IBus theme follows the global GNOME-Shell theme in GNOME and the global GTK theme in other desktop environments, and IBus lacks customization for users in GNOME.

Main Focus

This project aims to make IBus themes separate from the current GNOME-Shell theme and GTK theme so that users can customize it with other GNOME-Shell themes and GTK themes.

Other Goals

Improve the UI usability for IBus in GNOME. That is, to add more features, including customization of orientation, animation, font, opacity. Support right-click to switch the input source or open the tray menu, scroll to switch among pages or candidates, fix candidate box and IME switch list order, ASCII mode auto-switch, reposition, show or hide candidate box page buttons, set system tray settings, input source indicator with settings. Theme and background picture follow GNOME Night Light Mode, and so on. These customizations will make users find IBus in GNOME familiar if they have just switched from another platform. Eventually, an extension providing full customization of appearance, behavior, system tray, input source indicator for IBus will be available.

Archived Codebase


Customize IBus

Contribution in Details

Blog Posts both in Chinese and English of the Documentations Related to the Project User Guide


Customize IBus Extension (All the commits and releases submitted by @HollowMan6 are my contributions)

Using Customize IBus to Set Background with a Specified Theme

Functionalities

  • Candidate Box Orientation (imported from ibus-tweaker, refer to ibus-font-setting for settings sync with ibus-setup)
  • Candidate Box Animation (thanks for the help from Florian Müllner)
  • Right-click Candidate Box to Switch the Input Mode or Open the Tray Menu
  • Scroll on Candidate Box to Switch among Pages or Candidates
  • Fix Candidate Box to Not Follow the Caret and Set Fixed Position
  • Candidate Box Font (imported from ibus-tweaker and ibus-font-setting)
  • Input Mode Remember and Auto-switch by APP (imported from ibus-tweaker, refactor to enable configuring input mode remember)
  • Change Candidate Box Opacity
  • Fix IME List Order (imported from fixed-ime-list)
  • Drag Candidate Box to Reposition
  • Show or Hide Candidate Box Page Buttons
  • Restart or Start IBus from Preferences
  • System Tray Menus and Interaction Settings
    • Show or Hide Tray Icon
    • Directly Click Tray Icon to Switch Input Mode
    • Add Additional Menu
  • Input Source Indicator Appearance and Interaction Settings
    • Enable Indicator
    • Only Indicate when Switching Input Mode
    • Only Indicate when Using ASCII Input Mode
    • Right-click Indicator to Hide
    • Scroll on Indicator to Switch Input Mode
    • Indicator Animation
    • Customize Font
    • Left-click Indicator to Drag to Move Indicator or Switch Input Mode
    • Change Opacity
    • Enable Auto-hide Indicator and Configure Auto-hide Timeout
  • Configure Theme (Stylesheet Provided by IBus Theme Hub or Extracted from IBus Theme Tools GNOME Shell Themes)
  • Add a Candidate Box Background Picture and Configure its Displaying Style
  • Theme and Background Picture Follow GNOME Night Light Mode (partly referred to ibus-tweaker for this feature)
  • Multi GNOME Version Support ranging from GNOME 3.34 to GNOME 40 Simultaneously
  • Hot Reload Support for Theme
  • Reset to Default Settings
  • Export Current Settings to File
  • Import Current Settings from File
  • Open Official Settings from Preferences
  • Multi-Linguistic Support (Chinese and English)
  • Packages Definition Files that can Pack it in Arch, RPM Based, Debian Based
  • Logo Design
  • Eslint and Prettier Check Support
  • Workflow for Auto-Generating Extension Upload Zip file
  • Distribution Repos
  • Makefile for Build, Release, Package, Translate

(Credits for the GJS Documentation and GNOME Shell Codebase!)

Issues and PRs Opened and Resolved

Submitted to Open Build Service

Source Repository (Before revision 87)

Upstream Repository (Before revision 4)

Submit Request #903392

Submit Request #906096

Submit Request #911881

Uploaded to the GNOME Shell Extension Store
Submitted to Ubuntu PPA (Before Version 70)
Submitted to AUR (Before Version 70)

IBus Theme Tools (All the commits and releases submitted by @HollowMan6 are my contributions)

Select IBus Theme Tools Work Mode on Non-GNOME Desktop

Functionalities

  • Non-GNOME Desktop Change IBus GTK Theme, Add Theme Settings to Startup (Before v3). Generate an IBus Mixed GTK theme, Supporting to Select a Background Picture and Configure Border Radius (After v4)
  • GNOME Desktop Extract IBus Style from GNOME Shell Theme
  • Pack into Module Using Python Package Setup
  • Multi-Linguistic Support (Chinese and English)
  • Workflow for Python Package Check
  • Packages Definition Files that can Pack it in Arch
  • Makefile for Build, Release, Package, Translate

Issues and PRs Opened and Resolved

Submitted to Open Build Service

Source Repository (Before revision 17)

Upstream Repository (Before revision 3)

Submit Request #906099

Submit Request #912456

Submitted to Ubuntu PPA (Before Version 4.1.3)
Submitted to AUR (Before Version 4.1.3)

IBus Theme Hub (All the commits and releases submitted by @HollowMan6 are my contributions)

Functionalities

Issues, Discussions, and PRs Opened and Resolved


IBus (All the commits and releases submitted by @HollowMan6 are my contributions)

Change Theme with GTK Themes PR (Merged for IBus v1.5.27)
a silhouette of a person's head and shoulders, used as a default avatar

Novedades de Gwenview para KDE Gear 21.08

Como estoy comentando estos días, estamos ante un nuevo lanzamiento masivo de actualizaciones de las aplicaciones KDE, en esta ocasión en pleno mes de agosto, con el que los desarrolladores de la Comunidad KDE siguen mostrando al mundo que tienen claro que su objetivo es ofrecer los mejor del Software Libre para todos de forma continua, constante y sin cambios revolucionarios. Y como siempre voy a dedicar algunos artículos a repasar las buenas nuevas, así que hoy toca hablar de las novedades de Gwenview para KDE Gear 21.08, siguiendo la estela de las novedades de Dolphin, de Okular y de Konsole de días anteriores.

Novedades de Gwenview para KDE Gear 21.08

Novedades de Gwenview para KDE Gear 21.08

El ecosistema de aplicaciones de la Comunidad KDE está bien surtido. Tenemos de todo tipo: ligeras, potentes, rápidas, profesionales, etc.

No obstante, una de las más utilizadas es Gwnview ya que combina rapidez con funcionalidades de forma muy efectiva.

Y, como no puede ser de otra manera, Gwenview no para de mejorar gracias al trabajo constante de los desarrolladores de la Comunidad KDE. De esta forma en este KDE Gear 21,08, esta aplicación nos ofrece las siguientes novedades:

  • Cambio de diseño y apariencia que le confiere más rapidez y velocidad.
  • Nuevos controles compactos en la esquina inferior derecha de la aplicación. Concretamente:
    • Selector de ampliación/tamaño que usa un menú emergente
    • Selector de colores para el área de visualización de Gwenview
  • Adoptado completamente el KHamburger del mismo modo que Dolphin: ahora se puede acceder a todas las opciones de Gwenview desde el menú desplegable situado en la esquina superior derecha de la aplicación.
  • Mejoras en el manejo de imágenes mediante teclado tanto para las vistas previas como en el control de vídeos.
  • Posibilidad de mostrar imágenes con color de 16 bits y puede leer información de perfiles de color de JPEG y PNG.

Más información: KDE Gear 21.08 | Gwenview

a silhouette of a person's head and shoulders, used as a default avatar

#openSUSE Tumbleweed revisión de las semanas 32 y 33 de 2021

Tumbleweed es una distribución “Rolling Release” de actualización contínua. Aquí puedes estar al tanto de las últimas novedades.

Tumbleweed

openSUSE Tumbleweed es la versión “rolling release” o de actualización continua de la distribución de GNU/Linux openSUSE.

Hagamos un repaso a las novedades que han llegado hasta los repositorios esta semana.

El anuncio original lo puedes leer en el blog de Dominique Leuenberger, publicado bajo licencia CC-by-sa, en este enlace:

En estas dos semanas solo se han publicado 3 snapshots released, las 0807, 0810 y 0817. Las snapshots 0811, 0812, 0816 y 0818 produjeron diferentes fallos durante el proceso de testeo:

  • DVD ISO creció de tamaño descontroladamente
  • Un fallo aleatorio en la compilación de Vim hací que todo fallase

Entre las actualizaciones que han traído estas snapshots podemos destacar:

  • kernel 5.13.8
  • KDE Gear 21.08
  • apparmor 3.0.3
  • vim 8.2.3318

Y en próximas llegarán entre otras estas:

  • kernel 5.13.12
  • systemd v249.2
  • nodejs 16.6.2
  • glibc 2.34
  • podman & crio con crun habilitado por defecto

Si quieres estar a la última con software actualizado y probado utiliza openSUSE Tumbleweed la opción rolling release de la distribución de GNU/Linux openSUSE.

Mantente actualizado y ya sabes: Have a lot of fun!!

Enlaces de interés

Geeko_ascii

——————————–

a silhouette of a person's head and shoulders, used as a default avatar

openSUSE Tumbleweed – Review of Weeks 2021/32 & 33

Dear Tumbleweed users and hackers,

Dominique has been enjoying a vacation these last two weeks and left Tumbleweed in my hands. It’s been quite an interesting fortnight.

These two weeks have only seen 3 snapshots released, numbered 0807, 0810 and 0817. Snapshots 0811, 0812, 0816 and 0818 were all produced but discarded for a number of reasons including:

  • DVD ISO grew too big (twice!)
  • Random vim build failure produced an amusingly broken snapshot
  • And probably a few other bits and pieces I’m forgetting now

Plus on a personal note this was the fortnight I moved house so I wasn’t able to fix all the issues as fast as normal when they came up. Thanks for everyone’s patience and understanding

The changes delivered these weeks included:

  • kernel 5.13.8
  • KDE Gear 21.08
  • apparmor 3.0.3
  • vim 8.2.3318
  • And lots of other miscellaneous fixes

The future, near or far, will bring those updates:

  • kernel 5.13.12 (Currently being tested in 0819)
  • systemd v249.2
  • nodejs 16.6.2
  • glibc 2.34
  • podman & crio with crun enabled by default
  • and many more…

Have a lot of fun!

– Richard

the avatar of openQA-Bites
a silhouette of a person's head and shoulders, used as a default avatar

Charla y taller «Install Party» en Bolbait (València) organizado por Asociació Emanciació Comunitaria y Asociación GNU/Linux València

Me congratula promocionar una nueva actividad conjunta de la Asociació Emanciació Comunitaria y de la Asociación GNU/Linux València. Se trata de la charla y taller «Install Party» en Bolbait (Vaència) que se va a realizar el próximo 21 de agosto. Más información, sigue leyendo.

Charla y taller «Install Party» en Bolbait (València)

Charla y taller «Install Party» en Bolbait (València) organizado por Asociación GNU/Linux València
Logo GNU/Linux València

Parece ser que poco a poco vuelve la normalidad en cuanto a actividades presenciales de la comunidad GNU/Linux. Eso si, con todas las medidas de seguridad que sean necesarias.

Logo Emanciació Comunitaria

Es por ello que me complace compartir con vosotros un nuevo evento del grupo de personas que en València está impulsado el Software Libre gracias a sus reuniones tanto presenciales, cuando se podía, y ahora mismo de forma virtual, conjuntamente con la Asociació Emanciació Comunitaria, que podéis encontrar en su Grupo y Canal de Telegram.

Es por ello que os invito a la charla y taller «Install Party» en Bolbait (Vaència) que se va a realizar el próximo 21 de agosto que tiene como lema «Para una sociedad libre necesitamos una tecnología que no esté controlada por el poder».

Charla y taller «Install Party» en Bolbait

De esta forma se han organizado varias actividades:

  • 10:00 h: Charla sobre el Software Libre, donde se explicará la importancia del software libre en una comunidad con democracia real
  • Comida comunitaria, preferiblemente vegana.
  • 17:00 h: Taller Install Party, al que podréis LLEVAR VUESTRO EQUIPO y os ayudaremos a instalar un Sistema Operativo COMPLETAMENTE LIBRE!! · ◡ · además de otras herramientas. que nos permiten independencia de aquellas controladas por instituciones, empresas y estados.

Resumiendo, la información básica es:

  • Fecha: sábado, 21 de agosto de 2021
  • Horario: A partir de las 10:00
  • Lugar: Bolbait (cerca de Xàtiva, València)
  • ¿Registro necesario? Si, plazas limitadas. Reserva en los siguientes teléfonos: 625084409 Juan Carlos o 609618868 Gorgina

Si podéis asistir no os lo perdáis, seguro que no quedáis decepcionados.

Más información: GNU/Linux València

¡Únete a GNU/Linux València!

Aprovecho para recordar que desde hace unos meses, los chicos de GNU/Linux Valencia ya tienen su menú propio en el blog, con lo que seguir sus eventos en esta humilde bitácora será más fácil que nunca, y así podréis comprobar su alto nivel de actividades que realizan que destacan por su variedad.

Y que además, GNU/Linux València ha crecido y se ha ¡¡¡convertido en asociación!!! Así que si buscas una forma de colaborar con el Software Libre, esta asociación puede ser tu sitio. ¡Te esperamos!

the avatar of openSUSE News

Tumbleweed Fast Forwards with KDE Gear, Frameworks Updates

A lot of work this week has been taking place in the background to release openSUSE Tumbleweed snapshots.

Documented on the mailing list in the latest openSUSE release engineering meeting was information about some challenges Tumbleweed development had this week building images with the Open Build Service. There were some build failures, which caused some broken builds. These builds aren’t released as a snapshot since these must pass openSUSE’s openQA testing. The size of the ISO media also became too large to fit on a DVD; adjustments are made frequently when the capacity exceeds the size, so let’s get into the snapshot that was released.

The efforts to build, test and release a successful snapshot did come with the release of snapshot 20210817. Users received some much anticipated software with some really cool new features. KDE Gear 21.08.0 was among the many packages for rolling release users. The Dolphin file manager now shows an animated sequence of previews for folders containing a lot of previewable files. Its preview code has also been optimized so thumbnails pop up faster and files inside encrypted locations, such as Plasma Vaults, can show a preview. The PDF viewer Okular made some enhancements in the toolbar that allows for a color design to make reading more comfortable and to help avoid eye-strain. The Konsole terminal offers a preview feature from the command line when hovering the cursor over image filenames. Enhancements were also made for the Gwenview image viewer and the Elsa music player. KDE Frameworks 5.85.0 also came in the snapshot. The developer user interface Kirigami corrected some spacing between the close button and action buttons. It also added a method to push a page as a new window on the desktop. Optimizations for the network mounting performance were made to the KTextEditor and KWayland fixed a check for an mmap system call failure. AppStream, which is a package that provides a standard for creating app stores across distributions, updated to version 0.14.4 and improved text line wrapping. Mozilla Thunderbird 78.13.0 fixed a half dozen Common Vulnerabilities and Exposures; three of those involved fixes for possible memory corruption. Better native Wayland support for handling client-side decorations and other functionality were made to the update of media SDL2 2.0.16. The first major 1.0.0 version for firewalld was released in the snapshot; the dynamically managed firewall reduced dependencies, cleaned the spec file and deprecated the iptables backend. Vector graphics editor inkscape advanced a few minor versions to 1.1 and added a Welcome dialog where the look of Inkscape can be selected and some choices for the new document size or file to open are available. And when pasting a copied object, Inkscape now pastes it directly on top of the currently selected object by default. There is a list of several more packages that updated in the snapshot. Among some of those packages update were apparmor 3.0.3, ipset 7.15, nodejs16 16.6.2, openvpn 2.5.3, vim 8.2.3318, pipewire 0.3.33 and yast2-users 4.4.6, which made an update to allow for the editing of the name of an existing user and another update to remove the password of an existing user.

the avatar of openQA-Bites

openqa-cli cheat sheet

openqa-cli is a command-line utility for interacting with openQA. The tool is versatile and allows you to control and interact with an arbitrary openQA instance from the comfort of your command line. While the internal help is quiet comprehensive, I list some of the most basic tasks in the form of a tutorial or knowledge base here.

a silhouette of a person's head and shoulders, used as a default avatar

Programar tareas con el comando at en Linux

El comando at en GNU/Linux es una manera de programar distintas tareas que se ejecutarán una vez en la hora y fecha especificada

Para programar tareas en nuestros equipos con sistemas GNU/Linux que se repitan en el tiempo sin duda cron es la herramienta más conocida.

Con ella, podremos hacer que una tarea (léase script, programa, etc) se repita cuando deseemos. Todos los días a las horas especificadas, una vez a la semana, una vez al mes, etc.

Pero en esta ocasión vamos a ver el comando at que nos sirve para programar tareas, pero que no se van a repetir en el tiempo, si no únicamente se realizarán en la fecha y hora especificada y después se olvidarán.

¿Y para qué vamos a querer necesitar el comando at? Bueno, podemos utilizarlo para que actualice nuestro equipo a una hora determinada, o que cierre o ejecute tal aplicación en una fecha indicada, o que ejecute un script a una hora del día o apague nuestro equipo a media noche…

Este artículo es una traducción/adaptación del artículo en inglés escrito por Seth Kenlon para la web opensource.com publicado bajo licencia CC-by-sa.

El comando at nos permite ejecutar un comando o script (o varios comandos o scripts) una única vez a una fecha y hora indicada.

Seguro que en tu distribución de GNU/Linux ya tienes instalada este comando. Para que funcione correctamente debe estar corriendo el “demonio” o servicio atd (at daemon), para habilitarlo con si usas systemd ejecuta:

sudo systemctls enable --now atd

Creando tareas con at

Para crear tareas con at podemos utilizar el propio comando que nos abrirá un prompt en el que ir ingresando las tareas a ejecutar o hacer que lea la entrada estándar pasando los comandos mediante “tuberías”, ya sabes el símbolo |

Vamos a empezar con la propia interfaz de at, para ello en nuestra consola escribimos el comando y la hora a la que queremos que se ejecute nuestro comando. Para salir de la edición pulsaremos Ctrl-D

$ at 2:01 pm
warning: commands will be executed using /bin/sh
at Thu Aug 19 14:01:00 2021
at> touch archivo1.md
at> cp archivo1.md /home/victorhck/scripts
at> poweroff -h
at>
job 21 at Thu Aug 19 14:01:00 2021

La otra manera de crear una tarea es pasando el comando mediante la “tubería” con un comando, por ejemplo:

echo "touch xxx.md" | at now +1 minute

Como véis se pueden especificar hora a partir de la hora actual, por ejemplo la tarea anterior la realizará dentro de 1 minuto desde ahora mismo.

A diferencia de cron, el comando at es más “natural” a la hora de especificar las fechas y horas a las que queremos que se ejecute el comando. Se pueden utilizar los formatos de 24h o 12h indicando am/pm.

Si la hora indicada ya ha pasado, entonces el comando asumirá que será para esa hora, pero del día siguiente. También se pueden especificar fechas en formatos MMDDYY o MM/DD/YY (ya sabes, el mes antes del día) y horas en ese día.

También como hemos visto se pueden especificar horas a partir del momento actual con now, pero también admite midnight, noon o teatime (que son las 16:00):

echo "rm xxx.md" | at teatime +2 hours

Ver tareas programadas o eliminarlas

Las tareas programadas se pueden consultar (como usuario root) en la ruta /var/spool/atjobs

También podemos ver las tareas programadas mediante el comando at -l (-l de list) o atq (q de queue)

$ atq
23 Thu Aug 19 18:00:00 2021 a victorhck
21 Thu Aug 19 14:01:00 2021 a victorhck

El usuario root puede ver todas las tareas programadas de todos los usuarios del sistema.

Vemos que a cada tarea le precede un número, podremos borrar una tarea programada refiriéndonos a ese índice con el comando atrm o at -d

at -d 23


Este es un comando que he conocido recientemente y que parece muy útil para pequeñas tareas únicas no repetitivas que queremos ejecutar cuando queramos. ¿conocías y usabas ya este comando?

a silhouette of a person's head and shoulders, used as a default avatar

Novedades de Konsole para KDE Gear 21.08

Como estoy comentando estos días, estamos ante un nuevo lanzamiento masivo de actualizaciones de las aplicaciones KDE, en esta ocasión en pleno mes de agosto, con el que los desarrolladores de la Comunidad KDE siguen mostrando al mundo que tienen claro que su objetivo es ofrecer los mejor del Software Libre para todos de forma continua, constante y sin cambios revolucionarios. Y como siempre voy a dedicar algunos artículos a repasar las buenas nuevas, así que hoy toca hablar de las novedades de Konsole para KDE Gear 21.08, siguiendo la estela de las novedades de Dolphin y de Okular de días anteriores.

Novedades de Konsole para KDE Gear 21.08

Debo reconocer, y siempre lo comento en mis charlas, que solía tener miedo atroz a la consola. Y digo tenía porque cada vez la uso más y más, y le veo una utilidad brutal. Se ha convertido en una herramienta para hacer acciones rápidas y efectivas, a la vez que me permite donde hay errores en las aplicaciones.

Novedades de Konsole para KDE Gear 21.08

Además, si se utiliza terminal como Konsole, la cosa no hace más que mejorar gracias a las multitud de opciones que nos proporciona: pestañas, ventanas múltiples, vistas previa de diversos ficheros como las imágenes, búsqueda de frases directamente en el navegador web, opciones de personalización en cuanto a su aspecto, etc.

Y, como no puede ser de otra manera, Konsole no para de mejorar gracias al trabajo constante de los desarrolladores de la Comunidad KDE. De esta forma en este KDE Gear 21,08, esta aplicación nos ofrece las siguientes novedades (traducidas de ubunblog):

  • Vistas previas extendidas a las imágenes y a las carpetas: Al pasar por encima del nombre de un archivo de imagen en una lista en Konsole, aparecerá una miniatura que muestra una vista previa. Al pasar el ratón por encima de una carpeta, se mostrará una vista previa de su contenido. Esto es muy útil cuando queremos asegurarnos de que estamos copiando, moviendo o borrando lo correcto.
  • Asociación de aplicaciones a archivos: Al hacer clic en un archivo se abrirá en su aplicación correspondiente: una imagen se abrirá en un visor como Gwenview, un PDF se abrirá en un visor de documentos como Okular, o un archivo MP3 se abrirá en un reproductor de música como Elisa, por ejemplo.

Aprovecho para recordar que para este lanzamiento se ha realizado un vídeo-anuncio específicos para Konsole que ha sido recogido en el canal The KDE Community de Youtube.

Más información: KDE Gear 21.08