Dell XPS 13 Plus 9320 : la MACHINE ULTIME des développeurs ? 

Dell XPS 13 Plus pour les développeurs

Enfin, après une période d’attente insoutenable je viens enfin de recevoir mon nouvel outil de travail, le Dell XPS 13 Plus (9320) !

C’est l’occasion de découvrir ensemble cette merveilleuse machine que j’ai acheté les yeux fermés, malgré le prix stratosphérique…

Sur le papier, ce Dell XPS 13 Plus a tout pour être la machine ultime pour les développeurs, c’est ce que nous allons voir dans cet article qui contient également une série de vidéos, vous dévoilant mes premières impressions, les plus et les moins (selon moi) en partant du déballage (unboxing) jusqu’aux retours après plusieurs jours d’utilisation.

Je réponds également à vos questions en commentaire, alors profitez-en pour tout savoir dès maintenant, je vous répondrai avec plaisir !

Le déballage du Dell XPS 13 Plus…

Premier point qui saute aux yeux, Dell veut nous faire savoir qu’il est sensible à la protection de l’environnement, en présentant la machine dans une emballage recyclé, du plus bel effet.

Certes l’emballage n’est pas ce qui nous intéresse en premier, mais cet effort est à saluer d’autant plus que cela ne gâche en rien au côté premium du Dell XPS 13 Plus.

Le design de la boîte est efficace, le cœur de l’emballage est bien pensé et pourra être réutilisé aisément pour la revente, bien vu !

L’enveloppe de protection donne une sensation de tissu, c’est l’écrin ultime avant de découvrir la tant attendue machine, bravo Dell, l’expérience utilisateur est au rendez-vous dès les premiers instants !

La bonne surprise

Côté connectique, le moins que l’on puisse dire est que c’est épuré 🙂 !

Seulement deux ports Thunderbolt 4, pas de prise Jack, pas de port USB, et pas de prise… de charge !

Eh oui, Dell a fait le choix d’utiliser la technologie Thunderbolt 4 pour tout gérer via ses deux connecteurs, que ce soit les échanges (carte SD, prise jack, usb) ou la charge.

Gros avantage, le boitier peut être réduit à l’essentiel, et l’on peut connecter la machine à une station d’accueil avec un seul câble, très pratique !

En revanche pour une utilisation « au bureau », la station d’accueil Thunderbolt 4 semble être obligatoire si l’on souhaite utiliser la plein potentiel de ce Dell XPS 13 Plus.

C’est un investissement supplémentaire à prévoir, qui dit également : finit la galère de brancher le câble vidéo + l’alimentation + clavier + souris quand on a pas de station d’accueil…

En revanche, si vous souhaitez un clavier ou une souris en complément, la connexion bluetooth est de mise car seulement un adaptateur « Thunderbolt 4 vers USB » est livré

La bonne surprise est incontestablement le chargeur, sa taille compacte et son poids plume en fait notre meilleur allié pour le nomadisme.

Il n’est pas rare sur les portables et ultra portables d’avoir un effort fait sur le poids de la machine, avec souvent un chargeur encombrant et lourd, qui pèse au quotidien et nuit à l’expérience en déplacement.

Là, Dell a su aller jusqu’au bout de la promesse, bravo !

La mauvaise surprise (mais je m’y attendais)

Pas de port USB, pas de lecteur de carte SD je vais donc devoir investir dans un hub pour augmenter la connectivité en mode nomade. Il y a un bien sûr l’adaptateur « Thunderbolt 4 vers USB » dont je parlais plus haut mais ce ne sera que du dépannage, car j’ai le sentiment que son utilisation quotidienne n’est pas recommandée.

Si vous l’utilisez par exemple avec une clef USB, la longueur du connecteur + la longueur et le poids de la clé USB peuvent peser sur le connecteur interne de la machine, et peut être à terme causer un problème de connectique, ne serait-ce que si on bouge l’ordinateur et que l’on cogne accidentellement la clé… pas génial…

Paradoxalement, un hub avec une connectique souple ne poserait pas ce problème. Si j’analyse objectivement mon usage de clé USB / carte SD en extérieur, l’utilisation d’un hub multi-connecteurs est plus qu’acceptable.

Dans mon cas personnel, c’est donc un bon compromis car 90% du temps je bénéficie d’un machine avec le minimum nécessaire pour garder une taille et un poids réduits, et les 10% du temps je sors le hub au besoin. A voir donc en fonction de votre usage.

Quelle est la configuration retenue pour mon Dell XPS 13 plus ?

Sans grand discours, voici la description complète :

Configuration de mon Dell XPS 13 Plus (9320)

A savoir : le configurateur Dell ne permet pas de choisir certaines combinaisons, par exemple si vous choisissez comme moi l’écran OLED, vous ne pourrez pas sélection le processeur i7 de 14 coeurs…

Côté mémoire vive, j’ai choisi 32 Go de RAM (l’option la plus haute) pour deux raisons :

La première est que la RAM est soudée sur la carte mère, donc il ne sera pas possible d’en ajouter après… comme je vais garder cette machine plusieurs années, c’est un choix judicieux de prendre un peu d’avance…

La deuxième raison est l’utilisation de machines virtuelles dans certains de mes développements. Une machine virtuelle est comme un ordinateur à l’intérieur d’un ordinateur, ce qui demande plus de ressources, notamment de la mémoire vive en quantité pour avoir une expérience sans ralentissement.

Pour le disque dur, par chance on peut le changer dans le temps ! Donc j’ai pris la plus petite option pour diminuer « un peu » le prix de la bête…

Pour l’écran, je me suis clairement fait plaisir en prenant la version OLED, qui pourtant consomme plus de batterie que ses homologues mais le confort de lecture, en tant que développeur, est clairement pour moi dans les premiers critères, quitte à sacrifier un peu de batterie.

Ce n’est pas pénalisant dans mon cas car j’ai la chance de posséder une batterie externe, pour justement tenir la journée en extérieur avec un ordinateur portable standard (et en plus je peux charger mon téléphone en même temps, pratique pour avoir la 4G en continu…).

A voir donc à l’usage, notamment sur le confort en extérieur, avec le soleil sur l’écran…

Dell XPS 13 Plus sous Linux, on change la distribution par défaut (sinon c’est pas drôle)

Avec les année j’ai trouvé la configuration spéciale qui pour moi permet d’être productif, sur un environnement stable tout en profitant des dernières innovation en terme d’ergonomie utilisateur.

Pour cela j’utilise le distribution KDE Neon qui se basse sur une version Ubtuntu LTS (Long Time Support) et la dernière version de l’environnement de bureau KDE Plasma.

Je pars alors en quête de ma clée USB, j’y télécharge la dernière version de KDE Neon, je l’installe et là miracle, je dispose de mon environnement Linux préféré…

Mais les problèmes arrivent

La résolution par défaut est bien trop élevé, je passe alors de 3456×2160 à 1920×1200 en 16:10 en quels click.

Un rapide tout du propriétaire me faire dire que l’ensemble de matériel fonctionne sauf… la webcam.

Je me dirige comme tout à chacun pour télécharger les pilotes sur le site de Dell, comme on s’attend à le faire chez un constructeur qui propose son matériel livrée sous linux.

Et là c’est la douche froide

Pas de pilote Linux téléchargeable, oui vous avez bien lu !

Les pilotes pour la webcam sont bien sûr disponibles pour Windows 10 et Windows 11, mais rien pour Ubuntu, alors que le constructeur propose et livre sa machine avec cette distribution !

Clairement pour moi c’est inadmissible

Je lance alors une bouteiller à la mer en contactant le support Dell, s’en suit un échange stérile avec comme résultat une remontée en interne au service qualité.

Bref, soit je continue avec mon environnement préféré mais sans webcam, soit je repars sur la configuration d’usine…

Je suis énervé, mais je le fais quand même

Je teste la procédure de retour arrière, bien que n’ayant pas fait de sauvegarde de la version d’usine comme recommandé par Dell, je décide d’utiliser la fonctionnalité présente au démarrage du Dell XPS 13 Plus pour charger un système d’exploitation d’usine, à distance.

C’est un bon point pour Dell, je prends mon mal en patiente en me disant que je vais trouver « un compromis » entre mes attentes et ce qu’il est réellement possible de faire.

Mais là, à nouveau un problème

L’assistant de démarrage Dell indique une erreur au chargement de la distribution d’usine, je me dis que je dois alors mettre à jour le bios au préalable (on peut le faire à distance également, en indiquant sa clée wifi) : nouvelle erreur !

Décidément, ce n’est pas ma journée !

Je me retrouve alors seul et coincée dans une prison dorée…

Je décide alors d’activer le plan B

Le plan B est d’aller chercher une solution disponible sur internet, après tout, je ne dois pas être le seul dans ce cas là.

Je détaille tout le cheminement dans cette vidéo :

Je vous invite vraiment à regarder la vidéo pour suivre tous les détails, les deux liens qui m’ont aidés sont ceux là :

Au final victoire ! La webcam fonctionne et je peux utiliser mon Dell XPS 13 Plus à son plein potentiel 🙂

J’y ai passé pas mal de temps, c’est pourquoi j’ai noté chaque étape ainsi que les optimisations que j’ai réalisé.

Je ne garantie pas que le procédure soit efficace à 100% car c’est après l’application de la procédure de Dell que la webcam à fonctionnée

Mais, je l’avais testé ultérieurement avant le retour de Dell, car le lien était facilement accessible après 5 minutes de recherche… et là ça n’avait pas fonctionné.

Peut être manquait-il un redémarrage, peut être que les prérequis de la procédure présente sur Archlinux, ainsi que la copie de certains binaires ont aidé ? Je ne sais pas.

La procédure pour vous aider

Maintenant que la messe est dite, et si cela peut vous aider, voici la procédure que j’ai appliqué, j’ai ensuite suivi celle donnée par Dell (voir liens plus haut) :

NB : pour les exemples, mon répertoire contenant les sources du Kernel est ~/Documents/kernel/linux-stable.

NB2 : La dernière version de KDE Neon est déjà installée en remplacement de la version d’Ubuntu livrée par Dell

Récupération des source du noyaux

Récupération des sources du noyau sur kernel.org ici la 5.15.55 (cliquer ici pour télécharger les sources)

Mise à jour de la distribution

sudo apt update
sudo pkcon update
sudo reboot

Installation des prérequis pour compiler le noyau

sudo apt install -y build-essential libncurses5-dev fakeroot xz-utils libelf-dev bison flex dwarves

Création du répertoire de destination puis récupération des sources du noyau (5.15.41)

cd
mkdir kernel
cd kernel
git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
cd linux-stable
git checkout -b custom5.15.41 v5.15.41

Initialisation de la configuration du noyau avec celui existant sur le système

sudo find /boot/ \( -iname "*config*" -a -iname "*`uname -r`*" \) -exec cp -i -t ./ {} \;

mv *`uname -r`* .config

Fichier update_konfig_makefile.sh pour ne pas avoir à se faire les copier / coller à la main 🙂

copier le code suivant dans un fichier avec l’extension .sh (possédant les droits d’exécution) puis l’exécuter pour mise à jour des fichiers de configuration et makefiles :

NB : a exécuter dans le répertoire « kernel »

#!/bin/bash

#directory of kernel source code
export KERNEL_DIRECTORY="/home/nicolas/Documents/kernel/linux-stable"

echo 'config MFD_LJCA
        tristate "Intel La Jolla Cove Adapter support"
        select MFD_CORE
        depends on USB
        help
          This adds support for Intel La Jolla Cove USB-I2C/SPI/GPIO
          Adapter (LJCA). Additional drivers such as I2C_LJCA,
          GPIO_LJCA, etc. must be enabled in order to use the
          functionality of the device.' >> ${KERNEL_DIRECTORY}/drivers/mfd/Kconfig

echo 'obj-$(CONFIG_MFD_LJCA) += ljca.o' >> ${KERNEL_DIRECTORY}/drivers/mfd/Makefile

echo 'config SPI_LJCA
       tristate "INTEL La Jolla Cove Adapter SPI support"
       depends on MFD_LJCA
       help
          Select this option to enable SPI driver for the INTEL
          La Jolla Cove Adapter (LJCA) board.

          This driver can also be built as a module. If so, the module
          will be called spi-ljca.' >> ${KERNEL_DIRECTORY}/drivers/spi/Kconfig

echo 'obj-$(CONFIG_SPI_LJCA) += spi-ljca.o' >> ${KERNEL_DIRECTORY}/drivers/spi/Makefile

echo 'config GPIO_LJCA
        tristate "INTEL La Jolla Cove Adapter GPIO support"
        depends on MFD_LJCA

        help
          Select this option to enable GPIO driver for the INTEL
          La Jolla Cove Adapter (LJCA) board.

          This driver can also be built as a module. If so, the module
          will be called gpio-ljca.' >> ${KERNEL_DIRECTORY}/drivers/gpio/Kconfig

echo 'obj-$(CONFIG_GPIO_LJCA) += gpio-ljca.o' >> ${KERNEL_DIRECTORY}/drivers/gpio/Makefile

echo 'config I2C_LJCA
        tristate "I2C functionality of INTEL La Jolla Cove Adapter"
        depends on MFD_LJCA
        help
         If you say yes to this option, I2C functionality support of INTEL
         La Jolla Cove Adapter (LJCA) will be included.

         This driver can also be built as a module.  If so, the module
         will be called i2c-ljca.' >> ${KERNEL_DIRECTORY}/drivers/i2c/busses/Kconfig

echo 'obj-$(CONFIG_I2C_LJCA) += i2c-ljca.o' >> ${KERNEL_DIRECTORY}/drivers/i2c/busses/Makefile

echo 'config INTEL_MEI_VSC
        tristate "Intel Vision Sensing Controller device with ME interface"
        select INTEL_MEI
        depends on X86 && SPI
        help
         MEI over SPI for Intel Vision Sensing Controller device' >> ${KERNEL_DIRECTORY}/drivers/misc/mei/Kconfig

echo 'obj-$(CONFIG_INTEL_MEI_VSC) += mei-vsc.o
mei-vsc-objs := spi-vsc.o
mei-vsc-objs += hw-vsc.o' >> ${KERNEL_DIRECTORY}/drivers/misc/mei/Makefile


echo 'source "drivers/misc/ivsc/Kconfig"' >> ${KERNEL_DIRECTORY}/drivers/misc/Kconfig

echo 'obj-$(CONFIG_INTEL_VSC) += ivsc/' >> ${KERNEL_DIRECTORY}/drivers/misc/Makefile

echo 'config POWER_CTRL_LOGIC
    tristate "power control logic driver"
    depends on GPIO_ACPI
    help
     This is a power control logic driver for sensor, the design
     depends on camera sensor connections.
     This driver controls power by getting and using managed GPIO
     pins from ACPI config for sensors, such as HM11B1, OV01A1S.

     To compile this driver as a module, choose M here: the
     module will be called power_ctrl_logic.' >> ${KERNEL_DIRECTORY}/drivers/media/i2c/Kconfig


echo 'obj-$(CONFIG_POWER_CTRL_LOGIC) += power_ctrl_logic.o
 obj-$(CONFIG_VIDEO_OV01A1S) += ov01a1s.o
 obj-$(CONFIG_VIDEO_HM11B1)  += hm11b1.o
 obj-$(CONFIG_VIDEO_OV01A10) += ov01a10.o
 obj-$(CONFIG_VIDEO_OV02C10) += ov02c10.o' >> ${KERNEL_DIRECTORY}/drivers/media/i2c/Makefile

Récupération du driver ivsc

cd ../..
git clone https://github.com/intel/ivsc-driver

Copie des fichiers du driver ivsc dans les sources du noyau

cp -v ./ivsc-driver/include/linux/vsc.h ./kernel/linux-stable/include/linux/
cp -v ./ivsc-driver/include/linux/mfd/ljca.h ./kernel/linux-stable/include/linux/mfd/
cp -v -r ./ivsc-driver/drivers/ ./kernel/linux-stable/

Ajout des prérequis à la compilation

sudo apt-get install -y libssl-dev zstd

Désactivation de la certification ubuntu

Dans le fichier .config, définir la valeur suivante pour la variable :

CONFIG_SYSTEM_TRUSTED_KEYS=""
CONFIG_SYSTEM_REVOCATION_KEYS=””

Installation des binaires pour le firmware (optionnel, à vérifier, ne pas appliquer, juste ici pour tracer le point dans la documentation)

cd ../..
git clone https://github.com/intel/ivsc-firmware
sudo cp ./ivsc-firmware/firmware/ivsc_fw_a1_prod.bin /lib/firmware/vsc/soc_a1_prod/
sudo cp ./ivsc-firmware/firmware/ivsc_pkg_ovti01a0_0_a1_prod.bin /lib/firmware/vsc/soc_a1_prod/
sudo cp ./ivsc-firmware/firmware/ivsc_skucfg_ovti01a0_0_1_a1_prod.bin /lib/firmware/vsc/soc_a1_prod/

Compilation des drivers ipu6-drivers

Application du patch nécessaire

cd kernel/linux-stable/
patch -p1 < ../../ipu6-drivers/patch/IOMMU-passthrough-for-intel-ipu.diff

Copie des fichiers nécessaires vers les sources du kernel

cd ../..
sudo cp -rv ./ipu6-drivers/include/ ./kernel/linux-stable/
sudo cp -rv ./ipu6-drivers/drivers/ ./kernel/linux-stable/

Déploiement des binaires pour la caméra

git clone https://github.com/intel/ipu6-camera-bins
sudo cp -rv ./ipu6-camera-bins/ipu6ep/include/* /usr/include/   
sudo cp -rv ./ipu6-camera-bins/ipu6ep/lib/* /usr/lib/

Compilation et installation de la librairie d’espace mémoire utilisateur

Installation des dépendances nécessaires

sudo apt-get -y install libexpat-dev automake libtool libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev cmake

Récupération des sources, définition de la variable d’environnement pour la caméra spécifique au Dell XPS 13 Plus

git clone https://github.com/intel/ipu6-camera-hal
export IPU6_VER=ipu6ep

Compilation

cd ipu6-camera-hal
mkdir -p ./build/out/install/usr && cd ./build/
cmake -DCMAKE_BUILD_TYPE=Release \
-DIPU_VER=${IPU6_VER} \
-DENABLE_VIRTUAL_IPU_PIPE=OFF \
-DUSE_PG_LITE_PIPE=ON \
-DUSE_STATIC_GRAPH=OFF \
-DCMAKE_INSTALL_PREFIX=/usr ..
make -j`nproc`
sudo make install

Création des répertoires et copie des binaires sur le système

sudo mkdir /usr/lib/${IPU6_VER}
sudo mkdir /usr/share/defaults/etc/${IPU6_VER}
sudo mv /usr/lib/libtbd.so.0.0.0 /usr/lib/${IPU6_VER}/libtbd.so.0.0.0
sudo mv /usr/lib/libSkyCamAIC.so /usr/lib/${IPU6_VER}/libSkyCamAIC.so
sudo mv /usr/lib/libSkyCamAICKBL.so /usr/lib/${IPU6_VER}/libSkyCamAICKBL.so
sudo mv /usr/lib/libStatsConverter.so /usr/lib/${IPU6_VER}/libStatsConverter.so
sudo mv /usr/lib/libbroxton_ia_pal.so /usr/lib/${IPU6_VER}/libbroxton_ia_pal.so
sudo mv /usr/lib/libia_aec.so /usr/lib/${IPU6_VER}/libia_aec.so
sudo mv /usr/lib/libia_aic.so /usr/lib/${IPU6_VER}/libia_aic.so
sudo mv /usr/lib/libia_aic_engine.so /usr/lib/${IPU6_VER}/libia_aic_engine.so
sudo mv /usr/lib/libia_aic_myriad.so /usr/lib/${IPU6_VER}/libia_aic_myriad.so
sudo mv /usr/lib/libia_aiq.so /usr/lib/${IPU6_VER}/libia_aiq.so
sudo mv /usr/lib/libia_aiq_file_debug.so /usr/lib/${IPU6_VER}/libia_aiq_file_debug.so
sudo mv /usr/lib/libia_aiqb_parser.so /usr/lib/${IPU6_VER}/libia_aiqb_parser.so
sudo mv /usr/lib/libia_bcomp.so /usr/lib/${IPU6_VER}/libia_bcomp.so
sudo mv /usr/lib/libia_cca.so /usr/lib/${IPU6_VER}/libia_cca.so
sudo mv /usr/lib/libia_cca_file_debug.so /usr/lib/${IPU6_VER}/libia_cca_file_debug.so
sudo mv /usr/lib/libia_ccat.so /usr/lib/${IPU6_VER}/libia_ccat.so
sudo mv /usr/lib/libia_cmc_parser.so /usr/lib/${IPU6_VER}/libia_cmc_parser.so
sudo mv /usr/lib/libia_coordinate.so /usr/lib/${IPU6_VER}/libia_coordinate.so
sudo mv /usr/lib/libia_dpc.so /usr/lib/${IPU6_VER}/libia_dpc.so
sudo mv /usr/lib/libia_dvs.so /usr/lib/${IPU6_VER}/libia_dvs.so
sudo mv /usr/lib/libia_dvs_file_debug.so /usr/lib/${IPU6_VER}/libia_dvs_file_debug.so
sudo mv /usr/lib/libia_emd_decoder.so /usr/lib/${IPU6_VER}/libia_emd_decoder.so
sudo mv /usr/lib/libia_exc.so /usr/lib/${IPU6_VER}/libia_exc.so
sudo mv /usr/lib/libia_intrinsics.so /usr/lib/${IPU6_VER}/libia_intrinsics.so
sudo mv /usr/lib/libia_isp_bxt.so /usr/lib/${IPU6_VER}/libia_isp_bxt.so
sudo mv /usr/lib/libia_isp_bxt_file_debug.so /usr/lib/${IPU6_VER}/libia_isp_bxt_file_debug.so
sudo mv /usr/lib/libia_lard.so /usr/lib/${IPU6_VER}/libia_lard.so
sudo mv /usr/lib/libia_log.so /usr/lib/${IPU6_VER}/libia_log.so
sudo mv /usr/lib/libia_ltm.so /usr/lib/${IPU6_VER}/libia_ltm.so
sudo mv /usr/lib/libia_ltm_file_debug.so /usr/lib/${IPU6_VER}/libia_ltm_file_debug.so
sudo mv /usr/lib/libia_me_corner.so /usr/lib/${IPU6_VER}/libia_me_corner.so
sudo mv /usr/lib/libia_mkn.so /usr/lib/${IPU6_VER}/libia_mkn.so
sudo mv /usr/lib/libia_nvm.so /usr/lib/${IPU6_VER}/libia_nvm.so
sudo mv /usr/lib/libia_ob.so /usr/lib/${IPU6_VER}/libia_ob.so
sudo mv /usr/lib/libia_pd.so /usr/lib/${IPU6_VER}/libia_pd.so
sudo mv /usr/lib/libia_view.so /usr/lib/${IPU6_VER}/libia_view.so
sudo mv /usr/lib/libpvl_blink_detection.so /usr/lib/${IPU6_VER}/libpvl_blink_detection.so
sudo mv /usr/lib/libpvl_eye_detection.so /usr/lib/${IPU6_VER}/libpvl_eye_detection.so
sudo mv /usr/lib/libpvl_face_detection.so /usr/lib/${IPU6_VER}/libpvl_face_detection.so
sudo mv /usr/lib/libpvl_face_recognition.so /usr/lib/${IPU6_VER}/libpvl_face_recognition.so
sudo mv /usr/lib/libpvl_mouth_detection.so /usr/lib/${IPU6_VER}/libpvl_mouth_detection.so
sudo mv /usr/lib/libpvl_object_tracking.so /usr/lib/${IPU6_VER}/libpvl_object_tracking.so
sudo mv /usr/lib/libpvl_smile_detection.so /usr/lib/${IPU6_VER}/libpvl_smile_detection.so
sudo mv /usr/lib/libcisu.so.0.0.0 /usr/lib/${IPU6_VER}/libcisu.so.0.0.0
sudo mv /usr/lib/libcisu_os_plugin.so.1.0.0 /usr/lib/${IPU6_VER}/libcisu_os_plugin.so.1.0.0
sudo mv /usr/lib/libgcss.so.0.0.0 /usr/lib/${IPU6_VER}/libgcss.so.0.0.0
sudo mv /usr/lib/libia_camera.so.0.0.0 /usr/lib/${IPU6_VER}/libia_camera.so.0.0.0
sudo mv /usr/lib/libia_cipf.so.0.0.0 /usr/lib/${IPU6_VER}/libia_cipf.so.0.0.0
sudo mv /usr/lib/libcamhal.so /usr/lib/${IPU6_VER}/libcamhal.so
sudo mv /usr/share/defaults/etc/camera /usr/share/defaults/etc/${IPU6_VER}/

Définition des règles UDEV

sudo cp -v ../config/linux/rules.d/*.rules /lib/udev/rules.d/

Redémarrer la machine pour prise en compte des règles udev qui viennent d’être définies.

Compilation du noyau

sudo make deb-pkg LOCALVERSION=-custom KDEB_PKGVERSION=$(make kernelversion)-1
cd kernel/linux-stable
sudo make clean

Bientôt la suite…

Au moment où je rédige cet article, je continue de faire connaissance avec mon Dell XPS 13 Plus et je note point par point chaque élément, je vous dirai donc bientôt ce qu’il en est en continuant cet article et la série de vidéos associée.

En attendant vous êtes libre de laisser un commentaire en bas de l’article pour posez vos questions concernant cette machine incroyable, j’y répondrai avec plaisir et compléterai l’article en fonction de nos échanges !

Pour être prévenu des avancées, inscrivez-vous à la newsletter en cliquant ici.

Je vous dis à bientôt !

Nicolas.

 
 
 

Laissez un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}

Profitez des conseils et de l'expérience d'un mentor senior. Rejoignez plus de 3536+ membres de la communauté Coder pour changer de vie.

Bonjour ! Je vous offre mon guide pour développeurs & mes conseils

Bonjour ! Je vous offre mon guide pour développeurs & mes conseils :)

Bonjour ! Je vous offre mon guide pour développeurs

& mes conseils