Troubleshooting a thorny openSUSE problem

Every computer user has an excellent opportunity to become a professional in the field. Computers have so many problems, you can find yourself becoming an expert technician simply by finding solutions to the multitude of issues plaguing you on any given day.

Once you regularly figure out these issues, friends and family start asking you for help. Eventually, with some luck, you solve computer problems day in, day out as a support technician, system administrator, or software developer.

There’s a long story explaining how I got from office receptionist to technical writer, but I’ll spare you that for now. Here at Notes from the Metaverse, I’ve spent a lot of time lately trying to solve the much bigger problem of how to make the internet a safer and more democratic space. Today, I want to share how I solved a much smaller problem: What went wrong with KDE Plasma on my openSUSE Tumbleweed virtual machine. This isn’t exactly a common problem, but it certainly perplexed me for weeks. If it happens to you, I can save you much time and anguish.

Fixing Tumbleweed in a VirtualBox

openSUSE logo
Geeko, the openSUSE chameleon logo

I run openSUSE Tumbleweed in a VirtualBox virtual machine as a testing system. Tumbleweed is a “rolling release” version of openSUSE Linux. The system updates several times a week with the latest software updates that pass smoke tests in the distribution. A smoke test installs the software package; if it doesn’t blow up the system, it’s included.

Users get the advantage of running the newest version of a package with a small sacrifice of some stability. Many people love this tradeoff, in part because they get a brand new system every few days! Putting the rolling release in a virtual machine gives me the added security that if something goes wrong, I can isolate it without risking something else on the physical machine.

At the new year, I thought I’d start fresh with a new base system. I deleted the existing Tumbleweed VM and installed a fresh version from the latest update. Two weeks later, I updated the system and rebooted the VM as requested.

I logged in, but my KDE Plasma desktop environment wouldn’t come up. I got a black screen that never went away. I shut down the VM with a VirtualBox command (File > Close > Issue the Shutdown command).

Hmm, maybe there’s a memory issue somewhere. The reboot completed normally. I tried loading one of the more lightweight desktops, LXQt, and it displayed just fine. I didn’t have time to work on this problem, so I left it to the next session.

Here’s the dumbest troubleshooting idea I had. Good thing I tried it first. Somehow I thought because KDE Plasma and LXQt came from the same code framework (the Qt environment), perhaps uninstalling LXQt would free up whatever was holding Plasma back. That didn’t work. I should not have been surprised.

Fortunately, Tumbleweed offers a multitude of desktop environments, and I could regularly get work done on these other desktops without addressing the underlying issue. Variety is my favorite thing about Linux.

That availability of desktop environments led to my next theory: Is Plasma the only DE having a problem? How did any other problem manifest itself? I logged in with nine different DEs: three Plasma flavors, three GNOME flavors, Openbox, SLE Classic and XFCE.

Whether one loaded Plasma in its default configuration for the X.org windowing system or under the Wayland protocol intended to replace X (plain or “full”), I never got out of the black screen.

Interestingly, GNOME loaded normally in all its forms (plain ordinary GNOME, on Xorg and Classic) and restarted normally too. So it definitely wasn’t a memory issue, as GNOME is the other “heavyweight” in this field. Both lightweight entries (Openbox and XFCE) had no trouble either. The exception was SLE Classic, the default desktop of SUSE Linux Enterprise. Yeah, that’s KDE too.

I also tested the Plasma flavors using different VirtualBox Graphics Controllers, hoping that changing this vBox setting would resolve the issue. Nope.

Progress! Errors to track down!

I continued updating Tumbleweed regularly. I hoped that installing the brand new Plasma 5.21 desktop would solve the problem, but those hopes were dashed.

At the end of February, I noticed a bunch of error messages were appearing in the update log, claiming that many Plasma-related systemd services (plasma-*.service) were “missing from /usr/lib/systemd/system.” Aha! Something I could check on! Plasma broke because these services weren’t loading!

Perhaps those services were missing because that directory had either disappeared or the services were going to some other directory. Off to the File Manager, where nothing seemed out of the ordinary in /usr/lib/systemd/system. A search for plasma-*.service didn’t turn up those files anywhere else.

While I was waiting for that search to complete, I had one more hope of quickly resolving the issue: reverting my system back to a working state. Because openSUSE uses the btrfs filesystem, you can go back in time to where Plasma was working normally. Off I went to YaST > Filesystem Snapshots (aka Snapper). I should have thought of that sooner, because there wasn’t a snapshot available except the initial install. I wasn’t ready to start over just yet.

Oh, but wait! Maybe I can uninstall/reinstall Plasma from YaST! When trying to uninstall the Plasma pattern in YaST, I noticed that it installed many more patterns that I wasn’t expecting to see.

Among them was the MicroOS pattern, another new spin on openSUSE. I tried uninstalling that and whatever other pattern that I didn’t think I wanted. Surely that was the problem, right? After upgrading 5372 packages while removing those patterns, no fixes for displaying Plasma.

Finally, a solution!

This week, I was going to try a complete reinstall again. I downloaded the latest snapshot, blew away the old setup, and created a new system one more time.

Went through the process, took screenshots of every page to include in the Tumbleweed documentation (did I mention that was one reason I keep this VM around? That’s another story.). Tried to save myself some time by importing my user account from the previous installation. Waited for the install to complete.

Same old problem. No error messages about systemd services. No interference from another desktop’s files. Back to the beginning.

Hmm. It’s a longshot, I’m thinking, but could there be a problem with the user account? Back to YaST. Yes, I know I can easily create a user from the command line, but I’m lazy. Off to YaST > User and Group Management. Click Add, add a name, username and password. Click OK. Reboot. Change the desktop environment to Plasma on the Login page and choose the new User. Type the password and click Login.

A minute later, the Plasma desktop loads as it should and always did. Hmm, wonder what was wrong with the old user? Clearly something. I write myself a note for the next login: “Will delete OldUser, possibly after checking for any useful files.”

The next day, I log in as the new user and check the Home directory of the old/bad user — and there’s the answer!

VirtualBox allows you to share directories between the Host OS and the Guest OS. I like to make sure I can access documents from any environment I’m in, so I share the Documents directory from the Windows 10 host to the Home directory of all my VMs.

When the Tumbleweed installer imported the user account from the previous installation, it tried to include all the files in Windows! But something went wrong in the sharing mechanism, and everything just hung. Not sure yet what Plasma did differently from the other desktops, but I’m going to look into that.

So after all this effort, I think I found a bug somewhere. Candidates include:

  • The Tumbleweed installer/user importer
  • Plasma’s file manager in VirtualBox
  • VirtualBox’s Shared Folders mechanism

Will report further if I find out more. But I’m sleeping better now that I’ve solved this nagging problem. Now maybe I can decide once and for all if Tumbleweed is indeed my favorite openSUSE flavor!

openSUSE Board Chair: Nearly Pulled Plug on Distro in 2015

openSUSE logo

©2017 Michael McCallister

Richard Brown, chair of the openSUSE Linux Community Board, reported to the openSUSE Support list this week that after the release of v13.2 in 2014 he “was faced with the very real and depressing problem of having to find a way of informing the community that there would be no more releases of the openSUSE Distribution.”

Brown wrote that “the Project was struggling to find volunteers to actually help produce the distribution” dating back to the 12.2 release in the summer of 2012.

Background: Strategy and Audience

At around this same time (2010-11), the project leadership engaged the entire openSUSE community in a strategic planning exercise, covered here and here. The strategy was summarized in this paragraph:

The openSUSE project is a worldwide effort that promotes the use of Linux everywhere. The openSUSE community develops and maintains a packaging and distribution infrastructure which provides the foundation for the world’s most flexible and powerful Linux distribution. Our community works together in an open, transparent and friendly manner as part of the global Free and Open Source Software community.

It further defined the distribution’s target audience as “users who are interested in computers and want to get work done, experiment or learn. We offer a stable and enjoyable computing experience which does not limit freedom of choice; offering sane defaults and easy configuration.”

In an email exchange, Brown said that this discussion led to “conclusions end(ing) up being so generic they are not actionable.”

“In a vibrant community (which openSUSE is), open ended questions will lead to hundreds of responses, positive and negative, and forming consensus or conclusions from such noise is next to impossible.”

Brown’s account indicates that, even after the strategy and target audience was decided, the project continued to pursue a “Linux for everyone” audience. He wrote that while the distro had a “steady, loyal, and growing userbase,” new downloads (that is, new users) declined with every release.

Leaping Over the Crisis

openSUSE Leap logoWhat solved the distribution’s existential crisis was flipping the development cycle, using the commercial SUSE Linux Enterprise (SLE) code base as the basis for the stable periodic Leap distribution, and the Tumbleweed rolling release builds on each Leap release.

“Instead of openSUSE no longer having a stable distribution due to lack of contributor interest,” Brown wrote, “Leap has found new contributors in addition to the ones we effectively ‘stole’ by milking SUSE’s SLE efforts for everything they were worth. … And as a result Leap has been a bigger success than I had ever hoped for. ”

Note: Brown told me that the Tumbleweed rolling release would have continued, regardless of whether the “stable” release disappeared.

Today’s opensuse.org landing page just says openSUSE is:

The makers’ choice for sysadmins, developers and desktop users.

Brown later indicated a new document outlining the “Makers’ choice” strategy is in the works, and will be presented to the community “once we think we have a solid starting point for such discussions.”

A Few Thoughts

As a Member of the openSUSE Community,  I’m convinced the board and development team deserves kudos for rescuing this terrific distribution from its decline. As Brown told me, “We can’t appeal to (new users) when we advertise ourselves as ‘Linux for everybody’ – if we target everybody everywhere, we effectively target
nobody, nowhere.”

If you haven’t yet tried it, no matter what kind of computer user you are, come join our now-thriving community. I’ll be glad to help you.

 

©2017 Michael McCallister (contact)

Missing NaBloPoMo

For the last few Novembers, I’ve been posting at a feverish pace (for me, anyway) as part of National Blog Posting Month (NaBloPoMo). The goal is to post every day this month as a way to jump-start your writing and building an audience.

So this year, I’ve got too much going on, I’m afraid. Got some projects that may soon come to fruition, and I’ll be able to talk about them when we get there.

Tomorrow, I’ll be downloading a fresh copy of openSUSE Linux, now called openSUSE Leap 42.1, which I’m really excited about. I’m tidying up my current copy in breathless anticipation. This follows the (coincidental) installation of Firefox v42 today. As I tweeted earlier today (with the unforgivable error of getting Douglas Adams’ name wrong):

It’s a common lament: I wish I had more time to blog. What really bums me out is that I get a real good rhythm going during NaBloPoMo, and then I lose that momentum over the holidays. So I’m going to try something different this year, though I don’t really know what that will be yet.

Just because I’m not doing it, it’s not too late for you to start! November is a great time to start (or kick-start) your blogging habit. Click here to register. There are prizes!

If you participate, drop a link in the comments below.

Go look at some of my previous NaBloPoMo posts.

Plasma 5 live images for openSUSE and on the default openSUSE desktop | dennogumi.org

Source: www.dennogumi.org

Luca Beltrame of the openSUSE KDE team describes the current plans for integrating the Plasma 5 desktop into openSUSE. Long story short:

  • You can now download a “live ISO” to burn to DVD for testing on 64-bit systems.
  • At the end of April, Plasma 4 will be replaced by Plasma 5 Desktop and KDE Applications in the rolling Tumbleweed release.
  • Yet another reworking of the KDE software repositories: KDE:Frameworks hosts Plasma 5 and its libraries, KDE:Applications hosts the released programs, KDE:Extra has KDE/Qt ‘community packages’
  • No timetable on when Plasma 5 comes to the stable distribution (Good idea!).

See on Scoop.itopenSUSE Desktop

Half a dozen reasons why openSUSE is a great OS for your PC

Here are a few reasons I use openSUSE and why its one of the best choices in the GNU/Linux world.

Source: www.itworld.com

Swapnil Bhartiya summarizes his reasons for using openSUSE. I could hardly improve on this text, and heartily approve.

See on Scoop.itopenSUSE Desktop