maggioni.xyz/_posts/2016-07-12-installing-gento...

99 lines
3.4 KiB
HTML

---
layout: post
title: "Installing Gentoo on a Lenovo ThinkPad X60s"
date: 2016-07-12 13:00:00 +0200
categories: linux
---
<p>
Currently, my only laptop is a
<a href="http://www.thinkwiki.org/wiki/Category:X60s">IBM/Lenovo ThinkPad
X60s</a>, a top line <em>ultrabook</em> from 2006 that features:
<ul>
<li>An Intel Core Duo L2400 dual core 32 bit CPU, clocked at 1.66 Ghz;</li>
<li>2GB of RAM;</li>
<li>60GB of SATA1 hard drive;</li>
<li>Wifi, Bluetooth, trackpoint mouse only, 56k modem, and a decent set of
I/0 ports (including a CardBus slot!).</li>
</ul>
</p>
<p>
<img
src="/images/thinkpad1.jpg"
alt="An image of the ThinkPad X60s">
</p>
<p>
<img
src="/images/thinkpad2.jpg"
alt="Another image of the ThinkPad X60s">
</p>
<p>
This machine had an installation on <em>Arch Linux</em>, and I was using it
for school stuff. It runned smoothly <em>KDE5</em>, <em>Atom</em> (great
editor, I am using it to write this article), and it was usable even with
<em>PhpStorm</em>. Pretty impressive for such an old thing, right?
</p>
<p>
Since now I don't need this laptop every day I decided to give a try at Gentoo,
another rolling relase, DIY install distro. This was both a test of my
skills, my patience and the performances of the machine. For those of you
that don't know, Gentoo hasn't binary packages: imagine using Arch with just
a developer mantained AUR.
</p>
<p>
I followed the <a href="https://wiki.gentoo.org/wiki/Handbook:Main_Page">
installation guide</a> without any problem until I had to <em>emerge</em>
and install 309 packets from my <code>@world</code> set: it took 15 hours!
The compilation of <code>cmake</code> crashed because of memory starvation,
and so I had to use a spare USB stick as swap (the root file system was not
resizable as it was JFS). After some research and a couple of seconds in
<code>top</code> I discovered that
<a href="https://en.wikipedia.org/wiki/Physical_Address_Extension">PAE</a>
was not implemented in the install disk kernel. <strong>TIP:</strong> if you
want to use a nicer install enviroment, use the <em>Arch</em> ISO. With
<em>Gentoo</em>, the initialisation of the file system is made with a
<a href="https://wiki.gentoo.org/wiki/Stage_tarball#Stage_3"><em>stage 3
tarball</em></a> and not by tools like
<a href="https://wiki.archlinux.org/index.php/beginners'_guide#Install_the_base_packages">
<code>pacstrap</code></a>.
</p>
<p>
I had another problem with <code>make menuconfig</code>, the tool used to
specify what features add or remove in your compiled from source Linux kernel.
The <code>ncurses</code> menu showed me 64bit options, even if the install
disk and the CPU were both 32 bit. If you have this issue too, you can set
the <code>ARCH</code> variable by your own:
</p>
<p>
{% highlight bash %}
# make ARCH=i386 menuconfig
# make ARCH=i386
# make ARCH=i386 install
{% endhighlight %}
</p>
<p>
At the end, I made it! I only have a base install, but i can show you
<code>screenfetch</code>:
</p>
<p>
<img
src="/images/screenfetch.jpg"
alt="The laptop running 'screenfetch'">
</p>
<p>
I have not installed <em>Gentoo</em> in dual boot because I did not figure
out how to switch my bluetooth dongle in HID mode yet, so I can't select the
OS with <code>rEFInd</code>. Hope this rambling was, if not useful, at least
entertaining!
</p>