Pour un rendu optimal, activez JavaScript

Installer Kresus

 ·  ☕ 4 min de lecture  ·  🩊 Propositionjoe

Avec les mains, mais sans docker.

Édit: 29/03/2017: ATTENTION, Ă  cette date ce tutoriel n’est plus fonctionnel.

Prérequis:

Une debian 8 toute fresh.

Vous trouverez dans ce papier:

  • Ma proposition de todo list pour installer Kresus avec un accĂšs protĂ©gĂ© et en local,
  • Mon avis sur le soft, en rapport Ă  mes besoins de suivi de dĂ©pense

Suite Ă  la lecture du papier de Benjamin Bouvier signalant la mise Ă  jour de son application Kresus je me suis mis en tĂȘte de l’installer chez moi pour faire un petit test. Utilisateur depuis quelques mois de l’application de bureau Homebank, et cela afin de me contraindre Ă  gĂ©rer en adulte libriste mes finances personnelles, je ne pouvais pas rĂ©sister Ă  la tentation geek de voir de quoi Kresus Ă©tait capable.

Sur le papier, cette appli promet une connexion directe Ă  ses diffĂ©rents comptes… Ce qui apparait comme du tout propre donc. Mais avant de voir ça, y a un peu de travail.

Edit du 21/02/2017: Je me suis emmĂȘlĂ© les pinceaux, le lien vers le site de Benjamin renvoyait vers le site de Karolak. Pur acte manquĂ© - je pense - parce que je me suis trĂšs largement inspirĂ© de son tuto pour Ă©crire ces lignes (Ă  CĂ©sar ce qui est Ă  CĂ©sar).

Installation de Kresus

~$ apt install curl
~$ curl -sL https://deb.nodesource.com/setup_4.x | bash -
~$ apt-get install -y nodejs
~$ apt install git python-weboob-core python-imaging
~$ adduser kresus --disabled-password --gecos Kresus
~$ su - kresus
~$ mkdir ~/app ~/logs
~$ git clone https://framagit.org/bnjbvr/kresus.git ~/app
~$ cd ~/app
~$ npm install
~$ ./scripts/build.sh

Mettre systemd dans la boucle

~$ nano /etc/systemd/system/kresus.service
      [Unit]
      Description=Personal finance manager
      After=network.target

      [Service]
      WorkingDirectory=/home/kresus/app
      Environment=NODE_ENV=production
      ExecStart=/usr/bin/node bin/kresus.js

      Type=simple
      Restart=always

      User=kresus

      StandardOutput=journal
      StandardError=inherit
      SyslogIdentifier=kresus

      [Install]
      WantedBy=multi-user.target
~$ systemctl enable kresus
~$ systemctl start kresus
~$ systemctl status kresus

Si vous voyez du vert, vous pouvez lire la suite.

Installation de Weboob

Cette partie est issue de mes tatĂŽnnements pour faire fonctionner Kresus, en effet les tutos disponibles Ă  cette date ne fonctionnent pas ou ne me conviennent pas (docker);
https://www.karolak.fr/blog/2016/03/18/kresus-un-gestionnaire-web-de-finances-personnelles-libre
https://framagit.org/bnjbvr/kresus/

J’ai donc cherchĂ© le nĂ©cessaire moi mĂȘme. Si un expert voit une amĂ©lioration, ou une erreur: je suis preneur.

~$ apt install python-pip
~$ pip install virtualenv
~$ curl https://raw.githubusercontent.com/mitsuhiko/pipsi/master/get-pipsi.py | python
~$ mkdir -p ~/.local/venvs
~$ virtualenv ~/.local/venvs/weboob
~$ source ~/.local/venvs/weboob/bin/activate
~$ pip install git+https://git.weboob.org/weboob/devel.git
~$ pip install pdfminer
~$ weboob-config updateweboob-config update
~$ pip install PyExecJS
~$ python -m pip install html2text

Les dĂ©pendances PyExecJS et html2text m’ont Ă©tĂ© nĂ©cessaires pour me connecter Ă  ING Direct et CrĂ©dit Agricole. Je vous laisse ajuster en fonction des vĂŽtres.

Le vhost

~$ apt install apache2
~$ a2enmod proxy_http
~$ service apache2 restart
~$ htpasswd -c /home/kresus/.htpasswd votre-nom-d-utilisateur
~$ nano /etc/apache2/sites-available/kresus.conf
      <VirtualHost *:80>

        ServerName  192.168.XXX.XXX /ou/ kresus.domain.tld #Ă -adapter
        ServerAdmin vous@example.net #Ă -adapter

        ProxyPass        "/" "http://127.0.0.1:9876/"
        ProxyPassReverse "/" "http://127.0.0.1:9876/"

        <Location />
            AuthUserFile  /home/kresus/.htpasswd
            AuthName      "Authentification"
            AuthType      Basic
            Require       valid-user
        </Location>

        </VirtualHost>

C’est vraiment la conf minimale - mais suffisante - pour un accĂšs exclusivement local. Pour aller plus loin vous pouvez ajouter le 443 avec let’s encrypt et ouvrir l’appli au web (voir ici). Mais pour ma part Kresus Ă©tant installĂ©e sur une vm, si je dĂ©cide de mettre l’appli en ligne je dĂ©lĂšguerai la gestion du ssl Ă  une vm qui me sert de vhost pour toutes les vm que j’hĂ©berge dĂ©jĂ .

~$ service apache2 reload

Vous pouvez Ă  prĂ©sent vous connecter Ă  l’adresse ip d’installation de kresus:

192.168.XXX.XXX

Mon avis

Kresus prĂ©sente dans une interface unifiĂ©e et charmante Ă  l’oeil l’ensemble de ses comptes: gain de temps et confort indĂ©niable. La mise en graphique est propre et sans bavure, on voit facilement oĂč l’on dĂ©pense son argent. Les options sont claires et facilement comprĂ©hensives: la prise en main est instantanĂ©e.

Oui mais: Je trouve les options de suivi de ses dĂ©penses trop lĂ©gĂšres: En effet il est vraiment dommage que la catĂ©gorisation des dĂ©penses ne soient pas automatiques (chaque mois il faudra donc recommencer…).

Pour un usage basique le soft peut faire l’affaire; mais pas pour mes besoins… Du bon et du moins bon, ce sera donc Ă  chacun de se faire son avis.

Partagez

Propositionjoe
RÉDIGÉ PAR
Propositionjoe
Soyez rĂ©solus de ne servir plus et vous voilĂ  libres, Étienne de La BoĂ©tie, Bricoleur militant.