yq with openSUSE Leap 15.2 使用小記
yq with openSUSE Leap 15.2 使用小記
openSUSE Leap 15.4
yq 4.18
最近在練習 GKE 的時候接觸到 yq 這個軟體
現在的設定檔愈來愈多 YAML 格式的檔案, 之前會用 jq 來處理 YAML 檔的內容
今天來試試看 yq :)
yq 於 Github 介紹如下
a lightweight and portable command-line YAML, JSON and XML processor. yq uses jq like syntax but works with yaml files as well as json, xml, properties, csv and tsv. It doesn't yet support everything jq does - but it does support the most common operations and functions, and more is being added continuously.
Github https://github.com/mikefarah/yq
文件 https://mikefarah.gitbook.io/yq/
首先透過 zypper 來安裝 yq
# zypper install yq
Loading repository data...
Reading installed packages...
Resolving package dependencies...
The following 2 NEW packages are going to be installed:
yq yq-bash-completion
2 new packages to install.
Overall download size: 2.3 MiB. Already cached: 0 B. After the operation,
additional 8.2 MiB will be used.
Continue? [y/n/v/...? shows all options] (y): Y
確認安裝的版本, 目前裝的是 4.18.1 的版本
網路上有些教學文件, 可能是 3.x 的版本, 所以用法可能會不一樣
# rpm -q yq
yq-4.18.1-bp154.1.17.x86_64
測試的 yaml 內容如下
> cat test.yml
apples:
collection:
- name: Green
- name: Blue
favourite: Pink Lady
可以用 yq 來接 STDIN
> cat test.yml | yq
apples:
collection:
- name: Green
- name: Blue
favourite: Pink Lady
也可以直接用 yq
> yq test.yml
apples:
collection:
- name: Green
- name: Blue
favourite: Pink Lady
我目前其實用的相對簡單
讀取某個特定的 value
> yq '.apples.collection' test.yml
- name: Green
- name: Blue
> yq '.apples.favourite' test.yml
Pink Lady
實務上使用的時候是要在 yaml 裏面找出一個欄位然後更新裡面的 value
假設我們要把 favourite 的 value 換成 sakana
現看看置換的結果
> yq '.apples.favourite = "sakana" ' test.yml
apples:
collection:
- name: Green
- name: Blue
favourite: sakana
這個時候還沒有實際置換掉 favourtie 的 value
> cat test.yml
apples:
collection:
- name: Green
- name: Blue
favourite: Pink Lady
使用 -i ( --inplace ) 實際置換
-i, --inplace update the file inplace of first file given.
> yq -i '.apples.favourite = "sakana" ' test.yml
要替代的 value 用雙引號 " " 括起來
> cat test.yml
apples:
collection:
- name: Green
- name: Blue
favourite: sakana
也可以使用變數的方式來處理
> NAME=max yq -i '.apples.favourite = strenv(NAME) ' test.yml
確認檔案內容
> cat test.yml
apples:
collection:
- name: Green
- name: Blue
favourite: max
這邊要注意的是, 因為是使用 strenv(NAME) 如果你的變數沒有跟 yq 在同一行, 可能會取不到正確的值, 如果是之前就宣告的, 要確認 > env | grep NAME 有看到, 或是透過 > export NAME 來處理
另外一種方式
> NAME=ines
> echo $NAME
ines
> yq -i '.apples.favourite = " '$NAME' " ' test.yml
這邊要注意的是要替代的 value 用雙引號 " " 括起來, 然後變數使用單引號 ' ' 括起來
> cat test.yml
apples:
collection:
- name: Green
- name: Blue
favourite: ines
取代多欄位
> yq -i '.apples.favourite = "max" | .apples.collection[0].name = "red" ' test.yml
使用 Pipe 符號分隔, 這邊多指定 collection 的第1個, name 的key 內容為 red
> cat test.yml
apples:
collection:
- name: red
- name: Blue
favourite: max
最後來嘗試轉檔功能
> yq -o json test.yml
{
"apples": {
"collection": [
{
"name": "red"
},
{
"name": "Blue"
}
],
"favourite": "max"
}
}
其中我真的很喜歡 props 的輸出, 可以很清楚的列出架構
> yq -o props test.yml
apples.collection.0.name = red
apples.collection.1.name = Blue
apples.favourite = max
又多學了些東西
~ enjoy it
References
Visualiza el progreso del año con Year Progress Extended – Plasmoides de KDE (220)
Seguimos con los widgets para el escritorio de la Comunidad KDE. En esta ocasión os presento uno que te permite Visualiza el progreso del año. Se trata de Year Progress Extended, el Plasmoides de KDE número 220 de la serie que no para de crecer
Visualiza el progreso del año con Year Progress Extended – Plasmoides de KDE (220)
Como he comentado en otras ocasiones, de plasmoides tenemos de todo tipo funcionales, de configuración, de comportamiento, de decoración o, como no podía ser de otra forma, de información sobre nuestro sistema como puede ser el uso de disco duro, o de memoria RAM, la temperatura o la carga de uso de nuestras CPUs.
Así que espero que le deis la bienvenida a un plasmoide que cumple una función informativa que bien seguro será utlzada para otros menesteres decorativos. Se llama Year Progress Extended, una creación de Stepan-Zubkov que nos trae un sencill widget que nos permite ver el progreso. Por cierto, se trata de un fork de otro plasmoide llamado YearProgress de Refused.
Dado que es un plasmoide muy sencillo sus opciones de configuración también lo son: apenas puedes elegir la fuente, su tamaño y color.

Y como siempre digo, si os gusta el plasmoide podéis «pagarlo» de muchas formas en la mutante página de KDE Store, que estoy seguro que el desarrollador lo agradecerá: puntúale positivamente, hazle un comentario en la página o realiza una donación. Ayudar al desarrollo del Software Libre también se hace simplemente dando las gracias, ayuda mucho más de lo que os podéis imaginar, recordad la campaña I love Free Software Day de la Free Software Foundation donde se nos recordaba esta forma tan sencilla de colaborar con el gran proyecto del Software Libre y que en el blog dedicamos un artículo.
Más información: KDE Store
¿Qué son los plasmoides?
Para los no iniciados en el blog, quizás la palabra plasmoide le suene un poco rara pero no es mas que el nombre que reciben los widgets para el escritorio Plasma de KDE.
En otras palabras, los plasmoides no son más que pequeñas aplicaciones que puestas sobre el escritorio o sobre una de las barras de tareas del mismo aumentan las funcionalidades del mismo o simplemente lo decoran.
La entrada Visualiza el progreso del año con Year Progress Extended – Plasmoides de KDE (220) se publicó primero en KDE Blog.
Yo voy a Akademy-es 2023 de Málaga Opensouthcode Edition #akademyes
Como ya sabréis este año se celebra Akademy-es 2023 se celebrará en de forma presencial en Málaga, junto la Opensoutcode del 9 al 10 de junio, viernes y sábado. Ya se ha publicado el programa de charlas de Akademy-es 2023 y es hora de empezar a tope la promoción, así que quien no le guste esto del blog que empiece a buscar en alguno de los miles de artículos publicados antes alguno que le interese… Y empiezo compartiendo el banner de «Yo voy a Akademy-es 2023 de Málaga» realizado por mi buena amiga Rosanna y que evoca algunas de las buenas cosas de Málaga como son su sol, su playa y su buen ambiente.
Yo voy a Akademy-es 2023 de Málaga Opensouthcode Edition #akademyes
El 9 y 10 de junio se va a celebrar Akademy-es 2023 de Málaga organizado por KDE España y de forma paralela a otro gran evento como es Opensouthcode.
Este año se volvemos a tener un gran programa de ponencias que ha sido publicado hace poco, que van desde lo último en Plasma y en proyectos KDE pasando por temas de hardware, programación, ciberseguridad y privacidad.
Este año, a diferencia del anterior, mi situación familiar ha cambiado y he decidido (gracias a la comprensión de mi pareja) embarrcarme en un viaje de más de 10 horas para ir de mi localidad a la preciosa (o eso me han dicho) ciudad de Málaga, no solo para disfrutar de la Akademy-es sino también para experimentar el macroevento que es Opensouthcode.
Ya que voy de forma presencial, también realizaré una charla, contando como es habitual las bondades del escrtorio Plasma y algunas de sus aplicaciones y explicando porqué lo convierten, en mii humilde opinión, en el mejor escritorio que puedes tener en tu equipo.

Así que ya sabes, si tienes tiempo y ganas, te esperamos en Málaga porque yo voy a Akademy-es 2023 Opensouthcode edition ¿y tú?
¿Qué es Akademy-es?
Akademy-es (#akademyes, que es la etiqueta para las redes sociales) es evento más importante para los desarrolladores y simpatizantes de KDE, que se ha ido celebrando desde el 2006 con éxito creciente.
En general, las Akademy-es son el lugar adecuado para conocer a los desarrolladores, diseñadores, traductores, usuarios y empresas que mueven este gran proyecto.
En ellas se realizan ponencias, se presentan programas, se hace un poco de caja para los proyectos libres (camisetas, chapas, etc) pero sobre todo se conoce a gente muy interesante y se cargan baterías para el futuro.
Podéis repasar las anteriores ediciones en estas entradas del blog:
- Camino Akademy-es 2013: Las anteriores ediciones (I): 2006 – 2008
- Camino Akademy-es 2013: Las anteriores ediciones (II): 2009-2010
- Camino Akademy-es 2013: Las anteriores ediciones (III): 2011-2012
- Anteriores ediciones de Akademy-es (IV): 2013 y 2014
La entrada Yo voy a Akademy-es 2023 de Málaga Opensouthcode Edition #akademyes se publicó primero en KDE Blog.
La participación de KDE en Google Summer of Code 2023
Como es tradicional, aunque me salté el 2021, hoy quiero comentar las participación de KDE en Google Summer of Code 2023 (GSoC). A lo largo de muchos años, esta simbiosis entre la Comunidad KDE y el gigante multicolor ha sido muy provechosa para ambos, como hemos visto en muchas ocasiones en el blog, esperemos que éste también lo sea.
La participación de KDE en Google Summer of Code 2023
El equipo de KDE es uno de las Comunidades que siempre intentan colaborador con los proyectos sobre Software Libre que suele organizar cualquier compañía, y Google no es ninguna excepción.

Este año tenemos bastantes estudiantes mejorando sus habilidades al tiempo que mejoran las aplicaciones del ecosistema KDE. De esta forma según leemos en el blog de novedades de KDE, también conocido como el Dot, tenemos un articulo de Benson Muite que nos cuenta que los estudantes van a trabajar en mejorar aplicaciones como Kalendar, digiKam, Krita, KDE Eco, Tokodon, u Okular.
¿Qué es GSoC?

Vía Somos Libres he encontrado esta magnífica descripción del programa GSoC:
Google Summer of Code (GSoC) es un evento organizado por Google, cuyo objetivo es hacer participar a varios estudiantes en el desarrollo de determinados proyectos Open Source elegidos por Google. Cada grupo debe cumplir con una lista de tareas específicas que deben realizar y elegidas por el representante del proyecto, también conocido como mentor.
Los objetivos del GSoC son:
- Crear y liberar código Open Source para el beneficio de todos.
- Inspirar a los jóvenes desarrolladores a participar en el desarrollo de aplicaciones Open Source.
- Ayudar a los proyectos Open Source a identificar a nuevos y posibles desarrolladores.
- Dar a los estudiantes la oportunidad de trabajar en algo relacionado a sus estudios. Dar a los estudiantes una mayor exposición a situaciones del mundo real de desarrollo de software.
En definitiva, una excelente iniciativa que beneficia a todo el mundo.
La entrada La participación de KDE en Google Summer of Code 2023 se publicó primero en KDE Blog.
Creaks: The first game I bought for its music
Recently, I was looking for some new hybrid / crossover music, and someone recommended me to check out Hidden Orchestra. Listening to their album, “Creaks” was an instant love. As I learned later, it’s the music of a game. I’m not a gamer, but once seeing that it’s on sale on Humble Bundle I bought it immediately.
You can listen to the whole album here:
You can also find it on Bandcamp.
So, what is hybrid or crossover music? A real musician would probably have two distinct definitions with lots of fine details. To me, both mean combining classical and modern styles and instruments in a song. This can easily lead to disaster, but when done right, that’s my favorite style of music. There are some fantastic bands and composers here in Hungary who work in this genre, like After Crying, Fugato, Hidden Kingdom, or Julius Dobos (strictly in alphabetical order, as all of them are good).
I was curious to find more hybrid / crossover music, so I asked around. From the handful of suggestions, Hidden Orchestra was to the closest to what I was looking for. Luckily, much of their music is available on TIDAL, so I could listen to them in CD quality. And while I liked most of their albums, “Creaks” became my absolute favorite.
“Creaks” is now installed on my machine. I must admit, I did not play much with it. The music and graphics are beautiful, however I’m not a gamer. The only other game I bought recently is Civilization, as I played that a lot during my university years, so I bought it mostly out of nostalgia :-)
As a music fanatic, I find it fascinating that the music I love to listen to is also available as the soundtrack of a game. Previously, I had similar experiences with films. I watched many movies because I listened to their soundtrack first, and I became curious. But that’s another story, and I already wrote a blog about that almost two years ago: Watching movies belonging to soundtracks.
Finally a question and request to you:
- Did you ever buy a game because of its music?
- If you know any good hybrid / crossover music, let me know!
Reach out to me on Twitter or Mastodon! Links to my accounts are available at the top of the page.
Syslog-ng Python Packaging
In version 4 of syslog-ng, the role of Python became even more important. Previously, all parts of syslog-ng could be extended using Python code, but no actual Python code was provided with syslog-ng. Version 4.0 added a Kubernetes module implemented in Python, while version 4.2 added support for Hypr. But how can we ensure that all Python dependencies are met?
In my latest blog I describe the current situation and ask you for feedback!
https://www.syslog-ng.com/community/b/blog/posts/syslog-ng-python-packaging

syslog-ng logo
Primera actualización de KDE Gear 23.04
La Comunidad KDE es una comunidad responsable y no solo se preocupa en lanzar novedades sino que también en mejorarlas. Me complace presentar la primera actualización de KDE Gear 23.04 que apareció hace casi un mes. Más estabilidad, mejores traducciones y pequeñas mejoras para las aplicaciones de nuestro entornos de trabajo.
Primera actualización de KDE Gear 23.04
A pesar de lo que puedan pensar muchas personas, las aplicaciones no son perfectas. Entre las líneas de código se pueden colar errores de tipografía o que el usuario realice alguna opción que en un principio no estaba prevista por los desarrollador, por poner solo un par de ejemplos de imperfecciones.
Este no es un problema del Software Libre ya que el Software actual funciona de esta manera ya que no se piensa en él como un producto final que se encierra en una caja y se olvida. En la actualidad se sabe que el Software está vivo y sería estúpido ir guardando las mejoras sin dejarlas a disposición del gran público.
Con esto se gana en rapidez y evolución pero puede aumentar el número de errores (por norma general) leves, los cuales son subsanables con pequeñas actualizaciones.
La Comunidad KDE lo tiene claro: grandes lanzamientos cada cuatro meses y actualizaciones mensuales para subsanar errores.

Por ello me congratula compartir con vosotros la primera actualización de KDE Gear 22.12 que nos ofrece más de 120 errores resueltos 13entre aplicaciones, librerías y widgets, algo que mejora el rendimiento del sistema.
Aquí podéis encontrar la lista completa de cambios de KDE Gear 22.12.1, pero por poner unos cuantos ejemplos de los errores que sea han resuelto tenemos:
- kdenlive: Corregido el problema al abrir archivos de proyecto dañados.
- Skanpage: Ahora se puede desplazar la lista de idiomas OCR de la ventana de exportación del escaneo.
- Spectacle: Salir de Spectacle con la tecla Escape ya no afecta a las ventajas que hay por debajo
Más información: KDE Gear 23.04.1
La entrada Primera actualización de KDE Gear 23.04 se publicó primero en KDE Blog.
Tu a Abu Dabi y yo a Oxford (si puedo)
Dos jóvenes españoles, sin relación ninguna. Dos historias divergentes. Una marca su destino por su apellido sin más mérito y otra sigue su ruta por el conocimiento y el esfuerzo

Hoy quiero publicar en el blog un artículo un poco atípico. No será sobre los temas habituales del blog, si no sobre uno que he conocido recientemente y que me ha causado rabia e impotencia a partes iguales. Espero así dar difusión y aportar un poco.
El título del artículo quiere ser un guiño a la película de Disney de 1961 The parent tramp que en España se tradujo como «Tu a Bostón y yo a California».
En la película dos hermanas gemelas son separadas al nacer y se encuentran de casualidad años después, enterándose de todo el lío, dando pie a una comedia sensiblera. Pero no vengo a hablar de la película.
Vengo a escribir sobre esos dos destinos, que han elegido dos jóvenes de España, no relacionados entre sí para nada y con muy distintos motivos.
Uno de los jóvenes es el nieto del rey emérito de España, despedido con cajas destempladas de su reinado y refugiado en Abu Dabi, aunque ha dejado el chiringuito del reinado «atado y bien atado» a su hijo al que los súbditos españoles seguimos rindiendo pleitesía aunque muchos no queramos.
Tal nieto es el mismísimo Froilán de Marichalar (por recortar su extenso nombre. Es que la aristocracia tiene querencia por los nombres extensos y rancios… rancio abolengo quiero decir)
El tal Froilán, como digo, es nieto del antiguo Borbón y sobrino del actual Borbón que reina en España. Cuenta con 24 años, en los que con la tontuna de ser «nieto de», «hijo de», etc no ha dado palo al agua. Pero sí tiros al pie, al suyo concretamente… cosas que pasan en la nobleza.
Ha cursado estudios de los normalitos en las escuelas más elitistas, y en todo ese tiempo no creo que le haya aprovechado mucho lo estudiado. Pero sí ha tenido la oportunidad simplemente de ser quien es de poder estudiar en esas instituciones, patrias y extranjeras.
Matrículas en escuelas que cuestan 45.000 euros y estancias en sitios de su estatus. Todo sufragado por el sueldo asignado por su apellido. No hacen falta demostrar méritos, simplemente se le da dinero o lo cogen, pero después acusados de falta de memoria no les consta nada de lo ocurrido.
Los borbones son de memoria corta, así que no sé qué tal le irá a Abu Dabi, la suerte que ha encontrado trabajo en una petrolera, pero no rellenando depósitos a la petición de «lleno por favor» si no supongo que en un buen despacho.
Abu Dabi es el sitio donde los borbones van para alejarse de su pasado. Su abuelo inauguró tal tradición y su nieto quiere así alejarse de peleas con navajas y ambientes dudosos. Porque dentro del pijoterío también hay gente de mal caracter con quien el nieto parecía congeniar.
Si ese era el destino de Abu Dabi ¿quién irá a Oxford? Si tiene suerte, será Bruno Mompeán.
Así de primeras, su nombre seguro que no te suena. En una sociedad que premia la estulticia, son más conocidos los nombres de parásitos sociales que de personas con verdadero valor intrínseco.
Bruno Mompeán no tiene un linaje o apellido detrás que le asegure de cumplir lo que desee. Tiene detrás una familia que hará frente y lo apoyará en lo que pueda con los recursos de los que dispone.
Bruno Mompeán es un jóven de 16 años apasionado por las matemáticas, por las que siente pasión desde hace muchos años (a pesar de los pocos años que acumula en su contador).
Debido a sus dotes para las matemáticas y su pasión por aprender y desarrollar más ese conocimiento y esa ciencia de ciencias, quiso ser admitido en la prestigiosa universidad de Oxford y lo consiguió.
Pero esa alegría de ver cómo en un proceso tan estricto era admitido, también ocultaba la tristeza de afrontar la realidad de que dicha matrícula cuesta la friolera de 40.000€, más el gasto de vivir en el extranjero. Toda una fortuna que otros con apellidos dilapidan alegremente con menos resultados.
Por eso Bruno Mompeán ha decidido abrir una campaña de financiación en gofundme para recaudar ese dinero, o una parte, que le permita el deseo de matricularse en Oxford y continuar estudiando matemáticas a un nivel muy superior. Tiene la capacidad, pero no tiene los medios, otros los medios pero no la capacidad y otros como yo, ni una cosa ni la otra.
A la hora de escribir esto, tenía 427 donaciones que hacían un total de 14.700€ todavía lejos del objetivo, que tendría que cumplirse antes de octubre de 2023.
Una pena ver dinero público desperdiciado en forma de tarjetas opacas, o presupuestos para la (extensa) familia real que nada aportan, que podría invertirse para el fomento de una educación académica de calidad, por ejemplo becando a estudiantes con capacidades.
Espero que Bruno Mompeán consiga su meta, que tenga suerte y pueda expandir sus conocimientos matemáticos y la propia matemática en sí misma.
¿Pastilla roja o azul? ¿Abu Dabi u Oxford? ¿de qué lado te pones?

rpmlint: Google Summer of Code 2023
I'm glad to say that I'll participate again in the GSoC, as mentor. This year will be a bit different from the previous ones, because I'm not mentoring a GNOME project but a openSUSE project.
I started to work at SUSE the past year and with this new job I get involved in the openSUSE community and I started to contribute to rpmlint.
So this summer I'll be mentoring an intern and we'll work on improving the testing framework of the rpmlint project.
The rpmlint project is a command line tool to check rpm packages, the correctness of these kind of packages and warn the packagers about usual problems or good practices. It's widely used in all Linux distributions based on rpm, mainly SUSE and RedHat.
It is written in Python and uses pytest for testing the code. Right now there are a lot of .rpm binary packages, to check different functionality, but that way of testing makes a bit hard to write new tests and to maintain with changes. The idea of this GSoC project is to extend the testing framework of rpmlint to support an easy way of writting tests that doesn't require a real rpm, something that can mock what it's in the .rpm binary and try to replace some of the current binary tests with this new mock.
The selected intern is Afrid Hussain. He has done some initial work in the rpmlint project, solving some minor issues and we're now preparing the work to be done during the GSoC program. I'm sure that he will be able to achieve great things during these three months, so I'm looking forward to start to code and see how far can we go.
Publicado el programa de Opensouthcode 2023
Después de que ayer os presentara las charlas de Akademy-es 2023 es el momento de comentar que trambien ha sido publicado el programa de Opensouthcode 2023, un evento multisala lleno de grandes ponencias que se convertirá en un problema si queremos aprovechar al máximo este evento.
Publicado el programa de Opensouthcode 2023

El próximo 9 y 10 junio , en la activa ciudad de Málaga, se celebra la Opensouthcode 2023, un evento para promocionar y dar a conocer las tecnologías abiertas: software/hardware libre y opensource.
El evento se celebra en La Térmica (Avda. Los Guindos, ) y su programa puede tener muchos adjetivos menos el de discreto ya que nos esperan 5 salas con unas 10 charlas o talleres en cada una, desde las 10 de la mañana hasta las 20 horas, y eso solo para el viernes ya que el sábado tendremos otra jornada igual de intensa.
Es imposible comentar en esta entrada todas las charlas que nos esperan pero por dar una pincelada yo destaco charlas como:
- Desarrollo de videojuegos open-source con GodotEngine por Elena G Blanco
- Invasión Zerg: ¿Qué hacer cuando ganar es demasiado difícil? ¡Crea una IA y haz que la gane por ti! por Javier Iniesta Fernández
- InnerSource. Cómo la cultura Open Source puede «infectar” la cultura corporativa por José Antonio Suárez Guerrero
- La revolución open source en IA: StableDiffusion, LLaMA, SAM, Dolly y más por Adrian Tineo
- GIMP, Inkscape y Darktable: Iniciación al diseño gráfico y retoque fotográfico con software libre por Jorge Hidalgo
- Wikidata: primera aproximación pragmática por Ismael Olea
- Disaster Recovery & Linux Management with DRLM por Didac Oliveira
- EU Policy topics the whole Free Software community should know about por Lina Ceballos
Y eso sin contar, que en la sala Canillas tendrás toda la programación de Akademy-es.

Más información: Opensouthcode 2023 de Málaga | Opensouthcode Full Schedule
La entrada Publicado el programa de Opensouthcode 2023 se publicó primero en KDE Blog.