summaryrefslogtreecommitdiffstats
path: root/lib/bb/ui/hob.py
AgeCommit message (Collapse)Author
2013-09-18bitbake: cooker,xmlrpc,servers: implement CookerFeaturesAlexandru DAMIAN
Implementing feature set selection that allows a client to enable specific features in the server at connection time. Only enabling of features is supported, as there is no way to safely remove data loaded into the cooker. Once enabled, a feature will remain enabled for the life of the cooker. Client-server connection now supports specifying the feature set required by the client. This is implemented in the Process server using a managed proxy list, so the server cooker will now load dynamically needed features based on what client connects to it. In the XMLRPC server the feature set is requested by using a parameter for registerUIHandler function. This allows observer-only clients to also specify features for the server. The server code configuration now is completly separated from the client code. All hardcoding of client knowledge is removed from the server. The extra_caches is removed as the client can now specify the caches it needs using the feature. The UI modules now need to specify the desired featureSet. HOB is modified to conform to the featureSet specification. The only feature available is CookerFeatures.HOB_EXTRA_CACHES which forces loading the bb.cache_extra:HobRecipeInfo class. Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-08-27hob: add event handlers filtering in HobCristiana Voicu
Create the _evt_list for hob; it is longer than the knotty uses because it handles more events. Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-05-21cooker: Move commandline parsing back into the UI/cookerdataRichard Purdie
Building up a set of actions for the server is tricky since we depend upon the commandline but fall back to values from the datastore. We should be able to build a datastore without a commandline and vice versa. Ultimately the UI should send the commands to the server. This patch amounts to code rearranging, moving the heavy lifting to the UI, though a helper in the configuration option. This will need further cleanup/tweaking but this should be the only update needed to the UIs. The code now queries the server for any missing data should it need to. This code allows various knowledge of configuration variables to move to the UI side only, partcularly pkgs_to_build but also all the command specifiers. It should also be possible to move cmd eventually, I'm just unsure if any callers call the commands expecting this to default to something sane right now. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18hob: Fix GTK+ and PyGtk version check error message to be more clearJessica Zhang
Improve the error message the user sees if the versions are incorrect. [YOCTO #3637] Signed-off-by: Jessica Zhang <jessica.zhang@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-08Hob: lower the limitation for PyGTKShane Wang
Signed-off-by: Shane Wang <shane.wang@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-20hob: update required pygtk to 2.22.0 and gtk+ to 2.20.0Joshua Lock
Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-04-11hob: update required versions of (py)gtk et alJoshua Lock
With the previous two changes we now work on Gtk+ 2.18 and PyGtk 2.16 Signed-off-by: Joshua Lock <josh@linux.intel.com>
2012-04-05lib/bb/ui/hob: exit cleanly if the required pygtk version isn't availableJoshua Lock
Hob uses API from pygtk 2.22, therefore check to see whether this version is available and exit cleanly if not. Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-25Hob: Change the Hob initialization processDongxiao Xu
This change allows adding extra inherits before getting all the parameters. Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
2012-03-25Hob: Cleanup for hobeventhandler.pyDongxiao Xu
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
2012-03-22Hob: Remove split model in GTK HobDongxiao Xu
Since the GTK Hob will not use the server/client split model, thus remove it from current Hob code. But we still keep the core mechanism in bitbake server. (From Poky rev: 983ea0265a53e0725dcbf9085ea767ebbc155ae5) Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-24Hob: A new implemetation (v2)Dongxiao Xu
This commit implements a new design for hob Some of the new features: - Friendly new designed GUI. Quick response to user actions. - Two step builds support package generation and image generation. - Support running GUI seprarately from bitbake server. - Recipe/package selection and deselection. - Accurate customization for image contents and size. - Progress bars showing the parsing and build status. - Load/save user configurations from/into templates. Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com> Signed-off-by: Shane Wang <shane.wang@intel.com> Signed-off-by: Liming An <limingx.l.an@intel.com> Signed-off-by: Fengxia Hua <fengxia.hua@intel.com> Designed-by: Belen Barros Pena <belen.barros.pena@intel.com>
2011-10-11hob: fix backtrace when dismissing open dialogJoshua Lock
Clearly a logic/indentation error - we should only try and load the recipe should the file-chooser return OK. Fixes [YOCTO #1668] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-09-23hob: store recipe path at load timeJoshua Lock
This fixes the internal dirtiness tracking such that if the Save menu item is selected after loading a recipe the existing file is updated rather than the user being prompted for the path to create a recipe at. Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-09-23hob: fix building with current selections after reparseJoshua Lock
After the reparse we were setting the model to reflect the values before the reparse was triggered but clearing the internal variables used to test whether these values are set, leading to the UI erroneously reporting that selections had not been made. Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-09-19hob: enable package only builds even if an image has been builtJoshua Lock
Once an image build has been performed the selected_image variable would prevent the package only build choice being triggered - by setting the variable to None on reset we are able to perform package only builds after an image build. Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-09-19hob: fix build again when building packages onlyJoshua Lock
The different code paths for package vs image builds have lead to some bit rot in the package only build and an incompatability between package only builds and the build again mechanism. This patch unifies the code paths and fixes build again for package only builds. Fixes [YOCTO #1480] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-09-13hob: correctly set the selected image when loading a recipeJoshua Lock
When the user saves their recipe based on an existing image type, loads it in a newly run hob instance and clicks bake they should not be asked about building packages vs an empty image up. Partially addresses [YOCTO #1468] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-09-13hob: correctly handle an exceptionJoshua Lock
It doesn't matter if we can't remove the temprorary file, for some reason, so catch the exception and ignore it. Partially addresses [YOCTO #1468] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-09-05hob: fix segfault on second buildPaul Eggleton
Some internal lists were not being cleared, resulting in incorrect program flow on the second build, causing a structure to be accessed incorrectly which resulted in a segfault. Fixes [YOCTO #1332] Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-05hob: clear out temporary file list after deletingPaul Eggleton
If you don't clear out files_to_clean after the files get deleted and then you run a second build, it will try to delete the files from the first build and you will get a "No such file or directory" error. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-05hob: disable removal of packagesJoshua Lock
It's felt that the stability of package deselection is not sufficient for the upcoming release and thus package removal should be disabled. I'd actually like to see this patch, or its effects, reverted as soon as the release bits have been frozen so that this issue can continue to be worked on. Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-09-05hob: add a test to ensure hob is run with the required pre and post filesJoshua Lock
hob requires pre and post configuration files to store configuration values in, whilst this should (and will) be fixed long-term for so long as we require these files we should alert the user should they run without them. Fixes [YOCTO #1383] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-09-05hob: reflect defaultsetup being default distroJoshua Lock
If no value is set for DISTRO the defaultsetup policy is used, reflect this in the UI by having defaultsetup selected in the Distribution combo when no other DISTRO is set. Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-09-05hob: use both pre and post files for hob configurationJoshua Lock
We need to set various variables *before* parse begins, the simplest way to ensure this is to use a pre configuration file for the relevant configuration entries. This series adapts hob to use both pre and post files to store its configuration. Any variables which affect initial parse are set in the pre file and all others in the post file. Unfortunately this requires hob related code to have even more hard-coded data as to what is relevant but this is the simplest way to solve issues with variables and parse order at this time. Addresses [YOCTO #1281] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-08-24hob: disable some menu entries whilst build is in progressJoshua Lock
It doesn't make sense to be able to modify the preferences and add/remove layers whilst a build is in progress - disable the relevant menu items once the build has started and re-enable them once the user has returned to the creation view. Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-08-24hob: don't set PARALLEL_MAKE and BB_NUMBER_THREADS based on cpu countJoshua Lock
This was actually broken with recent changes as the values were never persisted to a file (meaning they were unset on the server at reparse despite the UI indicating they were set). However, I've chosen to remove the 'feature' as pegging a users CPU without them asking to use high thread counts seems a little offensive. Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-08-23bb/ui/hob: warn and prevent image build if no IMAGE_FSTYPE is setJoshua Lock
If IMAGE_FSTYPE is empty and the user has opted to build an image warn them and prevent the build. Fixes [YOCTO #1267] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-08-23bb/ui/hob: fix package only buildJoshua Lock
Use the models new get_selected_pn method to return a list of PN's for the selected items and pass that for a package only build, rather than passing a list of package names (which buildTargets can't handle). Fixes [YOCTO #1385] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-08-23hob: don't try and build if user selects Bake with no selections madeJoshua Lock
If the user hasn't made any selections inform them that they need to do so before clicking Bake. Fixes [YOCTO #1384] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-08-09bb/ui/hob: Restore toolchain relevant preference settings for buildJessica Zhang
Fixes [#YOCTO 1354] Signed-off-by: Jessica Zhang <jessica.zhang@intel.com> Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-08-08bb/ui/hob: move some code around to avert a raceJoshua Lock
The data-generated and model-updated signals are different, the model should only be accessed *after* the model-updated signal. Move code setting the image combo's backing model to the model-updated callback to ensure the combo is accurately set when changing the machine with an image selected. Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-08-04bb/ui/hob: reset event handler once build completeJoshua Lock
The HobEventHandler passes events on to RunningBuild when a build is in progress. This patch resets the HobEventHandler to handle events when the build is complete. Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-08-03bb/ui/hob: be clear that the image contents are an estimateJoshua Lock
Partially addresses [YOCTO #1263] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-08-03bb/ui/hob: only connect to the changed signal of image_combo onceJoshua Lock
Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-08-03bb/ui/hob: prevent label on progress bar from changing rapidly when loadingJoshua Lock
Fixes [YOCTO #1240] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-08-03bb/ui/hob: fix detection of whether GPLv3 is disabledJoshua Lock
Find returns -1 if the substring isn't found, so checking for the Truthiness of the return value is insufficient. An INCOMPATIBLE_LICENSE value which only includes GPLv3 will cause find to return 0, for example. Fixes [YOCTO #1320] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-08-02bb/ui/hob: disable editing in the build messages tree viewJoshua Lock
Addresses the second part of [YOCTO #1311] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-08-02bb/ui/hob: show build messages are displayed in the order they're receivedJoshua Lock
Use the new sequential option of RunningBuild to ensure this. Fixes the first part of [YOCTO #1311] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-08-02bb/ui/hob: save changes to bblayers.conf when using Add Layer menu itemJoshua Lock
Fixes [YOCTO #1283] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-07-30hob: remove temporary directory on program shutdownJoshua Lock
Move temp directory handling into the HobEventHandler and clean up the temporary files on program close. Fixes [YOCTO #1307] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-07-28ui/hob: show error and exit if we receive the fatal-error signalJoshua Lock
If we receive the fatal-error signal from the handler display a dialog informing the user of an error and displaying the error message. Dismissing the dialog quits the application. Fixes [YOCTO #1279] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-07-28hob: unset busy cursor on exitJoshua Lock
Prevent the busy cursor being shown after hob exits if quit is called whilst the busy cursor is set. Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-07-28hob: fix save/restore of toolchain preferencesJoshua Lock
Add some (namespaced) custom variables to the configuration file for sake of this UI. Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-07-28hob: more reliable disabling of GPLv3 packagesJoshua Lock
1. reflect GPLv3's presence in INCOMPATIBLE_LICENSE value in the UI The hob UI currently only supports GPLv3 as a value for INCOMPATIBLE_LICENSE but doesn't properly reflect whether the value is already set. This patch rectifies this. 2. don't stomp over other INCOMPATIBLE_LICENSE values when disabling GPLv3 In case the user has other values set for INCOMPATIBLE_LICENSE we don't want to overwrite the value, we want to modify it. Fixes [#1286] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-07-26hob: fix loading customised image recipeJoshua Lock
The signal handler of the 'Base image' combo was still connected during load such that updating the UI to reflect the loaded base image triggered a change of the model. Fix this by disconnecting the signal handler when updating the displayed 'Base image'. Fixes [YOCTO #1282] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-07-26ui/hob: enable building an image with minimal contentsJoshua Lock
This patch enables a user to build a rootfs containing only the selected packages without having to have first selected a 'Base image'. Fixes [YOCTO #1239] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-07-26ui/hob: Force the 'Base image combo' to be drawn correctlyJoshua Lock
As the combo is created before its backing model it's common for the combo to be drawn at its minimum size and then grow the first time the user activates it. This slight ugly patch forces the combo to be resized as soon as the model is associated so that by the time the user interacts with the widget it is less likely to change size. Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-07-26ui/hob: change wording in build complete dialogJoshua Lock
The 'View Log' button is potentially confusing to existing users of the system who may be expecting to be shown the on disk logs of the build. Instead use 'View Messages'. Addresses [YOCTO #1222] Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-07-26ui/hob: don't offer to show built output if build failsJoshua Lock
The link to open the deploy directory should only be shown if the build completed succesfully. Signed-off-by: Joshua Lock <josh@linux.intel.com>