vendredi 25 août 2023

Erreur 500 avec Gitea "UQE_topic_name n'est pas un btree"

Gitea-Logo.png

J'ai un serveur gitea hébergé sur un modeste raspberry qui me permet de suivre mes petits travaux de développement et d'avoir mon dépôt de code source sur au moins deux stockages. gitea nécessite une base de données et j'ai opté pour une postgres. Tout allait bien jusqu'au jour où j'ai systématiquement obtenu une erreur 500 chaque fois que je cliquais sur un lien de la page d'accueil de l'interface web de mon serveur ...

Lire la suite

dimanche 25 septembre 2022

Forcer la résolution de 2 moniteurs sous X11

Utilisant des moniteurs anciens (VGA) pour mes PC sous I3/X11 à partager entre plusieurs PC dont 1 sous Windows, j'ai acquis des KVM et cela m'a conduit à faire 2 constats: via le KVM, l'un des moniteur a vu sa résolution sous I3 réduite drastiquement (1024x768) là où j'avais précédemment du 1650x1050 (ça se voit !) et l'autre idem alors que dans le même temps je m'aperçois que je peux avoir du 1920x1080 sous Windows ...

Lire la suite

dimanche 10 mai 2020

PiP Firefox sur tous les écrans i3

Firefox permet depuis la version 72d d'afficher les vidéos sous forme de vignette, permettant de naviguer sur une autre page tout en conservant ladite vidéo en premier plan (PiP ou Picture in Picture). Mais comment faire quand on change d'écran virtuel avec i3 pour que cette vignette nous suive ?

Lire la suite

samedi 18 avril 2020

Mise à jour des fichiers du Freebox Server

Il arrive, quand on ajoute ou supprime un fichier dans un disque raccordé au Freebox Server, que ceci ne soit pas pris en compte par les appareils raccordés via DLNA. En tout cas, moi, ça m'arrive avec ma freebox 4K alors que j'ai ajouté ou retiré un fichier via Filezilla ou l'interface web locale (mafreebox.freebox.fr). Voici le moyen que j'ai trouvé pour y remédier....

Lire la suite

samedi 6 janvier 2018

Synergy 1.8 avec coulis de framboise

synergy.pngraspberry.jpg

Voilà-t'y pas que mon vieux PC vient de me lâcher sans que Meltdown ou Spectre y soient pour quelque chose (enfin je crois vu qu'ayant plus de 10 ans).

Qu'à cela ne tienne, j'ai un Raspberry Pi 2 en stock, l'occasion de voir si ça tient la route pour un usage raisonné.... et oui, même pour regarder des vidéos ! Il faut juste s'habituer à des outils moins gourmands (chromium en attendant que Firefox 57 soit utilisable, Claws, i3 - depuis le temps qu'il fallait que je m'y mette ...).

Mais à un moment donné, me vient l'idée de partager clavier et souris avec un autre PC plus puissant via Synergy....

Lire la suite

dimanche 14 mai 2017

Installer le package DBIx::Class sur Centos 6

Perl Centos

Afin de construire une image docker pour travailler sur une application Perl devant s'exécuter sur une machine Centos 6, j'ai été confronté à l'impossibilité d'installer le package perl-DBIx-Class du fait d'une dépendance manquante avec le paquet perl-MooseX-Types-JSON.

Certes, il eût été possible d'installer le paquet via cpan, mais une autre contrainte est que la machine Centos n'a pas accès à Internet, donc pas à CPAN. Du coup, j'aurais été obligé de télécharger la distribution à la main - tout à fait faisable - mais également toutes ses dépendances, directes et indirectes.... Et là, j'ai reculé.

Précisons que perl-DBIx-Class nécessite d'activer EPEL, mais que notre paquet fugueur, bien évidemment, n'y figure pas.

A grands coups de recherche sur Internet, j'ai fini par trouver le paquet perl-MooseX-Types-JSON sur http://choonrpms.mirror.choon.net. D'où la résolution suivante:

  1. installer epel
  2. installer les paquets perl-DBI et perl-MooseX-Types dont on sent bien qu'ils seront des dépendances nécessaires
  3. installer le paquet perl-JSON-XS dont on s'aperçoit après une première tentative que perl-MooseX-Types-JSON en a besoin
  4. télécharger le rpm ici
  5. installer notre rpm
  6. installer finalement perl-DBIx-Class

ce qui donne:

 yum install epel-release
 yum install perl-DBI perl-MooseX-Types perl-JSON-XS
 wget http://choonrpms.mirror.choon.net/centos/6/choonrpms/x86_64/perl-MooseX-Types-JSON-0.02-3.choon.centos6.noarch.rpm
 rpm -i perl-MooseX-Types-JSON-0.02-3.choon.centos6.noarch.rpm
 yum install perl-DBIx-Class

Voilà, en espérant que ça vous évitera de perdre autant de temps que moi pour surmonter cet obstacle si tant est que vous ayez besoin de vous plier aux mêmes contraintes que moi.

dimanche 5 mars 2017

Validation d'unicité en création ET modification avec Laravel 5

laravel.png

Laravel est un framework PHP assez sympathique qui permet de réaliser très proprement des applications web. Parmi ses fonctionnalités, on trouve un moteur de validation proposant pleins de règles dont l'unicité d'un attribut d'instance de modèle. Mais s'il fonctionne parfaitement pour la création d'une nouvelle instance de modèle, il provoque une erreur si on veut modifier une instance existante sans modifier l'attribut déclaré comme devant être unique. Voici donc la façon que j'ai trouvée (un peu difficilement d'où ce billet) pour y remédier.

Je précise que je suis loin d'être un expert PHP ou Laravel, donc s'il y a une meilleure façon de faire telle ou telle chose, je suis bien évidemment preneur.

Lire la suite

dimanche 11 décembre 2016

Regroupement par mois de données avec DBIx::Class

Perl

Supposons que nous ayons une base de données Postgresql, une table activite qui contient, entre autre:

  • jour: une date au format jj/mm/aaaa
  • duree: une durée en heures
  • projet: l'identifiant d'un projet éventuellement nul
  • personne: l'identifiant d'une personne

Cette table permettant de relever l'activité des personnes sur des projets doit être utilisée pour fournir un récapitulatif du total des heures par mois et par personnes depuis un script Perl utilisant DBIx::Class.

Lire la suite

lundi 11 avril 2016

Des images Docker pour LibrePlan

docker & LibrePlan

Pour ceux qui veulent rapidement essayer (ou utiliser) LibrePlan, outil web de gestion de projet, je viens d'uploader sur le hub docker deux images prêtes à l'emploi, l'une qui fonctionne avec Postgresql, l'autre avec MySQL ou MariaDB. Le mode d'emploi détaillé est joint.

Vous trouverez également dans le dépôt Github associé la traduction du mode d'emploi en français et des fichiers docker-compose notamment pour jouer avec deux instances et les faires communiquer (oui, LibrePlan sait aussi faire ça).

Accessoirement, j'ai également commis une image (très perfectible) pour ceux qui veulent hacker Libreplan. Elle est ici.

samedi 16 janvier 2016

CMDBuild et Kerberos AD

cmdbuild.png

CMDBuild est une CMDB libre très souple bâtie sur Java, Postgres, ExtJS, JasperReport et d'autres.

CMDBuild permet d'identifier les utilisateurs en créant des comptes dans sa base de données ou sur une source extérieure: LDAP, CAS ou, et c'est le sujet ici, Kerberos. Comme la documentation ne traite que de la configuration de CMDBuild, voici le reste.

Lire la suite

samedi 7 février 2015

Attendre qu'une page ExtJs soit chargée avec Selenium

Moonraker

Il existe pleins de frameworks de tests d'IHM en Javascript, et notamment pour faire du test fonctionnel ou BDD. Outre cucumber-js, on trouve aussi l'excellent Yadda qui a le bon goût d'avoir une localisation en français... Et plus encore, on trouve le formidable Moonraker qui propose une solution complète clef en main: Yadda plus mocha, WebDriverJs et Chai et, cerise sur le pompon: des page objects !

Mais avec ExtJs, quand on met un splashscreen pendant le chargement et la création de la page, on a un problème: comment cliquer sur un élément seulement quand le splashscreen a disparu ?

Lire la suite

dimanche 21 septembre 2014

Créer une machine virtuelle de Centos 6.4 64bits

Centos

Lors de la création d'une machine virtuelle d'une Centos 6.4 64bits, avec virt-manager, je bloquais sur le message suivant:

centos-notfound.png

Pourtant le test de l'iso téléchargée pour ce faire était ok. Les tentatives suivantes n'ont pas eu plus de succès:

  • ne pas tester l'image avant (car un message disait que le CD était éjecté à l'issue)
  • mettre l'iso dans un stockage créé pour l'occasion
  • utiliser l'iso minimal plutôt que la net-install
  • utiliser la Centos 6.5
  • tester avec VirtualBox

Après un petit tour sur le net, voilà un contournement qui fonctionne:

samedi 13 septembre 2014

Declarative listeners avec Ext JS 5

ExtJS

Ceci est la traduction de l'article de Phil Guerrant publié le 10 septembre 2014.

Introduction

Dans un article précédent, Using ViewControllers in Ext JS 5 (traduit ici), nous avons rapidement évoqué une fonctionnalité qui a été grandement améliorée dans Ext JS 5 — les declarative event listeners. Dans cet article, nous allons creuser le sujet et explorer la façon d'utiliser ces declarative listeners pour simplifier les vues de votre application et réduire le code spaghetti dans vos Components personnalisés.

NOTE: cet article suppose que vous utilisez au minimum Ext JS 5.0.1.

Lire la suite

Utiliser les ViewControllers avec Ext JS 5

ExtJS

Cet article est une traduction de l'article de Don Griffin publié le 22 mai 2014.

Introduction

Ext JS 5 apporte plusieurs améliorations enthousiasmantes à utiliser pour architecturer votre application. Nous avons ajouté la prise en charge des ViewModels et des MVVM ainsi que celle des ViewControllers pour améliorer les applications MVC. Et le meilleur, c'est que ces apports ne sont pas mutuellement exclusifs si bien que vous pouvez introduire ces fonctionnalités de manière incrémentale voire les ignorer.

Lire la suite