Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#26 Le 21/05/2014, à 21:04

melixgaro

Re : Linkmanager : logiciel de gestion de ses URLs

je m'inquiétais de ne rien voir venir... je patiente encore donc... Bon courage


Linux depuis ~2007. Xubuntu seulement.

Hors ligne

#27 Le 24/05/2014, à 17:21

moths-art

Re : Linkmanager : logiciel de gestion de ses URLs

Bon, ça prend forme!

Désolé du temps pris : je suis un peu perfectionniste et je veux vraiment traiter certains soucis critiques avant de lancer une 1.0...
Et surtout éviter au possible de maintenir des architectures bancales...

De +, je consacre un temps volontairement "limité" sur ce projet, en ayant d'autres en cours plus ou moins avancés/complexes.
Ca reste un soft pour mon usage que je mets gracieusement à la vue de tous.

J'ai donc mis mes derniers travaux sur une branche "develop" pour les plus téméraires.
On test ici :

sudo pip3 install -e git+https://github.com/mothsART/linkmanager.git@5f9046ae297501892e95a779961f80fb3ad8d125#egg=linkmanager

Il me reste principalement à :
    * rajouter des tests unitaires (et à corriger pas mal de tests qui ont sautés)
    * étoffer la partie "serveur"
    * permettre l'auto-complétion des tags dans le shell!
    * i18n : un peu de taf à ce niveau d'effectué mais ça reste encore inégal : du franglais par moment...

Suite à ça, je pourrais sereinement penser à :
    * lancer la version 0.4 sur ppas/pypi
    * corriger le wiki en conséquence
    * refaire une campagne de pub

Qu'est-ce qui a changé ? (Liste non exhaustive)

* ajout de la prise en charge de titres et d'URLS minimisés.
Comme évoqué, lors d'un ajout d'URL, une requête "asynchrone" va rechercher le titre d'une page web afin de la suggérer.
l'URL est automatiquement minimisé à la fin de l'ajout d'un lien : via l'api d'un webservice.
On peut déjà choisir/changer son webservice en éditant les settings du soft mais prenez ça comme temporaire.
Mon objectif est de fournir un fichier de conf générique (/etc/linkmanager/settings.conf) et par utilisateur (/home/user/.config/linkmanager/settings.conf) selon les principes d'UNIX.
* Justement, des variables de conf commencent à prendre place :
    * paramêtrage de la Base de donnée
    * minimizer
    * Options de la recherche : nombre maximum dans l'auto-suggestion de tags, nombre maximum de réponses
* ajout de l'option "verbose" sur une recherche :
permet d'avoir toutes les propriétés corresponds à un lien :

$ linkm search -v
6 liens au total trouvés :
      1 ➤ http://ubuntu.com
         ├── title : The leading OS for PC, tablet, phone and cloud | Ubuntu
         ├── 5431572c-d859-46c2-87c8-5e1c0c1fa402
         ├── ordre de priorité : 10
         ├── tags : linux python shell ubuntu
         ├── description : Fr Ubuntu site
         └── create the 27 January 2014 at 17:37:19 and not updated yet.
      2 ➤ https://www.404.io/404.html
         ├── 1afae9bb-8e71-46f7-aadb-701bb1353937
         ├── ordre de priorité : 10
         ├── tags :
         ├── description : no response
         └── create the 27 January 2014 at 17:37:19 and not updated yet.
      3 ➤ https://www.docker.io
         ├── title : Homepage - Docker: the Linux container engine
         ├── ef91d3dd-35f5-40a6-9410-4a79db9175ef
         ├── ordre de priorité : 10
         ├── tags : container golang linux ubuntu
         ├── description : Container engine...
         └── create the 27 January 2014 at 17:37:19 and not updated yet.

* un load de JSON est maintenant un peu plus "intelligent" : il permet de rechercher automatiquement les titres des pages, de minimizer à la volé les URLS etc.
C'est du traitement asynchrone "répartie" (le nombre de tâches simultannées est par défaut de 5 car c'est à priori la meilleur config pour mon serveur mais ça peut être modifié dans les settings) donc optimisé pour être le plus rapide possible.
Cependant, j'imagine que ça peut vite devenir bloquant pour des grosses bases!
Il faudrait rajouter une barre de progression sans doute, une option "offline" etc.

Enfin, le load est un peu plus regardant de l'intégrité de votre base.
Il déclenche par exemple des erreurs si dans vos fichiers json (je rappel qu'on peut très bien chargé plusieurs json d'un coup : linkm load fixture1.json fixture2.json fixture3.json) vous vous retrouvez plusieurs liens semblables présentant des propriétés différentes.


Maintenant, la grosse évolution (celle qui vous a fait attendre) :
Un serveur web qui se lance via :

$ linkm w
ou
$ link web

ça lance automatiquement la page sous firefox mais vous pouvez changer le navigateur soit dans les settings soit :

$ linkm w chrome

C'est vraiment minimaliste pour l'instant mais l'idée est là : la recherche de liens via des tags avec de l'auto-suggestion.

Tout est centré autours de la recherche est j'ai pris soin d'utiliser des libs solides : jquery, jquery-ui, _underscore, twitter-bootstrap.
On peut reprocher qu'il n'y a pas d'indentité graphique (on reconnait l'apparence de twitter-bootstrap à des kilomètres) mais j'ai vraiment pas l'envie de me concentrer sur ce point.
Ca doit à mon sens être sobre et fonctionnel.
L'idée forte c'est "tout sur une page" : on est pas dans un site web mais plus dans de l'appli. (cqfd : bcp d'ajax)
Les boutons sur la droite ne sont pas actifs mais prévisionnels :
    * un bouton "édition" : une fois activé, on peut rajouter des liens, et éditer ceux existants.
    * un bouton "paramètres" : changer pas mal d'options de settings en live et user-friendly.


Bon, je demande votre indulgence car c'est vraiment tout frais et y'a pleins de bugs potentiels :
par exemple, le serveur ne fonctionne pas encore en mode off-line : j'utilise pour toutes les libs css/js des cdn pour booster un peu les  choses mais il faudrait dans l'idéal livrer du static si c'est off.


J'aurais souhaité vous apporter une version demo mais j'ai essuyé quelques platres pour l'hébergement.
Au départ, je me suis tourné vers "Alwaysdata" : avec leur offre gratuite, je pensais avoir tout à porté de main...
C'est sans compter sur les dépendances : Alwaysdata propose python 3.1 et Flask ne tourne pas dessus... en plus, il faut compiler Redis.
Bref, pas du clé en main...
Je suis en train d'étudier des solutions de VPS gratuit :
    * google app engine : n'utilise pas Redis donc obligation d'utiliser leur api Big data...
    * heroku : sans doute le meilleurs mais j'suis pour l'instant un peu perdu...
    * je viens de faire des demandes auprès d'autres VPS gratuits

Si bien évidement, une âme charitable se propose d'héberger ou financer l'hébergement, ça serait le top.
Je pense m'investir suffisement pour encore me soucier de ça.
Néanmoins, je trouve que ça serais une superbe vitrine d'avoir un truc en live.

Mon avancement vient forcément avec de nouvelles idées :
La plus probante : possibilité de suggérés des tags automatiquements lorsque la racine du lien est reconnu.
Exemple :
tous les sites commençant par https://www.youtube.com suggère automatiquement "video".
Il faudrait que je rajoute une option pour ça.
Dans l'idéal : ça devrait être enregistré en base mais je pense sans doute inclure ça dans les settings. (trop de taf d'un coup sinon pour peu d'avantages immédiats)


PS: je me suis aussi créé pas mal de petits outils dédiés afin d'améliorer ma productivité future sur le projet :
Par exemple, 1 config Tmux afin de lancer 1 session pour les tests, 1 pour lancer le serveur web, 1 pour les tests unitaires, 1 pour l'accès ssh et 1 pour 1 accès sur le site en remote avec Midnight Commander. (pour passer des gros fichiers JSON par exemple)
Ca m'évite bcp de tâches répétitives!

J'attend vos retour avec attention.

Hors ligne

#28 Le 25/05/2014, à 13:14

White Angels

Re : Linkmanager : logiciel de gestion de ses URLs

Je testerais et te ferais un feedback dès que j'ai le temps !
En tout cas si tu as besoin d'un serveur je te prête le mien volontiers (j'ai un dédié chez online)


OS : Ubuntu 14.04 Trusty Tahr  || Nombre de convertis aux libres : 2 (peut-être une troisième)

Hors ligne

#29 Le 25/05/2014, à 23:48

moths-art

Re : Linkmanager : logiciel de gestion de ses URLs

Petite précision : si vous désirez tester à chaque fois la dernière version (cqfd : le dernier commit github) sans attendre des versions packagées :

sudo pip3 install --upgrade -e git+https://github.com/mothsART/linkmanager.git@numero_du_commit#egg=linkmanager

upgrade vous permet de forcer la dernière version si vous en avez déjà une d'installé et le numéro de commit, vous le trouverez facilement ici : https://github.com/mothsART/linkmanager/commits/develop

Bien à vous!

Hors ligne

#30 Le 11/06/2014, à 08:48

White Angels

Re : Linkmanager : logiciel de gestion de ses URLs

Bonjour,

Alors désolé, je n'ai pas eu beaucoup de temps ces derniers temps mais je viens de prendre 15 min pour tester la nouvelle version dans une virtualbox.

Point positif : l'interface web à l'aire de fonctionné
Point négatif : je ne peux plus rien faire ^^ (ajouter/rechercher des liens)

voici le message d'erreur quand je fais un linkm add :

morgan@morgan-VirtualBox:~$ linkm add 
Give one or several links (separate with spaces) : https://github.com/mothsART/linkmanager-lens
Traceback (most recent call last):
  File "/usr/local/lib/python3.4/dist-packages/redis/connection.py", line 250, in connect
    sock = self._connect()
  File "/usr/local/lib/python3.4/dist-packages/redis/connection.py", line 268, in _connect
    self.socket_timeout)
  File "/usr/lib/python3.4/socket.py", line 509, in create_connection
    raise err
  File "/usr/lib/python3.4/socket.py", line 500, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.4/dist-packages/redis/client.py", line 460, in execute_command
    connection.send_command(*args)
  File "/usr/local/lib/python3.4/dist-packages/redis/connection.py", line 334, in send_command
    self.send_packed_command(self.pack_command(*args))
  File "/usr/local/lib/python3.4/dist-packages/redis/connection.py", line 316, in send_packed_command
    self.connect()
  File "/usr/local/lib/python3.4/dist-packages/redis/connection.py", line 253, in connect
    raise ConnectionError(self._error_message(e))
redis.exceptions.ConnectionError: Error 111 connecting localhost:6379. Connection refused.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.4/dist-packages/redis/connection.py", line 250, in connect
    sock = self._connect()
  File "/usr/local/lib/python3.4/dist-packages/redis/connection.py", line 268, in _connect
    self.socket_timeout)
  File "/usr/lib/python3.4/socket.py", line 509, in create_connection
    raise err
  File "/usr/lib/python3.4/socket.py", line 500, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/bin/linkm", line 12, in <module>
    exec(compile(open(__file__).read(), __file__, 'exec'))
  File "/home/morgan/src/linkmanager/linkm", line 136, in <module>
    Choices.call(args['choice'])(args['value'], verbose)
  File "/home/morgan/src/linkmanager/linkmanager/tty.py", line 171, in addlinks
    if db.link_exist(l):
  File "/home/morgan/src/linkmanager/linkmanager/db/__init__.py", line 174, in link_exist
    if not self._db.hexists('links_uuid', link):
  File "/usr/local/lib/python3.4/dist-packages/redis/client.py", line 1535, in hexists
    return self.execute_command('HEXISTS', name, key)
  File "/usr/local/lib/python3.4/dist-packages/redis/client.py", line 464, in execute_command
    connection.send_command(*args)
  File "/usr/local/lib/python3.4/dist-packages/redis/connection.py", line 334, in send_command
    self.send_packed_command(self.pack_command(*args))
  File "/usr/local/lib/python3.4/dist-packages/redis/connection.py", line 316, in send_packed_command
    self.connect()
  File "/usr/local/lib/python3.4/dist-packages/redis/connection.py", line 253, in connect
    raise ConnectionError(self._error_message(e))
redis.exceptions.ConnectionError: Error 111 connecting localhost:6379. Connection refused.

Dernière modification par White Angels (Le 11/06/2014, à 08:49)


OS : Ubuntu 14.04 Trusty Tahr  || Nombre de convertis aux libres : 2 (peut-être une troisième)

Hors ligne

#31 Le 11/06/2014, à 09:48

moths-art

Re : Linkmanager : logiciel de gestion de ses URLs

Le problème d'une installation avec Pip c'est qu'il ne t'installes que les dépendances python et non le reste. (à la différence d'un PPA)
Il faut installer la base de donnée Redis sur un environnement vierge sinon ça ne fonctionnera pas :

apt-get install redis-server

Pour le lancement  du serveur, ça doit se faire en auto : linkmanager test si c'est lancé et le démarre dans le cas contraire.

Bon, je vais tenter d'avancer rapidement sur les points bloquants afin de produire une release PPA...

Hors ligne

#32 Le 11/06/2014, à 10:42

White Angels

Re : Linkmanager : logiciel de gestion de ses URLs

Effectivement, maintenant ça fonctionne beaucoup mieux big_smile

Bon voici quelques remarques après un test rapide :

Je peux effectivement ajouté un lien :

morgan@morgan-VirtualBox:~$ linkm add
Give one or several links (separate with spaces) : https://github.com/mothsART/linkmanager-lens
https://github.com/mothsART/linkmanager-lens properties :
    tags (separate with spaces) : lens
    priority value (integer value between 1 and 10) : 10
    give a description : descr
    give a title : mothsART/linkmanager-lens · GitHub
https://github.com/mothsART/linkmanager-lens b'http://urlmin.com/4qjwo'

Pourquoi est-ce qu'il me fourni une url raccourcis ? surtout si c'est pour ne pas l'utiliser après ...

ensuite, lorsque j’effectue une recherche :

morgan@morgan-VirtualBox:~$ linkm search lens
1 links founded : 
    https://github.com/mothsART/linkmanager-lens

Je n'ai toujours pas le titre qui s'affiche, dommage sad


Quand à l'interface web, j'ai une toute petite remarque :

morgan@morgan-VirtualBox:~$ linkm w
 * Running on http://127.0.0.1:7777/
 * Restarting with reloader
127.0.0.1 - - [11/Jun/2014 11:34:37] "GET / HTTP/1.1" 200 -

Le "truc" garde le focus de la console, c'est dommage ! Perso je voyais plutôt un truc comme apache ou tu fais "linkm w start" et il se lance plutôt que de mobiliser la console.

Sinon je n'ai pas compris comment on installe la lentille unity ...


OS : Ubuntu 14.04 Trusty Tahr  || Nombre de convertis aux libres : 2 (peut-être une troisième)

Hors ligne

#33 Le 11/06/2014, à 11:21

moths-art

Re : Linkmanager : logiciel de gestion de ses URLs

Pour les raccourci urls et la recherche simple, je suis dac : je vais changer ça...

Pour l'interface web, je préfère ne pas daemonizer d'entrée : c'est pas vraiment un serveur comme apache à la base.
J'imagine que tu souhaiterais quelque chose de persistant : genre le serveur web dispo après un reboot?
Je vais réfléchir à ça car je ne veux pas l'imposer : (genre une option de config) tous ne veulent pas ce service web en tâche de fond.

En attendant, fait

nohup linkm w &

J'imagine que tu sais comment faire pour le lancer en auto au démarrage de ta bécanne?

et pour le killer

killall linkm

Hors ligne

#34 Le 11/06/2014, à 12:14

White Angels

Re : Linkmanager : logiciel de gestion de ses URLs

C'est pour cela que j'aurais bien vu une option start et stop.

Genre :

linkm w(eb)

lance le serveur comme il le fait actuellement

linkm w(eb) start

lance le serveur de manière persistante

PS : Par contre je n'ai toujours pas réussit à installé la lentille Unity

Dernière modification par White Angels (Le 11/06/2014, à 12:14)


OS : Ubuntu 14.04 Trusty Tahr  || Nombre de convertis aux libres : 2 (peut-être une troisième)

Hors ligne

#35 Le 13/06/2014, à 10:28

moths-art

Re : Linkmanager : logiciel de gestion de ses URLs

Pour le serveur persistant, je vais voir ce que je peux faire mais je ne veux pas m'éparpiller.
Pour que les bugs soient loggés et que le serveur soit relancé en cas d'erreur, il faudrait que je mettes en place un soft comme "supervisor" : en somme, faire un vrai daemon.
Cette experience me permettra sans doute de mieux apréhender une version "desktop" persistante.
(genre un paquet deb à part qui ajoute un lanceur avec son logo)

Pour la lentille Unity, tu l'as peut-être bien installé mais vu que l'API a changé, elle ne fonctionne tout simplement pas.
Une fois la 0.4 sortie, je regarde pour la mettre à jour et en faire un .deb dans le ppa.
Je me créerais une VM virtualbox pour la tester...

Hors ligne

#36 Le 13/06/2014, à 13:20

White Angels

Re : Linkmanager : logiciel de gestion de ses URLs

Est-ce que pour la 0.4 tu pourrais créer une sorte de base de donnée distante ?
Un moyen de partager une bdd entre plusieurs appareilles, par exemple au taff lorsque j'ajoute un favoris je ne peux pas le retrouver chez moi ! ça serait bien si je pouvais partagé mes favoris entre mes appareilles !


OS : Ubuntu 14.04 Trusty Tahr  || Nombre de convertis aux libres : 2 (peut-être une troisième)

Hors ligne

#37 Le 13/09/2014, à 10:43

moths-art

Re : Linkmanager : logiciel de gestion de ses URLs

Après un long temps de vide, voici enfin quelques news du projet :

J'ai pêché pas mal sur ma gestion du temps.
Un gros remaniement qui m'a valu beaucoup de boulot et qui devrait simplifier la suite du dev :
Niveau utilisateur, rien de bien transendant : une évolution naturel vers quelque chose de fonctionnel avec tous les intérêts (je l'espère) du web par rapport à de la ligne de commande.

Pour le coup,  j'ai suivi la mode du "flat design" (pour la version web) plus par fainéantise que par réelle adhésion.
L'avantage évident est de concentrer l'utilisateur uniquement sur les fonctionnalités.

J'ai pris soin de réfléchir à l'ergonomie :
    * le bouton "edit mode" permet de basculer d'un mode de lecture à celui d'écriture.
    * l'édition d'un lien et de ses propriétés passe par des validateurs avec des messages d'avertissement ou d'erreur si besoin.
    * l'édition des tags se fait plus naturellement avec la lib (tag-it) que j'ai légèrement monkey-patché pour l'occasion.
    * les icônes de twitter bootstrap ainsi que le code des couleurs ont été choisi avec attention.
    C'est pas forcément de bon goût mais c'est parlant.
    * HTML5/CSS3 avec ajout de petits effets CSS : je me suis amusé un peu mais ça reste de l'amateurisme.
    J'ai pas forcément le bagage suffisant dans la partie intégration et ne vais pas m'embêter pour l'instant à tester d'autres navigateurs que firefox/chrome.
    De l'aide en ce sens n'est pas de refus.

    * utilisation de flask-asset (http://flask-assets.readthedocs.org/en/latest/) :
    parce que je souhaitais faire du lazyloading avec du inlining sur du css et javascript...
    Ceci n'est valable qu'en mode DEBUG=False bien évidement.
    Bon, les optimisations sont encore douteuses sur le css, j'hésites sur l'utilisation de datauri etc. mais ça reste peu important pour le commun des mortelles.
    * Pour les tests unitaires, utilisation de "fakeredis" : évite d'utiliser une base poubelle pour les tests!!
    En théorie, c'est génial... mais la réalité a été plus compliqué, arg.
    Il manquait l'implémentation d'une méthode "type()" dans Fakeredis : je l'ai donc patché puis effectué un Pull Request.
    En attendant d'être intégré (ou pas), j'utilise la dépendance de mon dépôt github.
    * utilisation de la librairie _underscore.js (encore une dépendance) : ça m'a permis de concerver un code JS à peu prêt lisible...
    * prise en charge de "l'auteur" en tant que propriété : possibilité de le définir dans la configuration.
    * rajout de fichiers de configuration pour tous les utilisateurs : /etc/linkmanager.conf et spécifique à un utilisateur : ~/.config/linkmanager.conf. Ce dernier est créé si il n'existe pas (avec des valeurs par défaut) lors du lancement du soft par l'utilisateur en question.
    * rajout d'une option READ_ONLY : permet d'accéder à son webservice uniquement en lecture.
    Pratique si on veut rendre publique ses liens sans qu'un tiers ne puissent en ajouter/modifier/supprimer.


Vu que c'est limite *énervant* à tester (une UI) et que je suis pas un gourou de javascript, j'imagine ne pas être excent de bugs...
votre relecture, utilisation et feedback n'en sera que plus appréciable!!

Pour mettre à jour:

sudo pip3 install -e git+https://github.com/mothsART/linkmanager.git@5387d04d0bd256f84da514b4677a88590754a2c8#egg=linkmanager

Si vous avez déjà une base de donnée auquel vous tenez, faites un :

linkm dump >| /tmp/linkmanager.json
sudo pip3 install -e git+https://github.com/mothsART/linkmanager.git@5387d04d0bd256f84da514b4677a88590754a2c8#egg=linkmanager
linkm load /tmp/linkmanager.json

Ca devrait vous évitez une tonne de bugs bizarres.


Dernière grande ligne avant la 0.4 :

* une auto-complétion des tags en mode ligne de commande
* toutes les traductions à jour
* Rajout de tests unitaires (dont un jsonschema pour les import/export : https://github.com/Julian/jsonschema) avec une meilleur couverture et éventuellement des tests sur la partie web
* maj sur pypi et de mon ppa (je vais aussi mettre une option de mise à jour de sa base pour éviter de faire la manip proposé précédement)
* paquet pour ArchLinux (j'ai 2 ordi sur 3 maintenant sous Arch)
* maj de la doc

Dernière modification par moths-art (Le 14/09/2014, à 08:33)

Hors ligne

#38 Le 13/09/2014, à 11:14

moths-art

Re : Linkmanager : logiciel de gestion de ses URLs

Voici ma Roadmap pour la 0.5 :

* Linkmanager en mode "server":
J'ai pas mal réfléchi à la demande de "WhiteAngels" et ne voulais surtout pas me lancer tête baissé dans quelque chose de complexe.
Je précise que mon intérêt est bien présent dans cette fonctionnalité car j'ai une rasperry-pi qui fait office de serveur local dans mon LAN et pouvoir partager mes liens facilement devient une nécessité.
Je suis donc passé par une réflexion "papier".
Sans trop rentrer dans le détail, je vais utiliser git pour ce faire afin de gérer des situations cocasses dont principalement "les conflits".
Ca risque d'être coton a tester mais vu que je suis joueur...

* mode offline avec caching des pages :
    * si la page a changé depuis son enregistrement, un diff sera possible
* version web :
    * rajout de flux rss
    * multi-pages avec une option de configuration (ex: MAX_RESULTS_BY_PAGE = 10)
    * nuage de tags avec la possibilité d'en glisser/déposer.
    * possibilité d'avoir le favicon et un aperçu du site au survol.(imprim écran)

Roadmap encore indéfini :
    * utilisation dans emacs : "org-mode" et "web-mode" principalement
    * la possibilité de changer la configuration de linkmanager dans l'interface web
    * Utilisation d'autres BDD que Redis
    * Benchmarks
    * Import/export avec Delicious et/ou evernote
    * plugin firefox/chrome
    * Doc exhaustive sur readthedocs.org
    * amélioration du manpage (et version en français)
    * mise en ligne d'une version démo on-line + site de présentation du projet (sans doute créé avec pelican: http://blog.getpelican.com/ donc sous forme de blog avec une version français/anglais)
    * maj de la doc sous ubuntu-fr

Merci de vos contributions et de votre patience

Dernière modification par moths-art (Le 14/09/2014, à 08:33)

Hors ligne

#39 Le 17/09/2014, à 21:33

moths-art

Re : Linkmanager : logiciel de gestion de ses URLs

La version 0.4 est dispo sur pypi :

Comme annoncé, elle est fourni avec :
* une auto-complétion des tags en cli
* le soft en français (seulement en cli) et anglais

Conseil : mettez à jour votre installateur (pip) :

sudo pip3 install --upgrade pip

puis

sudo pip3 install --upgrade linkmanager

Hors ligne

#40 Le 26/09/2014, à 20:35

joko

Re : Linkmanager : logiciel de gestion de ses URLs

Bonjour, et comme d'hab' un grand merci à nos amis codeurs qui nous proposent toujours des trucs qui facilitent la vie.
Je réalise aussi des p'tits scripts dans la même optique mais chapeau bas à moths-art. Mais je ne suis pas pas sur d'avoir tout bien compris bien qu'y ayant un vif intérêt.
a - dois-je comprendre qu'on pourrait lancer FF sans avoir tous les onglets et les tonnes - pour ma part - de liens conservés ?
b - votre discution échappe à un béotien tel que votre serviteur, un monsieur ou madame michu pourra-t-il simplement utilser LM ?
c - comme la discution est longue et assez technique, je ne sais pas bien comment on rajoute un marque page ou lien lien
d - dans le même registre via LM peut-on lancer FF avec un lien ?

tout cela, reste assez flou pour moi (et si ça l'est pour moi, ça doit l'être pour d'autres)
Je suis avec intérêt l'évolution de votre développement (je dis votre car le projet se nourrit d'apports de différents utilisateurs assez calés à ce que j'ai pu lire et comprendre).
Mais effectivement si on pouvait alléger la charge FF en terme cpu/ram ce serait méga tip top (chez moi FF est super lourd)
En tout cas, grand merci encore et bonne continuation.
A bien vous lire

Ps : suis sous ubuntu1204/unity


Je suis un homme, quoi de plus naturel en somme ?
linux on the rocks

Hors ligne

#41 Le 27/09/2014, à 21:37

moths-art

Re : Linkmanager : logiciel de gestion de ses URLs

Bonjour Joko,

a. Non, LM est un soft à part entière pour éviter d'utiliser des mastodontes tel que firefox... il ne lance pas une instance "nue" de firefox.
Si tu désires faire ce genre de choses : il te suffit de lancer

firefox -P

et de te créer une instance firefox par besoin : 1 pour le dev, 1 pour le surf, 1 pour madame etc.

b. En l'état, LM reste destiné à des personnes utilisant la ligne de commande donc Mme Michu n'est pas vraiment à l'honneur.
(Historiquement, j'ai rendu publique un soft perso donc Mme Michu n'était clairement pas dans mon cahier des charges)
Maintenant, ça reste pas compliqué (à mon sens), d'écrire

linkm w

dans un terminal puis d'utiliser LM dans le navigateur de leur choix. (si c'est firefox (config par défaut), il s'ouvrira directement avec un onglet de LM sous forme d'appli web)

L'idée derrière LM, c'est d'être modulable : on peut très bien éditer ses liens en ligne de commande (pour les vrais nerd) et regarder également le contenu dans un navigateur en cli (elinks, lynx w3m etc.) ou bien sur une appli web plus standard voir dans des extensions.
Pour les extensions, y'a déjà une appli (minimale) pour Unity mais on peut très bien imaginé une extension firefox qui viendrait "améliorer" la gestion des marques-pages actuelle.

Du coup, par l'intermédiaire d'une extension, il serait par exemple possible de créer une petite appli standalone clé en main (pour Mr et Mme tout le monde) : 1 icone dispo dans les menu et un clic dessus lance un navigateur léger (J'aurais une préférence pour Dillo) avec LM en version web.
Du coup, on résoudrais en grande partie le soucis de lancer un navigateur gourmand en Ram/CPU comme Firefox ou Chrome.

c. Pas de soucis : tu as 2 possibilités.
* En ligne de commande :

linkm add http://ton_superbe_lien_que_tu_veux_pas_oublier.org

et tu te laisses conduire par les questions/réponses pour ajouter le titre, les étiquettes (tags), niveau de pertinence (de 1 à 10) et commentaire.
Pour le retrouver, il te suffit de faire

linkm s au_moins_un_de_tes_tags

Un

linkm s

te donnera l'ensemble de tes liens sauvegardé (pratique au début, je supposes)

* En mode appli web :

linkm w

dans un terminal.
Ca te lance LM dans ton navigateur puis clic sur le petit "+" à côté du bouton "search" afin de rajouter un lien.

La prise en main devrait être user-friendly après ça.
Je suis en train de créer un site de présentation du projet en français/anglais avec des imprims écrans pour la partie CLI et un site démo pour la partie web...

En attendant, il est possible de consulter le wiki Ubuntu-fr (pas encore mis à jour mais ça ne saurais tarder).
C'est vrai que le topic du forum sera a terme plus destinés aux dev et utilisateurs aventureux... et découvrir LM n'est vraiment pas le bon point d'entrée.

d. J'ai pensé à rajouter cette option par la suite
En cli (rajout de l'option -o) :
d.

linkm s -o tag1 tag2

permettant d'ouvrir tous les résultats d'une recherche dans son navigateur.


Pour ta dernière question concernant l’allègement de Firefox, tu sonnes à la mauvaise porte.
Soit tu utilises un navigateur moins gourmand (Dillo ou autre : ça ne manque pas dans le monde merveilleux de Linux) soit tu forces Firefox à utiliser une taille de Ram/Cpu max.
Pour ça, il doit y avoir plusieurs méthodes plus ou moins convaincantes : paramétrage de firefox, config de systemd, encapsulation de firefox sous docker etc.

Hors ligne

#42 Le 28/09/2014, à 08:53

joko

Re : Linkmanager : logiciel de gestion de ses URLs

j'ai donc installé LM, je précise que je suis sous ubuntu 1204/unity
j'ai sauvegardé les marque-pages sur le Bureau : lm_test.json
je suppose qu'il faut lancer dans le terminal linkm load lm_test.json,
j'ai les messages d'erreurs suivants :

Traceback (most recent call last):
  File "/usr/bin/linkm", line 118, in <module>
    Choices.call(args['choice'])(args['value'])
  File "/usr/lib/python3/dist-packages/linkmanager/tty.py", line 222, in load
    db.load(f.read())
  File "/usr/lib/python3/dist-packages/linkmanager/db/__init__.py", line 157, in load
    return self._add_links(fixture)
  File "/usr/lib/python3/dist-packages/linkmanager/db/__init__.py", line 48, in _add_links
    for tag in value['tags']:
TypeError: list indices must be integers, not str

et pour le man :

~/Bureau:$ man linkm
Aucune entrée de manuel pour linkm
voir « man 7 undocumented » pour obtenir de l'aide quand les pages de manuel ne sont pas disponibles.

j'espère ne pas polluer le sujet...


Je suis un homme, quoi de plus naturel en somme ?
linux on the rocks

Hors ligne

#43 Le 28/09/2014, à 18:11

moths-art

Re : Linkmanager : logiciel de gestion de ses URLs

Arf, tu n'as pas du suivre le topic en entier : en effet, je n'ai pas réussi à rendre LM compatible avec Ubuntu 12.04 mais uniquement 13.10 et 14.04...
(J'imagine que tu utilises le PPA.)
C'est lié à des dépendances de python non satisfaites et ça demande de créer bcp de paquets compatibles juste pour cette version : pas vraiment mon cœur de métier.
Je te conseil vivement de passer à la 14.04 : je ne veux franchement pas geler l'avancement du projet juste pour de l'empaquetage. (ou je tâtonne encore, soyons honnête)
Je vais réfléchir à créer un paquet *crade* avec toutes les dépendances dans un .deb pour cette version si je trouve un peu de temps.

joko a écrit :

j'espère ne pas polluer le sujet...

Non, sans soucis : ça me rappel qu'une FAQ sur le site sera indispensable wink

Hors ligne

#44 Le 28/09/2014, à 18:23

melixgaro

Re : Linkmanager : logiciel de gestion de ses URLs

coucou,

à moths-art : merci pour les màj et ton partage. je suis toujours intéressé par ce que tu fais mais n'ai pas le temps de tester en ce moment. mon message est là pour t'assurer que tu ne postes pas dans le vent big_smile big_smile
dès que je peux, je fais un retour d'expérience.


Linux depuis ~2007. Xubuntu seulement.

Hors ligne

#45 Le 29/09/2014, à 12:15

joko

Re : Linkmanager : logiciel de gestion de ses URLs

oops, oops, j'ai dit une grosse bétise : je suis en 1404,
franchement ton développement m'intéresse mais je suis un chouïa au dessus de madame michu, pas peur du terminal mais un tuto pour le monsieur tout-le-monde (pas rebuté par terminal), sera le bienvenu
bravo en tout cas pour l'initiative
je suis ce fil de discussion jusqu'à finalisation du projet
à bien vous lire


Je suis un homme, quoi de plus naturel en somme ?
linux on the rocks

Hors ligne

#46 Le 01/10/2014, à 11:54

moths-art

Re : Linkmanager : logiciel de gestion de ses URLs

Ok, Joko : si tu es sur la 14.04, ça ne devrait pas poser de soucis.

J'ai mis à jour pour l'histoire du manpage.

sudo pip3 install --upgrade linkmanager

En effet, seul le "man linkmanager" fonctionnait... maintenant, "man linkm" renvoi le même contenu.

Si tu as encore des soucis d'installation ou bugs d'usage, n'hésites pas!
Sinon, j'ai mis des fichiers Json d'exemple pour le load mais je déconseille de les créer à la mano.

PS: Pour ce qui de la *finalisation* du projet... il n'y a pas forcément de fin.
On va dire qu'il va se stabiliser mais il restera sans doute toujours à faire. (surtout côté plugins)

Dernière modification par moths-art (Le 01/10/2014, à 14:05)

Hors ligne

#47 Le 02/10/2014, à 17:33

joko

Re : Linkmanager : logiciel de gestion de ses URLs

j'ai l'erreur suivante :

sudo: pip3: command not found

Je suis un homme, quoi de plus naturel en somme ?
linux on the rocks

Hors ligne

#48 Le 02/10/2014, à 17:59

moths-art

Re : Linkmanager : logiciel de gestion de ses URLs

Il faut que tu ais une version de pip pour python 3. (d'ou pip3)
Installation sur Ubuntu :

apt-get -y python3-pip

puis

pip3 install --upgrade pip # pour avoir la dernière version de pip

PS : une maj du PPA évitera ce genre de désagrément... faut que je me motive.

Dernière modification par moths-art (Le 02/10/2014, à 18:02)

Hors ligne

#49 Le 05/11/2014, à 22:05

moths-art

Re : Linkmanager : logiciel de gestion de ses URLs

Tiens, un éventuel concurrent/projet à surveiller : http://www.developpez.com/actu/76841/Go … ur-Chrome/

Hors ligne

#50 Le 11/11/2014, à 22:13

moths-art

Re : Linkmanager : logiciel de gestion de ses URLs

Après un long temps de silence, un petit état des lieux s'impose.
Le projet n'est pas tombé aux oubliettes, il a juste pris du retard pour diverses raisons.

Cependant, suite à la chaleureuse proposition de "White Angels" de fournir un espace sur son serveur dédié, il est possible désormais d'avoir un site (encore très fouillis) pour Linkmanager.
Son objectif est multiple : fournir une FAQ, une Roadmap, des Howtos...
Bref, une doc centralisé plus exhaustive que le wiki de ubuntu-fr et prévu en 2 langues.
Voici l'adresse (pas encore de nom de domaine) : http://195.154.252.48/linkmanager/fr
Ce dernier à été créé à partir de "Pelican" : http://blog.getpelican.com, un générateur de site statique dev en python.
Pour suivre son évolution (et éventuellement participer à son évolution/correction) : https://github.com/mothsART/linkmanager_server

Le vrai bonus est de pouvoir tester la dernière version "web app" de linkmanager :
http://195.154.252.48/linkmanager/demo

Pratique pour vous faire une première idée du soft sans rien installer! Et accessoirement faire office de béta-testeur.
En effet, je mettrais régulièrement à jour cette version pour que vous puissiez toujours disposer des dernières nouveautés.

L'intérêt de cette mise en ligne est également de se créer une base suffisamment grande e hétérogène pour l'utiliser lors de benchmarks.

Bon, le soft n'étant pas initialement prévu pour être une webapp, il faudra être indulgent : j'ai dût l'adapter et mettre en place une petite infrastructure : http://195.154.252.48/linkmanager/fr/admins.html

N'étant pas admin sys, c'est sans doute imbibé d'amateurisme... un peu comme le packaging.

D'ailleurs, vu que je touche à plusieurs points diamétralement opposés, je parle des participations au projet : http://127.0.0.1:8000/fr/presentation.h … ticipation

Sinon, j'ai résolu pas mal de bugs, supprimé/changé des dépendances, utilisé de l'asynchronisme (via le module asyncio) quand c'est nécessaire, corrigé les tests unitaires etc. Bref, je me suis pris la tête pour pas grand chose ... en apparence.

Pour suivre l'avancement, le mieux sera désormais de lire la roadmap : http://195.154.252.48/linkmanager/fr/roadmap.html

Hors ligne