OrangePI et Ubuntu

Tutorial d'installation de Ubuntu 15.04 sur OrangePI PC

orangepi2caseOrangePI PC (1.2) , le concurrent low-cost de la raspberry-pi est une plateforme de développement et de prototypage, qui peut aussi être utilisée comme micro ordinateur. L'avantage de l'Orange-PI PC est son prix et ses performances, un  processeur cadencé à 1.2 GHz Quad-Core Arm H3 AllWinner pouvant être overcloaké à 1.6GHz facilement avec un petit ventilateur, un GPU Mali 400 avec des pilotes toujours en développement, mais qui permet déja le décodage et l'affichage des vidéos en Ultra HD 4K, et le développement utilisant le GPIO. Je vous invites à prêter attention aux spécifications de l'appareil sur mon site. L'objectif de cet article est de centraliser les techniques d'installation et de configuration logiciel de l'appareil, l'installation de quelques logiciels (libres) utiles pour faire de votre OrangePI PC un ordinateur avec des fonctionnalités minimales, soit , naviguer sur internet, lire des vidéos et travailler sur OpenOffice, télécharger des vidéos, accèder au réseau sans fil.

Dans ce tutoriel nous verrons :

  • L'installation de l'image Lubuntu Vivid Vervet sur la carte sd
  • L'installation des languages
  • L'installation des pilotes videos
  • La configuration des pilotes UltraHD sur Mplayer, VLC
  • L'installation  de Xfce, office etc...
  • Quelques astuces : Le bon chmod sur ubuntu, dpkg
  • Liens Connexes
  • Liens Annexes
  • Dépôts intéressants

L'installation de l'image Lubuntu Vivid Vervet sur la carte sd

Télécharger l'image Lubuntu_jacer_02 à partir des moteurs de recherche, ou la version sur le site ici (Lubuntu_En_US-vivid.zip). Téléchargez aussi le kernel comprenant les pilotes pour le réseau sans fil sur ce lien (kernel_update20012016.zip) . Branchez votre carte sd à votre ordinateur à l'aide d'un port carte SD si votre machine en possède un ou à l'aide d'un lecteur de carte sd USB. Visualisez l'emplacement de la carte sd , par exemple /dev/sdb.

fdisk -l
Formatez votre carte sd avec partedmagic ou gparted, ou fdisk.
apt-get install gparted
Note : Je conseil pour une utilisation bureautique de votre OrangePi PC d'utiliser une carte SD class 10 d'au moins 32Go. Extraire l'image  :
unzip Lubuntu_En_US-vivid.zip
Charger l'image disque Lubuntu 15.10 sur la carte sd à l'aide de la commande dd , configurer la taille de block à 1M, comme ci-dessous.
sudo dd if=Lubuntu_En_US-vivid.img of=/dev/sdb bs=1M oflag=direct
Déconnectez et reconnectez la carte sd de votre lecteur. Extraire le kernel kernel_update20012016.zip comprenant les driver pour le réseau sans fil.
unzip kernel_update20012016.zip

Copiez et remplacez les dossier etc, et lib vers votre carte SD. A l'aide de l'explorateur de fichier naviguez sur la partition BOOT, vous aperçevrez une myriade de fichiers , ceux qui nous intéressent sont script.bin et uImage , renommez ces deux fichiers, pour ma part je les ai renommé en script.bin.default et ulmage.default, retournez dans le dossier que vous avez extrait précédemment puis trouvez les fichiers uImage_OPI ou uImage_OPI-plus (cela dépendra de votre version de orangepi) et renommez le en uImage. Sélectionnez le fichier script.bin.OPI... correspondant à votre résolution d'écran et votre interface d'affichage renommez le en script.bin . Bootez votre Orangepi avec la carte SD, (utilisateur : orangepi , mot de passe : orangepi).

Probablement que vous souhaiterez agrandir la partition une fois dans votre OrangePI PC. Dans ce cas :
fs_resize

Je conseille de le faire manuellement (à l'aide de fdisk ou gparted) car vous pourrez par la suite assigner une partition swap au lieu de remplacer bêtement tout l'espace avec la commande fs_resize précédente.

 

L'installation des languages

Pour configurer temporairement la disposition du clavier dans la console effectuer la commande suivante :

loadkeys fr

Pour configurer temporairement la disposition du clavier sur l'interface graphique :

setxkbmap fr

Pour installer la disposition des touches de manière permanente effectuer les commandes suivantes et suivre les instructions qui s'affichent :

apt-get install zenity ibus && dpkg-reconfigure keyboard-configuration

Pour installer les paquets de languages fr:

sudo apt-get install language-pack-fr language-pack-gnome-fr language-pack-fr-base language-pack-gnome-fr-base

Pour forcer l'installation des langages et corriger les erreur de locales :

sudo apt-get install aptitude && sudo apt-get install --reinstall language-pack-fr

Puis,

dpkg --force-all -P locales
dpkg -i locales_*

Astuces pour modifier la langue dans le shell et l'interface graphique gestionnaire de fenêtre (nécessite un reboot par la suite) :

nano /home/orangepi/.bashrc

Ajouter / ou remplacez les lignes suivantes

export LANGUAGE=fr_FR.UTF-8
export LC_ALL=fr_FR.UTF-8

Editez les fichiers /etc/environment et /etc/default/locale pour qu'ils correspondent au language :

LANGUAGE=fr_FR.UTF-8
LC_ALL=fr_FR.UTF-8
LANG=fr_FR.UTF-8
LC_TYPE=fr_FR.UTF-8

Reconfigurer / mettre à jour les locales avec l'utilitaire :

locale-gen fr_FR.UTF-8 && apt-get update

Reconfigurer

dpkg-reconfigure locales

Mettre à jour

update-locale LANG=fr_FR.UTF-8

Ajouter un lien symbolique manquant dans les langues pour éviter certaines erreurs:

cd /usr/lib/locale && sudo ln -s fr_FR.utf8 fr_FR

Installation des pilotes videos

Récupérer les paquets suivant :

apt-get install htop ssh smartmontools bash-completion screen wget mplayer2 mesa-utils git-core build-essential libusb-1.0.0-dev pkg-config xorg-dev xutils-dev libdrm-dev autoconf gettext libtool automake libltdl-dev  x11proto-dri2-dev libvdpau-dev

Si certains paquets manquent compilez les manuellement.

Vérifiez la présence des modules avec lsmod, ou en regardant le fichier /etc/modules

#For SATA Support
#sw_ahci_platform

##Display and GPU
##lcd
##hdmi
ump
##disp
mali
mali_drm
##8192cu
##8188eu
8189es
gpio-sunxi

Il est possible de charger tout les modules avec depmod -a . Dans le cas échéant ou certains modules fonctionnent mal ou ne sont pas bien configurer , effectuer les commandes suivantes.

git clone https://github.com/linux-sunxi/libvdpau-sunxi.git && git clone https://github.com/ssvb/xf86-video-sunxifb.git && git clone git://github.com/linux-sunxi/sunxi-tools.git && git clone https://github.com/hglm/a10disp.git && git clone https://github.com/linux-sunxi/sunxi-mali.git && git clone https://github.com/robclark/libdri2.git

Installation du display driver

cd sunxi-tools
make
cd ../a10disp
cp ../xf86-video-sunxifb/src/sunxi_disp_ioctl.h .
make clean
make install

Installation de libdri2

cd ../libdri2
./autogen.sh
./configure --prefix=/usr
make
sudo make install
sudo ldconfig

Installation de libump

cd libump
autoreconf -i
./configure
make
sudo make install
sudo ldconfig

Installation des drivers linux sunxi mali (gpu)

cd ../sunxi-mali
git submodule init
git submodule update
sudo make
sudo make install

Installation des drivers fbturbo

cd ../xf86-video-sunxifb
autoreconf -vi
./configure --prefix=/usr && make && sudo make install

On configure Xorg.conf

sudo mkdir /usr/share/X11/xorg.conf.d/
sudo cp xorg.conf /usr/share/X11/xorg.conf.d/99-sunxifb.conf

Corriger les erreur de liens symbolique entre les drivers mesa egl et libmali , rebootez ensuite.

sudo mv /usr/lib/arm-linux-gnueabihf/mesa-egl/ /usr/lib/arm-linux-gnueabihf/.mesa-egl/
cd /usr/lib

ln -sf libMali.so libEGL.so 
ln -sf libMali.so libEGL.so.1 
ln -sf libMali.so libEGL.so.1.4 
ln -sf libMali.so libGLESv1_CM.so 
ln -sf libMali.so libGLESv1_CM.so.1 
ln -sf libMali.so libGLESv1_CM.so.1.1 
ln -sf libMali.so libGLESv2.so 
ln -sf libMali.so libGLESv2.so.2 
ln -sf libMali.so libGLESv2.so.2.0

Installation des drivers libvdpau

cd ../libvdpau-sunxi
make
sudo make install

Export des drivers

export VDPAU_DRIVER=sunxi

Permettre aux autres utilisateur que root d'accèder aux fonctionnalités des pilotes installés :

usermod -a -G video,sudo orangepi
chown orangepi:video /dev/disp && chown orangepi:video /dev/ion && chown orangepi:video /dev/cedar_dev
chmod 666 /dev/disp
chmod 666 /dev/ion
chmod 666 /dev/cedar_dev
chmod 666 /dev/fb*

Ajout des drivers libvdpau dans l'environnement et les session

echo "VDPAU_DRIVER=sunxi" | sudo tee -a /etc/environment
echo "VDPAU_DRIVER=sunxi" | sudo tee -a /etc/X11/Xsession.d/10sunxi
echo "export VDPAU_DRIVER" | sudo tee -a /etc/X11/Xsession.d/10sunxi

Créé les règles de chargement de drivers videos:

cat <<END >  /etc/udev/rules.d/50-disp.rules
# Write your default config options here!
KERNEL=="disp", MODE="0660", GROUP="video"
END
cat <<END >  /etc/udev/rules.d/50-ion.rules
KERNEL=="ion", MODE="0660", GROUP="video"
END
cat <<END >  /etc/udev/rules.d/50-cedar.rules
KERNEL=="cedar_dev", MODE="0660", GROUP="video"
END

Redémarrez !

La configuration des pilotes UltraHD sur Mplayer, VLC

Situez vous dans l'emplacement utilisateur /home/orangepi puis saisissez les commandes :

cat <<END > .mplayer/config
vo=vdpau,
vc=ffmpeg12vdpau,ffh264vdpau,ffwmv3vdpau,ffvc1vdpau,
END

Configuration de vlc

Cliquer sur tools,

Settings / Video / Accelerated Video output = yes

Settings / Video / Output = Automatic

Settings / Input Codecs / Hardware accelerated encoding = Video Decode and Presentation API (VDPAU)

L'installation  de Xfce, Office etc...

Pour installer le gestionnaire d'affichage lightdm et de fenêtre XFCE saisissez les commandes suivantes :

sudo apt-get install xfce4 xfce4-goodies lightdm

Redémmarez .

Pour installer libreoffice

sudo apt-get install libreoffice

Manuellement :

apt-get install libreoffice-gtk libreoffice-l10n-fr libreoffice-help-fr hyphen-fr

re-Installation de chromium

apt-get remove chromium*
rm -r /home/orangepi/.config/chromium/

avec les dépots vivid normaux

apt-get install --reinstall chromium-browser chromium-chromedriver chromium-codecs-ffmpeg-extra

Installation de Qarte (utilitaire permettant d'enregistrer les vidéos de ARTE) :

sudo add-apt-repository ppa:vincent-vandevyvre/vvv
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 89F92A1A
sudo apt-get update
sudo apt-get install qarte

Quelques astuces : Le bon chmod sur ubuntu, dpkg

Dans certains cas il est probable qu'a force de tatonner et d'installer par dessus des applications vous aayez créé des problèmes de chmod 777 un peu partout sur votre distribution. Un expert vous conseillera de formater et de tout réinstaller toutefois vous pouvez tenter de rétablir les droits utilisateur de manière temporaire de cette manière.

chmod -R go-w /
chmod 440 /etc/sudoers
chmod 640 /etc/shadow /etc/gshadow
chmod 600 /etc/ssh/*_key /etc/ssh*key   # whichever matches
chmod 710 /etc/ssl/private /etc/cups/ssl
chmod 1777 /tmp /var/tmp /var/lock
chmod 4755 /bin/su /usr/bin/passwd /usr/bin/sudo /usr/bin/sudoedit
chmod 2755 /var/mail /var/spool/mail

De la même manière , si vous avez tenté d'installer des paquets venant de distribution x86,i386, x64 au lieu de armhf je vous propose de corriger les dépendances et de lire le manuel sur dpkg. Pour supprimer les dépendances venant d'autres list de dépôts :

sudo rm /var/lib/apt/lists/* -vf
sudo dpkg --clear-avail
sudo rm /var/lib/apt/lists/* --force
sudo dpkg --configure -a
sudo reboot
sudo apt-get update

Corriger les problèmes de dépendances - laissé non configuré

dpkg -r lenomdufichier.deb

Puis

sudo dpkg --configure -a

Si ça ne marche toujours pas faites :

sudo apt-get install -f

Si ça ne marche toujours pas (encore… cas rare) :

sudo dpkg --force-all --configure -a

Sinon :

sudo dpkg -P --force-all 'le paquet qui bloque'

Supprimer les erreur post installation : suppimer les fichier *.postrm dans /var/lib/dpkg/info

apt-get upgrade

Liens connexes

  • kernel uimage, module et script.bin pour firmware mt7601, ici
  • Lubuntu 15.04 avec GPU driver et WiringOP etc preinstalled image ici
  • LibHybris sur Cubietruck ici
  • Résolution des problèmes sur apt ici
  • Paquets linux sunxi sur le site officiel ici
  • Installation des paquets linux sunxi sur debian ici
  • Les mises à jours de kernel sur OrangePI PC ici
  • La correction des problèmes de chmod ici

Liens annexes

  • Configurer compiz sur Xubuntu 12 ici
  • Remplacer LXDE par le panel GNOME ici
  • Compiz et emerald sur lxde ici
  • Récupèrer la liste des téléchargement emerald ici
  • Debian Multi-architecture ici
  • Réseau sans fil mt7601 : pilotes ici
  • Question sur l'execution des binaires x86 sur armhf ici
  • Installation des images sur OrangePI ici
  • Les choses à faire après l'installation de ubuntu desktop ici
  • Installation de compiz sur debian Jessie ici
  • Installation de enlightement ici
  • Démarrer sur les plateforme OrangePI ici

Dépôts intéressants

# deb http://packages.linux-sunxi.org/ubuntu/ quantal main
# deb-src http://packages.linux-sunxi.org/ubuntu/ quantal main
# deb http://archive.ubuntu.com/ubuntu/ trusty main universe
# deb http://http.debian.net/debian/ jessie main contrib non-free
# deb http://ports.ubuntu.com/ubuntu-ports/ vivid main restricted universe multiverse
# deb-src http://ports.ubuntu.com/ubuntu-ports/ vivid main restricted universe multiverse
# deb http://ports.ubuntu.com/ubuntu-ports/ vivid-updates main restricted universe multiverse
# deb-src http://ports.ubuntu.com/ubuntu-ports/ vivid-updates main restricted universe multiverse
# deb http://ports.ubuntu.com/ubuntu-ports/ vivid-security main restricted universe multiverse
# deb http://ports.ubuntu.com/ubuntu-ports/ vivid-backports main restricted universe multiverse
# deb http://download.tuxfamily.org/shames/debian-etch/desktopfx/stable/ ./
# deb http://apt.nanolx.org/ photonic main
# deb-src http://apt.nanolx.org/ photonic main
# deb http://ftp.us.debian.org/debian/ jessie main