Importer une découpe de texte réalisée avec Inkscape dans Scribus

Lorsque l’on importe un objet vectoriel réalisé avec Inkscape dans Scribus, Scribus affiche une message d’avertissement mais en général l’objet vectoriel est correctement affiché.

Mais avec la découpe suivante, les premiers essais d’import était infructueux. Voici la découpe :

Les tests :

Premier essai : deux bloc textes, application de la découpe et hop on import : échec, seul le second texte est importé.

Deuxième essai : Annuler la découpe précédente, passage du bloc texte de découpe en objet vectoriel (objet vers chemin), le chemin résultant est en fond noir sans contour. Application de la découpe, hop on import : échec.

Troisième essai : Annuler la découpe précédente, passer l objet vectoriel de découpe en fond blanc et le passer au dessus du bloc texte à découper. Hop on import dans Scribus : échec…

Quatrième essai : sélectionner l’objet découpé et le passer en vectoriel (objet vers chemin). Hop on import : succès !

A retenir :

Trois points importants pour que l’import fonctionne :

  • L’ordre des objets : la découpe au dessus de l’objet à découper.
  • La couleur de la découpe : en blanc parce que l’opération de découpe est probablement une multiplication, donc pour conserver les bits, il vaut mieux du 1 (blanc) que du 0 (noir).
  • Passer en chemin le résultat de découpe pour s assurer que la police de caractère n’a plus d’influence lors de l’import

Blender does not detect GPU on Ubuntu 18.10 with an Nvidia card

Make sure your nvidia driver is properly installed

To make sure that the card is properly running within your system, you should run glxgears, it is a small openGL application that can only run properly if you have an openGL card installed :

# glxgears -info
Running synchronized to the vertical refresh.  The framerate should be
approximately the same as the monitor refresh rate.
GL_RENDERER   = GeForce GTX 750 Ti/PCIe/SSE2
GL_VERSION    = 4.6.0 NVIDIA 390.87
GL_VENDOR     = NVIDIA Corporation
GL_EXTENSIONS = GL_AMD_multi_draw_indirect [...]

if you do not see your card here, make sure all nouveau related components are uninstalled (driver, nouveau-xorg configurations…). You should use aptitude to see the dependencies.

Once nouveau is removed, you can install nvidia-xorg conf (search for nvidia with aptitude) and restart X (or reboot)

Make sure Nvidia Cuda toolkit is installed

Blender is using Cuda directive to render the scene, so you need Cuda toolkit to be installed otherwise Blender won’t see your card even if it is properly working.

So install cuda toolkit :

# aptitude install nvidia-cuda-toolkit

restart Blender once installed, and that’s it !

Gérer correctement l’exposition et la colorimétrie lors du rendu dans Blender

Installer le gestionnaire de couleur suivant, en suivant les instructions du « How » :

https://github.com/sobotka/filmic-blender

En complément des explications du site pour réaliser l’installation (qui est très simple : extraire le zip, un déplacement et un  renommage) vous avez le tutoriel de Blender Guru qui démontre bien les défauts de sRGB et les avantages de passer sur un gestionnaire optimisé pour le rendu tel que celui-ci.

 

Set key repetition within lxde

First, identify the code of the key with « xev » (it is an events catcher)

$ xev
[...]
KeyPress event, serial 48, synthetic NO, window 0x3c00001,
root 0x163, subw 0x0, time 280713293, (261,623), root:(263,648),
state 0x0, keycode 116 (keysym 0xff54, Down), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

In this example, the keycode is 116

Use this keycode to enable the repetition on this key with the command « set »

$ set r 116

save this command in .xsessionrc or .xinitrc to keep settings after a restart

Formation « Solution architect associate » sur 3 jours chez TNP : checked !

Cette formation de 3 jours chez TNP a permis de revoir les bases et d’affiner certains sujets (architecture serverless, lambda, dynamoDB…). Avec 1430 nouveaux services ouverts cette année chez AWS, il y avait tout de même de quoi faire en nouveautés intéressantes.

Merci à Oliver Bazatole, le formateur de cette session pour ses conseils avisés.

La certification va suivre…

Architecte et expert technique freelance

Il aura fallu un peu plus de 3 ans pour que la solution de la « serrure connectée » soit autonome, et je la laisse entre de bonnes mains.

Il est temps pour moi de proposer mes services à de nouvelles structures. Avec 10 d’expériences de conception et de développement et 10 ans d’architecture applicative et système ; mes connaissances couvrent un spectre assez large : analyse et conception (IAF), développement backend (Java, PHP), développement mobile (Android et IOS), définition et mise en œuvre d’infrastructure cloud (AWS, python), sécurisation (TLS, X509…), expertise système linux (debian, ubuntu), cryptographie (AES, RSA), conception de protocole et contrat d’interface (M2M), customisation d’Android (AOSP), amélioration des performances des systèmes existants (Mysql, MariaDB, nginx, analyse de complexité…).

 

Je suis joignable par email : chrystophe.vergnaud [at] gmail.com pour discuter de votre futur projet ou d’une problématique en production.

Purger les e-mails en attente dans exim4

un petit script simple pour purger tous les mails de la queue de message d’exim4 :

Stocker tous les id de messages dans une variable (attention à la mémoire si la liste est grande, passer par un pipe sera plus judicieux dans ce cas) :

# id_list=`exim -bp | awk '{print $3}'`

Lancer la purge sur la liste des ids identifiés :

# exim -Mrm $id_list

 

Quelques outils pour charger un serveur web et surveiller son état

Outils de test de charge

  • ab :

Exemple de charge avec 500 clients concurrents, qui vont lancer une charge de 50000 requêtes au total.

ab -c 500 -n 50000 "https://mon_serveur/page.html"
  • siege

Siege à la différence d’ab lance un maximum de requêtes avec les clients concurrents dont il dispose sur une durée définie lorsque l’option -t est utilisiée. Si l’on utilise l’option -r, cela définit le nombre de requête par client

Dans cet exemple, lancement de 500 clients concurrents qui vont charger 5 fois, on aura 2500 requêtes lancées au total.

siege "https://mon_serveur/script.php" -c 500 -r 5

nb : attention l’option -t prévaut sur l’option -r.

  • jmeter

Avec jmeter, on commence à entrer dans le domaine du test fonctionnel car on peut créer des scénarios et autres. Il est un peu gros pour simplement tester des temps de réponses sur une requête.

  • gatling

Comme jmeter, mais une équipe française derrière.

Superviser le serveur ciblé

Les outils en ligne de commande

  • top : cpu, mémoire…
  • nmon : cpu, mémoire… (plus « visuel » que top)
  • lsof : les descripteurs de fichier
  • netstat : les sockets
  • df : espace disque général
  • du : espace disque par fichier
  • free : utilisation de la mémoire
  • mount -l : point de montage
  • sar : cpu, mémoire (package sysstat)
  • pidstat : process (package sysstat)
  • cat /proc/… : lecture des variables kernel en direct, le plus efficace pour comprendre d’où viennent les limites ou les valeurs par défaut
  • ulimit : visualisation des limites
  • sysctl -a : visualisation des variables kernel (plus rapide que /proc et en lien avec systemd)
  • monit : supervision générale avec affichage

Outils pour avoir des graphes

  • nagios : un classique (grosse artillerie mais efficace)
  • munin : le top pour faire des graphes (commence aussi à devenir une grosse artillerie)
  • m/monit : une couche http au dessus de monit (plus simple que les deux précédents mais sous licence payante)