Skip to main content

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

Working From Home

The first week of the COVID lockdown, back in March 2020, a journalist friend of mine started a Hungarian Facebook group to share work from home experiences. As I have worked from home all my life (except for two weeks), I wrote a long post about my experiences and thoughts. 2.5 years later, my post still receives some occasional likes, and someone even quoted from it – without naming the source :/ You can read the English version of my original Facebook post below.


I would not call myself an expert on remote work, but as I have been working from home for the past 20 years, I will share some of my experiences.

To be more precise, it started 25 years ago. As a student job, I helped running one of the first web servers of Hungary from home, late in the evenings, in my free time.

Later, as a PhD student, I only traveled to the university campus (in a small town, close to Budapest) when I really had to. Essentially, I was there only when I had to attend or give a lecture. I did my research experiments when I had to be in Gödöllő anyway.

After graduating from university, I worked from home for a small US-based company. I never met my boss while working there and met only one of my colleagues at a conference in Brussels. I only met my boss seven years later, when I gave a talk at a conference in Washington, D.C.

These days, I am still predominantly working from home. I go to the office once a week. That’s when I have my English lesson, team meetings, and so on. (Editor’s note: this is called a hybrid work method nowadays)

And now, here is my list of WFH experiences, which of course might differ from your experiences:

  • Working from home is difficult without motivation in your job, and it is difficult to stop when you are motivated :-) I belong to the latter group: most of my work I would do as a hobby as well. This means that most of the time, it is difficult to stop working and switch to other tasks. If you have minimal motivation, or nothing at all (other than your salary), you most likely need to be in the office and experience peer pressure to be be able to work.

  • Self-determination. It does not mean that you do not discuss your task list with your line manager, of course. However, if based on these discussions, you cannot work on your own, prioritize your tasks, and manage your time, working from home will be difficult for you. On the other hand, if you can present what you would like to work on (and why is it important for the company), it also helps you work on interesting challenges.

  • You are part of the team, even at home. If you do not feel like you are, home office is not for you (or it will be a lot more difficult, at least). I guess it also has to do with being extroverted or introverted. For introverts, working from home is easier, as they even require regular alone time. I belong to this category as well.

  • Communication. No matter where you are working from (a park, the top of a mountain, or the sea shore), your team relies on you, and you can rely on your team. During work hours, you must be accessible, just as if you were in the next room. Unless it is a really critical situation, communication should be asynchronous. What does that mean? Phone or WebEx should be a last resort. Asynchronous communication means that you react quickly, but not necessarily immediately, to incoming questions or requests, without interrupting your current task. During my university years, we used e-mail communication. At the US-based company, we used IRC. At my current workplace, we currently use Teams, but previously we also used Hangouts and Slack as well. Distance must not be a communication barrier. (Editor’s note: asynchronous communication is practically any kind of chat)

  • Humor, stress reduction. These belong with communication, but it is worth giving them an extra emphasis. When you are in the office, you can have great discussions over coffee / tea / cigarette (well, this last one is not for me), laugh at jokes, or reduce stress through talking. This must also work online. We have some dedicated Teams channels for these kind of discussions. However, we do not mind if our meetings have a few funny moments as well.

I guess there are many other WFH topics, but these came off the top of my head.


In the past 2.5 years, most people were forced to work from home for shorter or longer periods of time. Many kept on working from home even after return to office (a.k.a. RTO) became possible. I have talked to quite a few people about WFH recently, and I think most of my points are still just as valid today. What do you think? You can reach me on Twitter and LinkedIn.

the avatar of YaST Team

YaST Development Report - Chapter 8 of 2022

Time for another development report from the YaST Team including, as usual, much more than only YaST. This time we will cover:

  • The fix of an elusive YaST bug regarding the graphical interface
  • Initial handling of transactional systems in YaST
  • A general reflection about 1:1 management of transactional systems
  • Some improvements in the metrics functionality of Cockpit

Let’s take it bit by bit.

Hunting YaST Rendering Issues Down

Over the last year or so, we got some reports about the graphical interface of YaST presenting rendering issues, specially on HiDPI displays and on openQA. The reporters provided screenshots that showed how some widgets were apparently drawn on top of the previous ones without an intermediate cleanup, so the screen ended up displaying a mixture of old and new widgets that were very hard to read.

We were unable to reproduce the problem and we tried to involve people from different areas (like graphic drivers maintainers, virtualization experts or X11 developers) to track the problem down with no luck… until now! We finally found where the bug was hiding and hunted it down.

See the pull request that fixes the issue if you are interested in a technical description including faulty HiDPI detection, unexpected Qt behavior and QSS style sheets oddities. It also includes a screenshot of the described (and now fixed) problem.

YaST on Transactional Systems

And talking about YaST and known problems, you may remember from our previous post that we identified one very visible issue with the on-demand installation of software when using YaST (containerized or not) in a transactional system like the future ALP. Such systems prevent the installation of new packages during run-time, so an extra reboot is always needed before using the new software.

We explored several options to make YaST work as smooth as possible in transactional systems, like performing all the modifications, including packages installation and configuration changes, in a single transaction with a final reboot at the end of the process. But we found it too risky since it implies working on temporary system snapshots that are not a fully accurate representation of how the managed system will look after the reboot.

Finally we implemented the solution that is shown in the screenshot below. For the time being, if YaST detects it’s running in a transactional system so it cannot install the missing packages and continue, then it will simply ask the user to install the packages and reboot.

YaST requesting Bind to be installed

With that, YaST does not longer look broken on transactional systems (unsuccessfully trying to install packages when it doesn’t make sense) but the adopted solution is just a first approach that we will likely improve in the future.

Beyond YaST: On-Demand Installation on Transactional ALP

The described challenge with package management and transactional systems is not exclusive of YaST. We actually have a similar problem with Cockpit and its metrics functionality. So we decided we needed to gather some opinions to find the most adequate and consistent solution for ALP and other transactional systems.

As starting point, we wrote this document describing the situation and presenting some open questions. The feedback gathered so far from members of the ALP Steering Committee suggests we should improve YaST to go further into assisting the user in the process of installing the packages and rebooting the transactional system. The same applies to Cockpit, but that may be more problematic since it’s not aligned with the current vision expressed by the Cockpit developers in that regard.

We are always open to receive more comments and opinions. If you have any, you know how to reach us. ;-)

Better Cockpit Metrics on ALP

And talking about the metrics functionality of Cockpit, we also took the opportunity to polish its behavior on ALP. And we did it by fixing nothing ourselves. :-) We just diagnosed the problems and reported what was wrong in the pcp package and in Cockpit. Both issues are fixed now by their corresponding maintainers and future ALP pre-releases will offer a more pleasant Cockpit experience out-of-the-box.

See You Soon

We keep working on YaST, especially on the installer security policies described on our previous report, on improving the Cockpit and the YaST user experiences with ALP and on several other topics we will report in the following weeks, as soon as we have tangible results to show.

Meanwhile we encourage you to get involved in openSUSE development and promotion and to stay tuned for more news. Have a lot of fun!

the avatar of Nathan Wolf

openSUSE in 2022 | Continues to be Awesome

I have been pretty quiet here on CubicleNate.com for a few months, not because of any lack of interest in what I do but rather that there have been life things that have gotten in the way. I have many incomplete blatherings that are waiting for me to finish writing them up. The one thing […]

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

openSUSE Tumbleweed – Review of the week 2022/35

Dear Tumbleweed users and hackers,

We all knew the day would come – and after 26 daily snapshots were released, 0830 wanted to break that. It turned out that libxml 2.10.x is not entirely ABI compatible with the previous 2.9.x we had in the tree (depending on configure parameters given; IMHO such symbols should have a specific version for those options, allowing to require feature sets). Snapshot 0831 is a very large one: as we checked in glibc during this week, coupled with this ABI break, we decided to let OBS decide what all needs a rebuild (with glibc which usually is everything). In total, we released 5 snapshots this week (0826, 0827, 0828, 0829, and 0831).

The most relevant changes in these snapshots were:

  • Meson 0.63.1
  • Shadow 4.12.3
  • Grub2: revert to a version from 2 months ago without the various TPM patches: they turned out to cause a lot of trouble (and are being further reworked in the devel project)
  • Mozilla Firefox 104.0
  • Mozilla Thunderbird 102.2
  • glibc 2.36
  • Make: Add support for job server using named pipes

The staging projects are testing these upgrades and changes:

  • Linux kernel 5.19.6
  • util-linux 2.38.1: this also brings a massive package layout change, which will probably take some time to settle. It’s part of the distro bootstrap and we have to be careful to not blow it out of proportion
  • Mozilla Thunderbird 102.2.1
  • GCC 12.2
  • fmt 9.0: Breaks ceph and zxing-cpp
  • libxml 2.10.2: breaks xmlsec1
  • gpgme 1.18: breaks libreoffice
  • libxslt 1.1.36: breaks daps
the avatar of openSUSE News

Tumbleweed Continues Release Streak

Tumbleweed’s continuous daily release streak has reached an astounding 26 snapshots.

The streak of openSUSE’s rolling release continued this week and packages like glibc, ibus, Mozilla Firefox and sudo all received updates.

Will the streak continue beyond snapshot 20220829? Users should know soon.

Snapshot 20220829 provided package updates for AppArmor and libapparmor3.0.7. The new versions fixed the setuptools-version detection in buildpath.py. The Man pages for Japanese made some improvements with the man-pages-ja 20220815 update. The tree 2.0.3 update provided multiple fixes for .gitignore functionality and fixed a couple segfaults.

The 20220828 snapshot had ten packages updated. Among the updated packages were ibus 1.5.27, which enabled an ibus restart in GNOME desktop and disabled XKB engines in Plasma Wayland. The update of webkit2gtk3 2.36.7 fixed several crashes and rendering issues as well as addressed a Common Vulnerabilities and Exposure related to Apple’s use of the package. The Python web framework and asynchronous networking library python-tornado6 6.2 enabled SSL certificate verification and hostname checks by default and its Continuous Integration has moved from Travis and Appveyor to Github Actions. Another package to update in the snapshot was font handler libXfont2 2.0.6. The new version fixed some spelling and wording issues. It also fix comments to reflect the removal of legacy Operating System/2 support.

A new major version of the Mozilla Firefox browser arrived in snapshot 20220827. Firefox 104.0 addressed multiple CVEs to include an address bar spoofing to disguise a URL; another fixed an exploit that showed evidence of memory corruption and the possibility to running arbitrary code. The update of the GNU C Library added major new features; glibc 2.36 added process_madvise and process_mrelease functions. Support for the DT_RELR relocation format was added and socket connection fsopen and many other sorting features were added. VMware’s open-vm-tools 12.1.0 package, which enables several features to better manage seamless user interactions with guests, fixed a vulnerability that allowed for local privilege escalation; it also had a fix for the build of the ContainerInfo plugin for a 32-bit Linux release. A few RubyGems like rubygem-faraday-net_http 3.0.0, rubygem-parser 3.1.2.1 and rubygem-rubocop 1.35.1 were also updated in the snapshot.

A total of three packages were updated in snapshot 20220826. The simple PIN- or passphrase-secure reader pinentry updated to 1.2.1; the package improved accessibility and fixed the handling of an error during initialization. The package update also made sure an entered PIN is always cleared from memory. Its graphical user interface pinentry-gui was also updated to the 1.2.1 version. The shadow package, which converts UNIX password files to the shadow password format, updated to version 4.12.3. It fixed a 9-year-old CVE. CVE-2013-4235 fixed the time-of-check time-of-use race condition when copying and removing directory trees. The package also updated and fixed some Spanish and French translations.

A minor update to sudo 1.9.11p3 arrived in snapshot 20220825. The update fixed a crash in the Python module with Python 3.9.10 on some systems and AppArmor integration was made available for Linux, so a sudoers rule can now specify an APPARMOR_PROFILE option to run a command confined by the named AppArmor profile. The sudo package also fixed a regression introduced in 1.9.11p1 that caused a warning when logging to sudo_logsrvd if the command returned no output. That regression was never released in a Tumbleweed snapshot. An update of the open-source disk encryption package cryptsetup updated to 2.5.0. This new version removed cryptsetup-reencrypt tool from the project and move reencryption to an already existing cryptsetup reencrypt command. Other packages to update in the snapshot were gnome-bluetooth 42.3, device memory enabler ndctl 74, yast2-tune 4.5.1 and more.

the avatar of Open Build Service

Search API Endpoints, Fully Documented

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

openSUSE Tumbleweed – Review of the week 2022/34

Dear Tumbleweed users and hackers,

This week, Tumbleweed made the impossible possible: we have published 8 daily snapshots in just 7 days. Of course, the timing was a bit on our side: the snapshot that started building yesterday went so quickly through build and QA that it already managed to be published. In any case, the daily streak continued all along (now at 22 – a new all-time record).

The snapshots were numbered 0818 through 0825 and contained these changes:

  • debuginfod: The package now recommends debuginfod-profile, which contains the configuration and URL to the server. Your gdb experience should be much smoother. If bandwidth is an issue when debugging, you can uninstall/block debuginfod-profile.
  • timezone 2022c: We’re coming close to the dates where countries switch summer to winter time, and as usual, some countries change their rules
  • KDE Gear 22.08.0
  • Linux kernel 5.19.2
  • Systemd 251.4
  • Xen 4.16.2
  • Mesa 22.1.5 & 22.1.7
  • Boost 1.80

In stagings, we are busy preparing these updates and changes:

  • Meson 0.63.1 (0826+)
  • Shadow 4.12.3 (0826+)
  • Mozilla Firefox 104.0 & Thunderbird 102.2
  • Glibc 2.36: all build issues have been resolved. Final spring towards openQA results
  • fmt 9.0: Breaks ceph and zxing-cpp
  • Make: Add support for job server using named pipes. A few packages have been observed not to be parallel build compatible with this

the avatar of openSUSE News

Mesa, Git, Gear, More Update in Tumbleweed

This was another full week of openSUSE Tumbleweed snapshots.

The rolling release continues fastforwarding daily with new versions of software.

The most recent snapshot is 20220824 and it updated the Linux Bluetooth protocol bluez 5.65; the package fixed a few Advanced Audio Distribution Profile issues and added experimental support for ISO sockets. The 4.16.2 version of hypervisor xen dropped several patches contained in the new tarball including a CLFLUSH work around for AMD x86. The new xen update fixes a few Common Vulnerabilities and Exposures. There were a few updates related to Vulkan like an update of shaderc 2022.2, which added support for 16b-bit-types in High-Level Shader Language. There were also updates to vulkan-loader and vulkan-tools 1.3.224.0. The OpenGL and OpenGL for Embedded Systems shader glslang 11.11.0 added OpSource support and avoids a double-free in functions clone for vulkan in relaxed mode.

Mesa and its drivers package updated to version 22.1.7 in snapshot 20220823. The 3d graphics library’s new version had fixes and cleanups all over the tree; most of the fixes were for the Zink driver that emits Vulkan Application Programming Interface calls. Several YaST packages updated in the snapshot. There were some adjustments made with yast2-storage-ng 4.5.8 to adapt to new types of mounts by libstorage-ng, and yast2-network 4.5.5 added a class to generate the configuration needed for Fibre Channel over Ethernet. Other packages to update in the snapshot were transactional-update 4.0.1, autoyast2 4.5.3 and many other libraries.

Snapshot 20220822 updated a half dozen packages. An update of aws-cli 1.25.55 fixed a regression that made setting configuration values for a new profile problematic. The package also received several API changes from a jump of a few minor versions. The xfce4-panel 4.16.5 fixed a critical warning when starting on a disconnected device and updated .gitignore. Xfce’s desktop manager xfdesktop 4.16.1 removed an unused function call and allocates memory after error processing. Other packages to update were lttng-ust 2.13.3, python-matplotlib 3.5.3 and python-pbr 5.10.0

Mesa had its first update of the week to version 22.1.5 in snapshot 20220821. Mesa dropped a warning for unhandled hwconfig keys. The SDL2 2.24.0 update added a number of functions relating to input devices such as keyboards and joysticks. It also added support for the NVIDIA Shield Controller. The other two packages to update were libevdev 1.13.0 and libtirpc 1.3.3, which fixed a Denial of Service vulnerability.

Snapshot 20220820 provided an update of ImageMagick 7.1.0.46 and its changelog says it moved building the dependencies to a separate file and eliminated a compiler warning. The update of bind 9.18.6 fixed some crashes that occurred when a configured forwarder sent a broken response, and a fix was made with the dnssec-policy. Linux Kernel 5.19.2 updated in the snapshot and most of the code was related to Advanced Linux Sound Architecture additions and fixes for KVM. The systemd 251.4 update dropped conflicted headers and a patch was added to resolve conflicts with glibc 2.36. A few Python Package Index updates were also made available with the snapshot.

Of the three snapshots to begin the week, which were 20220819, 20220818 and 20220817, a few packages of the many stood out. Among the packages to update were KDE Gear 22.08.0, which allows you to sort files also by file extension with Dolphin. KWrite added another interesting new feature that now supports tabs and screen splitting so you can open several documents at the same time. GTK4 4.7.2 added audio support to the ffmpeg backend and fixed handling of touchpad hold events. Text editor vim 9.0.0224 redraw flags that are not named specifically and it fixed the splitting of a line that may duplicate virtual text. Multiple bug fixes that were developer visible were fixed in the git 2.37.2 update. The version control handler improved git p4 non-ASCII support. Other packages to update were a 12.1.1 gcc12 git version, ncurses 6.3.20220813, rsync 3.2.5 and timezone 2022c, which updates that fact that Iran will no longer observes Daylight Saving Time after 2022.

the avatar of openSUSE News

ALP Aims to Balance Past, Present with Future

The openSUSE Project has been discussing technical aspects for the Adaptable Linux Platform (ALP) on the development mailing list.

An email titled x86_64 architecture level requirements, x86-64-v2 for openSUSE Factory kicked off a discussion acknowledging challenges possessed by instructional sets for different subsets of the x86-64 architecture. Four defined levels of the x86-64 architecture are categorized as x86-64-v1, x86-64-v2, x86-64-v3 and x86-64-v4. The newer micro-architectures after 86-64-v2 allow for greater performance advantages and are present in many of the newer hardware on the market.

All these architectures exist within the code stream of openSUSE Factory, which are targeted for specific builds and distributions. For example, openSUSE Tumbleweed is a customized build blueprint of all the code functioning together that leads to a well tested release of a snapshot for the rolling release distribution. Another would be the super stable openSUSE Leap release, which is based on years of building toward a mature target that was designed to bring uniformity among Leap and SUSE Linux Enterprise.

Transitioning to the next long-term cycle of development, SUSE’s Adaptable Linux Platform and openSUSE’s ALP are presented with an architectural divergence as enterprise builds for future hardware and community builds for past, present and future uses.

SUSE’s aim with its Adaptable Linux Platform is to build a new immutable-base operating system for enhanced application-layer features and container orchestration on newer hardware. The prototype that is expected soon will have x86-64-v3 as a baseline.

A proposal within the email thread suggests moving Factory from x86-64-v1 to x86-64-v2, which appears to be the consensus among 80 plus comments. Whatever is decided, the transitioning for ALP to move to x86-64-vX will be based on the decision by the community made for Factory. However, this is not all regarding x86-64-vX. openSUSE’s ALP builds confront building for users of newer and older machines. While SUSE’s ALP target is specific to v3, the community will not be letting users down and aims to support hardware on the community side. The same immutable-base operating system is expected to be amplified both on arm and RISC-V for new hardware as the architectures expand. The community version will use the same architectural availability that’s available in the Factory code stream. Rebuilds of SUSE’s ALP may be necessary for openSUSE’s architectural needs. However, once the prototype is released, the release team plans to run tests and gather comparative data to understand the performance differences of v2 and v3. There is a desire to support a migration path.