Energia Open Source       Gumby - Package dependency       visualization for Linux                                André Gu...
Energia Open Source            Presentation Outline       1.   About me       2.   Linux packaging landscape       3.   Gu...
Energia Open Source        About me         ●   From Lisbon, Portugal         ●   Linux user and advocate for 6/7 years   ...
Energia Open Source     Linux Packaging 101 (Levelling the playing field)      ● A Linux distribution is a big component s...
Energia Open Source           Why would we want to have package           dependency visualization            Possible use...
Energia Open Source         InfoViz in current tools     ●   Aptitude         - Very limited visualization         (ncurse...
Energia Open Source        Introducing Gumby        Initial goals        ●   Native Linux Application        ●   Integrati...
Energia Open Source      Technical Design       ●    Built on top of APT – quite popular meta-installer used in           ...
Energia Open Source                          Architecture diagram                            Gumby: Package dependency Viz...
Energia Open Source                          Gumby: Package dependency Vizualization for   10                             ...
Energia Open Source        Features       ●    Visualize all kinds of dependencies (requires, provides,           conflict...
Energia Open Source                                  Demo                          Gumby: Package dependency Vizualization...
Energia Open Source           Roadmap / TODO List      ●    Choosing and displaying a specific version of a package      ●...
Energia Open Source         Wrapping up        ●    This should be considered as a proposal for the Linux distro          ...
Energia Open Source          One final detail, where is the code?     ●    http://people.caixamagica.pt/aguerreiro/gumby  ...
Energia Open Source            Thanks for your attention            Questions?                          Gumby: Package dep...
Upcoming SlideShare
Loading in …5
×

Gumby: Package Dependency Visualization for Linux

1,474 views

Published on

Talk presented at Brussels, FOSDEM 2011

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,474
On SlideShare
0
From Embeds
0
Number of Embeds
26
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Gumby: Package Dependency Visualization for Linux

  1. 1. Energia Open Source Gumby - Package dependency visualization for Linux André Guerreiro andre.guerreiro@caixamagica.pt 6th February 2011  Gumby: Package dependency Vizualization for 1 Linux
  2. 2. Energia Open Source Presentation Outline 1. About me 2. Linux packaging landscape 3. Gumby – the visualization tool 4. Technical design and ideas for improvement 5. Demo 6. Conclusions  Gumby: Package dependency Vizualization for 2 Linux
  3. 3. Energia Open Source About me ● From Lisbon, Portugal ● Linux user and advocate for 6/7 years ● Caixa Mágica developer ● MANCOOSI project involvement  Gumby: Package dependency Vizualization for 3 Linux
  4. 4. Energia Open Source Linux Packaging 101 (Levelling the playing field) ● A Linux distribution is a big component system (> 15000 packages) ● A Package consists of: Software + Meta-data + Configuration Scripts ● Meta-data example: firefox, version 3.6.2 (...) Requires: xulrunner >= 1.9.2.11, libsqlite >= 3.7 ... Provides: webclient Conflicts: sqlite < 3.0  Gumby: Package dependency Vizualization for 4 Linux
  5. 5. Energia Open Source Why would we want to have package dependency visualization Possible usecases ● The technically-inclined user who tries to install his favourite text editor and ends having 20+ apparently unrelated libraries blaming his distro for suffering of "bloat" ● Package Maintainers trying to assure repository consistency ● Researchers investigating new dependency solvers  Gumby: Package dependency Vizualization for 5 Linux
  6. 6. Energia Open Source InfoViz in current tools ● Aptitude - Very limited visualization (ncurses interface for advanced users/ sysadmins) ● Debtree - The main usecase is to pipe the output into a Graphviz tool e.g.: debtree firefox | dot -Tpng -Ofirefox-deps.png  Gumby: Package dependency Vizualization for 6 Linux
  7. 7. Energia Open Source Introducing Gumby Initial goals ● Native Linux Application ● Integration with the system GUI package manager (Synaptic initially...) ● To Visualize and explore package dependencies in an interesting way  Gumby: Package dependency Vizualization for 7 Linux
  8. 8. Energia Open Source Technical Design ● Built on top of APT – quite popular meta-installer used in Debian, Ubuntu, Caixa Mágica. ● Graph Layout depends on Graphviz  Gumby: Package dependency Vizualization for 8 Linux
  9. 9. Energia Open Source Architecture diagram  Gumby: Package dependency Vizualization for 9 Linux
  10. 10. Energia Open Source  Gumby: Package dependency Vizualization for 10 Linux
  11. 11. Energia Open Source Features ● Visualize all kinds of dependencies (requires, provides, conflicts, obsoletes) ● Progressive Exploration ● Compact Mode ● Zoom & pan ● Different Layout schemes (powered by Graphviz)  Gumby: Package dependency Vizualization for 11 Linux
  12. 12. Energia Open Source Demo  Gumby: Package dependency Vizualization for 12 Linux
  13. 13. Energia Open Source Roadmap / TODO List ● Choosing and displaying a specific version of a package ● Better support for Debian dependencies: suggests/recommends, disjunctive deps (Pkg A requires B | C) ● Improve the visual representation (transitions, collapse nodes)  Gumby: Package dependency Vizualization for 13 Linux
  14. 14. Energia Open Source Wrapping up ● This should be considered as a proposal for the Linux distro community to offer some attention to a neglected area ● Gumby is still a crude prototype but the first step is always the hardest... ● Im open for suggestions and criticism  Gumby: Package dependency Vizualization for 14 Linux
  15. 15. Energia Open Source One final detail, where is the code? ● http://people.caixamagica.pt/aguerreiro/gumby or http://bit.ly/hzMKHF ● Git repository : http://gitorious.org/cairo-graphs/gumby  Gumby: Package dependency Vizualization for 15 Linux
  16. 16. Energia Open Source Thanks for your attention Questions?  Gumby: Package dependency Vizualization for 16 Linux

×