Home Forums Wiki Doc Install Extras Screenshots Source Code Projects Blog Users Groups Register
Glx-Dock / Cairo-Dock List of forums Cairo-Dock cafe | Café Cairo-Dock Applet externe en bash avec interface DBus
The latest stable release is the *3.4.0* : How to install it here.
Note: We just switched from BZR to Git on Github! (only to host the code and your future pull requests)
Cairo-Dock cafe | Café Cairo-Dock

Subjects Author Language Messages Last message
[Locked] Applet externe en bash avec interface DBus
Page : 1 2 3 4
nochka85 Français 72 nochka85 [Read]
10 September 2009 à 15:47

nochka85, Sunday 06 September 2009 à 19:52


Subscription date : 29 November 2007
Messages : 7408
Si tu veux une idée facile à mettre en place : la possibilité de vérifier la présence de nouveaux messages :
diff OLD NEW >/dev/null
if [ $? -eq 1 ]; then
(...)
fi

Juste après ton curl, tu pourrais orienter la sortie vers du texte, par exemple :
curl -s --connect-timeout 300 $URL > ~/.config/cairo-dock/current_theme/plug-ins/.rss

Tu utilises un sleep, si c'est différent, tu places une notification et une fonctionnalité de plus est ajoutée !


Pas si simple -> Le principe de l'applet externe en bash est qu'on ne reste JAMAIS dans le script bash -> C'est le script Python qui pilote le tout ... bref, si je rajoute çà, cela ne sera pas automatique (à moins de bidouiller dans le script python ... mais je ne connais pas le python )

PS : pour rss-reader.sh, rajoute p-ê le nom de son auteur et la licence à la base (le script est connu)


Le soucis, c'est que je l'ai trouvé plusieurs fois avec des noms différents (<- les gens l'ont modifié sans citer la source ... bref, j'ai fait pareil ...et je sais que "saymal" )... et sans license ... mais si tu as un tuyau sur l'auteur et la licence (avec l'original du script), je suis preneur !
De plus, j'ai ajouté 2 lignes SED (par rapport à un des scripts que j'avais trouvé):
    sed -e 's/<\!\[CDATA\[//' |\
    sed -e 's/\]\]>//' |\


... afin de traiter certains flux qui passaient mal (exemple: http://feediz.01net.com/synd/2203.xml). Bref, du coup, comment je fais pour la licence ? <- Si tu peux me fournir le truc exact à coller dans ce fichier rss-reader.sh, ce serait sympa .

Et qu'est-ce que je colle dans les autres scripts ? <- j'ai regardé dans les sources du dock mais cela renvoie vers un fichier copyright ... Bref, tu as un truc "standard" à mettre ?

et d'ailleurs, je ne vois pas pq on peut choisir un autre fichier.


Bah justement, comme j'ai eu quelques soucis avec certains flux ne respectant peut être pas totalement les standards, je préfère laisser la possibilité à l'utilisateur de pouvoir lancer un script perso

Celui qui a envie de bidouiller, il modifie ce fichier là


Sauf que si ce script est un jour intégré au dock (dans /usr/share/cairo-dock), il pourra bien changer le script avec les droit sudo, mais il va perdre ses modifs perso lors des éventuelles mises à jour ... et puis vu que je ne peux pas garantir qu'il ne manque pas encore 1 ou 2 SED, je préfère que les utilisateurs avertis puissent tester des modifs sans toucher au script initial ... en espérant qu'ils remonteront les éventuels flux récalcitrants afin de mettre à jour le script

PS : Par contre, pour le "si ce script est un jour intégré au dock" , il faut attendre encore -> J'ai quelques petites choses à revoir ... et j'attends aussi que Fab gère le lancement des applets externes avec le dock + (du coup) un retour sur les entêtes avec les licences de la part de matttbe

matttbe, Sunday 06 September 2009 à 20:42


Subscription date : 24 January 2009
Messages : 12573
Pas si simple
C'était juste une idée

mais si tu as un tuyau sur l'auteur et la licence (avec l'original du script), je suis preneur !
Tu peux trouver le nom ici et dire que tu l'as modifié : http://www.glx-dock.org/ww_page.php?p=Par%20BZR&lang=fr#13-Conky. Mais après tout, il est sans licence...

Et qu'est-ce que je colle dans les autres scripts
#!/bin/sh

# (...) for Cairo-Dock
#
# Copyright : (C) 2009 by (...)
# E-mail : (...)
#
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# http://www.gnu.org/licenses/licenses.html#GPL
Suffit de remplacer les (...)

nochka85, Sunday 06 September 2009 à 21:18


Subscription date : 29 November 2007
Messages : 7408
Tu peux trouver le nom ici et dire que tu l'as modifié : http://www.glx-dock.org/ww_page.php?p=Par%20BZR?=fr#13-Conky. Mais après tout, il est sans licence...


C'est bien un de ceux que j'avais vu ... mais vu qu'il n'y a pas de licence ...

Bon, je vais lui rajouter un "based on the RSS Display Script by Bill Woodford (admin  sdesign  us)" ... et je lui colle la licence en dessous avec mon pseudo et mon mail

Suffit de remplacer les (...)


merci bien

matttbe, Sunday 06 September 2009 à 21:20


Subscription date : 24 January 2009
Messages : 12573
Et tu mets tout ça sur bzr

nochka85, Sunday 06 September 2009 à 22:44


Subscription date : 29 November 2007
Messages : 7408
Bon, j'ai mis à jour les fichiers avec la licence + les auteurs des scripts que j'ai mofifié ... et j'ai rajouté une anim (default) au clic milieu + à la molette ...

Voici le résultat -> http://dl.free.fr/cJfu2mbG3 (à tester)

Et tu mets tout ça sur bzr


Pas tout de suite ... car après tout, c'est un peu plus qu'une simple démo et je préférerais la voir parmi les VRAIS applets -> bref, j'attends de voir comment Fab va gérer le lancement des scripts externes ... et je veux bien que l'applet 'Quick RSS Reader' (<- c'est son nom ) serve de test et soit la première applet à en profiter

Bref, je ne souhaite pas trop la mettre dans démos et que personne ne s'en serve au final

matttbe, Sunday 06 September 2009 à 23:19


Subscription date : 24 January 2009
Messages : 12573
Pas tout de suite ... car après tout, c'est un peu plus qu'une simple démo et je préférerais la voir parmi les VRAIS applets
Tu mets tout ça sur ta branche perso, c'est plus simple (Tuto ici)

nochka85, Monday 07 September 2009 à 00:28


Subscription date : 29 November 2007
Messages : 7408
Je venais juste de voir le tuto pendant que je réinstallais pour tester le script de Mav

... mais comment je fais pour envoyer un simple fichier tar.gz ?

En fait, j'aimerais bien juste poster le tar.gz sans le mettre dans le dock ... mais juste pour faire du stockage (<- je sais pas si c'est possible)

matttbe, Monday 07 September 2009 à 00:48


Subscription date : 24 January 2009
Messages : 12573
En fait, j'aimerais bien juste poster le tar.gz sans le mettre dans le dock ... mais juste pour faire du stockage (<- je sais pas si c'est possible)
Si tu ajoutes dans la partie plug-ins (attention que si tu as installé CD depuis le script de Mav, il faut d'abord 'pusher' vers une branche perso (bzr push lp:~nochka85/cairo-dock-plug-ins/rss) avant de commiter ; ou alors, crée une nouvelle branche (bzr branch . rss) )

nochka85, Monday 07 September 2009 à 01:25


Subscription date : 29 November 2007
Messages : 7408
Alors, çà va faire 1 heure que j'y suis (et je viens seulement de voir ton message) ... et j'ai galéré comme pas possible ! ... Pourtant, j'avais le post sur BZR (http://www.glx-dock.org/bg_topic.php?t=3234&pos=0) et le wiki (http://www.glx-dock.org/ww_page.php?p=Aidez-nous%20gr%C3%A2ce%20%C3%A0%20BZR?=fr) ... mais je n'y arrivais pas

... Bref, je sais pas comment j'ai fait au final, mais j'y suis arrivé (avec 2 commit pour le prix d'un) -> http://bazaar.launchpad.net/~nochka85/cairo-dock-plug-ins/bash_applets-testing/files/2 EDIT du lendemain : https://code.edge.launchpad.net/~nochka85/cairo-dock-plug-ins/quick_rss_reader

matttbe, Monday 07 September 2009 à 01:32


Subscription date : 24 January 2009
Messages : 12573
J'ai pourtant refait un test et ça fonctionnait sans problème !

Pour ajouter des fonctionnalités sur une nouvelle branche, suffit de faire un push en précisant la branche et c'est parti
Sauf si tu as récupéré les sources avec checkout --lightweight => Il faut p-ê faire une première commit avant de pouvoir pusher

Pour créer une nouvelle branche :
cd mon répertoire
bzr branch . test
cd test
(...) => add, commit
bzr push lp:~user/project/branche

nochka85, Monday 07 September 2009 à 09:59


Subscription date : 29 November 2007
Messages : 7408
      1. 'cd mon_répertoire' -> Pas de soucis (dans mon exemple = ~/Cairo-dock_dvpt/essai/)
      2. 'bzr branch . test' -> 'bzr: ERROR: Not a branch: "~/Cairo-dock_dvpt/essai/".'


... en fait, le soucis est qu'il manque le 'bzr init' ... bref, voilà ce que çà me donne (je mets de 'ls -al' entre chaque commande pour montrer ce que çà me fait) :

$ cd ~/Cairo-dock_dvpt/essai/
$ ls -al
total 8
drwxr-xr-x 2 nochka85 nochka85 4096 2009-09-07 09:10 .
drwxr-xr-x 7 nochka85 nochka85 4096 2009-09-07 08:45 ..
$ bzr init
Created a standalone tree (format: pack-0.92)
$ ls -al
total 12
drwxr-xr-x 3 nochka85 nochka85 4096 2009-09-07 09:11 .
drwxr-xr-x 7 nochka85 nochka85 4096 2009-09-07 08:45 ..
drwxr-xr-x 6 nochka85 nochka85 4096 2009-09-07 09:11 .bzr
$ bzr branch . test
Branched 0 revision(s).
$ ls -al
total 16
drwxr-xr-x 4 nochka85 nochka85 4096 2009-09-07 09:12 .
drwxr-xr-x 7 nochka85 nochka85 4096 2009-09-07 08:45 ..
drwxr-xr-x 6 nochka85 nochka85 4096 2009-09-07 09:11 .bzr
drwxr-xr-x 3 nochka85 nochka85 4096 2009-09-07 09:12 test
$ cd test
$ ls -al
total 12
drwxr-xr-x 3 nochka85 nochka85 4096 2009-09-07 09:12 .
drwxr-xr-x 4 nochka85 nochka85 4096 2009-09-07 09:12 ..
drwxr-xr-x 6 nochka85 nochka85 4096 2009-09-07 09:12 .bzr


... à ce stade là, la branche est vide et n'est que locale (sur ma machine) vu que je n'ai encore rien "pushé".
Ensuite, je créé un fichier 'test.txt' que je mets dans ~/Cairo-dock_dvpt/essai/test/, puis dans le terminal (toujours depuis ~/Cairo-dock_dvpt/essai/test/) :

$ ls -al
total 16
drwxr-xr-x 3 nochka85 nochka85 4096 2009-09-07 09:18 .
drwxr-xr-x 4 nochka85 nochka85 4096 2009-09-07 09:12 ..
drwxr-xr-x 6 nochka85 nochka85 4096 2009-09-07 09:12 .bzr
-rw-r--r-- 1 nochka85 nochka85 15 2009-09-07 08:43 test.txt
$ bzr add test.txt
adding test.txt
$ bzr commit -m "essai de création"
Committing to: ~/Cairo-dock_dvpt/essai/test/
added test.txt
Committed revision 1.
$ bzr push lp:~nochka85/cairo-dock-plug-ins/test
Using default stacking branch /~cairo-dock-team/cairo-dock-plug-ins/plug-ins at bzr+ssh://bazaar.launchpad.net/%7Enochka85/cairo-dock-plug-ins/
Created new branch.


Bref, dans le tuto, je mettrais çà (et avec des commentaires ):

cd mon_répertoire <- c'est le répertoire local dans lequel je souhaite stocker mes branches perso ... ce qui me rajoutera un répertoire, par branche
bzr init <- A faire si le répertoire est nouveau pour bzr ... sinon (si une branche a déjà été créée ici et que vous souhaitez en créer une 2ème) passez cette étape
bzr branch . test <- Cela me créé ma nouvelle branche, nommée ici "test", EN LOCAL ( = sur l'ordinateur seulement) ce qui se traduit par la création d'un nouveau répertoire
cd test <- je rentre donc dans ce répertoire
(ajout des fichiers) PUIS bzr add mes_fichiers <- à cette étape j'ajoute des fichiers dans mon répertoire PUIS les "enregistre" dans ma branche (toujours EN LOCAL) avec 'bzr add'
bzr commit -m "ma modif" <- là, je définis le libellé de ma modif ( dans le cas présent, c'est donc une création ) ... et ce, toujours EN LOCAL
bzr push lp:~user/project/branche <- Et donc, ici 'bzr push lp:~mon_user/cairo-dock-plug-ins/test' ... cela m'envoie tout vers bzr (création de la branche + ajout des fichiers + libellé de la modif)


EDIT:
Dans le wiki, je viens de voir çà :
Créez un nouveau dossier contenant la branche
bzr branch MA_BRANCHE && cd MA_BRANCHE

... pourquoi n'y a t'il pas le '.' entre 'bzr branch' et 'MA_BRANCHE' ? Et il sert à quoi ce point ?

matttbe, Monday 07 September 2009 à 11:58


Subscription date : 24 January 2009
Messages : 12573
Merci, j'avais oublié le point, merci

nochka85, Monday 07 September 2009 à 12:09


Subscription date : 29 November 2007
Messages : 7408
Au fait, je viens de me recréer une VRAIE branche pour quick_rss_reader : https://code.edge.launchpad.net/~nochka85/cairo-dock-plug-ins/quick_rss_reader

... comme çà, je pourrais faire du versionning dessus

Mav, Monday 07 September 2009 à 13:19


Subscription date : 29 November 2007
Messages : 3146
par contre, faire du versionning sur un tar.gz c pas terrible non ?
Pourquoi pas mettre directement les fichiers ?

nochka85, Monday 07 September 2009 à 13:28


Subscription date : 29 November 2007
Messages : 7408
Bah c'est justement ce que je disais dans le message précédent :

"Au fait, je viens de me recréer une VRAIE branche pour quick_rss_reader" == "J'ai supprimer l'ancienne branche et j'en ai créé une autre ou j'ai mis les fichiers ... et pas le tar.gz"

nochka85, Monday 07 September 2009 à 14:10


Subscription date : 29 November 2007
Messages : 7408
@Fab : Je viens de voir que la config ne s'update pas en cas de modif du fichier de conf (avec le changement de numéro de version )

De plus, dans le about, on a tout le temps droit à :

applet (v0.0.1) by (null)



matttbe, Monday 07 September 2009 à 14:12


Subscription date : 24 January 2009
Messages : 12573
Tu as changé de pseudo nochka ?

Ca va faire bizarre de t'appeler 'null'

fabounet, Monday 07 September 2009 à 14:24


Subscription date : 30 November 2007
Messages : 17118
exact la méthode register n'a pas de champ auteur et version.
c'est donc à rajouter

nochka85, Monday 07 September 2009 à 16:06


Subscription date : 29 November 2007
Messages : 7408
Ca va faire bizarre de t'appeler 'null'


A croire que l'applet Dbus arrive à savoir mon niveau en programmation ...


fabounet, Monday 07 September 2009 à 18:01


Subscription date : 30 November 2007
Messages : 17118
heureusement que Ppmt ne s'auto-flagelle pas de la sorte, sinon le pauvre Mav n'aurait personne à vanner

Cairo-Dock cafe | Café Cairo-Dock

Subjects Author Language Messages Last message
[Locked] Applet externe en bash avec interface DBus
Page : 1 2 3 4
nochka85 Français 72 nochka85 [Read]
10 September 2009 à 15:47


Glx-Dock / Cairo-Dock List of forums Cairo-Dock cafe | Café Cairo-Dock Applet externe en bash avec interface DBus Top

Online users :

Powered by ElementSpeak © 2007 Adrien Pilleboue, 2009-2013 Matthieu Baerts.
Dock based on CSS Dock Menu (Ndesign) with jQuery. Icons by zgegball
Cairo-Dock is a free software under GNU-GPL3 licence. First stable version created by Fabounet.
Many thanks to TuxFamily for the web Hosting and Mav for the domain name.