Welcome to Planet openSUSE

This is a feed aggregator that collects what openSUSE contributors are writing in their respective blogs.

To have your blog added to this aggregator, please read the instructions.


Thursday
18 April, 2019


face

Trois clichés openSUSE Tumbleweed de qualité ont été publiés depuis jeudi dernier avec des paquets mis à jour pour Curl, Salt, FFmpeg et plus.

Mozilla Firefox a publié une version mineure de la version 66.0.3 dans le dernier instantané Tumbleweed 20190415. Le navigateur a résolu certains problèmes de performances avec certains jeux HTML5 et fourni un plug-in de recherche Baidu destiné aux utilisateurs chinois et à l’espace Internet chinois. Curl 7.64.1, l'outil de ligne de commande permettant de transférer des données à l'aide de divers protocoles, a corrigé de nombreux bogues et ajouté des bibliothèques supplémentaires pour vérifier la prise en charge du protocole LDAP (Lightweight Directory Access Protocol). La mise à jour de libvirt 5.2.0 a supprimé quelques correctifs et ajouté plusieurs nouvelles fonctionnalités, telles que les capacités de pool de stockage, pour obtenir une liste de sortie XML plus détaillée pour l'interface de programmation d'application (API) virConnectGetStoragePoolCapabilites. Libvirt a également activé la sélection automatique du microprogramme pour l'émulateur open source QEMU. Le tout nouveau paquet salt 2019.2.0 de Tumbleweed a amélioré l'automatisation du réseau et étendu la prise en charge de divers systèmes d'exploitation via le réseau, ainsi que de fonctionnalités de manipulation de la configuration ou d'exécution de commandes opérationnelles. Salt a également ajouté l'exécution de playbooks à la version 2019.2.0 avec la fonction playbookset inclut un module pour les states ansible, qui peut être utilisé sur un hôte ciblé pour exécuter des playbooks, ou utilisé dans un orchestrateur de states. Selon l'évaluateur de Tumbleweed, l’instantané avait une cote de 95 au moment de la publication de cet article.

Le cliché 20190412 a obtenu une note de 94 et a apporté une mise à jour à Ceph qui a ajouté une option distincte permettant de configurer un port SSL (Secure Sockets Layer). Le paquet cifs-utils 6.9, qui fait partie du projet Samba, a ajouté des correctifs pour Azure et supprimé plusieurs bogues. Le paquet libssh2_org 1.8.2 a rectifié un correctif mal appliqué qui cassait sa version précédente. Quelques paquets YaST comportaient des mises à jour, comme le paquet yast2-storage-ng 4.2.5, qui permet un nouveau format pour importer/exporter des lecteurs NFS (Network File System).

L’instantané 20190411 a démarré la semaine et affichait un score modérément stable de 89. Cet instantané apportait le noyau Linux 5.0.7 et offrait un potentiel d’atténuation pour un appel système ptrace pour PowerPC. Il y avait quelques corrections de bugs pour les codecs, les filtres et les formats dans la mise à jour 4.1.3 de ffmpeg. Le connecteur JavaScript pour GNOME, gjs 1.56.0, contenaient des modifications très importantes par rapport à la version précédente 1.54.3 de Tumbleweed. Les changelog préc


face

Trois clichés openSUSE Tumbleweed de qualité ont été publiés depuis jeudi dernier avec des paquets mis à jour pour Curl, Salt, FFmpeg et plus.

Mozilla Firefox a publié une version mineure de la version 66.0.3 dans le dernier instantané Tumbleweed 20190415. Le navigateur a résolu certains problèmes de performances avec certains jeux HTML5 et fourni un plug-in de recherche Baidu destiné aux utilisateurs chinois et à l’espace Internet chinois.
Curl 7.64.1, l'outil de ligne de commande


face
ansible with openSUSE Leap 15 container image 建立小記

OS: openSUSE Leap 15


最近換了 MacAir 13 Mojave 10.14.4


嘗試在 Mac Mojave 上面裝 ansible[azure], 但是經歷了太多版本相容性的問題
-- > 放棄, 決定使用 openSUSE Leap 15 container 來解決


以下是我的 Dockerfile


# openSUSE Leap 15 with ansible, azure-cli
FROM opensuse/leap:15


# Author
# MAINTAINER 已經棄用, 之後要使用 LABEL 方式
LABEL maintainer="sakana@cycu.org.tw"


# Install python2-pip, upgrade pip, ansible[azure]
RUN zypper install -y python2-pip && \
 pip2 install --upgrade pip && \
 pip2 install ansible[azure]


# Install wget, download azure_rm.py, set permission
RUN zypper install -y wget && \
 wget  https://raw.githubusercontent.com/ansible/ansible/devel/contrib/inventory/azure_rm.py && \
 chmod a+x azure_rm.py


# Install azure-cli
RUN zypper install -y curl && \
 rpm --import https://packages.microsoft.com/keys/microsoft.asc && \
 zypper addrepo --name 'Azure CLI' --check https://packages.microsoft.com/yumrepos/azure-cli azure-cli && \
 zypper install --from azure-cli -y azure-cli


#install vim
RUN zypper install -y vim

使用 docker build 指令將他打包成 image 並上傳到 docker hub

要使用的方式很簡單, 預設的 Tag 為 latest
下載 docker image
> docker  pull  sakana/ansible_opensuse15


這個 image 包含
  • ansible
  • azure-cli
  • azure SDK
  • azure_rm.py ( Dynamic inventory 使用 )
    • 但是最近 Azure 改變驗證的方式, 所以目前 azure_rm.py 可能有點問題, 還需要觀察還有實驗
      • 原本驗證檔案是看 ~/.azure/credentials
      • 現在可能會去看 ~/.azure/azureProfile.json


使用方式很簡單


> docker  run  -it  sakana/ansible_opensuse15  /bin/bash


在 container 內執行  az login 指令
# az  login


  • 會被要求開啟瀏覽器進行帳號驗證
  • 驗證成功會自動建立 ~/.azure 目錄以及相關驗證檔案


接下來就可以開始使用 ansible 指令進行管理
日後計畫把  ansible with aws 或是 ansible with gcp 放進來


~ enjoy it


Reference:


face

Apa itu transactional updates?

A “transactional update” is a kind of update that:

  • is atomic – the update does not influence your running system
  • can be rolled back – if the upgrade fails or if the newer software version is not compatible with your infrastructure, you can quickly restore the situation as it was before the upgrade.

(https://github.com/openSUSE/transactional-update)

Dengan kata lain, transactional updates adalah pemutakhiran secara atomic yang tidak akan langsung menyentuh sistem yang sedang berjalan. Transactional update juga dapat di-roll back/kembalikan ke situasi sebelum pemutakhiran apabila setelah pemutakhiran ternyata ada galat.

Pengguna openSUSE tentu sudah akrab dengan kondisi nomor dua, yaitu dengan menggunakan partisi Btrfs dengan snapshot dan snapper. Perbedaannya, dengan transactional updates, pemutakhiran tidak langsung menyentuh sistem yang sedang berjalan, untuk itu diperlukan nyala ulang (reboot), sementara Btrfs dengan snapshot dan snapper tradisional, pemutakhiran menyentuh sistem yang sedang berjalan sehingga tidak diperlukan nyala ulang (reboot). Pada dasarnya, transactional updates ini juga menggunakan Btrfs dengan snapshot dan snapper, hanya saja bersifat atomic. Sebenarnya, transactional updates ini dirancang untuk server. Namun, kali ini penulis mencoba memasang openSUSE dengan destop GNOME pada opsi server dengan transactional updates. Pada cuplikan layar, contoh yang digunakan adalah openSUSE Leap 15.0.

Langkah pertama, boot live DVD/USB instalasi sampai muncul tampilan berikut. Pilih opsi Transactional Server. Lalu tekan next dan jalankan installer sampai pada langkah kedua.

Langkah kedua, ketika sudah sampai pada tampilan berikut, klik Software.

Langkah ketiga, akan muncul tampilan seperti berikut. Beri centang pada GNOME Desktop Environment.

Langkah keempat, pastikan GNOME Desktop Environment sudah tercentang. Pada contoh ini Wayland dan X11 ikut dipasang.

Langkah kelima, pastikan pada Patterns, terdapat GNOME Desktop Environment. Selesaikan proses instalasi.

Setelah instalasi berhasil, pastikan pengguna dapat masuk melalui GDM dan destop GNOME muncul serta dapat digunakan sebagaimana mestinya.

Karena kita menggunakan sistem transactional updates, maka kita tidak dapat menggunakan perintah zypper untuk memasang/menghapus paket dan memutakhirkannya. Salah satu perintah zypper yang masih dapat digunakan adalah zypper ref.  Perintah yang digunakan adalah transactional-update sebagai pengganti zypper. Berikut ini adalah padanan perintah yang dapat digunakan pada sistem transactional updates.

Tradisional Transactional Updates
Memutakhirkan sistem pada openSUSE Leap zypper up transactional-update up
Memutakhirkan sistem pada openSUSE Tumbleweed zypper dup transactional-update dup
Memasang Paket zypper in

Contoh: zypper in vim

transactional-update pkg in

Contoh: transactional-update pkg in vim

Menghapus Paket zypper rm

Contoh: zypper in rm

transactional-update pkg rm

Contoh: transactional-update pkg vim

Setelah menjalankan perintah pada transactional updates, jangan lupa untuk menyalakan ulang (reboot) sistem. Apabila setelah menyalakan ulang (reboot) terdapat galat, pengguna dapat kembali pada snapshot sebelumnya dengan perintah transactional-update rollback.

Berikut ini merupakan contoh cuplikan layar ketika menjalankan perintah transactional-update up.

Sistem transactional updates memiliki pemutakhiran otomatis yang akan berjalan dan menyalakan ulang sistem pada pukul 03.30 dan 05.00 apabila pemutakhiran sebelumnya tertunda.

  • Pemutakhiran otomatis
    • Untuk pemutakhiran otomatis, dapat disetel dengan menggunakan perintah systemctl enable --now transactional-update.timer
    • Untuk mengecek statusnya, dapat menggunakan perintah systemctl status transactional-update.timer
    • Untuk menonaktifkan pemutakhiran otomatis, dapat disetel dengan menggunakan perintah systemctl stop transactional-update.timer

face

Three quality openSUSE Tumbleweed snapshot were released since last Thursday with updated packages for Curl, Salt, FFmpeg and more.

Mozilla Firefox had a minor release of version 66.0.3 in the latest Tumbleweed 20190415 snapshot. The browser addressed some performance issues with some HTML5 games and provided a Baidu search plugin for Chinese users and China’s Internet space. The command-line tool for transferring data using various protocols, curl 7.64.1 fixed many bugs and added additional libraries to check for Lightweight Directory Access Protocol (LDAP) support. The update of libvirt 5.2.0 dropped a few patches and added several new features like Storage Pool Capabilities to get a more detailed list XML output for the virConnectGetStoragePoolCapabilites Application Programming Interface (API) and libvirt also enabled firmware autoselection for the open-source emulator QEMU. The newest salt 2019.2.0 package in Tumbleweed enhanced network automation and broadened support for a variety of network operating systems, and features for configuration manipulation or operational command execution. Salt also  added running playbooks to the 2019.2.0 release with the playbooks function and it includes an ansible playbooks state module, which can be used on a targeted host to run ansible playbooks, or used in an orchestration state runner. The snapshot was trending at a 95 rating at the time of publishing this article, according to the Tumbleweed snapshot reviewer.

Snapshot 20190412 was trending at a 94 and that package brought an update to Ceph that added a separate option to config a Secure Sockets Layer (SSL) port. The cifs-utils 6.9 package, which is part of the Samba Project, added fixes for Azure and removed several patches. The libssh2_org 1.8.2 package fixed a misapplied patch that broke its previous version. A few YaST packages had some updates like the yast2-storage-ng 4.2.5 package that allows for a new format for importing/exporting Network File System (NFS) drives.

The 20190411 snapshot started off the week and it posted a moderately stable rating of 89. This snapshot brought the 5.0.7 Linux Kernel and it offered up a mitigation potential for a ptrace system call for PowerPC. There were some bug fixes for codecs, filters and formats in the ffmpeg 4.1.3 update. The JavaScript Bindings for GNOME, gjs 1.56.0, had a significantly large changelog recording info from the previous 1.54.3 version that was in Tumbleweed. The previous logs identified a GNU Compiler Collection 9 bug and added some ESLint rules. The new version was a stable version bump. The python-kiwi  9.17.35 package fixed regressions for the kiwi-repart dracut module. The wget 1.20.3 package fixed the buffer overflow vulnerability found in Common Vulnerabilities and Exposures (CVE)-2019-5953. Text editor vim 8.1.1137 fixed several bugs including a Python test that didn’t wipe out hidden buffer and a space in number column that was on wrong side with ‘rightleft’ set.


face

Como ya sabréis si seguís el blog, el próximo 20 de abril a las las 21:00 (UTC) tenemos una nueva edición del Maratón Linuxero, que en esta ocasión lleva por sobrenombre “edición Flisol 2019”. Así que esta semana me he dedicado a promocionarlos todo lo que pueda. Ayer hablé del programa y hoy toca compartir con vosotros la información disponible del concurso y patrocinadores del Maratón linuxero edición Flisol 2019, dos aspectos importantes de este evento.

Concurso y patrocinadores del Maratón linuxero edición Flisol 2019

Concurso y patrocinadores del Maratón linuxeroUn aspecto importante del Maratón Linuxero es que intenta reunir a todas los protagonistas del Software Libre: usuarios, oyentes, despistados, artistas multimedias, administradores web, programadores, promotores, empresarios, activistas, diseñadores, etc.

Y para ello busca un lugar para cada uno de ellos de forma variada: participando activamente en el podcast, diseñando banners, preparando el sistema de emisión, etc.

Eso si, para la participación de los oyentes y para echar la caña a los despistados el Maratón Linuxero ha preparado un concurso donde se sortearán cuatro packs de bienes relacionados con el Software Libre donados por algunas de las empresas que patrocinan el evento.

Para participar debéis  mandar un audio de pocos segundos contestando ¿Porqué es importante organizar un FLISoL? al correo maratonlinuxero@disroot.org.

Y hablando de patrocinadores, vale la pena dedicarles unas líneas a cada uno de ellos:

  • Neodigit: Servidor de recursos web muy vinculado al Software Libre.
  • Slimbook: Ensamblador de dispositivos 100% compatibles con las distribuciones GNU/Linux (portátiles, miniPcs, torres, AllinOne, etc).
  • VantPC: Otra empresa de venta de ordenadores con GNU/Linux.
  • LibreBit: Soluciones de software en gestión empresarial con Software Libre.
  • Linux Español: Sitio web facilita a los usuarios del mismo el acceso a información y servicios prestados por Tecnologic Team a aquellas personas u organizaciones interesadas en los mismos.

¿Qué es el Maratón Linuxero?

Maratón Linuxero 1.1

El Maratón Linuxero es un proyecto creado por podcasters y oyentes de GNU/Linux que quieren realizar un evento en directo a través de aplicaciones y servicios de software libre.

Su origen fue ver si era posible sacar adelante emisiones en directo como otras organizaciones han hecho, pero sin recurrir a sistemas privativos, o por lo menos que sean afines al Software Libre o de código abierto.

No solo colaboran podcasters, sino también administradores de sistemas, desarrolladores, diseñadores y artistas que consiguieron ofrecer servicios como web, blog o canales de comunicación, carteles, promos y vídeos del proyecto.

 

¿Qué es Flisol?

Aunque muchos de vosotros lo sabréis, nunca está de más explicar la cosas. FLISoL (Festival Latinoamericano de Instalación de Software Libre), es uno de los evento de difusión de Software Libre más grande en Latinoamérica y está dirigido a todo tipo de público: estudiantes, académicos, empresarios, trabajadores, funcionarios públicos, entusiastas y aun personas


face

The last Code & Coffee meetup I wrote about dates more than a year probably now. I admit I’ve become a lazy blogger. Yesterday, I attended the MSCC Code & Coffee meetup at Mugg & Bean. It reminded me of the good old days of being a frequent meetup attendee and all those geek talks that happened around those Mugg & Bean tables with long hours drinking coffee. JoKi and Mary Jane were already there along with little Liam when I arrived.


Wednesday
17 April, 2019


face

A apenas tres días del evento, ya tenemos el Programa del Maratón Linuxero edición Flisol 2019, el cual seguro que nos proporcionará unas buenas horas de conocimiento compartido y proyectos libres.

Programa del Maratón linuxero edición Flisol 2019

Como ya comenté hace unos días, el próximo 20 de abril, a partir de las 23 horas española peninsular arranca una nueva edición del Maratón Linuxero, una edición que estará ligada a otro gran evento libre: Flisol 2019.

En esta ocasión, los miembros del Maratón Linuxero han querido participar en Flisol 2019 realizando una edición especial de su podcast en la que nos ofrecerán  3 horas  de contenido.

Programa del Maratón linuxero edición Flisol 2019

En las dos primeras horas del Maratón Linuxero se contará con la presencia de siete invitados, todos ellos organizadores del FLISOL en distintos países, que no solo hablarán del evento sino que nos contarán detalles de los proyectos libres en los que participan.

La última hora estará dedicada a la tradicional mesa redonda del equipo de Maratón Linuxero en la que sus organizadores nos deleitarán con su sabiduría.

Por cierto, en esta edición también se realizarán sorteos: cuatro packs (uno por cada patrocinador- Neodigit; Slimbook; VantPC; LibreBit; Linux Español), al mandar un audio de pocos segundos contestando ¿Porqué es importante organizar un FLISoL? al correo maratonlinuxero@disroot.org.

¿Qué es el Maratón Linuxero?

Maratón Linuxero 1.1

El Maratón Linuxero es un proyecto creado por podcasters y oyentes de GNU/Linux que quieren realizar un evento en directo a través de aplicaciones y servicios de software libre.

Su origen fue ver si era posible sacar adelante emisiones en directo como otras organizaciones han hecho, pero sin recurrir a sistemas privativos, o por lo menos que sean afines al Software Libre o de código abierto.

No solo colaboran podcasters, sino también administradores de sistemas, desarrolladores, diseñadores y artistas que consiguieron ofrecer servicios como web, blog o canales de comunicación, carteles, promos y vídeos del proyecto.

 

¿Qué es Flisol?

Aunque muchos de vosotros lo sabréis, nunca está de más explicar la cosas. FLISoL (Festival Latinoamericano de Instalación de Software Libre), es uno de los evento de difusión de Software Libre más grande en Latinoamérica y está dirigido a todo tipo de público: estudiantes, académicos, empresarios, trabajadores, funcionarios públicos, entusiastas y aun personas que no poseen mucho conocimiento informático.

Es decir, es un evento donde prevalece la difusión del Conocimiento Libre antes que sus aspectos técnicos, es por tanto la perfecta puerta de entrada a nuevos simpatizantes del Software Libre.


face

Veamos cómo utilizar los atajos de teclado de Vi también en nuestra terminal de GNU/Linux.

Hace unos días desde el blog uGeek (de interesante lectura y escucha en general) escribió un artículo sobre los atajos de teclado para utilizar en la consola de GNU/Linux.

Tal como decía el artículo, esos atajos de teclado están heredados de Emacs, por tanto a quienes utilicen ese editor de texto les serán familiares.

Pero como bien sabéis he decidido darle una oportunidad a Vim y ando dando mis primeros pasos en este editor de texto, y me pregunté si habría alguna forma de tener los atajos de teclado de Vim en mi consola de GNU/Linux (ya sea Bash, zsh, etc) ¡Y la hay!

Casi sin pretenderlo, voy compilando unas pequeñas guías o una serie de tutoriales sobre lo que voy aprendiendo en Vim y publicándolo en el blog.

Hasta ahora hemos aprendido cosas como:

En este caso se trata de poder utilizar los modos de comandos e insertar de Vim dentro de nuestra consola ya sea con Bash o cualquier otra opción.

Para ello debemos editar el archivo .bashrc con las configuraciones personales de nuestro usuario en bash y añadir la siguiente línea:

set -o vi

Igual para zsh o ksh en su archivo de configuración correspondiente. Guardamos los cambios y salimos del editor y de la terminal y volvemos a entrar.

De manera predeterminada estará en modo de insertar texto, por lo que podremos escribir nuestro comando sin problema. Pero si pulsamos Esc entraremos en el modo de comandos de Vim y estarán en la punta de nuestros dedos todas sus opciones y atajos de teclado.

Aquí tienes una pequeña “chuleta” de algunos comandos. (Ando preparando alguna cosa al respecto…). Si eres un geek de Vim, ahora lo puedes tener también disponible en tu línea de comandos!


face

While there are some users who run syslog-ng as a stand-alone application, the main strength of syslog-ng is central log collection. In this case the central syslog-ng instance is called the server, while the instances sending log messages to the central server are called the clients. There is a (somewhat lesser known) third type of instance called the relay, too. The relay collects log messages via the network and forwards them to one or more remote destinations after processing (but without writing them onto the disk for storage).A relay can be used for many different use cases. We will discuss a few typical examples below.

Note that the syslog-ng application has an open source edition (OSE) and a premium edition (PE). Most of the information below applies to both editions. Some features are only available in syslog-ng PE and some scenarios need additional licenses when implemented using syslog-ng PE.

UDP-only source devices

Typically, most network devices send log messages over UDP only. Even though some of them support TCP-based logging, vendors recommend not to use it (as in many cases the TCP logging implementation is extremely buggy). UDP does not guarantee that all UDP packets will be delivered, so it is a weak point of the system. To ensure at least a best effort level of reliability, it is recommended to deploy a relay on the network, closeto these source devices. With the least possible (and, more importantly, the most reliable) hops between the source and the relay, the risk of losing UDP packets can be minimized. Once the packet arrives at the relay, we can ensure the messages are delivered to the central server in a reliable manner, based on TCP/TLS and ALTP (syslog-ng PE only: Advanced Log Transfer Protocol).

Too many source devices

Depending on the hardware and configuration, an average syslog-ng instance can usually handle the following number of concurrent connections:

1. If the maximum message rate is lower than 200,000 messages per second:

◦ maximum ca. 5,000 TCP connections

◦ maximum ca. 1,000 TLS connections

◦ maximum ca. 1,000 ALTP connections

2. If the message rate is higher than 200,000 messages per second, always contact One Identity.

As a result, if you have more source devices, it is required to deploy a relay machine at least per 5,000 sources and batch up all the logs into a single TCP connection that connects the relay to the server. If TLS or ALTP is used, relays should be deployed per 1,000 source devices.

Collecting logs from remote sites (especially over public WAN)

It is quite common that companies need to collect log messages from geographically remote sites (sometimes in global distance), and sometimes over public WAN. In this case it is recommended to install a relay nodeper each remote site at least. The relay can be the last outgoing hop for all the messages of the remote site, which has several benefits:

  • Maintenance: you only need to change the configuration of the


Tuesday
16 April, 2019


face

Traditionally, GObject implementations in C are mutable: you instantiate a GObject and then change its state via method calls. Sometimes this is expected and desired; a GtkCheckButton widget certainly can change its internal state from pressed to not pressed, for example.

Other times, objects are mutable while they are being "assembled" or "configured", and only yield a final immutable result until later. This is the case for RsvgHandle from librsvg.

Please bear with me while I write about the history of the RsvgHandle API and why it ended up with different ways of doing the same thing.

The traditional RsvgHandle API

The final purpose of an RsvgHandle is to represent an SVG document loaded in memory. Once it is loaded, the SVG document does not change, as librsvg does not support animation or creating/removing SVG elements; it is a static renderer.

However, before an RsvgHandle achieves its immutable state, it has to be loaded first. Loading can be done in two ways:

  • The historical/deprecated way, using the rsvg_handle_write() and rsvg_handle_close() APIs. Plenty of code in GNOME used this write/close idiom before GLib got a good abstraction for streams; you can see another example in GdkPixbufLoader. The idea is that applications do this:
file = open a file...;
handle = rsvg_handle_new ();

while (file has more data) {
   rsvg_handle_write(handle, a bit of data);
}

rsvg_handle_close (handle);

// now the handle is fully loaded and immutable

rsvg_handle_render (handle, ...);
file = g_file_new_for_path ("/foo/bar.svg");
stream = g_file_read (file, ...);
handle = rsvg_handle_new ();

rsvg_handle_read_stream_sync (handle, stream, ...);

// now the handle is fully loaded and immutable

rsvg_handle_render (handle, ...);

A bit of history

Let's consider a few of RsvgHandle's functions.

Constructors:

  • rsvg_handle_new()
  • rsvg_handle_new_with_flags()

Configure the handle for loading:

  • rsvg_handle_set_base_uri()
  • rsvg_handle_set_base_gfile()

Deprecated loading API:

  • rsvg_handle_write()
  • rsvg_handle_close()

Streaming API:

  • rsvg_handle_read_stream_sync()

When librsvg first acquired the concept of an RsvgHandle, it just had rsvg_handle_new() with no arguments. About 9 years later, it got rsvg_handle_new_with_flags() to allow more options, but it took another 2 years to actually add some usable flags — the first one was to configure the parsing limits in the underlying calls to libxml2.

About 3 years after RsvgHandle appeared, it got rsvg_handle_set_base_uri() to configure the "base URI" against which relative references in the SVG document get resolved. For example, if you are reading /foo/bar.svg and it contains an element like <image xlink:ref="smiley.png"/>, then librsvg needs to be able to produce the path /foo/smiley.png and that is done relative to the base URI. (The base URI is implicit when reading from a specific SVG file, but it needs to be provided when reading from an arbitrary stream that may not even come from a file.)

Initially RsvgHandle had the write/close APIs, and 8 years later it got the streaming functions once GIO appeared. Eventually the streaming API would be the preferred one, instead of just being a convenience for


face

Me encanta cuando la Comunidad responde a una necesidad de un simple usuario como yo. Os presento Plasma Customization Saver, un plasmoide que nos permite guardar nuestra configuración Plasma, y con el que llegamos a los 112 plasmoides presentados en el blog.

Plasma Customization Saver, guardando tu configuración Plasma – Plasmoides de KDE (112)

Recientemente, al conmemorar la llegada a los 50 temas Look and Feel de KDE Store, comenté que echaba a faltar una funcionalidad: la posibilidad de guardar el aspecto actual del escritorio Plasma para poder así realizar experimentos con la posibilidad de volver al aspecto inicial por si no nos gustan dichos cambios.

Al parecer mis palabras no cayeron en saco roto y un lector llamado Alberto Pajuelo Montes, se puso manos a la obra y en pocos días ya tenía creado un plasmoide que lo hacía. Increíble.

Por tanto, me complace compartir con todos vosotros Plasma Customization Saver, el palsmoide 112 de la colección, que nos permite guardar la configuración básica que tenemos en nuestro escritorio Plasma.

Además, permite tener varios perfiles determinados con lo que podemos tener guardas varios configuraciones de escritorio y así poder disponer de ellas cuando nos plazca.

Creo que es de recibo que le agradezca públicamente su creación. ¡Muchas gracias Alberto! ¡No sabes lo feliz que me has hecho!

Y como muestra de su funcionamiento nada mejor que con un vídeo que él mismo ha creado.

Y como siempre digo, si os gusta el plasmoide podéis “pagarlo” de muchas formas en la nueva 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 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.


face

openSUSE Tumbleweed es una distribución “Rolling Release” en desarrollo continuo. 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 de inicio del mes de abril en openSUSE Tumbleweed.

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

Las ISO’s son instalables, pero si ya estás disfrutando de openSUSE Tumbleweed en tu equipo, simplemente deberás actualizarlo mediante este comando aunque desde hace poco un simple zypper dup hace ya todo el trabajo.

Durante la semana 15 de este año de 2019 se publicaron de nuevo 3 “snapshots” (0408, 0409 y 0411). Como siempre entre otras muchas novedades, podemos encontrar:

  • Apache 2.4.39
  • KDE Plasma 5.15.4
  • Linux kernel 5.0.6 y 5.0.7
  • Cambio del tema de Plymouth a bgrt

Y mientras otras cosas están esperando para ser publicadas en los repositorios:

  • linux-glibc-devel 5.0
  • Python2 2.7.16 & Python3 3.7.3
  • Wireshark 3.0
  • CMake 3.14.x
  • Qt 5.13
  • KDE Applications 19.04

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

——————————–


Monday
15 April, 2019


face

La comunidad de KDE está mejorando aspectos básicos de distintas partes del escritorio y aplicaciones para pulir errores y mejorar las aplicaciones. Este es un repaso semanal a algunas de esas tareas.

Como ya pudiste leer en otro artículo del blog, parte de la comunidad de KDE está inmersa en la ardua y extensa tarea de pulir y mejorar ciertos aspectos del escritorio Plasma y de las aplicaciones de KDE.

Puedes leer todos los artículos que he traducido en este enlace:

Una semana más Nate Graham nos trae a su blog las novedades en cuanto a mejoras, correcciones de pequeños y grandes errores y nuevas opciones:

En este artículo traduzco, una vez más, el artículo de Nate Graham, para difundir lo que nos traerá KDE. Empezamos…

Hay un buen montón de cosas sobres las que leer, sin más preámbulos empecemos a ver cuales son esas novedades:

Nuevas características

 

 

Corrección de errores y mejoras de funcionamiento

 

 


Sunday
14 April, 2019


face
Ansible ec2_key module with openSUSE 小記

OS: openSUSE Leap 15
Ansible: 2.7.8

Requirements ( on host that executes module )
  • boto
  • boto3
  • Python >= 2.6

首先來查詢 boto 是否有安裝

# zypper  search  boto

Loading repository data...
Reading installed packages...

S | Name                          | Summary       | Type
--+-------------------------------+----------------------------------------+--------
i | google-roboto-fonts           | Mechanical yet friendly fonts       | package
 | google-roboto-mono-fonts      | Google Roboto Mono fonts         | package
 | python-gcs-oauth2-boto-plugin | GCE Storage plugin for OAuth2          | package
i | python2-boto                  | Amazon Web Services Library       | package
 | python2-boto3                 | Amazon Web Services Library         | package
 | python2-botocore              | Python interface for AWS         | package
 | python3-boto                  | Amazon Web Services Library         | package
 | python3-boto3                 | Amazon Web Services Library         | package


安裝 boto3
# pip  install  boto3

Requirement already satisfied: six>=1.5 in /usr/lib/python3.6/site-packages (from python-dateutil<3.0.0,>=2.1; python_version >= "2.7"->botocore<1.13.0,>=1.12.130->boto3) (1.11.0)
awscli 1.16.135 has requirement botocore==1.12.125, but you'll have botocore 1.12.130 which is incompatible.
Installing collected packages: botocore, boto3
 Found existing installation: botocore 1.12.125
   Uninstalling botocore-1.12.125:
     Successfully uninstalled botocore-1.12.125
Successfully installed boto3-1.9.130 botocore-1.12.130

有出現 awscli 1.16.135 要求 botocore 版本是 1.12.125 但是我們裝了 1.12.130
暫時先觀察一下

參考官方文件

連接的寫法像下列的方式
- hosts: localhost
 connection: local
 gather_facts: False

驗證的部份, 方式有兩種
  • 以 export 變數的方式
    • export AWS_ACCESS_KEY_ID='AK123'
    • export AWS_SECRET_ACCESS_KEY='abc123'
  • 存放在 playbook 中, 例如是 vars_file , 但是我覺得我會比較喜歡使用 vars_prompt , 但是缺點就是每個 ec2 moudle 都要寫 aws_access_key 與 aws_secret_key 這兩個參數
    • aws_access_key: "{{aws_access_key_id}}"
    • aws_secret_key: "{{aws_secret_access_key}}"




來建立一個測試用的 yaml 檔案
> vi   aws_create_ec2_key.yml

---
# AWS 相關測試
# edit by sakana 2019/4/14
# 官方建議的方式
- hosts: localhost
 connection: local
 gather_facts: False
#

 vars_prompt:
#要求使用者輸入 access key id 與 secret access key
   - name: "aws_access_key_id"
     prompt: "Enter aws_access_key_id"
     private: no

   - name: "aws_secret_access_key"
     prompt: "Enter aws_secret_access_key"
     private: no

   - name: "aws_region"
     prompt: "Enter AWS Region"
     private: no
     default: us-east-2

#詢問 key name
   - name: "ec2_key_name"
     prompt: "Enter ec2 key name"
     private: no


 tasks:
   - name: Create EC2 key pair
     ec2_key:
       aws_access_key: "{{ aws_access_key_id }}"
       aws_secret_key: "{{ aws_secret_access_key }}"
       name: "{{ ec2_key_name }}"
       region: "{{ aws_region }}"
       state: present
#使用 register 之後來將 key 匯出  
     register: ec2_key_result

# 使用copy module 來將傳回的資訊複製成檔案, 並設定權限
   - name: Save private key
     copy:
       content: "{{ ec2_key_result.key.private_key }}"
       dest: "~/{{ec2_key_name}}.pem"
       mode: 0400




參考網路上的作法, 使用 register 搭配 copy module 來儲存 key 並設定 permission

來進行實際測試

> ansible-playbook  aws_create_ec2_key.yml

[WARNING]: provided hosts list is empty, only localhost is available. Note that the implicit localhost does not match 'all'

Enter aws_access_key_id:  輸入YOUR_ACCESS_KEY_ID
Enter aws_secret_access_key: 輸入YOUR_SECRET_ACCESS_KEY
Enter AWS Region [us-east-2]:
Enter ec2 key name: test20190414

PLAY [localhost] **********************************************************************************************************************************

TASK [Create EC2 key pair] ************************************************************************************************************************
changed: [localhost]

TASK [Save private key] ***************************************************************************************************************************
changed: [localhost]

PLAY RECAP ****************************************************************************************************************************************
localhost                  : ok=2 changed=2 unreachable=0    failed=0  

觀察相關資訊
按照我們 playbook 內的設定, 存放到使用者家目錄
> ls  -l   ~/test20190414.pem
-r-------- 1 sakana users 1670  4月 14 11:42 /home/sakana/test20190414.pem

也可以到 Manage Console 觀察


接下來用同樣的方式測試移除 EC2 Key pair

> vi   aws_remove_ec2_key.yml

---
# AWS 相關測試
# edit by sakana 2019/4/14
# 官方建議的方式
- hosts: localhost
 connection: local
 gather_facts: False
#

 vars_prompt:
#要求使用者輸入 access key id 與 secret access key
   - name: "aws_access_key_id"
     prompt: "Enter aws_access_key_id"
     private: no

   - name: "aws_secret_access_key"
     prompt: "Enter aws_secret_access_key"
     private: no

   - name: "aws_region"
     prompt: "Enter AWS Region"
     private: no
     default: us-east-2

#詢問 key name
   - name: "ec2_key_name"
     prompt: "Enter ec2 key name"
     private: no


 tasks:
   - name: Create EC2 key pair
     ec2_key:
       aws_access_key: "{{ aws_access_key_id }}"
       aws_secret_key: "{{ aws_secret_access_key }}"
       name: "{{ ec2_key_name }}"
       region: "{{ aws_region }}"
       state: absent

主要就是 state 換成 absent

> ansible-playbook  aws_remove_ec2_key.yml

[WARNING]: provided hosts list

Saturday
13 April, 2019


face

Il y a eu un écart plus important cette semaine, car le support openSUSE Kubic (anciennement openSUSE Tumbleweed Kubic) a été restructuré et renommé.
Réunir tous les éléments nécessaires pour maintenir la qualité et ne pas casser des objets en mouvement impliquait de ralentir un peu le rythme des builds. Néanmoins, nous avons publié trois instantanés cette semaine (0408, 0409 et 0411), contenant les modifications suivantes?:


  • Apache 2.4.39
  • KDE Plasma 5.15.4

Friday
12 April, 2019


Michael Meeks: 2019-04-12 Friday

19:41 UTCmember

face
  • To the Office in the morning for an interview; good to catch up with some of the team there. Back, lunch during TDF BoD call. Mail bits. Poked at some profiling bits.

face

Dear Tumbleweed users and hackers,

We had a larger gap this week, while the openSUSE Kubic medium (formerly openSUSE Tumbleweed Kubic) was restructured and renamed. Getting all the bits and pieces together to uphold the quality and not break things on the move meant to slow down a little bit. Nevertheless, we published three snapshots this week (0408, 0409 and 0411), containing those changes:

  • Apache 2.4.39
  • KDE Plasma 5.15.4
  • Linux kernel 5.0.6 & 5.0.7
  • Switch of the Plymouth theme to bgrt

Thinks currently being forged in staging areas:

  • linux-glibc-devel 5.0
  • Python2 2.7.16 & Python3 3.7.3
  • Wireshark 3.0: libvirt fails to build against it
  • CMake 3.14.x: libzypp fix ready, zypper pending
  • Qt 5.13
  • KDE Applications 19.04

 


face

GNUEterTics es una distribución de GNU/Linux totalmente libre y orientada para la gestión de emisoras de radio comunitarias.

Distribuciones de GNU/Linux hay muchas y para muchos propósitos. Pero si tienes una radio comunitaria hay una especialmente enfocada para esas tareas con el software que necesitas para hacer que todo vaya sobre ruedas: GNUEterTics.

No soy muy dado a dar noticias de lanzamientos de distribuciones de GNU/Linux que no utilizo. Pero en el caso de GNUEterTics hago una excepción en el blog.

Primero porque me apetece, y segundo porque acaban de publicar esta misma semana de abril de 2019 una nueva versión de su distribución totalmente libre. La que viene con el nombre GNUEterTics 10.0 Kuntur.

Esta distribución de GNU/Linux está desarrollada por una pequeña comunidad que lo realiza desde LatinoAmérica encabezado por Javier Obregón, y que está pensada para ser una herramienta libre y gratuita para pequeñas emisoras de radio locales y comunitarias.

Es una herramienta empoderadora (palabro muy de moda últimamente). Primero porque está desarrollada con software totalmente libre y segundo porque al ser gratuita permite que pequeños proyectos puedan desarrollarse sin necesidad de tener que echar mano de opciones privativas, pagar y lidiar con licencias, etc.

GNUEterTics es un sistema operativos libre 100% y ya viene de manera predeterminada con el software necesario a la hora de gestionar una pequeña radio comunitaria. Con software probado, estable, funcional y seguro. Y pensada para no consumir muchos recursos de nuestros equipos.

En el aspecto técnico, GNUEterTics es un sistema GNU con un kernel Linux libre, basada en Devuan, y personalizada en muchos aspectos. Tanto simplemente estéticos, como más profundos. Incorporando software 100% libre de manera predeterminada y también disponible desde sus repositorios.

Viene con un entorno de escritorio MATE, kernel Linux libre 4.9, un montón de software ya incluido y muy útil (Audacity, Ardour, Butt, Jack Mixer, Mixxx, etc) LibreOffice, navegador web Firefox con toques para hacerlo más privado y seguro, cliente de correo Thunderbird, y muchas otras herramientas.

En el aspecto estético, esta nueva versión 10.0 Kuntur, viene con un diseño muy atractivos, con toques oscuros en el escritorio MATE y una colección de iconos interesantes.

Una muy buena opción y herramienta de trabajo si eres una persona que estás interesada en poner en marcha una radio local o si quieres “liberar” tu radio ya existente de herramientas obsoletas, privativas u obtenidas sin las licencias necesarias.

Tienes más información en las webs del proyecto, donde además tienes la opción de poder contactar con los desarrolladores y la comunidad de este pequeño, pero interesante proyecto:


Thursday
11 April, 2019


Michael Meeks: 2019-04-11 Thursday

21:00 UTCmember

face
  • Mail, built TTT using ffmpeg command-line tools like:
    ffmpeg -i "2019-04-10 18-38-22.flv" -ss 0.00 -t 337.79 -c copy a.flv resulting in a much smaller output; hey ho.
  • Appalled by the usability of Apple Enterprise App development: requiring a different Apple id and thus making switching accounts (via needing two factor authentication) a matter of major upheaval on one of your devices each time the account switches; shame.
  • Disappointed to see the growing intolerance of people who hold different opinions: fundamentally sounds like the very definition of bigotry. There is a twisted irony in some modern mis-usage of the word bigot to mean: "person whose views I don't like, and thus whom I can't tolerate". An interesting trend; some suggest that postmodern liberals cannot comprehend the idea that one could simultaneously reject a belief and accept the person who holds it. Perhaps that is a consequence of the polarized ideological echo-chambers people we are all drawn to, and can easily inhabit these days. Does diversity of viewpoint necessarily imply acrimonious conflict: hopefully not - no matter how politically 'useful' such conflicts are presumed to be to whomever stoke them.
  • Sync with Muhammet, out for dinner with J. in the evening - lovely.

face

Nous sommes très heureux d'annoncer que l'installation de l'environnement de bureau léger Xfce dans openSUSE Tumbleweed est maintenant plus rapide et sans tracas !

Cliquez sur l'image pour l'afficher en taille normale

Nom</div>
        </div>
      </div>
      
      <hr class=
face

El escritorio ligero Xfce de nuevo está como opción en el instalador de openSUSE Tumbleweed y también con imágen ISO Live propia.

La comunidad que mantiene el escritorio Xfce en la distribución de GNU/Linux openSUSE Tumbleweed ha anunciado que de nuevo este escritorio es una opción que se puede escoger durante el proceso de instalación de la distro, tanto en el DVD de instalación como en el instalador por red.

Además de eso, también han comentado que de nuevo hay imágenes ISO en formato “Live” con Xfce como entorno de escritorio para arquitecturas x86_64 y i586.

Hace tiempo que no escribía alguna noticia en el blog sobre openSUSE, la distribución de GNU/Linux que utilizo desde hace años, y siempre es buena cosa ver que hay novedades que resultarán interesantes a más de una persona.

El equipo de personas que se encarga de mantener Xfce en openSUSE ha estado trabajando para conseguir que el entorno de escritorio sea merecedor de estar como opción en el instalador de openSUSE, junto con Plasma y Gnome.

Además de actualizar e incluir un buen conjunto de aplicaciones, para hacer que la experiencia de uso de uso de Xfce “de serie” en openSUSE sea del agrado del usuario que la escoja como opción de uso.

Además en el Open Build Service (OBS) hay un nuevo proyecto que recoge la rama de desarrollo principal de Xfce de su repositorio Git y la compila para openSUSE. De esta manera los encargados de los paquetes de Xfce para openSUSE pueden probar y corregir errores antes de las publicaciones oficiales.

También han desplegado imágenes en formato “Live”, para poder probarlas en tu equipo sin necesidad de instalar nada, o llevarlas en tu USB como sistema portable y persistente. Para disfrutar de openSUSE en cualquier equipo con tus configuraciones, y opciones.

Si el escritorio Xfce es tu preferido y quieres ayudar a la comunidad de openSUSE, puedes colaborar empaquetando software, probando, reportando errores, escribiendo documentación, etc.

Tienes más información en el anuncio oficial:


Wednesday
10 April, 2019


Michael Meeks: 2019-04-10 Wednesday

21:00 UTCmember

face
  • Mail chew, S&M call, couple of reference calls. Band Practice. Recorded an internal tea-time-training in pieces and tries to edit it together. OpenShot is determined to either blow up a 100Mb screencast to a 1Gb one or to debauch the quality; shame.

face

We are very pleased to announce that installing the lightweight and slim desktop environment Xfce in openSUSE Tumbleweed just got faster and hassle-free!

Along with GNOME and KDE Plasma, Xfce can now be conveniently selected from the installer’s main screen, as your desktop environment from both DVD installer and net installer. All this is combined with a carefully picked selection of packages that rounds off our offered system to get you started quickly and easily.

Our Xfce team has invested a lot of work in the past months to optimize the “cute mouse” by focusing on the desktop and the underlying rolling release of Tumbleweed. It features applications that better suit the desktop, as well as new modern themes that make the default experience refreshing and enjoyable.

Finally, there is a relatively new project in the Open Build Service (OBS), which builds automatically and daily development versions of Xfce software from Xfce Git Master branch. Through this repository, openSUSE Xfce packagers and contributors are able to test commits and can spot bugs before official releases.
Xfce users are welcome to test it and contribute to it at X11:xfce:rat. [1]

Going live

Xfce live images are finally here! The live images give you a close look at the Xfce experience in openSUSE, which allows you to test and preview the system features. Ultimately, if you decide so, you can install the system directly from the live environment.

One of the most important steps for us was the recording of the image in openQA and the associated automation of tests. We are happy to announce that the Xfce environment and all official related ISO images are tested in openQA, which helps us provide quality and stability to the systems. [2] [3] [4]

Live images of openSUSE Tumbleweed Xfce are available in both i586 and x86_64 architectures, and are easily accessible on https://software.opensuse.org along with all the other Live images offered by the openSUSE Project [5].
If you end up using those images on USB stick, they will be persistent, so they are also an excellent way to get a portable and bootable drive with all your settings waiting for you the way you set them up yourself.

Willing to join?

Being small but passionate, openSUSE’s Xfce team is always happy to welcome helping hands for testing, bug reporting, package maintaining, documentation and other tasks. But it’s not limited to technical areas! We are constantly looking for ideas and creative developments to discuss, elaborate and implement. openSUSE is a distribution living from its users and their contributions. If you are happily using openSUSE and want to take part in further development, here’s yet another good point to get started. For some more details, check our wiki page [6] or just feel free to reach out to us!

About Xfce

Xfce is a lightweight desktop environment for UNIX-like operating systems. It aims to be fast and low on system resources, while still being visually appealing


face

Este tutorial demostra como instalar o Lamp no openSUSE instalado os pacotes um a um, caso você queira você pode utilizar o comando abaixo para instalar o LAMP via pattern.

zypper in -t pattern lamp_server

Mas afinal, o que é o LAMP?

Lamp é uma combinação de softwares livres e de código aberto. O acrônimo LAMP refere-se as primeiras letras de:

  • Linux (sistema operacional);
  • Apache (servidor web);
  • MariaDB ou MySQL (software de banco de dados) e;
  • PHP (linguagem de programação) ou Python.

Neste tutorial veremos como instalar o Apache, MariaDB e PHP e também o phpMyAdmin na distribuição openSUSE em suas versões Leap e Tumbleweed.

Etapa 1: Atualize o openSUSE.

  • Antes de instalar qualquer software, é sempre uma boa ideia atualizar o repositório e os pacotes de software.

sudo zypper update

Etapa 2: instalar o servidor da Web Apache.

  • Instale o Apache no openSUSE usando o seguinte comando:

sudo zypper install apache2

  • Por padrão, o Apache não será iniciado automaticamente após a instalação. Você pode iniciá-lo com:

sudo systemctl start apache2

  • E ative o início automático no momento da inicialização com:

sudo systemctl enable apache2

  • Verifique seu status:

statusctl status apache2

  • Verifique a versão do Apache:

sudo httpd -v
Server version: Apache/2.4.23 (Linux/SUSE)
Server built: 2016-09-13 13:41:45.000000000 +0000

  • Agora crie o arquivo index.html sob a raiz do documento:

sudo nano /srv/www/htdocs/index.html

  • Coloque o seguinte texto no arquivo:

<html>
<body>
<h1> It works!</h1>
</body>
</html>

Em seu navegador digite 127.0.0.1 ou localhost na barra de endereços para verificar se esta a instalação está correta.

  • Por padrão, o firewall SuSE proíbe o acesso público à porta 80. Para permitir o acesso público, você precisa editar as configurações do firewall.

sudo nano /etc/sysconfig/SuSEfirewall2

  • Encontre a seguinte linha:

FW_CONFIGURATIONS_EXT=””

  • Altere-a para o texto abaixo para permitir o acesso público à porta 80.

FW_CONFIGURATIONS_EXT=”apache2″

Salve e feche o arquivo. Em seguida, reinicie o SuSEfirewall:

sudo systemctl restart SuSEfirewall2

  • Finalmente, precisamos fazer o wwwrun (usuário do Apache) como o dono do DocumentRoot.

sudo chown wwwrun /srv/www/htdocs/ -R

Passo 3: Instale o MariaDB.

  • Instale o servidor e cliente MariaDB no openSUSE Leap usando o seguinte comando:

sudo zypper install mariadb mariadb-client mariadb-tools

  • Por padrão, o MariaDB não será iniciado automaticamente após a instalação. Podemos começar com:

sudo systemctl start mysql

  • Ative o início automático no momento da inicialização com:

sudo systemctl enable mysql

  • Verifique seu status:

systemctl status mysql

  • Verifique a versão do MariaDB:

mysql –version
sql Ver 15.1 Distrib 10.0.28-MariaDB, for Linux (x86_64) using readline 5.1

  • Agora qualquer usuário no sistema pode logar no MariaDB como root com o seguinte comando:

mysql -u root

  • Para restringir o acesso, precisamos definir uma senha para o usuário root do MariaDB. Execute

face

With the upcoming releases of openSUSE Leap 15.1 and SLE-15-SP1 approaching, the YaST Team at SUSE is investing a quite significant time in polishing details and fixing small (and not so small) bugs. But fortunately, that still leaves us enough time to also work in our mid term goals.

So welcome to our usual selection of selected bug-fixes (listing them all would be boring) and exciting new stuff. This edition includes:

  • A nice howto for reporting Snapper bugs
  • Tons of fixes for right-to-left languages like Arabic
  • Some adjustments and improvements in the storage area
  • A sneak peak into the future of the yast2-network code
  • Some contributor-oriented content: like our new pull request templates and revamped Docker images for testing

Snapper Bug Reporting Howto

During this sprint we fixed a bug that was causing Snapper to crash under very specific circumstances. The scenario was quite unusual so we had to request quite some information from the reporter of the bug to confirm what was happening. As a nice consequence, in addition to having now a more robust Snapper (one bug killed) you can also enjoy a new page in the openSUSE wiki listing the information you should attach to Bugzilla if you find a bug in Snapper while using (open)SUSE.

Which is also a nice excuse to remind you about the equivalent "Report a YaST bug" page.

YaST around the globe… in all directions

Many of the YaST users and of our blog readers are not native English speakers that surely appreciate the fact that YaST and (open)SUSE in general can be used in several languages. But have you ever thought about the implications of developing a multi-language software? Sure? In all of them? 😉

Human languages are so diverse as the human cultures and there are many details to take into account, from the usage of different alphabets to the various ways of dealing with genre or number (in English the words have just one form for singular and another for plural, but that can be way more complex in other languages). In today’s issue we will take a look to one of our favorite translation issues – languages that are written from right to left, like Arabic.

The installer summary in Arabic

Dealing with text that is a mixture of Latin and Arabic script is complex and sometimes we have to deal with interesting bugs. Fortunately we have our own weapon to fight those bugs. If in Star Wars they have protocol droids like C3PO, in the YaST team we have Martin Vidner, which is the closer human equivalent.

He fixed all the reported bugs and even created a tool to help debugging similar problems in the future. You can find the source code of that tool in Github. There is even a hosted instance of the tool to be used by translators or anyone who is curious.

Now, even complex interfaces like our Partitioner look correct enough in right-to-left languages, so we will not have to send mirrors to all our


face

Veamos cómo utilizar y trabajar con pestañas en el editor de texto Vim.

En mi proceso de ir de dar mis primeros pasos con Vim e ir aprendiendo y usando Vim para las ediciones de texto que realizo, he ido aprendiendo varias cosas que he compartido con por el blog:

En esta ocasión quiero compartir una utilidad muy interesante, que es el poder trabajar en Vim con pestañas y en cada pestaña distintos archivos o incluso varias ventanas en cada pestaña. Vamos al lío…

Podemos abrir Vim desde la línea de comandos con diferentes archivos y que estos se abran en pestañas diferentes. Para ello escribiremos:

vim -p archivo1 archivo2 archivo3

Una vez abierto Vim con esos tres archivos en tres pestañas distintas, si queremos abrir alguna otra simplemente escribiremos el comando :tabnew y el nombre del archivo y se abrirá una nueva pestaña después de la actual con el archivo.

Igualmente tenemos otras opciones con las que poder abrir pestañas en sitios distintos:

  • :-tabnew → abre la pestaña antes de la actual
  • :$tabnew  → abre la pestaña en la primera posición
  • :0tabnew → abre la pestaña en la última posición

En la parte superior se muestran las distintas pestañas abiertas y el nombre del archivo. Si en alguna modificamos el texto, al lado del nombre aparece el símbolo + para indicar cambios

Si en alguna pestaña abrimos dos ventanas, al lado del nombre aparece un número indicando el número de ventanas en esa pestaña

Para movernos entre las diferentes pestañas tenemos varias opciones. En modo normal escribimos:

  • gt → y va a la siguiente pestaña
  • gT → va a la pestaña anterior
  • :tabfirst → va a la primera pestaña
  • :tablast → salta a la última pestaña

También existe la posibilidad de poder re ordenar las pestañas existentes de una manera que nosotros queramos. Para ello, está el comando :tabm n Donde n es el número de posición a donde queremos mover la pestaña actual, teniendo en cuenta que empieza a contar desde la posición 0.

Si queremos poner la pestaña actual en la primera de todas escribimos el comando:

:tabm 0

Si queremos ver las pestañas que tenemos abiertas y qué tenemos en cada una, podemos ejecutar el comando

:tabs

Que nos indicará qué archivos y cuantas ventanas tenemos en cada pestaña y el número de pestañas abiertas. También nos muestra con un símbolo > la pestaña en la que nos encontramos actualmente.

Esto y muchos más es lo que ofrece el poder trabajar con pestañas en Vim. Existen más comandos, pero con estos que he mostrado ya


Jim Fehlig: Let’s Brew!

03:26 UTCmember

face

Where to start? There are many blogs on homebrewing from folks with lots of experience so I won’t be providing any earth-shattering information for knowledgeable brewers, but I can provide a perspective from a novice that might be interesting for others considering diving into homebrewing. Along the way perhaps I’ll be lucky enough to also get some feedback and tips from the pros! I’ll first talk briefly about the ingredients used to make beer and then discuss the process of turning those ingredients into the tasty beverage we all love using the Clawhammer BIAB system I discussed in a previous post.

Beer is actually made from a simple list of ingredients: water, barley, hops, and yeast. All are very important to the quality of the final product. Although the ingredient list is simple, the chemical characteristics of water, the types of barley and the degree of malting, the families of hops, and the strains of yeast vary greatly, which accounts for the seemingly endless varieties of beer we see. Some beers include ingredients like fruit, honey, and other sweeteners, but IMO those are for amateurs and kids and will not be considered in this blog post. We’ll save those ingredients for the ice cream and pies!

The beer we are brewing here is a recipe from a good friend and fellow brewer, which he named Baldy Chutes Pale Ale in honor of the famed ski run at Alta Ski area. BTW, in the winters when not brewing or working I can often be spotted at Alta :-). Ok, back to making beer. Let’s review the ingredients: water, malted barley, hops, and yeast. Many brewers say that yeast is the secrete sauce to a beer. I don’t have enough experience to confirm or deny this rumor, but understand its role in the process enough to know it is important. Therefore I make a yeast starter three days before brewing. Being one that likes simplicity, I use a canned yeast starter instead of preparing one traditionally. I buy the bagged yeast, adding it, the yeast starter, and water to a flask and drop in a magnetic stir stick.

The flask is placed on a stir plate that slowly stirs the yeast in the starter to ensure it has oxygen to flourish. I try to keep the concoction at a constant temperature, ideally 68F, but it really at the mercy of the temperature of my office. On the morning of brewing, I place the flask in the refrigerator so the yeast will separate from the starter and settle to the bottom.

Another task I’ve learned to do the night before brewing is filling the boil pot with cold tap water, particularly in the winter months when the water is very cold. This allows raising it to room temperature without using electricity. It saves a few electrons for the conservation-minded folks. One other item to consider the night before brewing, or even before starting your yeast starter, is


Jim Fehlig: BIAB Homebrewing

02:23 UTCmember

face

Being a beer lover, I always wanted to brew my own beer but lacked time, money, and space required form making my own liquid bread. Over my travels and many places I’ve called home I’ve met several homebrewers and even spent afternoons helping brew batches of beer. While lending a helping hand I quickly realized the equipment needed to make beer from all-grain ingredients was the barrier for me. That all changed last fall when I helped a good fried make a batch of Alaska Amber clone. He had recently invested in a new Brew In A Bag (BIAB) system from Clawhammer Supply and I was immediately impressed with the functionality and usability of the system. I decided that afternoon it was time to start brewing my own beer!  I had found a brew system that provided the balance of simplicity and functionality I was looking for. Along with more free time in my life now that kids are older and more independent, it’s a great time to start a new hobby!

The Clawhammer BIAB system includes all the components you need for creating your favorite all-grain beer. It consists of a 10 gallon stainless steel boil pot, a 110 volt heating element (220 volt option available at substantially more cost), a controller for heat and pump, a temperature probe, a 110 volt pump, a plate wort chiller, grain and hop baskets, high temperature, restaurant-grade rubber hose, and all the quick-release fittings and valves needed to connect the system components. The system requires assembly but that was made easy by the helpful videos provided by Clawhammer Supply. That leads me to the only complaint about the system: lack of written documentation. Videos are fine, but I’m old school and generally like to read shit :-).

20190405_123138

When deciding on the 110 vs 220 volt system, I read many reviews stating the 110 system was adequate if the boil pot was insulated. Clawhammer even sells an insulation kit for their boil pots. So I opted for the 110 volt element and fabricated my own insulation wrap for the pot with some insulation bought at the local hardware store.

I already mentioned how I liked the Clawhammer system simplicity. You have a boil pot that heats water with an electric element, a large grain basket that fits inside the pot, and a pump to circulate hot water over the grains to extract their all-important sugars. After mashing the grains and boiling the wort, simply insert the wort chiller in the system to cool the wort before transferring to fermentation storage. The system is also relatively mobile, opening the possibility to take it to the Henry’s Lake place for some Idaho brewing! Perhaps this picture of the entire system in action chilling a pale ale wort will help you understand my excitement around this system. In a followup post I’ll describe the steps for creating an all-natural, preservative and additive free beer with the Clawhammer BIAB system. Until then


face

My virtual Linux Users Group, as it were is the BDLL community. As part of a community challenge we were to live a week in Gnome. In full disclosure, I didn’t quite make it a full week on Gnome. Even though I was told I had to really give it a chance, really get used to the work flow to appreciate it, I tried, I read the documentation and I just could not find it an enjoyable experience for me. So, thanks for stopping by, if that is all you wanted to know, that is the bottom line up front.

Just because my experience in Gnome was not enjoyable, that doesn’t mean yours will be the same. It may work splendidly for you and you may find the work flow a perfect fit for your personal computer usage. I highly recommend that you do give it a try, regardless of my biased opinion.

This test was done on my primary machine, my Dell Latitude E6440. This machine had no trouble with Gnome. I didn’t see any performance issues there were occasional glitches but nothing distracting.

Installation

The beauty of openSUSE is the package management but beyond the package manager, the organization and simplicity of installing software. In this case, to install an entire Desktop Environment, Gnome in this case can be done by running this simple command in the terminal:

sudo zypper install -t pattern gnome

In summary, this is what the result of installing the Gnome Desktop from the openSUSE defined pattern.

432 new packages to install.
Overall download size: 177.7 MiB. Already cached: 0 B. After the operation, additional 660.9 MiB will be used.

Truly, not much more storage space was required only 660.9 MiB for the “standard” installation of Gnome.

Scope of Evaluation

For the purpose of this evaluation, I am going to ignore any little hiccups from the Desktop Environment. I am not going to be critical about any little glitches or bugs. I will ignore any rough edges of it, largely because I know this is the openSUSE, somewhat vanilla presentation of Gnome. In order to keep this Gnome experience similar to my time using Fedora with Gnome, I will not install any extensions. I am going to use it the way the developers and architects intend.

Overall Experience

After installation, I rebooted my machine. I wanted to be sure I was starting my Gnome experience from a freshly updated and rebooted system. The familiar SDDM (Default Plasma Display Manager) interface appeared with the familiar menu of options. I initially chose Gnome with Wayland but since I wanted my tools that require X11, I did switch to X for the majority of my time on Gnome.

Gnome felt stable to me. I didn’t have any strange behavior or crashes. It all worked as I expected. The interface is clean and tidy and has the familiar openSUSE look about it. I did notice that the settings I used to

Older blog entries ->