]> git.rmz.io Git - dotfiles.git/blobdiff - bin/graph.py
xdg: add user-dirs.dirs
[dotfiles.git] / bin / graph.py
index 4521a5cb9ce357bee0f28f7ea00bc7cc34c37b8d..82dfd7cfc684cd3931c4114bab27f7fb5880a6d0 100755 (executable)
@@ -4,37 +4,20 @@
 
 from __future__ import print_function
 import os
 
 from __future__ import print_function
 import os
-#import sys
-import collections
-import argparse
-import logging
 import re
 import re
-from time import sleep
-import pygraphviz as pgv
 
 
-pkgs = os.popen("""LANGUAGE=C pacman -Ssq "^libpng$" """).read().strip().split("\n")
-print(pkgs)
-pkglist = os.popen("LANGUAGE=C pacman -Si").read().strip().split("\n\n")
-G = pgv.AGraph(directed=True)
+pkglist = os.popen("LANGUAGE=C pacman -Qi").read().strip().split("\n\n")
 p = re.compile(r"[<>=].*")
 p = re.compile(r"[<>=].*")
+e = open('edges.csv', 'w')
+e.write("Source,Target\n")
+n = open('nodes.csv', 'w')
+n.write("Node,Repo\n")
 for pkg in pkglist:
     lines = pkg.splitlines()
 for pkg in pkglist:
     lines = pkg.splitlines()
-    repo = lines[0][17:]
-    name = lines[1][17:]
+    name = lines[0][17:]
+    n.write(name+"\n")
     depends = lines[8][17:].split()
     for dep in depends:
         if dep != "None":
             dep = p.sub("",dep)
     depends = lines[8][17:].split()
     for dep in depends:
         if dep != "None":
             dep = p.sub("",dep)
-            G.add_edge(dep,name)
-
-all_n = set(G.nodes())
-n = set(pkgs)
-for pkg in pkgs:
-    n |= set(G.successors(pkg))
-    n |= set(G.predecessors(pkg))
-
-G.remove_nodes_from(all_n - n)
-    
-
-G.write("graph.dot")
-#G.draw("graph.svg",prog='dot')
+            e.write(name+","+dep+"\n")