Skip to main content

the avatar of Vojtěch Zeisek
a silhouette of a person's head and shoulders, used as a default avatar

openSUSE Tumbleweed – Review of the week 2020/53

Dear Tumbleweed users and hackers,

The last week of 2020 has come to an end. Tumbleweed had been rolling steadily throughout the entire year and did went for the big finale of the year with a whopping 7 snapshots (1224, 1225, 1226, 1227, 1228, 1229 and 1231).

The main changes included there contained:

  • Mozilla Firefox 84.0
  • gtk+ 2.24.33: the final release of the gtk 2 series
  • Linux kernel 5.10.3
  • Ruby 3.0: rubygems have been enabled, default ruby version is still 2.7

As a lot of maintainers are busy with celebrations, the list of staging projects did not change drastically. As such, we still have these things in the works for 2021:

  • Linux kernel 5.10.4
  • icu 68.1: breaks a few things like postgresql. Staging:I
  • Multiple python 3 versions parallel installable. Adding to python 3.8, version 3.6 week be reintroduced. Python modules will be built for both versions.
  • RPM 4.16: all build issues in Staging:A have been fixed, but on upgrades, rpm seems to segfault in some cases.
  • brp-check-suse: a bug fix in how it detected dangling symlinks (it detected them, but did not fail as it was supposed to)
  • permissions package: prepares for easier listing, while supporting a full /usr merge
  • Rpmlint 2.0: experiments ongoing in Staging:M
  • openssl 3: not much progress, Staging:O still showing a lot of errors.
the avatar of Karatek's Blog

Looking back at 2020

2020 has been a tough year. The global pandemic made it possible to work very much on my personal projects, so let’s talk about that. Also some “Thank Yous” will be given.

Celebrating Nemesis Anniversary

At January 2nd, 2020, we introduced Nemesis. Nemesis is my very own Telegram group management bot, written in Python. Back then, the very popular bot BanhammerMarie went offline in favour of a closed source, proprietary alternative I did not want to use. I first wanted to clone Marie in Java, but scraped that idea soon. So I forked Marie, and over the time, some new features were introduced.

Features arrived in 2020

Patches to version 1.x

Multi Language support

Screenshot
Our first real change was support for multiple languages. In theory, it is now possible to use different languages in chats using /lang, but we do not have the translations yet. Any help is appreciated, so I you want, go ahead and check out our translation portal.

Import and Export

Screenshot
We also added support for importing settings from the proprietary bot @MissRose_bot we wanted to replace in our groups. This should make it much easier for newcomers to migrate their chats over to Nemesis. In addition, it is now possible to export some of Nemesis settings to a nice and readable .toml file.

Version 2.0

Screenshot
Later the year, the first major update of Nemesis, version 2.0, was released. This version brought a lot of new features and improvements, so let’s take a look.

Migration to python-telegram-bot 12.x and 13.x

Nemesis now completely uses version 12.x of the python-telegram-bot api. Originally written for version 11.x, this transition took a lot of time, but it allows us to keep the bot running, as using an old version of the api would make it more difficult to add new features later. Some time after, we also took the transition to 13.x, which was a lot smoother then migrating to its predecessor.

Downloading stickers and creating custom packs

Screenshot
Another new feature is the ability to download Stickers as .png files and to create your own sticker packs! Did not try it out yet? Go ahead and send /help to the bot and let it show you how to do so! It only works with static, not animated, stickers at the moment though.

Reputation system

Screenshot
Also, it is now possible to vote on messages by replying to them with + or -. You can enable this feature by typing /reputation on.

Secret messages

Screenshot
The last feature I want to mention is the possibility to send secret messages in groups, called “whispers”. In order to enable this, it was necessary to use InlineQuerys, which actually was a pretty painful process. BUt it works now, and Nemesis replaces another bot in our groups, @whisperBot, enabling me greater privacy, since I do not need to trust a third party in order to send secret messages.

Features to come in 2021

I’ve got some ideas for new features, so here they are. Any feedback is appreciated.

REST based API

Screenshot
This one is not particularly useful for the user, but enables us to build great tools based on Nemesis. Building a REST Api allows us to build applications integrated into Nemesis, such as a fully functional web based administration panel.

Leveling system

Another feature to come is leveling, similar to Combot. This way it will finally be possible to manage a group with only Nemesis, without needing another bot.

Statistics

Same as above, it will be possible to get rid of Combot and do all of the management with Nemesis. Statistics will be generated based on the time of day, the sender and the message type. The message itself won’t be saved in any way, keeping your messages private. Statistics will be disabled by default.

Performance Improvements

Currently, Nemesis is not really scalable and won’t work well if the number of users grows. In order to change that, it will be necessary to change the way the bot handels database queries and processes data, as well as optimizing it to use multiple threads and cache data in memory.

GUtilities Reloaded

In 2019, we were working on creating Minecraft plugins for a multiplayer network we wanted to call “GamelMC”. This project was later scrapped, and all the code written was archived. However, in 2020, I used some of the old code and ported one plugin to Minecraft 1.16.4. The plugin adds basic functionality to the server, such as chat formatting, chat clearing, fancy kick messages, teamchat and a lot more. The source code is available here.

Kenaten

Back in late 2019, I discovered a mobile game which some of my friends played as well. Together with @ttzug I worked on creating a bot for that game, but this project was scrapped. The project was to bulky, and the game turned out not being really good. In addition, personal reasons made me quitting that game.

Contribution to other Open Source projects

Corona Warn Companion

Screenshot This is an app which helps you better understand the warnings the official Corona-Warn-App in Germany. Let me quote from it’s README:

!!! quote The app reads the Rolling Proximity IDs recorded by your device from the Exposure Notifications database (this is only possible with root permissions, which is why official Exposure Notifications apps, such as Corona-Warn-App, cannot display these details). The app downloads the Diagnosis Keys from the official German Corona-Warn-Server and other countries’ servers, as selected by you. For Germany, it downloads the keys published daily for the last few days, and the keys published every hour for today. Only keys for the days found in step 1 are shown and counted.

However, the application was not able to read data from the FOSS version of the Corona Warn App, so I added that. Anyway, the companion app is really cool, so if your device is rooted, you should definitely check it out! Here is the link.

YaST

YaST is the installation and configuration tool for openSUSE and the SUSE Linux Enterprise distributions. It features an easy-to-use interface and powerful configuration capabilities. I just did some small bugfixes, and am pretty proud on my first contribution to a FOSS project.

Thank you!

Now its time to thank some people. First of all, huge thank you to the amazing people who keep Nemesis running. Namely:

Name Role
@GenosseSeverus Co-Owner of Nemesis
@Luna_Loony Administrator
@ttzug Support User

Speaking of GenosseSeverus, make sure to check out their Telegram Themes: Sharry Themes

Another thank you goes to Paul Larsen for building the amazing base of Nemesis.

Happy new year!


the avatar of Karatek's Blog

Androids Datenschutzeinstellungen optimieren und Android absichern

Android telefoniert in seinen Voreinstellungen doch recht viel nach Hause zu Google, dem Gerätehersteller und anderen Parteien. In diesem Artikel ist beschrieben, wie man diese “Phone-Home Funktionen” einschränken kann. Wie viel Google so überuns erfährt, zeigt dieses Zitat von Aufsichtsratchef Eric Schmidt:

With your permission you give us more information about you, about your friends, and we can improve the quality of our searches. We don’t need you to type at all. We know where you are. We know where you’ve been. We can more or less know what you’re thinking about.

Es ist also an der Zeit, diesem Datensammeln den Stecker zu ziehen.

Der sanfte Weg

Beim “sanften Weg” werden keine Modifikationen am System vorgenommen. Alle Änderungen betreffen nur den jeweils angemeldeten Benutzer und lassen sich leicht wieder ändern. Allerdings gibt es bei dieser Methode immernoch Schlupflöcher, durch die das Gerät Daten abfließen lassen könnte.

Google Einstellungen anpassen

Für die folgenden Einstellungen müssen Sie in die Einstellungen ihres Google Kontos navigieren. Gehen Sie hierzu unter Android 10 wie folgt vor:

  1. Öffnen Sie ihre Geräte Einstellungen
  2. Wählen Sie den Menüpunkt “Google” aus.
  3. Wählen Sie dann “Google-Konto verwalten” aus.
  4. Tippen Sie unter “Datenschutz & Personalisierung” auf “Daten & Personalisierung verwalten”.

Aktivitäten abschalten

Nun können Sie die eigentlichen Einstellungen ändern:

  1. Deaktivieren Sie die “Web- & App- Aktivitäten”, den “Standortverlauf” und den “YouTube-Verlauf”.
  2. Deaktivieren Sie nun personenbezogene Werbung. Öffnen Sie dazu http://google.com/ads/preferences.
  3. Entfernen Sie unter “Interessen” alle Häckchen
  4. Scrollen Sie zu “Interessenbezogene Werbung” und deaktivieren Sie den Schalter.

Ortungsfunktion deaktivieren

Nun sollte noch die Ortungsfunktion deaktiviert werden:

  1. Kehren Sie zurück zu den Google Einstellungen.
  2. Wählen Sie den Menüpunkt “Sicherheit”.
  3. Rufen Sie “Mein Gerät finden” auf.
  4. Schalten Sie den Schalter aus.

Synchronisierungseinstellungen ändern

Konten Synchronisierung abschalten

Im nächsten Schritt schalten wir die Synchronisierung aus:

  1. Öffnen Sie die Android Systemeinstellungen.
  2. Navigieren Sie zu “Konten”.
  3. Tippen Sie auf den obersten Eintrag.
  4. Deaktivieren Sie alle nicht benötigten Einträge
  5. Wiederholen Sie Schritt 3 & 4, bis Sie alle Konten abgearbeitet haben.

Google Drive Sicherungen abschalten

Nun muss noch die Sicherungsfunktion dran glauben:

  1. Navigieren Sie aus den Android Einstellungen zu System -> Sicherung
  2. Deaktivieren Sie “In Google Drive sichern”.

Google Play Protect deaktivieren

Um zu verhindern, dass all unsere Apps zu Google hochgeladen werden, führen wir noch diese Schritte aus:

  1. Navigieren Sie aus den Android Systemeinstellungen zu “Sicherheit” und tippen Sie auf “Google Play Protect”.
  2. Deaktivieren Sie sämtliche angezeigten Funktionen.

Nicht benötigte Apps entfernen

Als nächstes sollten Sie alle Apps, die Sie nicht benutzen (wollen), entfernen.

  1. Navigieren Sie aus den Einstellungen zu “Apps”.
  2. Klicken Sie auf “Alle Apps anzeigen”.
  3. Tippen Sie auf die Apps, die Sie nicht benötigen.
  4. Klicken Sie auf “Deinstallieren” oder auf “Deaktivieren”.

Wir empfehlen, alle Google Apps zu entfernen, mit Ausnahme der “Google Play Dienste” und des “Google Play Store”. Desweiteren stellen viele weitere häufig vorinstallierten Apps ein Risiko da, etwa

  • Facebook
  • WhatsApp
  • Microsoft Office
  • Samsung Health
  • Diese Liste könnte endlos weitergeführt werden…

Sicherheitseinstellungen scharfschalten

Eine Displaysperre einrichten

  1. Navigieren Sie zu “Einstellungen” -> “Sicherheit”.
  2. Wählen Sie “Displaysperre” aus.
  3. Schalten Sie eine PIN oder ein Passwort ein

Verschlüsslung aktivieren

  1. Gehen Sie nun zu “Einstellungen” -> “Sicherheit” -> “Verschlüsslung und Anmeldedaten”.
  2. Tippen Sie auf “Smartphone verschlüsseln” und folgen Sie den Anweisungen auf dem Bildschirm.

Freie Alternativen für Google Apps

Für die meisten Google Apps gibt es freie Alternativen. Die meisten Apps dieser Art lassen sich aus dem freiem Appstore F-Droid installieren.

F-Droid installieren

  1. Laden Sie F-Droid von hier herunter.
  2. Installieren Sie die APK Datei.
  3. Öffnen Sie F-Droid.
  4. Aktualisieren Sie die Paketquellen, indem Sie einmal von oben nach unten Wischen.

Empfohlene Apps installieren

Wir empfehlen die folgenden Apps als Alternative zu unfreien Diensten:

Der “harte Weg”

Beim harten Weg wird das Betriebssystem des Telefons verändert. Dies sollte nur von erfahrenen Nutzern durchgeführt werden! Wer mehr erfahren will, sollte sich das LineagesOS Wiki ansehen.

Weiterführende Informationen

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

Las licencias libres explicadas con un cómic

¿Qué mejor manera de explicar eso de las licencias que con un cómic y lenguaje accesible?

Dibujo: Ondiz Zárraga

Empezamos el año 2021. Y lo hacemos con un artículo muy digerible, accesible y entretenido. ¡Ah! y relacionado con el software libre ¿no es un buen plan?

En el último podcast de 2020 de KDE España (os los recomiendo), conocí a la empresa :NO{legaltech} que ofrece asesoría y servicios legales en el uso y desarrollo de software diseño y mucho más.

Echando un vistazo por su web, ecnontré que habían publicado un cómic en el que explicaban qué era eso de las licencias bajo las que se publica contenido, software, etc.

Daban un repaso a las licencias libres como Creative Commons, GPL, MIT, BSD y también a otras licencias privativas que restringen la libertad del usado.

Un cómic dibujado por Marelisa y en el que con esos dibujos, explicaban las diferencias entre licencias con un lenguaje más accesible que el meramente legal.

Me resultó curioso y he querido traeros hasta aquí el cómic en cuestión que podéis descargar desde su web en formato PDF o CBR en este enlace:

Y para que no se pierda en el proceloso mundo de internet también lo he subido a mi cuenta en archive.org para disfrutarlo, descargarlo, compartirlo, etc.

Os puedo desear lo mejor para este 2021, pero después la realidad hará de las suyas. Así que mejor, sepamos enfrentarnos a lo que nos depare el día a día y vamos a encararlo de la mejor manera posible.

Otro cómic, este de Sacha Chua
a silhouette of a person's head and shoulders, used as a default avatar

KShisen, una variante del clásico de las fichas chinas KMahjongg

En estos tiempos de relax en casa en casa el ocio digital está llenando muchas horas de nuestros largos días, y por tanto es adecuado seguir presentando algunos juegos de la división más lúdica y divertida de KDE. Ya han pasado por este humilde blog un buen número de juegos de la división KDE Games como el reciente Naval Battle o los pasados Kbounce, KSnakeDuelKmines,  KBreakoutKTuberling, Granatier, KSudoku, KGoldrunner, Kolor Lines (o Klines), KBlocks, Bovo, KapmanKnights, PalapeliKSquares, KBlackbox o Kubrick. Hoy ha llegado el turno a KShisen, una variante del clásico de las fichas chinas KMahjongg uno de los primeros juegos comentados de la serie.

KShisen, una variante del clásico de las fichas chinas KMahjongg

Nos encontramos ante una variante del divertido juego de mesa de KDE Games basado en el famoso juego oriental Mahjong (en chino 麻將). A diferencia del juego original, en KShisen solo existe una capa de fichas

En este juego las fichas son mezcladas y extendidas en el tablero. El jugador debe eliminarlas localizando la parejas de fichas, siempre que éstas no estén completamente rodeadas por otras. Al hacerlo las fichas caerán hacia abajo, como si estuvieran colocadas en vertical en el mundo real. Eso si, esta opción es modificable desde las opciones de configuración.Para ganar se debe quedar el tablero limpio.

KShisen, una variante del clásico de las fichas chinas KMahjongg

Al igual que la pantalla de KMahjongg, KShisen nos muestra información sobre el tiempo transcurrido desde el inicio del juego y las combinaciones que hay en ese momento. Además, podemos cargar y guardar una partida, así como ponerlo en modo pausa, hacer, deshacer, rotar el tablero e incluso pedir una ayuda.

Además, tenemos a nuestra disposición algunas pieles con lo que podemos cambiar el aspecto de las fichas y poner, por ejemplo, una conjunto de piezas alfabéticas o con símbolos egípcios.

KShisen, una variante del clásico de las fichas chinas KMahjongg

El juego es una creación de Dave Corrie  <kde@davecorrie.com> y de Mario Weilguni  <mweilguni@sime.com>, con colaboraciones de Mauricio Piacentini  < mauricio@tabuleiro.com >, Jason Lane  < jglane@btopenworld.com > y Frederik Schwarzer  < schwarzer@kde.org >

Más información: KDE Games

Cómo instalar KShisen

Al ser un juego de la rama de KDE la  instalación es sumamente sencilla. No obstante hay una pequeña pega, también se debe instalar KMahjongg, ya que comparten lasfichas. Básicamente debemos abrir una sesión de la consola y escribir:

En KDE Neon, Kubuntu y Linux Mint: $sudo apt install kmahjongg kshisen

En openSUSE: $sudo zypper kmahjongg kshisen

En Mageia (gracias a Hurr) tenéis 3 opciones:

$ sudo dnf in kmahjongg kshisen

o
$ sudo dnf install kmahjongg kshisen

o
$ sudo urpmi kmahjongg kshisen

[… comenta y añadimos cómo se instala en tu distribución favorita]

the avatar of Alessandro de Oliveira Faria
the avatar of Alessandro de Oliveira Faria

IA: Estes seres não existem

Estas pessoas da imagem acima não existem e foram criadas com Redes Adversárias Generativas, ou seja, arquitetura de deep learning criada para uma se confrontar entre elas. E como resultado podemos obter fascinantes trabalhos.

A técnica que surgiu em 2014, tem um potencial enorme. Pois consegue aprender a imitar qualquer distribuição de dados. Então podemos dizer que GANs podem ser ensinadas a criar mundos semelhantes ao mundo real. A tecnologia é aplicada em imagens, música, fala e outros. Resumidamente impressionante.

Um Quadro foi vendido por $432.000 gerado por uma GANs, com base em um código fonte aberto de Stanford. Agora em 2019 os AUTOENCODERS VARIACIONAIS podem superar as GANs em geração de faces.

A GANs são capaz de gerar um novo conteúdo como mágica. Esta arquitetura, conta com algoritmo discriminativo. Então podemos entender que a técnica é baseada em algoritmos Generativos contra algoritmos Discriminativos. Ao longo de 2021 disponibilizarei mais resultados da minha pesquisa.

Clique no botão abaixo e teste a tecnologia!

Button Test Now Royalty Free Cliparts, Vectors, And Stock Illustration.  Image 16852545.
the avatar of openSUSE Mauritius

openSUSE Board Election 2020 results announced

The announcement was made by election official, Ariez Vachha, on the openSUSE Project's mailing list.

The election started on 15 December 2020 and it ended on 30 December 2020. The results were computed today at around 08h00 UTC. All members received the results by email.

Ariez announced the results and provided some statistics.

229 out of 518 eligible voters have cast their vote in this election. In terms of percentage, the turnout is lower than last year's board election.

The complete results are as follows:

  • Axel Braun — 142 votes
  • Gertjan Lettink — 134 votes
  • Neal Gompa — 131 votes
  • Maurizio Galli — 103 votes
  • Nathan Wolf — 59 votes

The "none of the above" option, which was offered for the first time in a regular board election, obtained five votes.

Therefore, Axel, Gertjan and Neal are elected to serve for a 2-year term on the openSUSE Board.

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

Printing with a Brother MFC-7460DN laser printer on Fedora Linux 33

This is a follow-up to my previous post Configuring a Brother MFC-7460DN Laser Printer/Scanner on Fedora 23 (64-bit), as things have fortunately changed to the better in the meanwhile.

As described in this post, setting up this printer in CUPS on Fedora has become quite an ordeal, as Brother no longer updates the printer drivers for these old models and they don’t provide 64 bit binaries.

As I had to switch laptops a few weeks ago, I had to reinstall Linux from scratch and needed to reconfigure my printer settings as well. As I did not want to go through the same hoops again, I did some research and was happy to learn that Peter De Wachter has been working on an open source version of CUPS printer drivers for a wide range of Brother laser printers, which include the MFC-7460DN as well!

Sadly, the printer-driver-brlaser package is not part of the Fedora Linux distribution (yet), so I again had to go out and scour the usual places for a suitable RPM package. Luckily, an RPM package is available from the openSUSE Build Service! There’s no dedicated Fedora package, but downloading and installing the driver package for the openSUSE Tumbleweed distribution worked flawlessly.

To set up the printer, first download and install the RPM package directly from the build service repo:

$ sudo dnf install https://download.opensuse.org/repositories/Printing/openSUSE_Tumbleweed/x86_64/printer-driver-brlaser-6+git20200420.9d7ddda-21.4.x86_64.rpm

The actual URL may vary if the package version is updated, so check the download page for the latest version if the download fails.

Now you can set up the printer using the usual CUPS printer configuration tools. In the printer driver selection box, choose “Brother MFC-7460DN, using brlaser v6” and you’re all set!

BTW, this works on Ubuntu Linux as well, they actually include the driver in their core distribution. However, the MFC-7460DN model is not listed explicitly in the driver selection, but choosing any other brlaser device just works.