Lenovo E431 and Brother HL-3045CN Printer with Arch Linux

January 12, 2014 / Arch, Linux Unix QNX, Brother, Printer, GNOME, Lenovo, E431

For the past year I used my own monitor from home at work and tried to make do with my 6-year old ultraportable whenever I had to be out and about. However, it’s now time to upgrade. I ordered a Lenovo E431 laptop and a 24" monitor during last year’s Black Friday sale.

Ubuntu has been my Linux distro after my years with Gentoo. I installed Ubuntu 13.10 first on the laptop and found that after installation the touchpad did not work. I then tried 12.04 LTS and found the same issue. I had been reading up on Arch Linux and decided to give it a go at this point.

Arch Linux Installation

Installing Arch is pretty easy in my opinion. Perhaps it’s because I’ve been through the even more difficult installation process for Gentoo back in the days. For Arch, I found the Beginner’s Guide to be quite good. I just followed the instructions there, got my wifi up, and installed the rest of the system.

Since I don’t have the choice of Unity UI from Ubuntu, I decided to give GNOME 3 another try. Turns out I love it even more than Unity! I particularly like the put windows extension which allows me to quickly tile my windows however I want.

Aside from the base, I also added:

Trackpoint on Lenovo E431

My touchpad worked after installation and supports multi-finger scroll just fine. The trackpoint (the red little nob in middle of keyboard) also worked fine. However, the right click button and the middle click button for scroll didn’t work out of the box.

I am a vim user so I really appreicate the trackpoint and not having to move my hand very much. I wanted to get the trackpoint fully working. Lucky someone has done the hard work.

On Arch, you have to install xf86-input-evdev-trackpoint from AUR and configure things similar to LimaSierra’s post on the forums.

Brother HL-3045CN printer on Arch

At work we have a Brother HL-3045CN printer, to get it to work I had to follow the wiki for cups and install the Linux driver from brother.com.

I did the install at work, so didn’t have time to package it all nice in a PKGBUILD yet. Nevertheless, there are the instructions.

  1. Make sure you have rpmextract installed

    pacman -S rpmextract
  2. Download the rpm files from brother.com for HL-3045CN
  3. Run rpmextract.sh on the rpm files (You should end up with a opt and a usr folder afterwards)
  4. Move the content in those directories to the same places on /
  5. Then run the cupswrapperhl3045cn script

    /opt/brother/Printers/hl3045cn/cupswrapper/cupswrapperhl3045cn
  6. After this you should be able to enter cups web interface and add the printer just fine


I love my new Linux setup. I’m also writing this blog post on the new laptop which means I have Haskell setup as well. In fact, I like my new Arch setup more than my current Ubuntu 12.04 install. I think it’s time to switch things up at home as well.