Toshiba Satellite P500-ST2G02
This is a tutorial on how to install and configure Arch Linux on a Toshiba Satellite P500 Laptop.
- 1 Hardware
- 2 Removing Windows
- 3 Arch Installation
- 4 Install an AUR package manager
- 5 Install the Realtek wireless card driver
- 6 Install NVIDIA driver
- 7 Install the Synaptic driver
- 8 Setup permissions
- 9 GNOME
- 10 Laptop Mode Tools
- 11 Multimedia Buttons
- 12 External Microphone
- 13 Compiling the kernel with PAE included
- 14 My /etc/rc.conf
Custom configuration, purchased on 11/29/2010 from Toshiba Direct:
- Intel® Core™ i5-460M processor
- Genuine Windows 7 Home Premium (64-bit)
- 4GB DDR3 1066MHz memory
- 500GB HDD (7200rpm)
- 1GB GDDR3 NVIDIA® GeForce® GT 330M
- 18.4" screen
lspci reports this:
# lspci 00:00.0 Host bridge: Intel Corporation Core Processor DRAM Controller (rev 02) 00:01.0 PCI bridge: Intel Corporation Core Processor PCI Express x16 Root Port (rev 02) 00:16.0 Communication controller: Intel Corporation 5 Series/3400 Series Chipset HECI Controller (rev 06) 00:1a.0 USB Controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 05) 00:1b.0 Audio device: Intel Corporation 5 Series/3400 Series Chipset High Definition Audio (rev 05) 00:1c.0 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 1 (rev 05) 00:1c.3 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 4 (rev 05) 00:1c.4 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 5 (rev 05) 00:1c.5 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 6 (rev 05) 00:1d.0 USB Controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 05) 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev a5) 00:1f.0 ISA bridge: Intel Corporation Mobile 5 Series Chipset LPC Interface Controller (rev 05) 00:1f.2 SATA controller: Intel Corporation 5 Series/3400 Series Chipset 4 port SATA AHCI Controller (rev 05) 00:1f.3 SMBus: Intel Corporation 5 Series/3400 Series Chipset SMBus Controller (rev 05) 00:1f.6 Signal processing controller: Intel Corporation 5 Series/3400 Series Chipset Thermal Subsystem (rev 05) 01:00.0 VGA compatible controller: nVidia Corporation Device 0a29 (rev a2) 01:00.1 Audio device: nVidia Corporation High Definition Audio Controller (rev a1) 07:00.0 FireWire (IEEE 1394): O2 Micro, Inc. Device 10f7 (rev 01) 07:00.1 SD Host controller: O2 Micro, Inc. Device 8120 (rev 01) 07:00.2 Mass storage controller: O2 Micro, Inc. Device 8130 (rev 01) 0a:00.0 Network controller: Realtek Semiconductor Co., Ltd. Device 8172 (rev 10) 0b:00.0 Ethernet controller: Atheros Communications Atheros AR8132 / L1c Gigabit Ethernet Adapter (rev c0) ff:00.0 Host bridge: Intel Corporation Core Processor QuickPath Architecture Generic Non-core Registers (rev 05) ff:00.1 Host bridge: Intel Corporation Core Processor QuickPath Architecture System Address Decoder (rev 05) ff:02.0 Host bridge: Intel Corporation Core Processor QPI Link 0 (rev 05) ff:02.1 Host bridge: Intel Corporation Core Processor QPI Physical 0 (rev 05) ff:02.2 Host bridge: Intel Corporation Core Processor Reserved (rev 05) ff:02.3 Host bridge: Intel Corporation Core Processor Reserved (rev 05)
I was thinking of keeping Windows in its own partition, but I had trouble with repartitioning the hard disk. Since I don't really use Windows, I ended up deleting all Windows and Toshiba Restore partitions. For some reason cfdisk (my tool of choice) didn't work here, so I had to use fdisk to do that.
Both Arch 32 and Arch 64 install flawlessly on the laptop. For compatibility reasons, I decided to go with Arch 32, given that I had to later recompile the kernel with PAE option turned on, in order to access 4GB of RAM.
Install an AUR package manager
First I installed yaourt:
# vim /etc/pacman.conf
Add the following repository:
[archlinuxfr] Server = http://repo.archlinux.fr/$arch
# pacman -Syu # pacman -S yaourt
Install the Realtek wireless card driver
The wireles card does not work out of the box, so I had to install the rtl8192se driver from AUR. Note that my card model is 8172, but it does seem to work fine with the 8192se driver.
$ yaourt -S rtl8192se
Install networkmanager after that. I personally prefer wicd, but apparently it doesn't work well with the Realtek 8192 driver.
# pacman -S networkmanager network-manager-applet
Add networkmanager to your DAEMONS in /etc/rc.conf. See bellow for an example of my rc.conf.
Install NVIDIA driver
# pacman -S nvidia
This also adds the proper xorg configuration. X starts and works fine right out of the box. It works in 1680x945 right away - no issues here.
Install the Synaptic driver
The mouse pad works, but it has issues. You need to install Synaptic:
# pacman -S xf86-input-synaptic
In order to use everything your user must be added to several groups
# gpasswd -a $USER wheel # gpasswd -a $USER network # gpasswd -a $USER video # gpasswd -a $USER audio # gpasswd -a $USER optical # gpasswd -a $USER storage # gpasswd -a $USER scanner # gpasswd -a $USER power
I use Gnome, so in order to get everything on your computer accessible to you, you need to execute Gnome with ck-launch-session:
exec ck-launch-session gnome-session
Laptop Mode Tools
I installed laptop-mode-tools, but it didn't seem to improve anything so I disabled it. The battery life of this laptop is less than an hour and there is not much you can do. I use the laptop as a replacement for a desktop computer, so it's always plugged in.
The volume buttons work out of the box. I am, however, slightly annoyed with them, because they are a little too close to the keyboard and can be accidentally pressed when typing. They can be disabled from the Gnome menu System -> Preferences -> Keyboard Shortcuts
The external microphone does not work and I have not found a solutions for this problem yet.
Compiling the kernel with PAE included
If you chose to install Arch 86_64, you can skip this section. This is only for those who installed Arch 32 and would like to access more than 3GB of RAM.
You have two options:
- Install kernel26-pae from AUR
- Recompile the current Arch kernel to turn on the PAE option
I chose to recompile the kernel, which also gave me the opportunity to remove some modules I won't use.
Install the PAE kernel from AUR
If you chose to install the PAE kernel from AUR:
# yaourt -S kernel26-pae # yaourt -S nvidia-pae
It will take about an hour for the kernel to compile.
Recompile the current kernel
I compiled the kernel from ABS. Besides turning on PAE, I also did the following changes to my kernel:
- Removed bluetooth and infrared support (my laptop came w/o any of that)
- Removed ATA support
- Removed tablet, touch screen and others
- Changed the CPU type to Core 2/Newer Xenon
After you log in to the new kernel, you will have to recompile the nvidia package too
Here is what my /etc/rc.conf looks like:
LOCALE="en_US.UTF-8" HARDWARECLOCK="localtime" TIMEZONE="America/Los_Angeles" KEYMAP="us" CONSOLEFONT= CONSOLEMAP= USECOLOR="yes" MODULES=(!btusb !bluetooth !toshiba_bluetooth !joydev) USELVM="no" HOSTNAME="satellite" eth0="dhcp" INTERFACES=(!eth0 !wlan0) gateway="default gw 192.168.0.1" ROUTES=(!gateway) DAEMONS=(syslog-ng dbus networkmanager hal !network !netfs @openntpd @crond @alsa !laptop-mode)