Fedora 25 Post-Install Guide: Thinkpad X1 Carbon (2015)

I know I’ve been laid up for a little while, and I know that Fedora 25 has been out for a few weeks, but here’s my updated guide for installing and configuring Fedora 25 on the Thinkpad X1 Carbon (2015).  Not much has changed, in fact it becomes a little easier every release…more and more of the hardware is supported by the kernel by default, and Gnome is getting better with every release at dealing with HIDPI displays.  (Of course, you can ignore the HIDPI stuff if you got the model with the 1080p display.)  I still have the same issue with the fingerprint sensor – but it’s a minor issue.  It lights up any time the computer asks for a password (including in the terminal) and doesn’t turn off – even after you type in your password – until you run your finger across it.  Again, minor issue.

Not much has changed since I wrote the last one, so a lot of this is largely copied and pasted from my last guide.

Downloading the Image and Creating the USB Key

Go to getfedora.org to retrieve the F25 Workstation ISO image.  Use the method of your choise to write the USB…in previous articles I’ve written about Rufus, which works very well on Windows.  Alternatively, if you’re already running Fedora and using Gnome, you can use image writer.  I’ve found that the dd command in terminal is the best method, with the “restore image” feature in Gnome Disks being a close second.

sudo dd bs=4M if=[path to iso] of=[path to usb device] status=progress && sync

Booting from the USB Key and Installing Fedora

Pop the drive in the laptop, and press the power button.  Press enter when prompted, then F12 for temporary boot device.  Select the USB and boot into the live environment.

Select “install to hard disk,” and go through the install.  I’m not going to go through every detail, but I generally go for default options.  I blow away whatever is on my disk and start from scratch.  (You can refer to previous articles if you need to back up or image the machine prior to this.  I usually just move some files I have in my home folder over to my FreeNAS machine and call it taken care of.)

Once installation is complete, power down the machine, remove the USB key, and turn it back on.  You should be in a fully functional Gnome environment, scaled at 2X due to the resolution of the screen.

In my previous guides, I go into how to set the scaling for the windows and UI elements back to 1.  I spent some time on the last release getting used to the scaling, but I’ve returned to my method of returning the desktop scaling to 1 and increasing the font DPI.  You can see my previous guides for more information about this, or you can leave it as-is if you like.

Go ahead and connect to a network once you’ve booted…we will need it for most of the rest of these steps.

(Note: If you connect to the network from the live environment prior to installation, the settings will carry over – it doesn’t matter which way you do it, as long as you can connect once you’ve booted into the ins

Enabling DNF’s Fastest Mirror Plugin

I’ve found that the fastestmirror plugin helps reduce times for downloads and updates, so enabling it is the first thing that I do.  Use the editor of your choice for the below – my example uses gedit, since it’s already installed by default.

sudo gedit /etc/dnf/dnf.conf

Add the below line to the bottom of the file, then you’re done.


Save and exit the file.

Update the Software

As with any new installation, or before any large undertaking, we want to start with the cleanest slate possible – so you will want to go ahead and update everything (there’s already a few kernel updates out!) and reboot the machine.

sudo dnf update

This will take a few minutes – there’s a decent amount of updates.  Once finished, reboot the machine.

sudo reboot

Remove Garbage Software (Optional)

This is something I like to do…you might not want to.  But it’s all preference.  I remove some of the default apps that I never use, using the below command.  Again, totally up to you.

sudo dnf remove transmission cheese thythmbox shotwell

Add RPMFusion Repositories

I usually use a tool called fedy to do this, but at time of writing, fedy isn’t ready for F25 yet.  Luckily, you can go to their github page and look at the individual scripts…many of which helped me do some of the steps outlined here.  Much love to the folks who maintain fedy, and in a short while I’m sure that fedy will be ready for F25 and some of these steps will be obsolete.

First we add the RPMFusion repositories, which are already ready for F25.  (Note these are two commands only – try to not get caught off guard by the text wrapping that may occur.)  If you get an error saying you have to run as root, type “sudo bash” and enter your password, followed by the below commands minus the “sudo” at the front.  Be sure to type “exit” to go back to your user.

sudo rpm --quiet --query rpmfusion-free-release || dnf -y --nogpgcheck install http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm

sudo rpm --quiet --query rpmfusion-nonfree-release || dnf -y --nogpgcheck install http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

Install Favorite Applications (The Easy Ones)

I have a few favorite apps I use.  For instance, I prefer qbittorrent to transmission, and terminator to Gnome’s default terminal.  Guake is a fantastic drop-down terminal that I use regularly as well.  (A note about Guake – the default Gnome environment in F25 no longer uses xorg, it uses the new Wayland display server.  Guake doesn’t always play nice with Wayland – at least at time of writing – so if you rely on Guake a lot, you may want to select “Gnome on Xorg” instead of the default.)  VLC is a no-brainer because it will play any kind of media and can be used for a bunch of other things like transcoding video and audio files.  The Gnome tweak tool is super useful for cosmetic changes and extensions.  Geany and vim are two more text editors.  I like to have options.

sudo dnf installqbittorrent terminator guake vlc gnome-tweak-tool geany vim

Install tlp and powertop

See my previous article here for info about these if you like…but they’re good to have.  Let’s install them next, and go ahead and get the tlp service running to help extend battery life.

sudo dnf install tlp powertop

Start the tlp service:

sudo service tlp start

Tweak Font Scaling

Since I like to maximize the screen real estate, I set the font DPI a little higher.  Open the gnome-tweak-tool in system tools, and go to the fonts tab.  I find that scaling set at 1.10 works very well.

If you’re going to stick with the desktop scaling, we want to make the font a little smaller to save on screen real estate.  Open the gnome-tweak-tool in system tools, and go to the fonts tab.  I find that scaling set at 0.85 works very well.

Install Numix Theme and Icon Sets

I’m a fan of these – if you aren’t skip this step.  But installing them is fairly easy.  First enable the repository.  (Once Fedy is ready for F25, this can be done at the press of a button.)

sudo dnf copr -y enable numix/numix

Now actually install the themes and icons:

sudo dnf install numix-icon-theme numix-icon-theme-circle numix-gtk-theme

Now you can enable any or all of these in the tweak tool.  I’ve been a fan of this look for a while now.

Install Spotify and Fix Scaling

(Note that the scaling instructions below after installation only apply if you’re still using the desktop scaling – if you’re not, then Spotify looks like the rest of the OS does.)

We need to enable another custom repository to get Spotify installed.

sudo dnf config-manager --add-repo=http://negativo17.org/repos/fedora-spotify.repo

Then, install Spotify.

sudo dnf install spotify-client

If you start Spotify, you will see that it doesn’t scale at all – all of the fonts and information are tiny.  We need to fix that.  Luckily, it’s a simple as a flag in the desktop file that runs the application.  Let’s edit that file, reload Gnome shell, and re-launch Spotify.  First let’s open the desktop launcher file.

sudo gedit /usr/share/applications/spotify.desktop

Look for the line that starts with “Exec=” and change it to the following:

Exec=spotify --force-device-scale-factor=1.5 %U

Make sure Spotify is closed, and restart the Gnome shell. (ALT-F2, r, enter as before.)  Once Gnome is reloaded, start Spotify – it should look a hell of a lot better and easier to read.

Note: This repository takes a while to install – it’s been that way for as long as I’ve used it, so if it takes 5-10 minutes to install Spotify, don’t be alarmed.

Install Steam

Use the command below to add the Steam repository.

sudo dnf config-manager --add-repo=http://negativo17.org/repos/fedora-steam.repo

Then, install Steam:

sudo dnf install steam

Install Telegram

I’ve started using Telegram lately – both on my Linux desktops and my iPhone.  I really like that it is end-to-end encrypted.  Also, you can send files, pictures, all sorts of stuff.  It’s like “text messaging plus” and it’s totally free.  If you can get your friends to use it, you can essentially replace texting.  We will need to enable another repository for this one.

sudo dnf copr -y enable rommon/telegram

Then install Telegram:

sudo dnf -y install telegram-desktop

Install Atom

Atom is a fantastic text editor – in fact with all of the packages you can add, it’s basically an entire IDE.  It also uses a copr repository, so it’s essentially like installing Telegram.  Add the repository, then install Atom.

sudo dnf copr -y enable mosquito/atom

sudo dnf install atom

You’ll want to add whatever packages you like, and there are a ton of them.  Since I’m beefing up on my HTML and CSS right now, I’m a fan of autoclose-html which automatically closes HTML tags.  But you can go through the settings and learn how to use Atom and find all sorts of packages to add to it.

Gnome Desktop Extensions

This is the last item on my list!  Open gnome-tweak-tool and go to Extensions, and “add more extensions.”  There’s a ton.  My personal favorite is Dash to Dock…it allows me to put a dock on the bottom of the desktop (which intelligently hides when you maximize a window) which I find preferable to constantly going into the “activities” menu.  You can enable it, then determine the size and positioning in the settings.  There could be a ton of other extensions you might like, so that’s up to you.



So far, I’ve only identified one problem – the damn fingerprint sensor.  I personally never use mine.  But, sometimes when I have to authenticate in a terminal, etc., it continues to blink until I run a finger over it.  It in no way affects usability, but it’s a little annoying.  I’ll wait for a kernel update or two to roll out, as often these things get fixed quickly.  If it doesn’t go away soon, I’ll do some more digging and file a but report if necessary.  It still hasn’t been fixed, but it hasn’t bothered me enough to do anything about it.  If it bothers you enough, drop a comment on how you may have resolved it.

That’s it!  Let me know if you have suggestions, additions, noticed errors I need to fix, etc.

4 thoughts on “Fedora 25 Post-Install Guide: Thinkpad X1 Carbon (2015)”

  1. Great post! Spotify looks a lot better already. I’ve got the 4th Generation and almost everything works. Quick question, do you have any problems with the kernel-core? Mine crashes frequently (several times per day).

    1. Sorry for the late reply – I forget to moderate my comments and they go to the spam queue months after they are written.

      Kernel-core crashes on me occasionally, but I’ve found that the instances of that happening are greatly reduced when I shut down after a kernel update and reboot. For some reason, when I update the kernel and then keep running the laptop, I get the notifications.

      And I must note that aside from the notifications themselves, it doesn’t adversely affect me in any way.

      Good luck!

  2. Hello, if you are not using fingerprint reader, best way is to disable it in BIOS, so that disables hardware for fingerprint reader, so linux wil not use it at all.

Leave a Reply

Your email address will not be published. Required fields are marked *