Archives de catégorie : Informatique et technologie

Problème d’affichage du texte dans Visual Studio Code sur Kubuntu 16.04? Changez de police!

Après la mise à jour de Kubuntu 15.10 à la version 16.04, le texte avait une sale tronche: il était plus sombre et avait l’air moins précis.

En fait cela venait du fait que la police par défaut était devenue « Courier New ». La solution, qui n’avait rien à voir avec la couleur du texte (!), a été de modifier le fichier de réglages (menu Fichier / Préférences / Paramètres utilisateur) en rajoutant un entrée comme:

"editor.fontFamily": "Liberation Mono"
"editor.fontFamily": "Oxygen Mono"

J’ai galéré pour trouver pourquoi cela ne touchait que Kubuntu 16.04 (que ce soit sous KDE ou XFCE), et pas Ubuntu 16.04 (sous Unity) ou Ubuntu 15.10 (sous KDE): grâce à des VM j’avais comparé (avec « strace ») les différents fichiers chargés par vscode, sans réussite: il semblait que les fichiers étaient les même, notamment les fichiers de thème de GTK 2.

En fait, j’aurais pu trouver plus rapidement en utilisant des outils de dev de vscode (ceux de Chromium; on les active dans le menu aide et on les ouvre avec F12): j’aurais pu voir quel était la police utilisée en pratique dans l’éditeur.

Text display issue in Visual Studio Code in Kubuntu 16.04? Change the font!

After upgrading Kubuntu from 15.10 to 16.04, the text really looked ugly: it was darker (even when my theme specified « #ffffff ») and looked imprecise.

In fact, the reason was the default font which was now « Courier New ». The solution, which had nothing to do with the text color (!), was to modify the configuration file (menu File / Preferences / User Settings) by adding an entry like:

"editor.fontFamily": "Liberation Mono"
"editor.fontFamily": "Oxygen Mono"

I struggled to find why it only impacted Kubuntu 16.04 (either KDE and XFCE), and not Ubuntu 16.04 (on Unity) or Ubuntu 15.10 (on KDE): using some VMs I compared (with « strace ») the files loaded by vscode, without any success: it seemed that the files were the same, including the GTK 2 themes.

In fact, I could have found more quickly by using the vscode (Chromium) dev tools (unlock them in the Help menu and press F12): I would have seen which was the font actually used by the editor.

Benchmark: Athlon x4 620 contre A8-7600

Une petite comparaison de l’entrée de gamme AMD 4 cœurs:

  • de 2009 : Athlon x4 620 (2.6Ghz, 72€), DDR2 PC5300 à 667 Mhz.
  • et de 2015 : A8-7600 (3.1Ghz, 95€, mais avec processeur graphique intégré), DDR3 à 2133 Mhz.

Ancien / Nouveau :

  • Export de photos avec Darktable : -45% (36 min / 19 min 40 s)
  • Rendu/compression de vidéo avec KdeEnlive, 4 threads : -18% (2 min 04 / 1 min 42)
  • Conversion d’un album Flac vers Ogg Vorbis : -8% (36s / 33s)
  • HTML Jetstream, Firefox 42 : +39% de points (80 pts, 101 pts)
  • HTML Kraken 1.1, Firefox 42 : -26% (2905ms / 2159ms)
  • Recompression d’un xml.bz2 en xz : -9% (27.94s / 25.40s)
  • Recompression d’un gros XML en xz : -18% (5 mn 51 / 4 min 47)
  • Programme Java maison traitant un dump Wiki: -23% (31.7 s / 24.5 s)

En 6 ans pas de progrès fabuleux. Par contre c’est sensé consommer 30% moins.

Kubuntu 15.10 : toujours mi-figue mi-raisin

Encore une nouvelle version de Kubuntu, et encore un bilan mitigé. Cette fois je n’ai pas fait la mise à jour mais une réinstallation (j’ai migré vers un disque plus petit et je n’ai pas réussi rapidement à faire fonctionner grub).

Parmi les problèmes irritants:

  • Il n’y a apparemment d’aide pour installer et démarrer « ibus » et « Anthy » (or « Mozc ») qui permettent de taper du japonais. J’ai dû installer les packages à la main, et ajouter un script au démarrage de session pour lancer « ibus-daemon » (car si je rajoute aux applications automatiquement démarrées son programme directement cela ne fonctionne pas ; seuls les scripts sont lancés).
  • Avant, KWallet (le gestionnaire de mot de passe de KDE) me demandait un mot de passe une fois par session. Maintenant il me le demande en plus à chaque fois démarrage d’Amarok. Raison: Amarok est une application KDE 4 et l’extension Last FM utilise KWallet version 4, alors que les autres applications utilisent KWallet version 5. Il est possible de désactiver KWallet pour cette extension (le mot de passe sera en clair!) en mettant dans le fichier « /home/fab/.kde/share/config/amarokrc », dans la section « [Service_LastFm] » la valeur « kWalletUsage=2 ».
  • Cliquer sur l’icône de Korganiser (le gestionnaire de calendrier) dans la boîte de miniature n’ouvre plus Korganiser.
  • Dans Dolphin (gestionnaire de fichiers), les aperçus de vidéos ne fonctionnent plus. La version de « ffmplayerthumbs » présente dans les dépôts de logiciel n’est pas compatible avec cette version de KDE (on peut l’installer mais rien ne se passe). On le peut compiler et l’installer à la main.
  • Toujours dans Dolphin, les menus « Compresser » et « Extraire » ont disparu à cause de ce bug. Solution: en temps que root, « ln -s /usr/share/kde4/servicetypes/konqpopupmenuplugin.desktop /usr/share/kservicetypes5/ », puis en tant qu’utilisateur « kbuildsycoca5 ».
  • La restauration des programmes lancés lors de la dernière session est toujours cassée (cela fera donc deux versions).
  • Plusieurs programmes KDE plantent quand un écran additionnel est connecté (ce qui est à chaque démarrage pour moi).
  • mp3gain (normalisation de musique) n’est plus présent dans les dépôts.
  • Quand j’effectue une mise à jour de paquets, l‘icône de notification dans la tableau de bord reste inchangée (si il y avait des mises à jour critique, l’icône reste rouge).

Parmi les points positifs:

  • Kdenlive (le programme de montage vidéo) fonctionne maintenant sans planter tous les quelques clics. Très pratique.
  • Le branchement en USB (mtp) de mon téléphone Android marche plus souvent (mais cela reste aléatoire). Par contre avec ma tablette toujours pas de succès.
  • Le service de DNS local n’a plus de problème de DHCP (je devais souvent redémarrer l’interface réseau après le démarrage!).
  • Gwenview gère bien à nouveau les images en portrait.
  • J’ai l’impression qu’ibus (gérant les méthodes de saisie au clavier exotiques comme le japonais) a moins de problèmes avec certains programmes (dont Anki).

« Lazarus: Form Recovery » makes forms submit slow :-(

« Lazarus: Form Recovery » is a Firefox add-on that saves the text of the forms so it can be restored later (very handy, for example if you have typed a long mail/message/Wikipedia contribution and something bad happens, like a crash or a computer shutdown).

Unfortunately, I realized that it causes a small delay (something like 1.5s) when submitting a form. It is perceptible in the case of an Ajax form (or even an « offline » form where nothing is sent but data is processed locally in Javascript; in this case the result should be instant). I spend some times searching around, it was crazy! No problem with a simple « onClick » but only with « onSubmit ». Was it the debug version of React? No! Or the fact that I used the Javascript compilation of React JSX? No! There was nothing special in the Performance analyser. Then I realized that Chromium was fast. And Firefox dev edition was fast. Then I began the Firefox add-on hunt…

That’s strange that saving is not asynchronous…

(by the way, if you want to compile JSX files using Node.js, don’t install « node » on Ubuntu, that’s not « Node.js »! Install « nodejs » instead, and make a symlink from « /usr/bin/nodejs » to « node » somewhere on your path. Otherwise you may ask yourself why the JSX compiler does nothing. It’s just that the executable « node » is completely unrelated)

Atom: police japonaise / Japanese font

(English below)

Dans l’éditeur de texte Atom, sous Kubuntu 15.04, les caractères japonais s’affichaient comme un carré (□), alors que les autres éditeurs (Emacs, Kate, Geany…) n’avaient pas ce problème. Pour obtenir un affichage correct, j’ai mis comme police dans les préférences «Oxygen Mono, TakaoPGothic». Par contre, comme avec les autres éditeurs de textes, les caractères japonais ne s’affichent pas avec une longueur fixe (vu que la police TakaoPGothic n’est pas une police à chasse fixe), mais ce n’est pas grave.

In the text editor Atom, in Kubuntu 15.04, the Japanese characters were displayed as a square (□), whereas the other editors (Emacs, Kate, Geany…) behave correctly. In order to obtain a correct display, I set in the settings the font as «Oxygen Mono, TakaoPGothic». However, as in the other editors, the japanese characters were not displayed with a fixed length (given that the font TakaoPGothic is proportional), but that’s not really a problem.

 

Kubuntu 15.04: really full of bugs

I upgraded from Kubuntu from 14.04 to 15.04 (in order to get MTP support for my phone), and unfortunately it is really beta quality.

  • My settings from the previous version of KDE were not migrated.
  • When opening a session, some programs are not restored (ex: Konsole). Super annoying.
  • And also some windows are restore under my bottom bar.
  • I get prompted to install Flash at each session.
  • The auto-execution of programs at the session opening now only works for « programs » (having an associated « .desktop » file), not for shell scripts (though the configuration interface still allows adding such scripts). The list of the auto-executed programs is now located in « ~/.config/autostart » (and not anymore in « ~/.kde/Autstart »).
  • Why is there two distinct directories for the thumbnails (~/.thumbnails and ~/
    .cache/thumbnails) ?
  • The only way to add a program to a panel is by browsing the program hierarchy via the program menu widget (on the same panel). Searching a program by name will not allow you to add a program. Neither will the application launcher widget.
  • In order to associate a keyboard short-cut to Klipper, I need two icons of Klipper in my bar.

I also noticed that the « open file » dialog boxes (in particular the one for choosing a wallpaper image) does not display preview images larger than 5 Mo (default limit). If you want to choose a photo taken with your DSLR it can be annoying. There is no global way to change this settings. To change it for a given application, open or create the configuration file « ~/.config/APPNAMErc » (for Kate: ~/.config/katerc ; for everything related to the desktop: ~/.config/plasmashellrc), and make sure the following section is present.

[PreviewSettings]
MaximumRemoteSize=0
MaximumSize=50000000
UseFileThumbnails=true

« MaximumSize » is the maximal size of the files. In this example: 50Mo.

My recommendation: if you want stability and the current version is satisfying for you, do not migrate.

Android, DAVdroid, Owncloud, TLS

Pour accéder sur Android à une liste de contacts via CardDav (ce que permet par exemple Owncloud), on peut utiliser DAVdroid par exemple. Il y a quelques pièges au niveau des certificats HTTPS.

Format CSR

Le certificat doit être au format CSR, et pas au format PEM (avec ce format, Android ne vous affichera pas le moindre message d’erreur, et le certificat n’apparaîtra mystérieusement pas dans la liste). Pour convertir de PEM à CSR:

openssl x509 -in mon_certificat.pem -outform DER -out mon_certificat.crt

CA:TRUE

Comme l’indique la FAQ de DAVdroid, le certificat doit avoir l’attribut «CT:TRUE». Premièrement il faut que le certificat soit un CA. J’avais essayé de créer un CA avec cet attribut, puis un certificat-fils avec cet attribut, sans succès (ça semble être un problème d’Android 4.x). J’ai donc créé uniquement un certificat CA pour mon serveur owncloud.

Pour le généré, j’ai créé un fichier de configuration basé sur celui de base «openssl.cnf». Dedans, j’ai modifié la section suivante (comme indiqué dans les commentaires de ce blog):

[ v3_ca ]
 subjectKeyIdentifier=hash
 authorityKeyIdentifier=keyid:always,issuer
 basicConstraints=CA:TRUE

J’ai créé la clé et le certificat d’un trait (et donc sans passer par le mécanisme de requête de certificat):

openssl req -x509 -new -config my_server.cnf -nodes -key private/my_server.key -days 1024 -out certs/my_server.pem

Attention, vous devriez comprendre ce que vous faites quand vous générez des clefs/certificats (quel durée de validité? quel algorithme? etc…).