Difference between revisions of "Dell Mini 10v"

From ArchWiki
Jump to: navigation, search
(http -> https://aur.archlinux.org)
(Touchpad: xorg.conf is not needed, but it doesn't mean it was deprecated at any point)
(2 intermediate revisions by one other user not shown)
Line 1: Line 1:
[[Category:Dell (English)]]
{{i18n|Dell Mini 10v}}
[[es:Dell Mini 10v]]
{{Article summary start}}
{{Article summary start}}
{{Article summary text|This articles details the installation and configuration of Arch Linux on the Dell Mini 10v. The Dell Mini 10v is a netbook with 10" display from Dell. This article covers the configuration of the graphics card, wireless card and touchpad.}}
{{Article summary text|This articles details the installation and configuration of Arch Linux on the Dell Mini 10v. The Dell Mini 10v is a netbook with 10" display from Dell. This article covers the configuration of the graphics card, wireless card and touchpad.}}
Line 65: Line 64:
The use of xorg.conf or HAL configuration is now deprecated in favour of udev. Add the 'JumpyCursorThreshold' and 'AreaBottomEdge' options to {{ic|/etc/X11/xorg.conf.d/10-synaptics.conf}}:
Add the 'JumpyCursorThreshold' and 'AreaBottomEdge' options to {{ic|/etc/X11/xorg.conf.d/10-synaptics.conf}}:
Section "InputClass"
Section "InputClass"

Revision as of 17:32, 7 November 2012

Summary help replacing me
This articles details the installation and configuration of Arch Linux on the Dell Mini 10v. The Dell Mini 10v is a netbook with 10" display from Dell. This article covers the configuration of the graphics card, wireless card and touchpad.
Beginners' Guide
Touchpad Synaptics
Acer Aspire One

Before you begin

This article is intended to assist users with the specifics of installing Arch Linux on the Dell Mini 10v. It is assumed that a user is also following an installation guide such as the Beginners' Guide.

Dell Mini 10v hardware may vary, however the following list of hardware has been assumed in this article:

Intel Corporation 82801G card
Realtek ALC272 Chip (from alsamixer)
Intel Corporation Mobile 945GME
Wired NIC
Realtek RTL8101E/RTL8102E
Wireless NIC
Broadcom Corporation BCM4312 802.11b/g
Dell 365 Bluetooth 2.1+EDR
Syntek Integrated Webcam

To list hardware, issue this command:

$ lspci && lsusb

The Dell Mini 10v does not have an optical drive. This means you will need to install Arch Linux through one of the alternative methods:

  • USB stick (recommended)
  • External USB CD-ROM drive.

To select the required boot media to install Arch Linux, press Template:Keypress to open the Boot Menu when booting the Dell Mini 10v.


After reaching the Install X and configure ALSA section of the Beginners' Guide, follow these Dell Mini 10v guidelines:

Video Driver

Replace vesa with Intel

# pacman -R xf86-video-vesa
# pacman -S xf86-video-intel
Section "Device"
        Identifier "Card0"
        Driver     "intel"


The synaptics package is required to use the touchpad. For help refer to the Synaptics guide. Manual configuration is needed as follows to ignore movements, scrolling and tapping on the bottom section of the touchpad, where the touchpad buttons are located.

Firstly install the synaptics package:

# pacman -S xf86-input-synaptics

Add the 'JumpyCursorThreshold' and 'AreaBottomEdge' options to /etc/X11/xorg.conf.d/10-synaptics.conf:

Section "InputClass"
    Identifier "touchpad catchall"
    Driver "synaptics"
    MatchIsTouchpad "on"
        Option "TapButton1" "1"
        Option "TapButton2" "2"
        Option "TapButton3" "3"
        Option "JumpyCursorThreshold" "90"
        Option "AreaBottomEdge" "4100"

Once X has been restarted, the bottom part of the touchpad will be disabled, allowing a user to click without unintentional movements of the mouse. See the synaptics manual page for available options:

$ man synaptics


The Wireless NIC is supported by the b43 module and is included in kernel from 2.6.32 on. Firmware must be installed for this hardware, as outlined in the Wireless Setup article.

If you have difficulty with connection, or have unstable connection, try the option


when loading the b43 module. This can be done with

rmmod b43    # remove the module
modprobe b43  qos=0  # reload it with the option

Once confirming that it works, you can create a file /etc/modprobe.d/b43.conf with the following line

options b43 qos=0


-- other option - to use broadcom-wl driver from AUR repository

yaourt -S broadcom-wl


Battery status

For utilities to monitor the battery status, see the Laptop article.

Suspend to RAM

To suspend to RAM, install both pm-utils and acpid:

# pacman -S pm-utils acpid

The acpid package handles events such as pressing the the power button or closing the laptop lid. For more information, see the Acpid article. To suspend to RAM, edit /etc/acpi/handlers.sh to tell the acpid package to call the pm-suspend script (part of pm-utils), when an event such as closing the laptop lid occurs. Below, /usr/sbin/pm-suspend has been added to the button/lid and button/power sections:

# Default acpi script that takes an entry for all actions


case "$1" in
        #echo "PowerButton pressed!">/dev/tty5
        /usr/sbin/pm-suspend # <<<< ADDED HERE
        case "$2" in
            PWRF)   logger "PowerButton pressed: $2" ;;
            *)      logger "ACPI action undefined: $2" ;;


        #echo "LID switched!">/dev/tty5
        /usr/sbin/pm-suspend # <<<< ADDED HERE
        logger "ACPI group/action undefined: $1 / $2"

The netbook will now suspend to RAM when the laptop lid is closed or power button pressed. To wake the netbook, open the lid or press the power button once more.

It may happen that the resume takes more than 5 seconds of black screen before coming back. This may be caused by the b43 firmware loading delay. A close inspection of 'dmesg' should reveal the cause: check the line containing 'b43-phy0' to see if reload it takes a long time. If so, create a file /etc/pm/config.d/modules and add


This should reduce the resume time significantly to the extent that the graphical display comes back almost instantaneously.


Sound and Microphone

Sound can be set up as outlined in the ALSA section of Beginners' Guide. The microphone and speaker can be unmuted and volume increased by using alsamixer:

$ alsamixer

Firstly, press Template:Keypress+Template:Keypress to view both Playback and Capture cards. Now press Template:Keypress to unmute Master, PCM, Mic and Capture. Arrows can be used to select the channel and increase volume.

To save these ALSA settings, issue this command:

# alsactl store


The inbuilt webcam works out of the box, with the latest kernel. You may use the cheese package to test the webcam, however this package depends on gnome-desktop. Also check that the normal user is a member of the video group:

$ groups $USER


Follow the Bluetooth article for setting up Bluetooth.

SD card reader

The SD card reader works out of the box.

Solid-state drive

For maximising performace of a SSD, refer to this article.

custom kernel installation

best kernel for Dell Mini 10v - kernel-netbook https://aur.archlinux.org/packages.php?ID=34625

yaourt -S kernel-netbook

(since kernel.org server is currently down due to server security breach, you have to edit PKGBUILD)

# Maintainer: Dieghen89 <dieghen89@gmail.com>


true && pkgname=('kernel-netbook' 'kernel-netbook-headers')
makedepends=('dmidecode' 'xmlto' 'docbook-xsl' 'linux-firmware')
optdepends=('hibernate-script: tux on ice default script' 'tuxonice-userui: graphical interface for toi [AUR]')
pkgdesc="Static kernel for netbooks with Intel Atom N270/N280/N450/N550 such as eeepc with the add-on of external firmware (broadcom-wl) and patchset (BFS + TOI + BFQ optional) - Only Intel GPU - Give more power to your netbook!"

#  external drivers  and firmware #

#BFS: - http://users.on.net/~ckolivas/kernel/ -
#BFQ: - http://algo.ing.unimo.it/people/paolo/disk_sched/ -

##### Sources #####
source=( #kernel sources and arch patchset
	#external drivers:
	#BFS patch:
	#BFQ patch:
	#Arch Logo
build() {
  cd ${srcdir}/linux-$_basekernel

  # Patching Time:

  # minorversion patch:
  patch -p1 -i "${srcdir}/patch-${pkgver}"

  # fix #19234 i1915 display size
  patch -Np1 -i "${srcdir}/fix-i915.patch"

  # set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param)
  # remove this when a Kconfig knob is made available by upstream
  # (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227)
  patch -Np1 -i "${srcdir}/change-default-console-loglevel.patch"
  # replace tux logo with arch one
  install -m644 ${srcdir}/logo_linux_clut224.ppm drivers/video/logo/
  install -m644 ${srcdir}/logo_linux_mono.pbm drivers/video/logo/
  install -m644 ${srcdir}/logo_linux_vga16.ppm drivers/video/logo/

  # --> BFS
  msg "Patching source with BFS patch:"
  #Adjust localversion
  sed -i -e "s/-ck${_ckpatchversion}//g" ${srcdir}/${_ckpatchname}
  #patching time
  patch -Np1 -i ${srcdir}/${_ckpatchname}

  # --> TOI
  if [ $TUX_ON_ICE = "y" ] ; then
    msg "Patching source with TuxOnIce patch"
    bzip2 -dck ${srcdir}/${_toipatch} \
        | sed 's/printk(KERN_INFO "PM: Creating hibernation image:\\n/printk(KERN_INFO "PM: Creating hibernation image: \\n/' \
        | patch -Np1 -F4 || { echo "Failed TOI"; return 1 ; }

  # --> BFQ
  if [ $BFQ_IO_SCHEDULER = "y" ] ; then
    msg "Patching source with BFQ patches"
    for i in $(ls ${srcdir}/000*.patch); do
      patch -Np1 -i $i

  ### Clean tree and copy ARCH config over
  msg "Running make mrproper to clean source tree"
  make mrproper

  # copy config
  cp ../config ./.config

  make prepare

  # make defconfig
  # configure kernel    
  # use menuconfig, if you want to change the configuration
  make menuconfig
  # make gconfig
  yes "" | make config
  # build kernel
  msg "Now starts something magic:"
  make ${MAKEFLAGS} bzImage modules

package_kernel-netbook() {
  pkgdesc='Static kernel for netbooks with Intel Atom N270/N280/N450/N550 such as eeepc with the add-on of external firmware (broadcom-wl) - Only Intel GPU - Give more power to your netbook!'
  depends=('coreutils' 'module-init-tools')
  optdepends=('crda: for wireless regulatory domain support' 
	      'linux-firmware: firmware for rt2860, tigon3, brcmsmac'
	      'hibernate-script: tux on ice default script'
	      'tuxonice-userui: graphical interface for toi [AUR]')

  cd ${srcdir}/linux-$_basekernel
  # install our modules
  mkdir -p $pkgdir/{lib/modules,boot}
  make INSTALL_MOD_PATH=$pkgdir modules_install
  # Get kernel version
  _kernver="$(make kernelrelease)"

  # remove build and source links
  rm -r $pkgdir/lib/modules/$_kernver/{source,build}
  # remove the firmware directory
  rm -rf ${pkgdir}/lib/firmware

  # install the kernel
  install -D -m644 ${srcdir}/linux-$_basekernel/System.map $pkgdir/boot/System.map-netbook
  install -D -m644 ${srcdir}/linux-$_basekernel/arch/x86/boot/bzImage ${pkgdir}/boot/vmlinuz-netbook
  install -D -m644 ${srcdir}/linux-$_basekernel/.config $pkgdir/boot/kconfig-netbook

  # install preset file for mkinitcpio
  sed -i -e "s/ALL_kver=.*/ALL_kver=\'${_kernver}\'/g" ${srcdir}/${pkgname}.preset
  install -m644 -D ${srcdir}/${pkgname}.preset ${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset

  # set correct depmod command for install
  sed -i -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/g" $startdir/$pkgname.install

##Section: Broadcom-wl
  #msg "Compiling broadcom-wl module:"
  #cd ${srcdir}/
  ##patching broadcom as broadcom-wl package on AUR
  #patch -p1 < license.patch
  #patch -p1 < semaphore.patch
  #patch -p1 < mutex-sema.patch
  #make -C ${srcdir}/linux-$_basekernel M=`pwd`
  #install -D -m 755 wl.ko ${pkgdir}/lib/modules/$_kernver/kernel/drivers/net/wireless/wl.ko
  # gzip -9 all modules to safe a lot of MB of space
  find "$pkgdir" -name '*.ko' -exec gzip -9 {} \;

package_kernel-netbook-headers() {
  pkgdesc='Header files and scripts for building modules for kernel-netbook'

  mkdir -p "${pkgdir}/lib/modules/${_kernver}"

  cd "${pkgdir}/lib/modules/${_kernver}"
  ln -sf ../../../usr/src/linux-${_kernver} build

  cd "${srcdir}/linux-${_basekernel}"
  install -D -m644 Makefile \
  install -D -m644 kernel/Makefile \
  install -D -m644 .config \

  mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include"

  for i in acpi asm-generic config crypto drm generated linux math-emu \
    media net pcmcia scsi sound trace video xen; do
    cp -a include/${i} "${pkgdir}/usr/src/linux-${_kernver}/include/"

  # copy arch includes for external modules
  mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/arch/x86"
  cp -a arch/x86/include "${pkgdir}/usr/src/linux-${_kernver}/arch/x86/"

  # copy files necessary for later builds, like nvidia and vmware
  cp Module.symvers "${pkgdir}/usr/src/linux-${_kernver}"
  cp -a scripts "${pkgdir}/usr/src/linux-${_kernver}"

  # fix permissions on scripts dir
  chmod og-w -R "${pkgdir}/usr/src/linux-${_kernver}/scripts"
  mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/.tmp_versions"

  mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/kernel"

  cp arch/${KARCH}/Makefile "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/"

  if [ "${CARCH}" = "i686" ]; then
    cp arch/${KARCH}/Makefile_32.cpu "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/"

  cp arch/${KARCH}/kernel/asm-offsets.s "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/kernel/"

  # add headers for lirc package
  mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video"

  cp drivers/media/video/*.h  "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/"

  for i in bt8xx cpia2 cx25840 cx88 em28xx et61x251 pwc saa7134 sn9c102; do
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/${i}"
    cp -a drivers/media/video/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/${i}"

  # add docbook makefile
  install -D -m644 Documentation/DocBook/Makefile \

  # add dm headers
  mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/md"
  cp drivers/md/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/md"

  # add inotify.h
  mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include/linux"
  cp include/linux/inotify.h "${pkgdir}/usr/src/linux-${_kernver}/include/linux/"

  # add wireless headers
  mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/net/mac80211/"
  cp net/mac80211/*.h "${pkgdir}/usr/src/linux-${_kernver}/net/mac80211/"

  # add dvb headers for external modules
  # in reference to:
  # http://bugs.archlinux.org/task/9912
  mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core"
  cp drivers/media/dvb/dvb-core/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core/"
  # and...
  # http://bugs.archlinux.org/task/11194
  mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/"
  cp include/config/dvb/*.h "${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/"

  # add dvb headers for http://mcentral.de/hg/~mrec/em28xx-new
  # in reference to:
  # http://bugs.archlinux.org/task/13146
  mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
  cp drivers/media/dvb/frontends/lgdt330x.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
  cp drivers/media/video/msp3400-driver.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"

  # add dvb headers
  # in reference to:
  # http://bugs.archlinux.org/task/20402
  mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-usb"
  cp drivers/media/dvb/dvb-usb/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-usb/"
  mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends"
  cp drivers/media/dvb/frontends/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
  mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners"
  cp drivers/media/common/tuners/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners/"

  # add xfs and shmem for aufs building
  mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/fs/xfs"
  mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/mm"
  cp fs/xfs/xfs_sb.h "${pkgdir}/usr/src/linux-${_kernver}/fs/xfs/xfs_sb.h"

  # copy in Kconfig files
  for i in `find . -name "Kconfig*"`; do
    mkdir -p "${pkgdir}"/usr/src/linux-${_kernver}/`echo ${i} | sed 's|/Kconfig.*||'`
    cp ${i} "${pkgdir}/usr/src/linux-${_kernver}/${i}"

  chown -R root.root "${pkgdir}/usr/src/linux-${_kernver}"
  find "${pkgdir}/usr/src/linux-${_kernver}" -type d -exec chmod 755 {} \;

  # strip scripts directory
  find "${pkgdir}/usr/src/linux-${_kernver}/scripts" -type f -perm -u+w 2>/dev/null | while read binary ; do
    case "$(file -bi "${binary}")" in
      *application/x-sharedlib*) # Libraries (.so)
        /usr/bin/strip ${STRIP_SHARED} "${binary}";;
      *application/x-archive*) # Libraries (.a)
        /usr/bin/strip ${STRIP_STATIC} "${binary}";;
      *application/x-executable*) # Binaries
        /usr/bin/strip ${STRIP_BINARIES} "${binary}";;

  # remove unneeded architectures
  rm -rf "${pkgdir}"/usr/src/linux-${_kernver}/arch/{alpha,arm,arm26,avr32,blackfin,cris,frv,h8300,ia64,m32r,m68k,m68knommu,mips,microblaze,mn10300,parisc,powerpc,ppc,s390,sh,sh64,sparc,sparc64,um,v850,xtensa}

create initrd

cd /lib/modules/3.0.6-netbook
mkinitcpio -k 3.0.6-netbook -g /boot/initramfs-netbook.img

edit grub menu.lst

#  Arch netbook
title  Arch netbook
root   (hdx,x)
kernel /boot/vmlinuz-netbook root=/dev/disk/by-uuid/xxxxxxxx-xxxx-xxxx-xxxx-xxxxx$
initrd /boot/initramfs-netbook.img

Desktop installation

gnome works best on Dell mini 10v. KDE seems to be too heavy for Dell mini Atom processor

pacman -Syu gnome gdm

use gdm as login manager

nano /etc/inittab
x:5:respawn:/usr/sbin/gdm -nodaemon