Skip to content

RFC Prototype GUI Image Creator

Joshua Lock poky 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 RFC Latest13 patches 0 repliesNew

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/13bitbake/cache: store a list of inherited files in the cachebitbake/lib/bb/cache.py+5 -00 replies
2/13bitbake: implement command to get all possible targets and their dependenciesbitbake/lib/bb/command.py bitbake/lib/bb/cooker.py bitbake/lib/bb/event.py+44 -00 replies
3/13bitbake: implement command to find configuration files for a config variablebitbake/lib/bb/command.py bitbake/lib/bb/cooker.py bitbake/lib/bb/event.py+45 -00 replies
4/13bitbake/cooker: add generateTargetsTree methodbitbake/lib/bb/cooker.py+64 -30 replies
5/13bitbake/cooker: reduce code duplicationbitbake/lib/bb/cooker.py+11 -260 replies
6/13bitbake/[cooker|cache]: cache summary, license and group. Add to targets treebitbake/lib/bb/cache.py bitbake/lib/bb/cooker.py+18 -00 replies
7/13bitbake: introduce crumbs.TaskListModel a gtk.ListStore subclassbitbake/lib/bb/ui/crumbs/tasklistmodel.py+346 -00 replies
8/13bitbake/event: fix some whitespace issuesbitbake/lib/bb/event.py+1 -30 replies
9/13bitbake/crumbs: update documentation headerbitbake/lib/bb/ui/crumbs/__init__.py+1 -10 replies
10/13bitbake/progress: add method to pulse the progress barbitbake/lib/bb/ui/crumbs/progress.py+4 -00 replies
11/13bitbake/cooker: don't drop possible_world ref countbitbake/lib/bb/cooker.py+0 -40 replies
12/13bitbake: Add new UI hob, a prototype Gtk+ GUI for creating imagesbitbake/lib/bb/ui/crumbs/hobeventhandler.py bitbake/lib/bb/ui/hob.py+734 -00 replies
13/13bitbake/progress: make progress dialog modal for parent windowbitbake/lib/bb/ui/crumbs/progress.py+1 -20 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [RFC] [PATCH 00/13] Prototype GUI Image Creator

From: Joshua Lock <[email protected]>

This patch series introduces a very basic image creator for BitBake. It is far from complete and not very usable but begins to explore the possibilities of graphical tooling built on top of BitBake.

Note: this does *not* work with the default None server in Poky, you need to use the XML-RPC server (uncomment the two xmlrpc lines in bitbake/bin/bitbake and comment out the none lines).

The code is pretty ugly in places, though I hope it's not too Poky specific.
Currently it will just set the targets of the build command to all of the selected packages, this needs refinement - ideally it will 'squash' the list of packages to only include packages not brough in by a selected image (this will also be useful to provide a summary/confirmation dialog before the build)but I want to implement this in a generic way (i.e. not relying on Poky metadata conventions).

There are also various NOTE/FIXME/TODO comments - these all need adressing.
Several UI enhancements are planned, such as an 'Advanced' section of the GUI which will enable the tweaking of variables such as DISTRO, PACKAGE_CLASSES, BB_NUMBER_THREADS and others. There are also various usability niggles that need work such as: the treeview columns being sized better and the fact that the sort column in the 'Packages (by Group)' column needs a custom sort function otherwise sort order changes when packages are toggled for inclusion.

I'm hoping for feedback on the approach and code review.

Thanks,
Joshua

Pull URL: git://git.pokylinux.org/poky-contrib.git
Branch: josh/gui
Browse: http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=josh/gui

Thanks,
Joshua Lock <[email protected]>
---

Joshua Lock (13):
bitbake/cache: store a list of inherited files in the cache
bitbake: implement command to get all possible targets and their
dependencies
bitbake: implement command to find configuration files for a config
variable
bitbake/cooker: add generateTargetsTree method bitbake/cooker: reduce code duplication bitbake/[cooker|cache]: cache summary, license and group. Add to
targets tree
bitbake: introduce crumbs.TaskListModel a gtk.ListStore subclass bitbake/event: fix some whitespace issues bitbake/crumbs: update documentation header bitbake/progress: add method to pulse the progress bar bitbake/cooker: don't drop possible_world ref count
bitbake: Add new UI hob, a prototype Gtk+ GUI for creating images bitbake/progress: make progress dialog modal for parent window

 bitbake/lib/bb/cache.py                     |   17 +
 bitbake/lib/bb/command.py                   |   21 +
 bitbake/lib/bb/cooker.py                    |  111 +++++-
 bitbake/lib/bb/event.py                     |   17 +
 bitbake/lib/bb/ui/crumbs/__init__.py        |    2 +-
 bitbake/lib/bb/ui/crumbs/hobeventhandler.py |  138 ++++++
 bitbake/lib/bb/ui/crumbs/progress.py        |    7 +-
 bitbake/lib/bb/ui/crumbs/tasklistmodel.py   |  346 ++++++++++++++++
 bitbake/lib/bb/ui/hob.py                    |  596 +++++++++++++++++++++++++++
 9 files changed, 1245 insertions(+), 10 deletions(-)
 create mode 100644 bitbake/lib/bb/ui/crumbs/hobeventhandler.py
 create mode 100644 bitbake/lib/bb/ui/crumbs/tasklistmodel.py
 create mode 100644 bitbake/lib/bb/ui/hob.py
Signature · 1 line
1.7.4