Installer Ubuntu sur un MacBook 5,2 en Live USB : Différence entre versions

De e-glop
(Le port "écouteurs")
m (= La sensibilité du trackpad)
Ligne 107 : Ligne 107 :
 
Le tour est joué.
 
Le tour est joué.
  
=== La sensibilité du trackpad ==
+
=== La sensibilité du trackpad ===
  
 
Modifiez la section "InputDevice" de votre /etc/X11/xorg.conf (à générer s'il n'existe pas) pour qu'elle ressemble à :
 
Modifiez la section "InputDevice" de votre /etc/X11/xorg.conf (à générer s'il n'existe pas) pour qu'elle ressemble à :

Version du 1 septembre 2013 à 23:20

Problématique

Un MacOSX qui est devenu très lourd après 5 ans d'utilisation, pas de CD de MacOSX pour réinstaller, un lecteur CD en vrac avec un CD coincé à l'intérieur... Ok, "on l'a bien cherché" comme dirait l'autre...

N'empêche que... on a besoin de passer par un support USB pour installer Ubuntu, que nous sommes sur un MacBook, et que ce n'est pas franchement évident.


Pré-requis

  • Avoir téléchargé l'ISO ubuntu-13.04-desktop-amd64.iso (attention, pas la version "+mac")
  • Avoir un support USB vierge de toute données de taille suffisante (>800Mo) et de qualité (attention aux erreurs d'entrées/sorties)
  • Avoir branché son MacBook sur le secteur
  • Avoir un MacOSX ou un GNU/Linux sous la main


En route, "attachez vos ceintures"

Préparez le terrain

  • Notez le nom de votre périphérique USB (sous la forme /dev/sdX ou /dev/diskX), et pensez à remplacer /dev/sdX dans les exemples suivants par le nom que vous aurez trouvé
  • Sauvegardez toutes vos données sur votre MacBook, car tout sera perdu par la suite.
  • Sauvegardez toutes les données de votre support USB qui seront ensuite perdues
  • Démontez proprement votre support USB, en passant s'il le faut par umount /dev/sdX
  • Dans un terminal, lancez la commande  :
$ sudo dd if=/path/to/ubuntu-13.04-desktop-amd64.iso of=/dev/sdX


C'est parti !!

  • MacBook éteint, insérez votre support USB dans un port USB du MacBook.
  • Appuyez sur le bouton "power" pour allumer votre MacBook tout en maintenant la touche "Alt/Option" enfoncée
  • Vous verrez apparaître au bout d'un certain temps le disque dur du MacBook et deux disques "EFI Boot" à côté
  • Choisissez le dernier "EFI Boot"
  • Laissez venir l'interface "Live USB" de Ubuntu
  • Cliquez sur "Install Ubuntu" et laissez vous guider comme à l'accoutumée
  • Rebootez et laissez votre MacBook se lancer normalement sous Ubuntu (ça peut prendre un peu de temps) ! Tout se passe bien ? Le tour est joué !


Finalisations

Votre support USB

Votre support USB est inutilisable en l'état pour d'autres usages que celui d'installer Ubuntu sur un MacBook. Pensez donc à le reformater, de préférence en FAT32 si vous souhaitez qu'il soit lisible de manière "standard".

Le port "écouteurs"

Par défaut, lors de nos essais, le port "écouteurs" restait muet par défaut. Pour déclencher la sortie son sur les écouteurs, nous avons du effectuer les manipulations suivantes :

wget -O run.py http://www.alsa-project.org/hda-analyzer.py
sudo python run.py

Là trouver le "Node[0x15] PIN" correspondant à "Headphone Playback Switch" et passer la "VREF" du "Widget Control" à 100. Ensuite choisissez d'exporter votre fichier pour pouvoir le lancer à chaque lancement de votre MacBook. Si HDA Analyzer plante pour des raisons de :

AttributeError: HDANode instance has no attribute 'set_vol_knb'

À vous de hacker le code de votre utilitaire ...

Si jamais vous n'avez pas le cœur à cela, voici le contenu de ce que vous devriez obtenir, et que vous irez mettre dans le fichier (que vous créerez à cette occasion) /etc/snd-hda-intel.py :

#!/usr/bin/env python

import os
import struct
from fcntl import ioctl

def __ioctl_val(val):
  # workaround for OverFlow bug in python 2.4
  if val & 0x80000000:
    return -((val^0xffffffff)+1)
  return val

IOCTL_INFO = __ioctl_val(0x80dc4801)
IOCTL_PVERSION = __ioctl_val(0x80044810)
IOCTL_VERB_WRITE = __ioctl_val(0xc0084811) 

def set(nid, verb, param):
  verb = (nid << 24) | (verb << 8) | param
  res = ioctl(FD, IOCTL_VERB_WRITE, struct.pack('II', verb, 0))

FD = os.open("/dev/snd/hwC0D0", os.O_RDONLY)
info = struct.pack('Ii64s80si64s', 0, 0, , , 0, )
res = ioctl(FD, IOCTL_INFO, info)
name = struct.unpack('Ii64s80si64s', res)[3]
if not name.startswith('HDA Codec'):
  raise IOError, "unknown HDA hwdep interface"
res = ioctl(FD, IOCTL_PVERSION, struct.pack('I', 0))
version = struct.unpack('I', res)
if version < 0x00010000:	# 1.0.0
  raise IOError, "unknown HDA hwdep version"

# initialization sequence starts here...

set(0x15, 0x707,   0xc5) # 0x150707c5 (SET_PIN_WIDGET_CONTROL)

os.close(FD)

Rendez ce script exécutable en l'état :

sudo chmod +x /etc/snd-hda-intel.py

Puis ajouter l'exécution de ce script à chaque chargement du module via le fichier /etc/modprobe.d/alsa-base.conf (ou équivalent) en y ajoutant à sa fin les deux lignes suivantes :

options snd_hda_intel model=mb5 power_save=5
install snd_hda_intel modprobe --ignore-install snd_hda_intel && /etc/snd-hda-intel.py

Le tour est joué.

La sensibilité du trackpad

Modifiez la section "InputDevice" de votre /etc/X11/xorg.conf (à générer s'il n'existe pas) pour qu'elle ressemble à :

# ...
Section "InputDevice"
  Identifier "Mouse0"
  Driver "mouse"
  Option "Protocol" "auto"
  Option "Device" "/dev/psaux"
  Option "Emulate3Buttons" "no"
  Option "ZAxisMapping" "4 5"
  Option "FingerLow" "1"
  Option "FingerHigh" "20"
EndSection
#...

Les détails qui restent pour votre MacBook

Référez-vous à la documentation (en anglais) que vous pourrez trouver sur les pages MacBook5-1/Raring et MacBook5-2/Maverick de l'aide officielle d'Ubuntu.