Fight for the Internet 1!

Friday, May 31, 2013

Experience Moving to Fedora 18

Background

So after eight long and mostly very good years of using Ubuntu, I have finally been made to jump ship. It's funny how things sometimes all happen at the same time.

Conclusion

Fedora is a different place than Ubuntu but it's also nice. Both of them are. I think it is a testament to the quality of Fedora that it has not been difficult to find equivalents options and alternatives for most of what I want.

I think some of the problems I was having with Ubuntu when I left it were probably atypical. But I'll list them anyway, if only for my own memory.

1) Desktop Loading: When booting up, Kubuntu would load 90% of the desktop but then would hang for a period of 10 to 20 seconds. I could see everything and I could invoke certain actions but not everything. Then suddenly it would finish. At first I thought this last was from running Skype but now I'm doing that in Fedora and it's not slowed down at all.

2) Bootup Speed: Fedora boots up faster than Ubuntu / Kubuntu for me. Though admittedly I thought the graphics for prompting me my decryption password on bootup were better from Kubuntu than Fedora.

Why / The Reason I Switched to Fedora

The Big Reason: No More KDE

So if you don't know, Ubuntu is going their own way with their graphic display server Mir instead of using Wayland. Those are big complicated stories and issues which I won't detail here, but the one all important thing that came out of it was this:

The KDE people will not support Mir at this time, nor possibly ever based on decisions the Ubuntu team is making.

This is not to vilify Canonical in anyway. They can do what they want and I've liked and disliked decisions from every group at one time or another. Check out the articles on Phoronix about the subject, as they have better source links than I care to list here.

I have used KDE since the beginning in Linux and it's without question my all time favorite Desktop Environment, bar none. It is also, without question in my opinion, a far superior desktop than Gnome2/3 is, and I always recommend it to anyone who is knew to Linux. (Personally I've always felt that Gnome2's paradigm to be too much of a shock to any Windows immigrants to Linux, and I'm not friends with any Mac users savvy enough to handle even a two-button mouse.)

Just to be clear I don't hate Gnome. This is only my opinion. I am sure someone reading this will think I am foolish for pointing people to KDE because of instability. Yes, the initial KDE 4 release was a disaster which I still to this day don't understand why it happened. But if anyone reading this thinks Gnome is flawless, I only need point to Gnome3 to win my argument handily.

Ahem, moving on... sorry for the sidetrack.

KDE is far FAR more important to me than any underlying OS. It is my life in Linux. So if Ubuntu will no longer even support KDE being run on it as a community project, sadly they have no place for in my life anymore.

The Smaller Reasons: Stability Headache

I've used KDE for over 8 years, through stable and unstable times. But strangely, just as I upgraded to Kubuntu 13.04 and all the minor instability issues I suffered from KDE 4.9 (damn you Kubuntu for not upgrading to KDE 4.10 sooner!), suddenly I had to very real and serious problems. 

I use Firefox and the Pidgin instant messenger client every single day for almost every moment my computer is on. Suddenly when I upgraded, Pidgin began to lock-up and crash, which often was associated with a lock-up and crash of Firefox!

I don't know why and all attempts on my part short of running Pidgin in a debugger have failed to unearth the program or fix it. Compiling Pidgin freshly from source code doesn't seem to fix the bug either.

I strongly suspect this may be an error in a library for system resources/services that both Firefox and Pidgin use. But I am only guessing.

With these two critical program not functioning in my life, I had to make a change.

After having moved to Fedora, it has been extremely solid and reliable. In fact so much so that it has made my prior Kubuntu 13.04 KDE 4.10.2/4.10.3 desktop look shameful. Time will tell just how stable but so far first few days of light usage are very good.

Experiences of Moving / First Impressions of Fedora

Anyway, here is a list of some of my experiences moving to Fedora 18, after being in Ubuntu for so long.

Now I picked Fedora for several reasons. It's a very popular distro with good documentation and community. It supports KDE thoroughly, and tends to get about as much attention as possible behind Ubuntu itself.

The Fedora Installer

The Fedora installer needs a little polishing when it comes to smoothness and ease for completely new users. I managed just fine after clicking around a bit, but it still needs work.

Bad: First off, the buttons for clicking "OK" or "Done" are in unusual places. They are in the top area and on the left sometimes. This is not normal for almost all desktop applications. But I do understand this may be done because of needing to conform to different screen sizes. This would assure that the buttons would always be somewhere visible on screen. Still, this was a bit jarring to a new user. But the buttons weren't the only thing. Maybe I've been too long in Ubuntu's camp and I'm biased but I felt the flow of the decision making wasn't as guided as it could have been.

Good! / Bad: A major point I will acknowledge in favor of the Fedora Installer is the Hard Drive configuration system. But at the same time I must also critisize it for being slightly confusing.

The good point was that it allowed a fair deal more control and fine tuning that the Ubuntu/Kubuntu installers did. I could choose to encrypt multiple harddrives if I wanted, and also make larger volumes. This is an option Ubuntu has been promising for well over a year but continues to push back and we've not seen it yet.

At the same time I found their workflow and decision guiding needed a bit more hand-holding. I did eventually figure out how to use their partition manager/editor, and I have to say it works pretty well. But I was left with a distinct impression of lacking workflow. It didn't seem like I had a starting point and an ending point when I began editing my partitions. UPDATE: After doing this a few times as I migrated my other machines, I have learned to use their workflow model better, so it's not quite as rough as before.

So this is a mixed point on the review, but overall I have to give them a silver-star here for giving a lot more options when installing to your harddrives than Ubuntu. Perhaps the amount of options is the reason the workflow isn't so obvious to me; many options make that difficult to architect

Neutral: When I let Fedora auto-partition my system, it split the 128GB disk into two partitions. It gave about 50GB of space on my drive to OS and the rest to me. I have seriously mixed feelings about this.


Apper / Yum

Finding Apper: This was the first big problem I hit when using Fedora 18 with KDE, using the software updater is broken. It took me a moment to find Apper, which is the Software Management front-end in Fedora KDE. That was partly my fault. I looked for the words "Update" and "yum" but didn't get any results. Browsing under the category "All Applications" -> "System" didn't show me anything.

But I soon found Apper just sitting in my Favorites menu by default. I suppose my only suggestion is to also list it under the System category, because that's obviously where it also belongs.

Using Apper: Apper seems okay but a bit slow for a pro user, in several ways. The searching for items should be search-as-you-type.

Second and more importantly: When you finally click install there needs to be a better progress indicator. I tried using Apper to update my system, selected all 552 packages to update, and clicked install. It started, resolved dependencies, and then sat at 10% progress for many minutes. I thought the program had crashed so I cancelled and closed it. By then the system had asked me to reboot, which I did and tried this again. Same result but this time I couldn't even cancel out of Apper gracefully, so I rebooted a third time. This time I used Yum on the commandline and that was fine. (In fact I'm quite impressed with Yum.)

I only found out later that Apper really was working. I believe it was downloading the packages in the background but not showing me any progress indicators. This is a failure of user-interface design-101 people. Don't leave the User thinking their system has stopped responding.

Still, not a terrible experience. But I'll probably be using Yum or DNF from now on anyway. But as of right now I couldn't recommend Fedora to a newbie Linux user because Apper fails so badly in this regard.

Touchpad Tapping

Strangely, my touchpad works fine for navigation but doesn't work at all for tapping. I have no idea why and this has NEVER happened before in any distribution of Linux I've ever used.

UPDATE: I fixed this problem today! I had to go to System Settings -> Input -> Touchpad -> Tapping and under the Buttons section I had to assign actions for the different types of taps. I have never EVER had to this before but once I realized this was the problem, it was very easy to do. I'm not even mad at Fedora, though I hope they set some good defaults soon.

SSH / SSHD and SELinux

Long story short, I'm having severe troubles getting my ssh-daemon (sshd) to run on any port different than 22. I don't know if it is SELinux or the Firewall or what exactly that is causing the problem.

It's been a pain to get it to use my provided SSH-keys. Had to turn off GSSAPI options because they were really slowing down initializing of connections.

I'm going to look into fixing these, since obviously SSH can be made to run correctly under Fedora.

Hostname

A somewhat neutral comment: Fedora never asked me to set the name for my system. It is clearly an easy thing to do but for a new-Linux user, this wouldn't be apparent. I figure they should have asked.

Amarok

Back in Kubuntu/Ubuntu, my instance of Amarok was horribly unstable. It's been much better since I migrated to Fedora. It's not the versions; I've checked.

Wednesday, May 29, 2013

Firefox sessionstore.js recovery

So randomly today Firefox corrupted itself while I was using Google Drive. It stopped allowing me to edit the document, then refused to reload the page, or any other Google Drive document. Then when I closed and reopened the browser, all my 100+ tabs in various tab groups were gone, including my pinned tabs. I suspect it was because I had two Firefox windows open at the same time that might have caused the problem, but I'm honestly not sure.

Here is the simple way I managed to restore the tab data.

For those who don't know, the sessionstore.js is where Firefox keeps your tab data. Checking my Firefox profile's directory (which was ~/.firefox/MyBrowser/), luckily my sessionstore.js and sessionstore.bak file were both large and full of the tab data. You should find those two files and make a backup of them immediately.

The sessionstore.js is in fact one big JSON file.

On Ubuntu, I installed the package "yajl-tools" which stands for "Yet Another JSON Library". I did this to give me the JSON commands: json_verify and json_reformat.

My first thought was the sessionstore.js was somehow corrupt, but json_verify did not agree with me. Sending my sessionstore.js to json_reformat


I ran this command from command line to check if my file was okay:
cat sessionstore.bak| json_verify
If you get a message saying okay, then proceed to the next step. This command reformats the
cat sessionstore.bak | json_reformat >sessionstore.js
Next open the  sessionstore.js. I found that all the tabs were not being restore because they had been moved to the '_closedWindows' section.

View of my sessionstore.js from the top:
 {
    "windows": [
        {
            "tabs": [
                {
                    "entries": [
                        {
            ..........

This section had no real tabs. I could tell this should have been filled with data but was empty. Lower down in the file was the "_closedWindows":, which is where all my tabs had gone.

  "_closedWindows": [                                                                                                                 
        {
            "tabs": [
                {
                    "entries": [
                        {
                            "url": "https://mail.google.com/mail/u/0/?ui=2&shva=1#inbox?compose=new",
                            "title": "Inbox (7) - bob@gmail.com - Gmail",
                            "subframe": true,
                            "ID": ....,
                            "docshellID": ....,
                            "docIdentifier": ...
                        },
                        {
                            "url": "https://mail.google.com/mail/u/0/?ui=2&shva=1#inbox?compose=new",
                            "title": "Inbox (7) - bob@gmail.com - Gmail",
                 ..............

So I opened the file in sessionstore.js, copied the the 'tabs' section(including the header) under '_closedWindows' to 'windows' where it should have been, deleted the original and everything is running smoothly again.

Final form of my of my sessionstore.js from the top:
 {
    "windows": [
        {  
            "tabs": [
                {
                    "entries": [
                        {
                            "url": "https://mail.google.com/mail/u/0/?ui=2&shva=1#inbox?compose=new",
                            "title": "Inbox (7) - bob@gmail.com - Gmail",
                            "subframe": true,
                            "ID": ....,
                            "docshellID": ....,
                            "docIdentifier": ...
                        },
                        {
                            "url": "https://mail.google.com/mail/u/0/?ui=2&shva=1#inbox?compose=new",
                            "title": "Inbox (7) - bob@gmail.com - Gmail",
                 ..............
 Hope that helps. Source taken from here: http://dag.wieers.com/blog/what-if-firefox-loses-your-tabs


Friday, May 10, 2013

Kmix Volume Increment

I recently upgraded to KDE 4.10 and noticed that when I scroll over Kmix to increment/decrement the volume, I no longer had the fine control I liked. It would jump the volume by a whopping 15% with each scroll!

Now that's way too much for me, so here's how to give yourself finer control of Kmix's volume changes.

  1. Close and quit Kmix.
  2. Open the file ~/.kde/share/config/kmixrc
  3. In the [Global] section, add this line:

    VolumePercentageStep=1.0
  4. Close the file.
  5. Open Kmix
  6. Enjoy

The 1.0 supposedly means 1.0%, but don't call me on that one.