How to run Fedora 21 on HP Touchsmart tm2-2101sl
I’ve always liked hybrid tablets, the ones with both a keyboard and a rotating screen. About three years ago I bought the one I’m still using today: a HP Touchsmart tm2-2101sl, excited of the new release of Fedora 21 I decided to install it right away performing a clean install.
Tip: Clean install means installing an Operating System wiping the precedent without using the update feature the precedent OS provides. When performing a clean install usually you will have to save data on a different partition or an external storage.
Let’s try Fedora 21!
Following my own guide on how to install Fedora 21 I booted it from a USB Pendrive. Started Fedora Live. And found myself with a half-broken screen:
Pretty discouraging, isn’t it?
This issue is probably caused by the absence of xorg.conf in /etc/X11/, this will cause X to try to auto-configure everything without that file. Unfortunately the tm2-2101sl is equipped (like many notebooks/tablets) with two graphic cards, and that confuses X.
So here are the steps I took in order to make X work again:
- First you have to enter in tty2 by pressing ctrl+alt+f2. You will find this message:
Fedora release 21 (Twenty One) Kernel 3.17.4-301.fc21.x86_64 on an x86_64 (tty2) localhost login: _
If you can’t get this message, try again pressing the key combination, and if it doesn’t work try using ctrl+alt+f3 and so on, until you get this output. If you can’t enter a tty you can’t continue, and probably you got a different problem.
- Write liveuser and press ENTER:
Fedora release 21 (Twenty One) Kernel 3.17.4-301.fc21.x86_64 on an x86_64 (tty2) localhost login: liveuser [ENTER] [liveuser@localhost ~]$
- From this point you need root privileges, so switch issuing sudo su. You can confirm the switch by looking at the prompt:
[liveuser@localhost ~]$ suso su [ENTER] [root@localhost liveuser]#
- Now switch to runlevel 3 by issuing init 3. You will change briefly screen, switch again using ctrl+alt+f2.
- Run the command X -configure :1 and you will get a similar output:
X.Org X Server 1.16.1 Release Date: 2014-09-21 X Protocol Version 11, Revision 0 Build Operating System: 3.16.3-200.fc20.x86_64 Current Operating System: Linux localhost 3.17.4-301.fc21.x86_64 #1 SMP Thu Nov 27 19:09:10 UTC 2014 x86_64 Kernel command line: initrd=initrd0.img root=live:LABEL=UUI NULL=Fedora-Live-WS-x86_64-21-5 rootfstype=auto ro rd.live.image quiet rhgb rd.luks=0 rd.md=0 rd.dm=0 BOOT_IMAGE=vmlinuz0 Build Date: 03 October 2014 01:18:58PM Build ID: xorg-x11-server 1.16.1-1.fc21 Current version of pixman: 0.32.6 Before reporting problems, check http://wiki.x.org to make sure that you have the latest version. Markers: (--) probed, (**) from config file, (==) default setting, (++) from command line, (!!) notice, (II) informational, (WW) warning, (EE) error, (NI) not implemented, (??) unknown. (==) Log file: "/var/log/Xorg.1.log", Time: Thu Dec 11 06:48:07 2014 List of video drivers: ati openchrome vmware intel radeon qxl nouveau vesa fbdev modesetting (++) Using config file: "/root/xorg.conf.new" (==) Using system config directory "/usr/share/X11/xorg.conf.d" (II) [KMS] Kernel modesetting enabled. Xorg detected your mouse at device /dev/input/mice. Please check your config if the mouse is still not operational, as by default Xorg tries to autodetect the protocol. Xorg has configured a multihead system, please check your config. Your xorg.conf file is /root/xorg.conf.new To test the server, run 'X -config /root/xorg.conf.new' (EE) Server terminated with error (2). Closing log file.
- Don’t fear the error at the end of the file, now you have your configuration file. Now we just need to copy it in the correct directory by using:
cp /root/xorg.conf.new /etc/X11/xorg.conf
- As now the file is working, but X would act like having two screens, we have to fix that by modifying /etc/X11/xorg.conf . To do so we’ll use vi text editor, so use the following command: vi /etc/X11/xorg.conf. What you’ll have in front of you is the file itself. Look for the first part:
Section "ServerLayout" Identifier "X.org Configured" Screen 0 "Screen0" 0 0 Screen 1 "Screen1" RightOf "Screen0" InputDevice "Mouse0" "CorePointer" InputDevice "Keyboard0" "CoreKeyboard" EndSection
Use shift+I to enter the insert move, and move toward line 4, now just add a #. Here’s how it should look like:
Section "ServerLayout" Identifier "X.org Configured" Screen 0 "Screen0" 0 0 # Screen 1 "Screen1" RightOf "Screen0" InputDevice "Mouse0" "CorePointer" InputDevice "Keyboard0" "CoreKeyboard" EndSection
Now press esc write :wq and press ENTER.
- Lastly switch back to runlevel 5 by using init 5.
Beware: This procedure’s effect will vanish upon restart, so if you decide to install, you will find the same situation on the first boot and will have to repeat the procedure, or just copy your actual xorg.conf to the newly created system. Unfortunately, to apply the latter, the exact commands vary depending on your disk layout/installation options hence I can’t guide you further. :)
Finally I could see the familiar Fedora “welcome” screen:
Everything worked like a charm (wifi/wacom touch and pen/audio/eth, EVERYTHING). Switching from Fedora 20 to Fedora 21 is a great step, and having it installed on my tablet makes me happy (I don’t quite like how it sounds, in my mind nowadays tablet equals ARM in other people’s minds, mine is a fully fledged x86_64 :3). Let me go and grab some chocolate.