Apple Mac Mini - Intel

From Gentoo Linux Wiki
Jump to: navigation, search

Contents

[edit] Overview

Apple Mac Mini shares hardware with Apple Macbooks, but the screen and webcam.

[edit] Sound

The new Mac Mini (also known as v. 3.1 or Nvidia chipset version) doesn't have a Microphone input. It has been replaced by a Line input, so if you try to connect a simple analogue microphone, it will not work. Instead, you need a USB microphone, an auto-amplified microphone or a bluetooth headset.

To allow more applications to use the same audio device, you can use PulseAudio.

[edit] ALSA Configuration

For proper speaker and headphones configuration with jack detection on macmini3,1 (Late 2009 model) use this ALSA configuration in /etc/modprobe.d/alsa.conf:

alias snd-card-0 snd-hda-intel
options snd-hda-intel model=macmini3

# OSS/Free portion
alias sound-slot-0 snd-card-0

This might work on later Mac Mini models as well.

[edit] make.conf

Some suggested variables for your /etc/make.conf

CFLAGS="-march=nocona -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
MAKEOPTS="-j3"
ALSA_CARDS="hda-intel"
VIDEO_CARDS="nvidia nv vesa fbdev"
INPUT_DEVICES="evdev keyboard mouse"
LIRC_DEVICES="macmini"

[edit] Boot Loader

[edit] Kernel

[edit] Scheduling

[edit] lspci

gentoo ~ # lspci
00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS, 943/940GML and 945GT Express Memory Controller Hub (rev03)
00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (rev 03)
00:07.0 Performance counters: Intel Corporation Device 27a3 (rev 03)
00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 02)
00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #3 (rev 02)
00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #4 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2)
00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02)
00:1f.1 IDE interface: Intel Corporation 82801G (ICH7 Family) IDE Controller (rev 02)
00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) SATA IDE Controller (rev 02)
00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02)
01:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8053 PCI-E Gigabit Ethernet Controller (rev 22)
02:00.0 Ethernet controller: Atheros Communications Inc. AR242x 802.11abg Wireless PCI Express Adapter (rev 01)
03:03.0 FireWire (IEEE 1394): Agere Systems FW323 (rev 61)

lspci gives you a list of the pci devices your system has - man lscpi. For each device in the list find the matching kernel options. An example: ar242x is an atheros 5xxx card, ath5k is the name of the module. Some commands below

cd /usr/src/<kernel or if you have symlink use flag: linux>
# since I have the symlink I do
cd /usr/src/linux
make menuconfig # opens configuration buffer in tty / pts

When in the kernel option menu (menuconfig), use '/' to search for a module, something like SND_HDA_INTEL. In this case you want to use ath5k. you will see a list of CONFIG_OPTIONS that need to be enabled in order to chose the ath5k options and if you chose to compile them into the kernel [*] or as a module [M].After you have all the support you want and choose all the options for you processor / IDE/SATA Contollers. you want to execute the following commands

make && make modules_install
cp arch/x86_64/boot/bzImage /boot/kernel-*kernelVersion* # specify the name of your target kernel binary
cp System.map /boot/System.map-*kernelVersion* # copies system map for current kernel version, good for the kernel panic debugging

Modify LILO/GRUB configuration to use the new kernel image. Reboot and you should be set.

[edit] X

[edit] Window Manager

[edit] evilwm

  • ctrl + alt for everything and anything you want to do
  • alt + click & drag moves windows

[edit] gnome-light

if you do not want the full on fatty gnome

emerge gnome-light

if you have gnome in your USE flags, this might end up having the same / similar effect as having gnome when you emerge other packages. I add gnome to each package that needs it specifically.

echo package/atom gnome >> /etc/portage/package.use

this will let you build the gnome related parts of the package for only the specified packages

[edit] gnome-packages

  • gnome-media
  • gnome-applets
  • gnome-audio

[edit] daemons

[edit] mpd

emerge mpd

  • need some sort of output device
  • need some sort of audio filetype support

[edit] icecast

  • /etc/icecast/icecast.xml...

[edit] Links

Personal tools