Rocket League under Linux: “There has been an error connecting to the Rocket Leauge servers please try again later”


Source: wikipedia.org

One of my favorite games actually is Rocket League. It’s competitive, supports splitscreen (yes, even on PC), makes a lot of fun and now it’s also available for Linux. I played Rocket League before as it was a part of the PS Plus monthly free games months ago. Now that Rocket League has official arrived for Linux, I decided to buy this game on Steam as well.

Unable to connect to servers

Well, the bad thing was, after I started the game, the following message appeared:

There has been an error connecting to the Rocket Leauge servers please try again later

I started to check my network connection, was googeling if the Rocket League server were down and so on. Then I started to feel that this has something to do with my distribution (for the records, I’m actually using openSUSE Tumbleweed, a rolling release distribution). After a short time of searching the web I found the solution for the problem. For openSUSE you simply have to issue the following command as root or with the //sudo// command:

user@opensuse:~$ sudo ln -s /etc/ssl/ca-bundle.pem /etc/ssl/certs/ca-certificates.crt

This command creates a symbolic link which can later be found in ///etc/ssl/certs/ca-certificates.crt//. The link itself points to ///etc/ssl/ca-bunble.pem//. Rocket League needs this certificate to connect to their servers. It’s looking in the directory ///etc/ssl/certs// for the certificate which can’t be found. To solve this, we need the symbolic link of the certificate file where it is originally stored in openSUSE Tumbleweed (which is ///etc/ssl//).
The solution for this problem was originally discussed at the Steam community site: Link.

Restart Rocket League and you should be able ready to go. Please keep in mind that the path of the certificate can differ if you use another distribution. Anyway the target path (which is ///etc/ssl/certs///) is always the same.

Good luck and have fun with a working Rocket League 🙂

How To get your Realtek RTL8111/RTL8168 working (updated guide)

Realtek Logo
Image Source: wikipedia.org

A lot of people will remember my guide how to get a RTL8111/RTL8168 running under your Linux box. This guide is almost 5 years old now and I wanted to make a complete overhaul, because a lot of things has changed since then.

Why do I need this driver anyway?

Some people asked me, “Why do I need this driver anyway? Doesn’t the Linux Kernel ship it?”. This is of course a valid question. As far as I can see this, the RTL8111/RTL8168 is not Open Source and this would be of course the reason why the driver isn’t included into the Linux Kernel. As long as the driver isn’t Open Sourced, we have to build it on our own.

The installation methods

A lot of things have changed since I written the initial article about how to compile the driver under Ubuntu / Debian. Today we can use 2 methods for installing the driver. The following lines describes both of them.

The automatic way

NOTE: Thanks to the user “Liyu” who gave me this hint!
NOTE2: For this way you need a working internet connection. You could use WLAN or a USB ethernet card like this one to get a temporary internet connection. You could also download every needed single package onto USB from another PC and install them in the right order.

As I said ealier, 5 years is a long time. And today Ubuntu and Debian have the driver included in it’s repository. For Debian you have to enable the non-free package sources. For Ubuntu you have to enable the universe package sources. You can easily do this by open your /etc/apt/sources.list as root with your editor of choice and add for each line starting with “deb” non-free or universe at the end. So for example, if you use Debian a line like:

deb http://ftp.de.debian.org/debian/ jessie main contrib

would become to

deb http://ftp.de.debian.org/debian/ jessie main contrib non-free

The same for Ubuntu:

deb http://de.archive.ubuntu.com/ubuntu/ xenial main restricted

would become to

deb http://de.archive.ubuntu.com/ubuntu/ xenial main restricted universe

After this you have to do a:

sudo apt-get update

You can of course use graphical ways to enable non-free or universe. After you enabled the missing package repository, you will be ready to install the driver. This can be easily done with the following command:

sudo apt-get install r8168-dkms

The procedure will take some time, depending on your CPU because the driver will be build for your working Kernel. The good side is, that if any Kernel update happens on your machine, the kernel will be rebuild against the new Kernel automatically after the update because of the use of dkms.
After the procedure is finished, you should be able to use your network card instantly. If not, you should consider a reboot of your PC then.

The manual way

Well, the manual way is almost the same as it was before in the initial article. Anyway, I want to rewrite the steps here again. This is also tested against newer Kernels ( >= 4.0) which caused a lot of trouble for some people in the past.

  • 1. Install dependencies: Once more you need a working internet connection for this. You could also use the Debian or Ubuntu DVD which includes the needed packages. To install the dependencies just enter the following command:
    sudo apt-get install build-essentials
  • 2. Download the driver: You can download the driver from the official Realtek homepage. This is the link: click me. From the table, select the “LINUX driver for kernel 3.x and 2.6.x and 2.4.x” for download.
  • 3. Blacklisting the r8169 driver: The r8169 is loaded when the r8168 is not found on your system. This will give you a network and internet connection, but with the r8169 driver your RTL8168 card will be very unstable. This means slow download rates, homepages taking hours to load and so on. To avoid that the r8169 is loaded, we blacklist it. This is be done by entering the following command:
    user@linux:~$ sudo sh -c 'echo blacklist r8169 >> /etc/modprobe.d/blacklist.conf'
  • 4. Untar the archive: After you successfully downloaded the driver, cd into the directory where the driver is downloaded and untar the driver with the following command:
    user@linux:~$ tar xfvj 0005-r8168-8.042.00.tar.bz2

    NOTE: Your tar filename can of course differs if you download a newer version in the future for e.g.

  • 5. Compiling and installing the driver: Now we have to start compiling the driver. For this you cd into the extracted directory:
    user@linux:~$ cd r8168-8.042.00

    NOTE: Don’t forget to change your version number in the future here.
    Now that you are in the right directory, we can start with the real compiling process. For this Realtek brings an easy to use script which is called autorun.sh. So, to start compiling and installing the driver enter:

    user@linux:~/r8168-8.042.000$ sudo ./autorun.sh

    You should see a output which looks like this:

    Check old driver and unload it.
    rmmod r8168
    Build the module and install
    At main.c:222:
    - SSL error:02001002:system library:fopen:No such file or directory: bss_file.c:175
    - SSL error:2006D080:BIO routines:BIO_new_file:no such file: bss_file.c:178
    sign-file: certs/signing_key.pem: No such file or directory
    Backup r8169.ko
    rename r8169.ko to r8169.bak
    DEPMOD 4.4.0-31-generic
    load module r8168
    Updating initramfs. Please wait.
    update-initramfs: Generating /boot/initrd.img-4.4.0-31-generic
    Completed.

    You can ignore the SSL error for now. The driver should be successfully compiled and installed into your system. The driver is already loaded and should work.

  • 6. Check the driver: As a final step, you could start checking if the driver is really loaded into your Kernel. For this you can use the command lsmod. lsmod lists all drivers, which are usable by your Kernel. So, if everything was successful, you should see an output like this:
    user@linux:~/r8168-8.042.000$ lsmod | grep r8168
    r8168                 491520  0

    You can also check as well your ethernet device directly to see if the correct driver is loaded (special thanks goes to Tim which posted this in the comment section):

    user@linux:~$ sudo ethtool -i enp1s0
    driver: r8168
    version: 8.042.00-NAPI
    firmware-version:
    expansion-rom-version:
    bus-info: 0000:07:00.0
    supports-statistics: yes
    supports-test: no
    supports-eeprom-access: yes
    supports-register-dump: yes
    supports-priv-flags: no

    NOTE: You have to the change enp1s0 to the device name of your network card of course. This can be eth0, eth1, enp2s0, and so on.

    If your driver isn’t loaded until now, you should go with a reboot before further investigation.

That’s it

And that’s it. Now you’re ready to use your RTL8168/RTL8111 with the official Realtek drivers. If you have any questions and / or suggestions, please let me know in the comments.

Linux Mint: MDM fails to load after login

[Linux Mint Logo]
Image source: wikipedia.org

Some annoying problem has been occured on one of the client machines I work with. Every time when I tried to login, the MDM has thrown an error which says that it was unable to login due to undefined commands and variables. The client runs Linux Mint 17, but the problem happens with 18 as well.

The problem

If I tried to login MDM failed to load Cinnamon, Gnome, MATE or whatever I tried to use. If I expanded the error login message, it reported, that it was unable to use the additional scripts for the profiles, which were stored in /etc/profile.d/. This scripts, which are made by myself for a longer time now, are using a lot of specific bash stuff (variables, built-in commands, and so on).
Sadly, the MDM XSession file comes with a /bin/sh shebang which does not have the same spectrum of commands as bash.

The solution

The solution is rather simple. If MDM yells, that it is unable to load the Desktop because of a script error due to a file which is located in /etc/profile.d you simply have to modify the XSession script which comes with MDM.
The XSession Script for MDM is located at /etc/mdm/XSession. A simple change of the shebang does solve the problem. Just change the first line of the XSession file from

#!/bin/sh

to

#!/bin/bash

and you should be able to successfully login again.

You should always keep an eye of possible MDM updates. If the MDM Login Manager is updated on your system, it’s very likely, that the XSession file is getting overwritten and you will have the do this change again.

How to get your XBox 360 Wireless Controller working under your Linux box

Xbox 360 Wireless Controller, source: wikipedia.org
Image source: wikipedia.org

 

A lot of games today need a controller … yes, even on PC you can’t ignore that fact.

One of the best controllers out there in the wild is (IMHO) the XBox 360 Wireless Controller from Microsoft. The Wired version of this controller can be easily connected through Plug & Play. The standard loaded driver xpad then can handle it.
But what do you have to do if the controller is the wireless Version?

1. First things first

You need of course a receiver which gets all the signals that are sent from your controller. This receiver is (normally) not included when you’re buying the controller. The receiver also comes from Microsoft and costs ~ 19,-€ here in the EU. I have also seen some third party products here which are way more cheaper, but actually I really can’t say if they are working that well.
After you plugged in the receiver, the kernel will recognize it but yet it is actually unable to do anything.

 

2. The driver

As I mentioned before, if you’re useing the wired controller, then you have to nothing to be worried about. Everything will work out of the box.
Anyways, for the wireless XBox 360 Controller you need a driver which is called ‘xboxdrv’.

Under Ubuntu and Debian this driver can be easily installed with apt. This means the driver is already available in the repositorys:

sudo apt-get install xboxdrv

In openSUSE the driver is also in the official repositorys as long as you are on openSUSE Tumbleweed or Leap (42.1):

sudo zypper install xboxdrv

For Fedora, Arch and any other distribution you have to check for your owner whether you need a extra repository for the driver or not.

 

3. Start the driver

Starting the driver with default settings is rather simple. The following command starts the driver with default settings:

sudo xboxdrv

If you didn’t unloaded the xpad driver before you will run into an error message that the driver couldn’t be loaded because the xpad driver is already loaded.

To unload the xpad module you can use ‘rmmod xpad’ or let the xboxdrv do that for you:

sudo xboxdrv --detach-kernel-driver

Now you should see something like the following output on your terminal window:

Controller: Xbox 360 Wireless Receiver
Vendor/Product: 045e:0719
USB Path: 005:004
Wireless Port: 0
Controller Type: Xbox360 (wireless)

Your Xbox/Xbox360 controller should now be available as:
/dev/input/js0
/dev/input/event19

Press Ctrl-C to quit, use ‘–silent’ to suppress the event output

So this means, you’re ready to go. Useing buttons and pads on the controller should create tons of output which you can ignore. Do disable this output add the ‘–silent’ option to the xboxdrv command:

sudo xboxdrv --detach-kernel-driver --silent

Now you should be able to use your XBox 360 Wireless controller with almost every native Linux game which is available.

 

4. Useing xboxdrv with WINE
For useing xboxdrv with WINE there are a lot of tutorials out there. Some of them recommend to install a mapper which will map controller keys to keyboard keys and many other solutions. For me the simpelst way was to simply add the following parameter to the xboxdrv command line:

sudo xboxdrv --detach-kernel-driver --silent --mimic-xpad

The “–mimic-xpad” option says the xboxdrv driver that he should act and perform like a controller that is connected to your Linux box as an xpad Controller. Now you should be also able to use your controller under WINE games.

NOTE: I recently bought Dark Souls: Prepare to die edition from the Humble Bundle Sping Sale. This game does not come native to Linux but works well here with WINE. To get the correct mapping of your XBox 360 Wireless controller here you have to start xboxdrv like this:

sudo xboxdrv --detach-kernel-driver --silent --mimic-xpad --buttonmap 1=3,3=1,2=4,4=2,rt=start,lt=back,start=rt,back=lt --ui-buttonmap guide=KEY_LEFTSHIFT+KEY_TAB,rt=KEY_END,lt=KEY_G

If you want to play Dark Souls I with a controller on your Linux box with WINE, you have to add the “buttonmap” section to your xboxdrv command. Otherwise the B-Button in game will be the X-Button on your wireless controller for e.g.
Of course, this “buttonmap” section only works with Dark Souls I for now. Other games, other button mapping. You should consult the AppDB from WINE to find the right button mapping for your game.

Cockatrice RPM Packages are online!

Hello out there,

well, some of you already know, that I’m useing openSUSE beside Debian and Ubuntu, too.
At the beginning of this year, I’ve added a Ubuntu PPA for easily installing Cockatrice under Ubuntu, but today, there also exists a RPM for openSUSE users out there.

For building this RPM file I’ve used the openSUSE Build Service (which is just an awesome part of software). I like the way how packages are built this way much more than the way Debian (or Ubuntu) is doing this. Also the Build Service is much better in handling for me than PPA is (I just say “Webclient”). 🙂
But well, both, PPA and Build Service, helping me a lot to build my packages and I’m happy to use both to get my packages distributed 😉

Long story short, every openSUSE Tumbleweed, Factory, 12.2 and 12.3 (RC) user is now possible to use the “One-Click-Installer” to get cockatrice installed. Just goto opensuse.org and search for the “cockatrice” package or use the “One-Click-Installer” Button below to install the package for your openSUSE version:

openSUSE 12.2:
1-Click-Installer openSUSE 12.2

openSUSE 12.3:
1-Click-Installer openSUSE 12.3

openSUSE Tumbleweed:
1-Click-Installer openSUSE 12.3

At least I have to say: Have Fun with MTG and Cockatrice on openSUSE 😉

Greetings
ReCon

PS: I would glad about a commentary if you use this Repo … just for my self statistics 😉

Cockatrice, a MTG client

Greetings everbody,

do you know about the small program Cockatrice? Well, you can play the good old “Magic The Gathering” with it … for free.

It supports Network play and you’ll also be able to create you own decks with the latest editions which are available on the market. There is no AI or automatic rule management (like in the original MTGO Client) available, but it’s more than enough if you want to try new decks or if you just want to play some games with your friends.

Actually there is know Linux binary and, or DEB / RPM package to download, so you have to build it from the source. But if you use Linux Mint or Ubuntu (or the derivates) you’ll be able to use the following PPA:

https://launchpad.net/~s-elser/+archive/cockatrice

This PPA is mainted by myself and you’re welcome to use it. To easily install Cockatrice under Ubuntu or Linux Mint, do the following in a terminal session:

sudo add-apt-repository ppa:s-elser/cockatrice
sudo apt-get update
sudo apt-get install cockatrice

Than you have to wait a little bit and you’re ready to start cockatrice.

Even if the version number (20120702) looks “old” it isn’t at all. This version is the latest stable version released from the Cockatrice devs. If there is gonna be a new version out there, I will be uploading it into the PPA as fast as possible 🙂

Greetings
ReCon

Unity, KDE, GNOME-Shell and the other DEs

Greetings readers,

I’m actually torn between the Desktop Enviroments at my Ubuntu 12.04 installation. I’ve tried KDE, Unity, GNOME Shell, GNOME Panel and at least Xfce.

At my first steps with Linux I was very familiar with KDE. The easy reason: it’s more Windows like. So I started at this time with SUSE 9.x and KDE 3.x, and it was just awesome!
Well, KDE 4 at the beginning was … let us say “a giant grizzling kid”. But since the latest versions it actually has grown up and I’ve tested it so many times so that I can say “Yes, it’s useable again!”. Anyway, I don’t want to roll back to KDE. Don’t get my wrong, I love Qt and C++ (for the development), but I actually don’t want to tune my desktop as much as I can, just to get a useable and good looking DE for me. People who just came from Windows and want to work on nearly the same way as they did under this OS, they can just go with KDE and I’m sure they will be happy. Also, people who want to configure every howsoever small thing at their DE are doing nothing wrong with useing KDE.
For myself, I have actually clear things, which I wanna do with my desktop. Compiling with GCC, bash access, the possibility to get onto my servers via SSH, surfing and checking my mails and at least, playing some games, but anyway the last point I have to do under Windows or my PS3 …
Over time of useing Linux and their DEs I found out, that I don’t need a high customizable desktop, I just need one who helps me to get my things done. Unity and even GNOME Shell are both desktops who gave me this possibility. And both aren’t that bad looking, which is a very nice side effect. Sure, you have to learn how to deal with some new features and ways to work but if you one time know, who to deal with this both new DEs, you will profit from it.
For example, even at the time I was useing KDE, I started to get programs running with the help of “ALT+F2” (KRunner). So, the SUPER key useage at Unity and GNOME Shell is the best way for me to start my programs.
Yes, I have to say, I like both desktops GNOME Shell and Unity. But if I would get forced to just pick one of those, I would go with GNOME Shell. But you know what, I’m useing Linux, so I didn’t get forced to anything 😉

I also looking sometimes to the GNOME Panel, better known as “GNOME Fallback”. For me it is also useable. It brings me the GNOME 2 feeling back and with the combination of ALT+Right click I’m also able to add new stuff to my panels. Well, I read always that there isn’t the whole stuff available for the GNOME 3 Panel, which was available for GNOME 2, but I personally just used the “Process Monitor” applet as additional stuff on GNOME 2, which is also available under GNOME 3 Panel.

That said, I’m actually useing some “hybrid modes” for myself. At work, I have an instance of Ubuntu 12.04 with GNOME Panel and an instance of openSUSE Tumbleweed with GNOME Shell running. I’m also thinking about to install GNOME Shell under Ubuntu, too.
At home my notebook is running Ubuntu with Unity and GNOME Panel. I like to use Unity when it comes to mobility and I like to use the classic GNOME Panel when it comes to “workstation replacement” (this means the notebook connected to a monitor for me).

Anyway, use what you want or better, use what’s fits best for you. You want have new (eventually smarter) ways to work and you don’t need a high customizable DE? Try GNOME Shell or Unity. You want the possibility to configure everything at your DE? Try KDE! You want a high customizable DE with lower consumption of RAM? Try Xfce.

Have a nice day 🙂