Skip to main content

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

MiTubo lanza su versión 1.0

Hace poco tiempo que hablé de MiTubo, una aplicación que reproduce vídeo de Youtube y otras plataformas de vídeo, así como de los canales RSS que le indiquemos. Pues bien, hoy me congratula anunciar que MiTubo lanza su versión 1.0, una versión que su creador considera ya lo suficientemente madura como para llevar el primer entero.

MiTubo lanza su versión 1.0

Según podemos leer en el anuncio de lanzamiento, el creador de la MiTubo, Alberto Mardegan, nos cuenta que «la elección de lanzar esta versión como «1.0» no significa que sea más estable que las anteriores; sólo significa que estoy bastante satisfecho con el conjunto de características, y que creo que el programa está listo para un uso más generalizado.»

De esta forma se deja constancia de la buena salud de la aplicación que nos viene con las siguientes novedades

  • Disponible para Windows.
  • Soporte básico para listas de reproducción remotas.
  • Nuevo cuadro de diálogo «Buscar actualizaciones».
  • Se ha añadido soporte para las traducciones.
  • Añadida la traducción al italiano, por supuesto.
  • Cambios cosméticos menores (como el uso de un símbolo unicode diferente para el botón «Atrás»).
  • Nueva página web para MiTubo.

¿Qué es Mitubo?

De la mano y mente de Alberto Mardegan nos llega MiTubo, una pequeña maravilla de aplicación, ideal para aquellas personas que no les gusta demasiado dejar su rastro en según qué servicios web o que quieran tener más ordenado su lista multimedia de contenido multimedia RSS.

MiTubo es una aplicación para reproducir o descargar contenidos multimedia de sitios web de streaming de vídeo, como Vimeo y YouTube.

Entre las características más destacadas de este servicio nos encontramos:

  • Reproducción de vídeo desde una URL web
  • Información de vídeo extraída a través de youtube-dl o yt-dlp (el cual se instala automáticamente según sea necesario)
  • Arrastrar y soltar URLs desde otras aplicaciones
  • Búsqueda: Yandex video y YouTube (vía Invidious API)
  • Listas de reproducción
  • Historial de visionado
  • Disponibilidad de la Lista de reproducción: «Ver más tarde»
  • Lista de reproducción «Seguir viendo», actualizada automáticamente
  • Selección de la calidad de reproducción

MiTubo lanza su versión 1.0

El programa está en pleno desarrollo, así que espera que esta lista se amplíe en el futuro con muchas más funcionalidades.

Por otra parte su instalación es de lo más sencillo ya que dispone de PPA para sistemas Ubuntu y un APPImage

La entrada MiTubo lanza su versión 1.0 se publicó primero en KDE Blog.

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

Cómo renombrar una rama o borrar una rama en Git

Vamos a ver en detalle cómo podemos renombrar o borrar una rama local o remota en Git

Una de las utilidades más potentes de Git es poder crear diferentes ramas de un proyecto en el que trabajar de manera distribuida y muchas personas a la vez.

Cuando eres tu la única persona que trabaja en un repositorio de Git, el uso de ramas puede no tener mucho sentido, aunque siempre es una herramienta interesante para probar nuevas funcionalidades sin tocar aquello que funcionaba.

Pero cuando son muchas las personas que colaborar, crear ramas se convierte en algo esencial. Git está pensado para que varias personas puedan trabajar a la vez e incluso en el mismo archivo.

Cada persona puede desarrollar su trabajo en diferentes ramas de trabajo y después unir los cambios en una rama principal. Es interesante crear ramas específicas para diferentes trabajos o propósitos, como corregir un problema o añadir una nueva funcionalidad.

Testeado que todo funciona bien, esa rama específica se incorporará a la rama principal con todas las mejoras hechas.

Vamos a ver algunas tareas básicas con ramas en Git como renombrar ramas o borrarlas .

Este artículo es una traducción/adaptación de un artículo en inglés escrito por Agil Antony y publicado en la web opensource.com bajo licencia CC-by-sa que puedes leer en este enlace:

Renombrar una rama usando Git

Cambiar el nombre de una rama es útil si le has puesto un nombre incorrecto o si quieres usar la misma rama para realizar otros cambios en diferentes errores o tareas después de fusionar el contenido en la rama principal.

Renombrar una rama local

1.- Renombrar una rama local, solo presente en nuestro equipo:

git branch -m <nombre_antiguo> <nombre_nuevo>

Como he dicho, esto solo renombra la rama de manera local, si la rama también existe en un repositorio remoto en un servidor, sigue estos pasos:

2.- Envía la nueva rama para crear una nueva rama remota en el servidor:

git push origin <nombre_nuevo>

3.- Elimina la rama antigua remota:

git push origin -d -f <nombre_antiguo>

Renombrar la rama actual

Cuando la rama que quieres renombrar es en la que estás actualmente, no es necesario especificar el nombre de la rama ya existente.

1.- Renombrar la rama actual:

git branch -m <nombre_nuevo>

2.- Enviar la nueva rama para crear la rama remota:

git push origin <nombre_nuevo>

3.- Eliminar la rama antigua remota:

git push origin -d -f <nombre_antiguo>

Eliminar una rama local y remota en Git

Para mantener una buena higiene del repositorio, a menudo se recomienda eliminar una rama después de asegurarse de haber fusionado el contenido en la rama principal.

Eliminar una rama local

Al eliminar una rama local solo se elimina la copia de esa rama que existe en tu sistema. Si la rama ya se envió al repositorio remoto, permanece disponible para todos los que estén trabajando con el repositorio.

1.- Primero nos ubicamos en la rama principal del repositorio (normalmente llamada main o master):

git checkout <nombre_rama_principal>

2.- Ahora mostramos un listado de todas las ramas del repositorio (locales y remotas):

git branch -a

3.- Identificamos la que queremos borrar y borramos nuestra rama local mediante:

git branch -d <nombre_de_la_rama>

Para eliminar todas las ramas locales y dejar solo la principal podemos hacerlo mediante:

git branch | grep -v main | xargs git branch -d

Eliminar una rama remota

Al eliminar una rama remota, esto solo elimina la copia de esa rama que existe en el servidor remoto. Si decides que no deseas, después de hacerlo que no deberías haberlo hecho, puedes volver a enviarla mediante git push al servidor remoto, por ejemplo GitHub, siempre que aún tengas tu copia local en tu equipo.

1.- Primero nos ubicamos en la rama principal del repositorio (normalmente llamada main o master):

git checkout <nombre_rama_principal>

2.- Ahora mostramos un listado de todas las ramas del repositorio (locales y remotas):

git branch -a

3.- Identificamos la que queremos borrar y borramos la rama remota mediante:

git push origin -d <nombre_de_la_rama>

Espero que el artículo resuelva alguna duda puntual con esto de la gestión de ramas en Git. Te recomiendo la lectura del artículo original que contiene información extra con otros temas sobre Git.

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

Toggle Hidden Files View – Service menu para KDE (21)

Hoy os presento el Service menu para KDE número 21 de esta serie y que puede ser bastante útil. Se trata de Toggle Hidden Files View que nos permite activar la vista de archivos ocultos en nuestro entorno de trabajo Plasma con un simple click.

Toggle Hidden Files View – Service menu para KDE (21)

Seguimos con uno de esos servicios complementarios para Dolphin, el explorador de archivos del escritorio Plasma de la Comunidad KDE, que seguro que vendrá bien para algunos usuarios, sobre todo a aquellos que acaban de aterrizar en este escritorio.

Se trata de Hidden Files View, de c-hartmann, que nos permite utilizar el botón derecho sobre una carpeta para ver sus archivos ocultos y así tener no tener que utilzar el atajo de teclado «crtl + H», algo que para muchos es muy cómodo pero que para otros no lo es tanto, y claro está, los entornos GNU/Linux se caracterizan por ser personalizables en extremo.

Toggle Hidden Files View - Service menu para KDE (21)

Y como siempre digo, si os gusta el pack de iconos podéis “pagarlo” de muchas formas en la 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 2017 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 Dolphin Service Menu?

La personalización de KDE y Plasma está más que demostrada y prueba de ello son los Dolphin Service Menu, que no son más que la posibilidad de disponer un menú auxiliar en el gestor de archivos Dophin o en Konqueror que se activa con el botón derecho del ratón.
Con ellos tendremos nuevas acciones como:

Y muchos más como hemos explicado en varias ocasiones en el blog. Puedes encontrar estos servicios se pueden encontrar en la sección Dolphin Service Menu en la Store de KDE y en esta categoría de este humilde blog, que poco a poco va creciendo para mostrar lo mucho que se puede personalizar el entorno de trabajo Plasma de KDE.

La entrada Toggle Hidden Files View – Service menu para KDE (21) se publicó primero en KDE Blog.

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

Actualizado Heroic Games Launcher, tu lanzador de juegos de la Epic Store para Linux

Hace un tiempo que presenté Heroic, tu lanzador Linux de juegos de la Epic Store, todo un descubrimiento que realicé el verano del 2021. Desde ese momento la aplicación está en mis sistemas así que me congratula anunciar que ha sido actualizad Heroic Games Launcher, el mejor síntoma que demuestra que el proyecto sigue vivo.

Actualizado Heroic Games Launcher, tu lanzador de juegos de la Epic Store para Linux

Segúnh leemos en Jugando en Linux, al césar lo que es del césar, recientemente a sido actualizado Heroic Games Launcher, que viene con las siguientes novedades:

Actualizado Heroic Games Launcher, tu lanzador de juegos de la Epic Store para Linux
  • Añadida la función de Temas, y viene con 5 integrados.
  • Capacidad de instalar versiones de Windows de un juego nativo en GNU/Linux.
  • La versión Appimage Heroic te avisará cuando haya una nueva versión estable disponible para instalar y la descargará en segundo plano.
  • Mejoras en la gestión de los juegos Favoritos.
  • Añadida una pantalla para ayudar a las personas con discapacidad visual.
  • Añadidas mejoras en la interfaz como la posibilidad de ordenar la lista de juegos.

¿Qué es Heroic?

Lo descubrí escuchando un podcast, creo que fue el 63 de Mancomún (y si no lo es, no dejéis de escucharlo que es igualmente interesante), donde hablaban de videojuegos en Linux con Leillo. En este aparecía un proyecto que tenía como objetivo hacer la función del lanzador de juegos de la Epic Store pero para los sistemas GNU/Linux.

En otras palabras, básicamente Heroic es un gestor y lanzador de juegos de la tienda de videojuegos digitales Epic Store, famosa por regalar un videojuego cada semana, lo cual ha conseguido crearme un síndrome de Diógenes, ya que todos los jueves del año reclamo un juego que no creo que juegue pero que se queda guardado en mi biblioteca digital.

Según sus desarrolladores:

Heroic es un lanzador de juegos de código abierto para Linux, Windows y MacOS (limitado a los juegos de Windows que utilizan Wine/Crossover). Ahora mismo soporta el lanzamiento de juegos desde la Epic Games Store usando Legendary, una alternativa CLI al Epic Games Launcher. Heroic está construido con tecnologías web como: TypeScript, React, NodeJS y Electron.

Tu lanzador Linux de juegos de la Epic Store: Heroic

De momento, ya llevo unos meses utilizándolo tanto para probar juegos, por tanto he conseguido ejecutar algunos juegos si apenas dificultad.

La entrada Actualizado Heroic Games Launcher, tu lanzador de juegos de la Epic Store para Linux se publicó primero en KDE Blog.

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

#openSUSE Tumbleweed revisión de la semana 20 de 2022

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 este enlace:

Esta semana se han publicado 6 snapshots. Solo una de las snapshots falló en los tests. El problema fue que YaST era incapaz de arrancar, lo que hace que falle en las demás pruebas.

Se corrigió el problema y las siguientes snapshots ya se comprobaron sin ninguna incidencia. Las 6 snapshots publicadas fueron: 0512, 0513, 0515, 0516, 0517 y 0518.

Los cambios más reseñables que trajeron a los repositorios fueron:

  • KDE Gear 22.04.1
  • KDE Frameworks 5.94.0
  • GStreamer 1.20.2
  • Linux kernel 5.17.7
  • PostgreSQL 14.3
  • bind 9.18.2
  • NetworkManager 1.38.0: NOTA: Los usuarios que actualizaron con la opción –no-recommends o con las recomendaciones inhabilitadas en la configuración de zypp pudieron sufrir un corte en la conexión wifi. Hay que instalar NetworkManager-wifi (ese paquete está bajo revisión en Bugzilla)

Y para próximas actualizaciones podremos encontrar:

  • Perl 5.34.1
  • Linux kernel 5.17.9
  • Mozilla Firefox 101
  • Mesa 22.1.0
  • Python 3.10 como intérprete principal de Python

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

——————————–

the avatar of Chun-Hung sakana Huang

Zabbix agent 自動註冊 與 openSUSE Leap 15.3 Zabbix agent 2 安裝小記

Zabbix agent 自動註冊 與 openSUSE Leap 15.3 Zabbix agent 2 安裝小記


OS: openSUSE Leap 15.3 in Azure

Zabbix: 6.0 docker image



上次的文章寫了在 GCP 上面架設 Zabbix Server with container + Cloud SQL + LB 方式


今天這一篇文章要來講 2 個部份

  • 在 Zabbix 上面設定自動註冊機制, 讓 Active 方式的 Zabbix Agent 自動註冊主機, 套用 Host Group 以及設定 Template.

  • openSUSE Leap Linux 安裝 zabbix agent 2 來對 Zabbix Server 進行註冊


首先來談談 Zabbix 的自動註冊機制

想法

  • 透過不同的 Metadata 關鍵字將主機註冊到

    • 不同的主機群組 / 套用不同的 Template


初步規劃, 來自不同的雲平台加到到不同的 Host Group

  • 也可以進一步將主機加到不同的專案 Host Group, 看看需求來規劃

  • 依據專案需求來套用要監控的 Template


首先來建立 Host group


登入 Zabbix 管理介面


點選 Configuration -- > Host groups

點選右上角的 Create host group



輸入 名稱

點選 Add


確認 Host group 已經建立



接下來設定自動註冊機制


點選 Configuration -- > Actions -- > Autoregistration actions 

點選右上角的 Create action 



輸入 名稱

點選 Add 


Type: 選取 Host metadata

Operator: Contains

Value: 輸入 AzureHost

點選 Add



  • 這邊就是設定自動註冊的條件, 就是 Zabbix Agent 來進行註冊的時候, 如果他的 Metadata 有包含 AzureHost 這個關鍵字, 就符合自動註冊的條件


確認已經設定完成



接下來設定自動註冊要套用的行為

點選 Operations



點選 Operations 的 Add


點選 Operation 的 Add host

點選 Add


觀察設定, 再次點選 Add


點選 Operation 的 Add to host group

點選 Host groups 的 Select 按鈕, 選取要加入的 Host group

點選 Add



觀察設定, 再次點選 Add



點選 Operation 的 Link to template

點選 Templates 的 Select 按鈕, 選取要套用的 Template

點選 Add


確認相關資訊

點選下方的 Add 完成設定



觀察相關設定


  • 可以套用多個 Host Group 或是 Template, 請依照實際的需求來設定


這樣就完成 Zabbix 的自動註冊機制


接下來我們來進行 openSUSE Zabbix 的安裝


參考官方網頁


登入 openSUSE Leap, 切換身份為 root


安裝 Zabbix 套件 

# rpm  -Uvh  --nosignature  https://repo.zabbix.com/zabbix/6.0/sles/15/x86_64/zabbix-release-6.0-1.sles15.noarch.rpm


  • 這個動作其實是將 Zabbix 的 repos 安裝進來


匯入 GPG Key

# zypper  --gpg-auto-import-keys  refresh  'Zabbix Official Repository'


Automatically importing the following key:


  Repository:       Zabbix Official Repository

  Key Fingerprint:  A184 8F53 52D0 22B9 471D 83D0 082A B56B A14F E591

  Key Name:         Zabbix LLC <packager@zabbix.com>

  Key Algorithm:    RSA 2048

  Key Created:      Fri Jul 15 05:39:09 2016

  Key Expires:      (does not expire)

  Subkey:           DF517F33E709712C 2016-07-15 [does not expire]

  Rpm Name:         gpg-pubkey-a14fe591-578876fd




    Note: A GPG pubkey is clearly identified by it's fingerprint. Do not rely the keys name. If you

    are not sure whether the presented key is authentic, ask the repository provider or check his

    web site. Many provider maintain a web page showing the fingerprints of the GPG keys they are

    using.

Retrieving repository 'Zabbix Official Repository' metadata .......................................................[done]

Building repository 'Zabbix Official Repository' cache ............................................................[done]

Specified repositories have been refreshed.



安裝 zabbix agent 2

# zypper  install  zabbix-agent2


接下來修改相關設定檔

# vi   /etc/zabbix/zabbix_agent2.conf


修改相關設定


ServerActive=YOUR_ZABBIX_IP

#Hostname=Zabbix server

HostnameItem=system.hostname

HostMetadata=AzureHost


  • 將ServerActive 設定為 Zabbix Server IP 或是 之前文章的 L4 LB IP

  • 註解 Hostname, 因為我們要使用 HostnameItem 來自動帶入主機名稱

  • 取消註解 HostnameItem, 他會帶入主機的名稱來登記

  • 取消註解 HostMetada, 帶入剛剛自動註冊設定的 Metadata 內容



觀察設定資訊

# egrep  -v  '^#|^$'  /etc/zabbix/zabbix_agent2.conf 


PidFile=/var/run/zabbix/zabbix_agent2.pid

LogFile=/var/log/zabbix/zabbix_agent2.log

LogFileSize=0

Server=127.0.0.1

ServerActive=YOUR_ZABBIX_IP

HostnameItem=system.hostname

HostMetadata=AzureHost

Include=/etc/zabbix/zabbix_agent2.d/*.conf

ControlSocket=/tmp/agent.sock

Include=./zabbix_agent2.d/plugins.d/*.conf


啟動 Zabbix Agent 2 並設定開機啟動


# systemctl start zabbix-agent2

# systemctl status zabbix-agent2

# systemctl enable zabbix-agent2


可從 log 查詢相關資訊

# tail  /var/log/zabbix/zabbix_agent2.log


接下來可以到 Zabbix 的管理介面觀察是否有被加入




同場加映: 使用 Zabbix Agent with container 方式如何自動註冊


參考之前的文章, 來設定 Zabbix Agent


作法如下


# docker run --name test-20220520-2 \

    -e ZBX_HOSTNAME="test-20220520-2" \

    -e ZBX_ACTIVESERVERS="YOUR_ZABBIX_IP" \

   -e ZBX_METADATA="AzureHost" \

    --privileged \

    --restart unless-stopped \

    -d zabbix/zabbix-agent2:alpine-6.0-latest


  • 這邊跟上篇文章的差異就是, 有使用 ZBX_METADATA 使用 metadata 配合自動註冊來加入


也可以使用 docker logs 指令來觀察相關資訊


# docker  logs  test-20220520-2


又向 Zabbix 前進一步


~ enjoy it


References



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

openSUSE Tumbleweed – Review of the week 2022/20

Dear Tumbleweed users and hackers,

This week, we released 6 snapshots. One snapshot hit reached the (negative) record of most failed tests in one run. The issue was simply that YaST was unable to start, which for rather obvious reasons impacts almost all tests. This could swiftly be corrected and the following snapshot already worked again. The 6 published snapshots were 0512, 0513, 0515, 0516, 0517, and 0518.

The main changes included in those snapshots are:

  • KDE Gear 22.04.1
  • KDE Frameworks 5.94.0
  • GStreamer 1.20.2
  • Linux kernel 5.17.7
  • PostgreSQL 14.3
  • bind 9.18.2
  • NetworkManager 1.38.0: NOTE: Users upgrading with –no-recommends or recommends disabled in the zypp config, might lose wifi connection. Install NetworkManager-wifi (that specific split is under review in Bugzilla)

The main changes being worked on in Stagings are currently:

  • Setting build flags to FORTIFY_SOURCE=3 (starting from snapshot 0519). No full rebuild will be done for this, the packages will get that feature on their next natural rebuild
  • Perl 5.34.1
  • Linux kernel 5.17.9
  • Mozilla Firefox 101
  • Mesa 22.1.0
  • Python 3.10 as the default interpreter

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

Lanzada la beta de Plasma 5.25, con mejoras táctiles

Una vez finalizado el periodo de mantenimiento de Plasma 5.24 es hora de ir preparando el lanzamiento de la siguiente versión. Es por ello que me complace compartir con vosotros que ha sido lanzada la beta de Plasma 5.25 la próxima versión del escritorio de la Comunidad KDE que nos llega con mejoras para los dispositivos táctiles, entre otras muchas pequeñas novedades. Es el momento de que esta beta sea probada y que se reporten los errores que se encuentren. ¡No pierdas la oportunidad de contribuir al desarrollo de Plasma!

Lanzada la beta de Plasma 5.25, con mejoras táctiles

Hoy 19 de mayo ha sido lanzada la beta de Plasma 5.25. En esta segunda versión liberada del 2022, no apta todavía para el usuario que busquen estabilidad, sigue centrado en que el escritorio de la Comunidad KDE siga mejorando en aspecto, funcionalidades y usabilidad, poniendo el foco en los dispositivos táctiles.

En palabras de sus desarrolladores:

Hoy os presentamos la versión previa de Plasma 5.25 del escritorio de la Comunidad KDE. Plasma 5.25 beta está destinado a los beta-testers, desarrolladores y cazadores de errores.

Para ayudar a los desarrolladores de KDE a corregir errores y solucionar problemas, os debéis instalar Plasma 5.25 beta y realizar las pruebas de las características listadas debajo. Por favor, informáis los errores a nuestra página de bugs.

¡Celebraremos un día de revisión de Plasma 5.25 beta el 26 de mayo (los detalles se publicarán en nuestras redes sociales) y podéis uniros a nosotros durante un día de busca de errores, triaje y resolución junto a los desarrolladores de Plasma!

La versión final de Plasma 5.25 estará disponible al público en general el 14 de junio.

Pruébalo y reporta errores

Lanzada la beta de Plasma 5.25, con mejoras táctiles
Konqi siempre se encuentra dispuesto, con nuestra ayuda, a buscar bugs y solucionarlos.

Todas las tareas dentro del mundo del Software Libre son importantes: desarrollar, traducir, empaquetar, diseñar, promocionar, etc. Pero hay una que se suele pasar por alto y de la que solo nos acordamos cuando las cosas no nos funcionan como debería: buscar errores.

Desde el blog te animo a que tú seas una de las personas responsables del éxito del nuevo lanzamiento de Plasma 5.25 de la Comunidad KDE. Para ello debes participar en la tarea de buscar y reportar errores, algo básico para que los desarrolladores los solucionen para que el despegue del escritorio esté bien pulido. Debéis pensar que en muchas ocasiones los errores existen porque no le han aparecido al grupo de desarrolladores ya que no se han dado las circunstancias para que lo hagan.

Para ello debes instalarte esta beta y comunicar los errores que salgan en bugs.kde.org, tal y como expliqué en su día en esta entrada del blog.

La entrada Lanzada la beta de Plasma 5.25, con mejoras táctiles se publicó primero en KDE Blog.

the avatar of Timo's openSUSE Posts

I will just quickly do a blog post...

I got ”inspired” by my writing of the previous blog post, and wrote in a channel about my experience some time ago. So why not also do a blog post about doing a blog post :)

So… I was planning to use GitLab’s Pages feature via my Hugo fork as usual to push it through. So like, concentrate on writing and do a publish, right, like in good old times? I did so, but all I got both locally and in remote pipeline was stuff like…

"ERROR  render of "page" failed: execute of template failed: template: _default/single.html:3:5: executing "_default/single.html" at <partial "head.html" .>: error calling partial: "/git/themes/beautifulhugo/layouts/partials/head.html:33:38": execute of template failed: template: partials/head.html:33:38: executing "partials/head.html" at <.URL>: can't evaluate field URL in type *hugolib.pageState"

Quite helpful, right, and points to the right direction to quickly resolve the issue?

With some googling it turned out everything has changed and stuff is now broken, and meanwhile the approach was re-done (in that and following commits) making everyone’s forks incompatible.

Well, I merged back modifications from there, and noticed there’s another problem, documented as “Generics were introduced in Go 1.18, and they broke some features in the newer versions of Hugo. For now, if you use hugo or hugo_extended versions 0.92.2 or later, you might encounter problems building the website.”. So I went ahead and hard-coded to ages old hugo version, although it then later was revealed it seems to still work for me with newer one as well. The issue is though mentioned in README, and probably leads many to think that’s a cause for their whatever problem, and the issue is still open.

Eventually I got everything working and figured out the settings which naturally had changed. Then I wanted my RSS to be like it was before, non-cut since I knew the cut version worked poorly in Planet.o.o. Naturally this meant I needed to fork the whole theme, declare it as a module of my own to not clash over the upstream, and add the one custom XML file I had hacked together from various sources for the previous theme. This was actually a very pleasant surprise in the end – I randomly guessed I’d paste the file under layouts in my theme fork, and it simply worked the same way it worked in the previous theme!

So problem solved! I think?

Now my emotions regarding Modern Technology were affected by the following, last part too even though it’s not related to Hugo. So, in the end I had everything setup and working, but my post didn’t appear to Planet.o.o. Turns out Planet was also broken, ignoring last 15% of blogs, and I needed to Ruby my way to figure out the workaround 😁

All good in the end, but it turns out there’s no substitute for stable platforms, good documentation and solid user experience even in the days of possibilities of doing git forks, using great languages like Go, having container running pipelines for testing etc - the error messages might be just as unhelpful as ever.

Meanwhile… I updated an association’s 10 year old PHP based Wordpress site (that I got access rights from my fellows who are non-techies) containing the most horrible custom hacks I have seen and no idea who created the site back then – and that site simply upgraded to very latest security patched Wordpress version with zero problems.


Postscriptum: I was not able to publish this blog post, since… you know, stuff had broken again.

panic: languages not configured
goroutine 1 [running]:
github.com/gohugoio/hugo/commands.(*commandeer).loadConfig(0xc0003cc1e0)
	/root/project/hugo/commands/commandeer.go:374 +0xb3c
github.com/gohugoio/hugo/commands.newCommandeer(0x0, 0x0, 0x0, 0xc0003cc0f0, {0x28740a0?, 0xc000010d38}, 0x0, {0x0, 0x0, 0x0})

Helpful error messages to rescue again! After staring at awe at the above for some time… remember the warning about Go generics and Hugo versions? Looks like it came into “fruition”, so it was time to hard-code the Hugo version down now. And you are now enjoying the result!

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

Vídeos de Richard Stallman en la primera Hackers Conference de 1984

La primera Hackers Conference se llevó a cabo en Sausalito, California, en noviembre de 1984. Los realizadores del documental Hackers: Wizards of the Electronic Age entrevistaron a Richard Stallman en el evento.

En el documental incluyeron solo algunas partes de las entrevistas, pero hay más material disponible. Las declaraciones de Stallman en la conferencia fueron más allá de lo que había escrito en el anuncio inicial de GNU el 27 de septiembre de 1983.

Fue en esta conferencia donde Richard Stallman declaró pública y explícitamente por primera vez la idea de que todo el software debe ser libre, y deja en claro que «libre» se refiere a la libertad, no al precio, al decir que el software debe ser de libre acceso para todos.

Esta fue probablemente la primera vez que hizo esa distinción al público.

Stallman continúa explicando por qué está mal aceptar un programa con la condición de no compartirlo con otros.

Entonces, ¿qué se puede decir de un negocio basado en el desarrollo de software no libre y en atraer a otros para que acepten esa condición? Tales cosas son malas para la sociedad y no deberían hacerse en absoluto. (En años posteriores usó una condena más fuerte).

Un extracto de lo que se puede ver en los vídeos:

“Mi proyecto es hacer que todo el software sea libre”.

Que puedes ver en este vídeo entre los segundos 0:00 y 0:03

“Si me ofrecen la oportunidad de usar una pieza de software siempre y cuando esté de acuerdo en no compartirlo con nadie, siento que estaría mal, me lastimaría espiritualmente estar de acuerdo. Así que no quiero que inviertan en software de su propiedad. Y no creo que se justifique nada para animarlos a invertir en software en propiedad. Pienso que el software realmente bueno ha sido creado por hackers informáticos que lo hacían porque les encantaba, porque era una juego de astucia lúdica, y eso continuará en cualquier caso. Creo que hay formas alternativas de hacer arreglos para que una cierta cantidad de dinero se destine a pagar los salarios de las personas, pagándoles para que dediquen su tiempo a escribir programas. Si la gente quiere que se escriban ciertos tipos de programas, pueden idear otras formas de organización (puedo sugerir algunas), pero lo importante es que hay muchas formas alternativas de hacer las cosas. Este ha sido elegido porque hace que las personas que invierten en empresas de software obtengan la mayor cantidad de ganancias de cualquiera de las formas disponibles”.

Enlace al vídeo.

“Imagínese que compras una casa y el sótano estuviera cerrado y solo el contratista original tuviera la llave. Si necesitas hacer algún cambio, reparar algo, tendrías que acudir a él, y si estaba demasiado ocupado haciendo otra cosa, te diría que te esperaras y te quedarías atascado. Estás a merced de esa persona y te oprimes y te resignas. Eso es lo que sucede cuando la organización que lo vende mantiene en secreto los planos de un programa de computadora. Esa es la forma habitual de hacer las cosas”.

Que puedes ver en este vídeo.

Los vídeos están en inglés, pero creo que son interesantes ver cómo comenzó el proyecto del software libre de mano de Richard Stallman.

Tienes toda la información y los enlaces a todos los vídeos en la página del proyecto GNU: