#851 Le 08/07/2011, à 09:00
- Кຼزດ
Re : /* Topic des codeurs couche-tard [5] */
tshirtman a écrit :heu, c'est à toi de le faire hein… sauf avec la syntaxe "with open…" il me semble, mais sinon toujours .close() sur ton fichier quand tu as finit de lire ou écrire dedans… (les gens qui ne le font pas sont des gros sales )
Dans le fichier lié par grim7reaper, ils ne le font pas. Sinon, c’est quoi la syntaxe « with open » ?
dou
Hors ligne
#852 Le 08/07/2011, à 09:38
- tshirtman
Re : /* Topic des codeurs couche-tard [5] */
tshirtman a écrit :heu, c'est à toi de le faire hein… sauf avec la syntaxe "with open…" il me semble, mais sinon toujours .close() sur ton fichier quand tu as finit de lire ou écrire dedans… (les gens qui ne le font pas sont des gros sales )
Dans le fichier lié par grim7reaper, ils ne le font pas. Sinon, c’est quoi la syntaxe « with open » ?
↑↑ (ce sont de gros sales) et ↑ (what Koin said)
Et pour la destruction de mes variables quand je ne les utilise plus, t’as pas répondu…
par ce que je ne sais pas trop, en général je compte sur le gc, j'avais essayé de faire mon malin avec des del un peu partout dans usf à une époque, ne voyant pas spécialement d'intérêt… je n'utilise del que pour retirer un élément d'un tableau, et encore, j'aurais plus tendance à utiliser pop()…
Le gc a du mal avec les références croisées (un peu normal je crois) peut être que del peut l'aider, à voir…
sinon, tu peux activer/désactiver/customiser le gc en faisant "import gc" j'ai jamais joué avec, mais peut être que c'est le genre de choses qui te plairont
Hors ligne
#853 Le 08/07/2011, à 11:35
- Кຼزດ
Re : /* Topic des codeurs couche-tard [5] */
dou
Hors ligne
#854 Le 08/07/2011, à 12:17
- Elzen
Re : /* Topic des codeurs couche-tard [5] */
Tu pourrais pas utiliser ça ?
Ah ouais, tiens.
Bon, il faudrait vraiment que j'me renseigne plus sur dbus, un jour, y a l'air d'y avoir moyen de faire plein de trucs sympas.
Tiens, d'ailleurs, tant que j'y pense, le problème est le même ici que dans /proc/partitions : je suppose que tout ce qui est en « sdZ » (ou « hdZ », mais j'en vois plus trop) (avec Z lettre de l'alphabet) est un disque dur contenant potentiellement plusieurs partitions, et que « sdZX » (ou « hdZX », même remarque) (avec Z lettre et X nombre) représente une partition sur ce disque.
C'est pour surveiller les trucs qui peuvent être montés/démontés, donc les disques durs entiers ne m'intéressent pas. Du coup, je regarde simplement le nombre de caractères : s'il y en a trois (ou moins, même si j'pense pas que ce soit possible), je zappe, s'il y en a plus, je prends en compte. Simple, et pour autant que j'ai pu en juger, efficace. Vous pensez que ça va, comme approche ?
Y'a moyen de l'avoir ça, j'ai pas le temps de faire des tests là mais j'essayerai de poster un truc ce soir.
(…)
Ouais, je crois avoir vu un mec qui travaillait avec des trucs non détecté par udisks, mais ils s'en sortait en écoutant ailleurs avec dbus.
Faudrait que j'essaye de retrouver le lien…
Bah te casse pas la tête : j'ai déjà implémenté le parsage de /etc/mtab, qui est un fichier qui, à mon avis, ne devrait pas changer de sitôt, et de toute façon, j'ai déjà un truc d'écoute de modifications de fichiers qui tourne, pour surveiller les modifications de la configuration, donc surveiller un fichier de plus ou de moins ne change pas grand chose ^^
Dernière modification par ArkSeth (Le 08/07/2011, à 18:26)
Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
timezone[blocklist]
Hors ligne
#855 Le 08/07/2011, à 13:02
- Dr Le Rouge
Re : /* Topic des codeurs couche-tard [5] */
J'ai enfin trouvé de quoi m'amuser :]
edit : Ou pas, c'est super mal documenté -__-
Dernière modification par Dr Le Rouge (Le 08/07/2011, à 14:12)
C'est deux suites de Cauchy qui veulent aller à la soirée 'no limit'. Hélas, à l'entrée le videur leur dit : "désolé, c'est complet !".
mon site perso (π²/6.fr) et mon blog
Hors ligne
#856 Le 08/07/2011, à 18:09
- grim7reaper
Re : /* Topic des codeurs couche-tard [5] */
Tiens, d'ailleurs, tant que j'y pense, le problème est le même ici que dans /proc/partitions : je suppose que tout ce qui est en « sdZ » (ou « hdZ », mais j'en vois plus trop) (avec Z lettre de l'alphabet) est un disque dur contenant potentiellement plusieurs partitions, et que « sdZX » (ou « hdZX », même remarque) (avec Z lettre et X nombre) représente une partition sur ce disque.
C'est pour surveiller les trucs qui peuvent être montés/démontés, donc les disques durs entiers ne m'intéressent pas. Du coup, je regarde simplement le nombre de caractères : s'il y en a trois (ou moins, même si j'pense pas que ce soit possible), je zappe, s'il y en a plus, je prends en compte. Simple, et pour autant que j'ai pu en juger, efficace. Vous pensez que ça va, comme approche ?
Je n'y vois pas vraiment d'objection.
ArkSeth a écrit :Y'a moyen de l'avoir ça, j'ai pas le temps de faire des tests là mais j'essayerai de poster un truc ce soir.
(…)
Ouais, je crois avoir vu un mec qui travaillait avec des trucs non détecté par udisks, mais ils s'en sortait en écoutant ailleurs avec dbus.
Faudrait que j'essaye de retrouver le lien…
Han, détourneur de quote
Bah te casse pas la tête : j'ai déjà implémenté le parsage de /etc/mtab, qui est un fichier qui, à mon avis, ne devrait pas changer de sitôt, et de toute façon, j'ai déjà un truc d'écoute de modifications de fichiers qui tourne, pour surveiller les modifications de la configuration, donc surveiller un fichier de plus ou de moins ne change pas grand chose ^^
Nan mais pour le coup de choper le chemin de montage j'y étais presque ce matin, donc j'aurais pas l'esprit tranquille si je ne vais pas au bout.
Donc voilà le résultat :
import dbus
import gobject
from dbus.mainloop.glib import DBusGMainLoop
def handler(sender=None):
device_path = udisk_interface.FindDeviceByDeviceFile(sender.replace("/org/freedesktop/UDisks/devices", "/dev"))
device = dbus.Interface(bus.get_object('org.freedesktop.UDisks', device_path), 'org.freedesktop.UDisks.Device')
device_props = dbus.Interface(device, dbus.PROPERTIES_IFACE)
print device_props.Get('org.freedesktop.UDisks.Device', "DeviceMountPaths")
# Boucle evenementiel
DBusGMainLoop(set_as_default=True)
loop = gobject.MainLoop()
bus = dbus.SystemBus()
udisk = bus.get_object("org.freedesktop.UDisks", "/org/freedesktop/UDisks")
udisk_interface = dbus.Interface(udisk, "org.freedesktop.UDisks")
udisk_interface.connect_to_signal("DeviceChanged", handler)
loop.run()
Bon c'est extrêmement moche (surtout le coup du replace en dur, chui pas sûr que ça soit très générique ça…) mais encore une fois c'est juste une PoC.
Quand je monte mon DD externe et une de mes clefs ça me sort :
dbus.Array([dbus.String(u'/media/thanatos')], signature=dbus.Signature('s'), variant_level=1)
dbus.Array([dbus.String(u'/media/grim7reaper')], signature=dbus.Signature('s'), variant_level=1)
Donc on récupère bien le point de montage
Hors ligne
#857 Le 08/07/2011, à 18:28
- Elzen
Re : /* Topic des codeurs couche-tard [5] */
Han, détourneur de quote
Toutes mes confuses, c'est corrigé ^^
Nan mais pour le coup de choper le chemin de montage j'y étais presque ce matin, donc j'aurais pas l'esprit tranquille si je ne vais pas au bout.
Donc voilà le résultat :
Merci et bravo. Mais j'garde ma version avec /etc/mtab
Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
timezone[blocklist]
Hors ligne
#858 Le 08/07/2011, à 18:28
- grim7reaper
Re : /* Topic des codeurs couche-tard [5] */
Pas grave, comme le forum est bien référencé ça pourra servir à d'autres
Hors ligne
#859 Le 08/07/2011, à 18:51
- Elzen
Re : /* Topic des codeurs couche-tard [5] */
Ouaip ^^
(D'ailleurs, s'tu sais pas quoi faire, j'ai encore un problème en attente de suggestions ^^)
Ah, juste un truc, tant que j'y pense : dans l'état actuel des choses, le truc détecte donc toutes les partitions disponibles, y compris celles du ou des disque(s) dur(s) interne(s) de la machine.
Dans l'optique d'afficher les icônes des périphériques sur le bureau, par exemple, ça veut dire, pour ceux qui ont un /home séparé, au moins une icône pour la racine et une autre pour le home.
Vu la manière dont je gère les icônes du bureau, j'pense que de toute façon, la racine sera forcément là (j'vais faire ça comme pour le contenu du répertoire du bureau : une icône « maîtresse » et les autres qui en dépendent).
Par contre, ça peut intéresser les gens de ne pas afficher le home, et les éventuelles autres partitions internes, s'ils veulent seulement les disques amovibles.
D'où ma question : mis à part l'éventuel point de montage (qui sera a priori dans /media/ pour les disques amovibles et n'importe où ailleurs pour les disques internes), comment fait-on pour différencier ces deux catégories ?
Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
timezone[blocklist]
Hors ligne
#860 Le 08/07/2011, à 19:05
- xapantu
Re : /* Topic des codeurs couche-tard [5] */
Ceux qui sont montés à l'extérieur de /media, tu les montres pas, tous les autres, tu les montres
Hors ligne
#861 Le 08/07/2011, à 19:20
- Elzen
Re : /* Topic des codeurs couche-tard [5] */
Ç'pour ça que j'ai précisé « à part l'éventuel point de montage »
J'aimerais bien qu'il y ait un autre moyen de vérifier ça, parce que, par exemple dans l'hypothèse où l'utilisateur demande à n'afficher que les disques amovibles, mais à afficher les partitions non-montées, et que l'une des partitions internes n'est pas montée au démarrage, il se retrouvera avec une icône en trop (pire : une icône qui disparaîtrait si jamais il décidait de la monter en cours de route, et qui, à moins que j'ajoute un truc pour modifier l'état, réapparaîtrait une fois démonté, ce qui est quand même un comportement assez curieux)
Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
timezone[blocklist]
Hors ligne
#862 Le 08/07/2011, à 19:21
- grim7reaper
Re : /* Topic des codeurs couche-tard [5] */
(D'ailleurs, s'tu sais pas quoi faire, j'ai encore un problème en attente de suggestions ^^)
Ho, j'ai de quoi faire. Juste mon ordonnanceur qui merdoie.
Sinon désolé mais les bibliothèques graphique c'est pas un domaine où je brille particulièrement…
Hors ligne
#863 Le 08/07/2011, à 19:55
- Pylades
Re : /* Topic des codeurs couche-tard [5] */
Ou alors tu demandes une liste d’UUID à ignorer, comme ça t’es pas obligé de monter les bidules externes dans /media/ (d’ailleurs, les vieilles distros n’ont pas de /media/).
Dernière modification par Πυλάδης (Le 09/07/2011, à 03:54)
“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
Linus Torvalds – 12 janvier 2003
Hors ligne
#864 Le 08/07/2011, à 21:04
- Elzen
Re : /* Topic des codeurs couche-tard [5] */
Les vieilles distros n'ont pas non plus udisk, et j'aime pas les UUID
Mais j'peux éventuellement rajouter un gerne de blacklistage, en effet.
D'ailleurs, ça me fait penser que je n'avais pas laissé la possibilité d'afficher les fichiers cachés, pour le contenu d'un répertoire. J'vais rajouter ça.
Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
timezone[blocklist]
Hors ligne
#865 Le 08/07/2011, à 23:46
- HP
Re : /* Topic des codeurs couche-tard [5] */
Les vieilles distros n'ont pas non plus udisk
C'est sûr que ça a pas mal bougé ces derniers temps là-dessus…
http://www.freedesktop.org/wiki/Software/udisks
cat /dev/urandom >/dev/null 2>&1 #github
Hors ligne
#866 Le 09/07/2011, à 01:46
- Sir Na Kraïou
Re : /* Topic des codeurs couche-tard [5] */
Æ
Descendant de Charlemagne et de LUCA.
Bleu, en l'hommage d'un truc bleu. :'(
C'est pas du bleu.
C'est pas le lac de Genève, c'est le Lac Léman.
Hors ligne
#867 Le 09/07/2011, à 02:06
- nesthib
Re : /* Topic des codeurs couche-tard [5] */
plop
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#868 Le 09/07/2011, à 02:08
- cm-t
Re : /* Topic des codeurs couche-tard [5] */
'Nuit;
Actu Ubuntu ☺/
Pauses Ubuntu sur Paris \_< -t
[(π)] La Quadrature du net
Hors ligne
#869 Le 09/07/2011, à 02:15
- samυncle
Re : /* Topic des codeurs couche-tard [5] */
.
Hello world
Hors ligne
#870 Le 09/07/2011, à 02:19
- Кຼزດ
Re : /* Topic des codeurs couche-tard [5] */
œ
dou
Hors ligne
#871 Le 09/07/2011, à 06:42
- Compteur du TdCCT
Re : /* Topic des codeurs couche-tard [5] */
Scores totaux, depuis le début :
1) 3723 nesthib
2) 3299 samuncle
3) 3184 Πυλάδης
4) 2386 Кຼزດ
5) 1854 cm-t
6) 1750+5 grim7reaper /* ./viewtopic.php?pid=3486252#p3486252 */
7) 1410 na kraïou
8) 866 helly
9) 862 \\Ouranos//
10) 690 tshirtman
11) 659 gnuuat
12) 565 Lagierl
13) 445 Rolinh
14) 418 nathéo
15) 388 The Uploader
16) 271 Kanor
17) 202 :!pakman
18) 196 Askelon
19) 121 ǤƦƯƝƬ
20) 99 kamui57
21) 93 petifrancais
22) 78 edge_one
22) 78 pierguiard
24) 70 gulp
25) 45 Le Rouge
26) 42 sakul
27) 37 ilagas
28) 36 xapantu
29) 30 keny
30) 26 gustare
30) 26 d10g3n
32) 25 GentooUser
32) 25 Morgiver
34) 24 ไ୦บเઢ'
34) 24 Steap
36) 20 CROWD
37) 18 Ph3nix_
38) 16 kouskous
39) 15 timsy
40) 12 stratoboy
40) 12 sailing
42) 11 alexises
42) 11 Crocoii
44) 10 Toineo
44) 10 NutMotion
44) 10 pseudovingtcinqcaracteres
44) 10 pfriedZ
44) 10 CasseTaTele
44) 10 Zeibux
44) 10 THS`
44) 10 HP
52) 8 Mornagest
53) 7 Vista
54) 6 ubuntlin
54) 6 asma.geek
56) 5 tendances-tdct
56) 5 kinouchou
58) 4 danychou56
58) 4 Neros
58) 4 Biaise
58) 4 totoflute
58) 4 pinballyoda ㋛
58) 4 NLS le pingouin
58) 4 ceric
58) 4 Dice-Man
58) 4 Pylade
67) 3 Revan26914
67) 3 raspouillas
67) 3 sweetly
70) 2 SoJaS
71) 1 geenux
71) 1 ArzhurBZH
Codez-vous trop tard le soir ?
Demandez au Compteur du TdCCT pour le savoir !
J’ai été généreusement codé par tshirtman ; d’ailleurs, voici mon code source. TdCCT CEP : ./viewtopic.php?pid=3493579#p3493579 (p3492608).
Hors ligne
#872 Le 09/07/2011, à 06:42
- Compteur du TdCCT
Re : /* Topic des codeurs couche-tard [5] */
Scores de la période en cours :
1) 80 nesthib
2) 69 Πυλάδης
3) 68 samuncle
4) 59 Кຼزດ
5) 55 cm-t
6) 43 tshirtman
7) 30 na kraïou
8) 17 grim7reaper
9) 10 HP
10) 5 Rolinh
11) 3 The Uploader
Codez-vous trop tard le soir ?
Demandez au Compteur du TdCCT pour le savoir !
J’ai été généreusement codé par tshirtman ; d’ailleurs, voici mon code source. TdCCT CEP : ./viewtopic.php?pid=3493579#p3493579 (p3492608).
Hors ligne
#873 Le 09/07/2011, à 18:52
- grim7reaper
Re : /* Topic des codeurs couche-tard [5] */
Ptain, je viens de relire le thread sur PhœnixOS.
Ça me fera toujours autant marrer ce truc ^^
Hors ligne
#874 Le 09/07/2011, à 19:34
- tshirtman
Re : /* Topic des codeurs couche-tard [5] */
ptain m'en parle pas… le mec qui pensait qu'il *suffisait* de recruter "une équipe de hacker pour la sécurité" et s'arranger pour que les applications windows ET linux marchent nativement
Hors ligne
#875 Le 09/07/2011, à 20:11
- grim7reaper
Re : /* Topic des codeurs couche-tard [5] */
Ouais et puis quand tu lis ça
Windows est un système d'exploitation commercial fait par des gens pas super-bons en info, mais qui a l'avantage d'être tourné vers le néophyte qui n'y connaît rien. Commercial en somme.
[…]
Linux est un système d'exploitation de vieil informaticien, fait par des gens pas non plus super-bons en info (le C bas niveau est bien maîtrisé, mais le niveau de maîtrise du C++ et de l'ASM est catastrophique), mais qui a l'avantage d'être très modulable.
[…]
Il sera donc essentiel ici de prendre en charge directX, le support de toutes les versions jusqu'à la 11 devra être prévu sans devoir tout réécrire (en réutilisant les DLL de Microsoft).
[…]
Il est évident qu'un système libre compatible DirectX fera hurler Microsoft.Nous avons décidé d'ignorer ce problème
Lol quoi…
Et quand il parle de leur « boss », le Dieu de l'ASM…
J'aurais bien voulu qu'il intervienne histoire qu'on se marre un peu plus ^^.
En tout cas les admin ont été sympa d'immortaliser ce chef‑d'œuvre.
Dernière modification par grim7reaper (Le 09/07/2011, à 20:12)
Hors ligne