Hi Trevor,

Thanks for using hob and provide your valuable feedbacks, I'm trying to 
summarize your desired behavior/usage of hob as:

1. hob should save the customization into the project's configuration, instead 
of using its own configuration saving mechanism.  In this way, people will be 
able to achieve same customized build result from command line or using hob.
2. Current "Save template" wording is confusing.

Am I missing any point that you're also trying to make here?  I think these are 
valid points, could you file enhancement bugs for them in Yocto project 
bugzilla for us to track them and plan the future work for them accordingly?

Thanks,
Jessica

-----Original Message-----
From: yocto-boun...@yoctoproject.org [mailto:yocto-boun...@yoctoproject.org] On 
Behalf Of Trevor Woerner
Sent: Thursday, August 09, 2012 6:16 AM
To: yocto@yoctoproject.org
Subject: [yocto] Hob workflow

Hi everyone,

I've been using Hob lately and I'm completely blown away by how useful it is! 
Kudos to everyone: from those insisting there exist such a tool to those 
working on it :-)

While using it, however, I must admit it took me quite a while to get my head 
around some workflow issues and I was wondering if others felt the same way or 
if it's just me. (At this point I must to point out that I'm still only working 
my way through the Yocto Developer Manual and have not yet read the Hob 
documentation.)

I do my Yocto work in ~/devel/yocto. Under ~/devel/yocto I have:

1) git-method/
        which contains some bare yocto kernels
        various build directories for builds using the latest git
        a poky/ directory with all the yocto git goodness

2) releases/
        which contains various yocto project releases, which in turn contain 
various directories of builds

Let's say I decided I wanted to work on a PPC image and I decided I wanted to 
use the latest git from which to work. I would go to ~/devel/yocto/git-method 
and run:

    $ source poky/oe-init-build-env ppc-image

I would then find myself in ~/devel/yocto/git-method/ppc-image from which I 
could start my work. Now, if I was a yocto guru (like everyone else is) I could 
just start tweaking and playing around with various configuration files by hand 
(e.g. conf/local.conf) and then invoke "bitbake <image>" on the cmdline. If, 
however, I'm still learning and/or simply prefer not to tweak configuration 
files by hand, it would seem natural to assume I could, instead, invoke "hob" 
and start working on my PPC image using the GUI. This assumption, however, 
turns out to be not entirely correct.

If, before invoking "hob", I edit conf/local.conf then any changes there will 
show up in the hob configuration (i.e. DL_DIR or number of threads). But (and 
this is the really confusing part for me) any changes I make to those 
parameters while in Hob are not reflected in the relevant configuration files! 
If I quit Hob and then restarted, any changes made while in Hob would be lost; 
unless I clicked on "Save" explicitly, but even then any changes are only saved 
to a ~/devel/yocto/git-method/ppc-image/.hob directory, not in this project's 
configuration files themselves. Then, when I am done configuring and building 
an image just the way I want it, none of my changes are saved to any of the 
~/devel/yocto/git-method/ppc-image
configuration files... unless I click on "save template".

As a native english speaker I find the use of the term "template" to be 
incorrect. I wasn't interested in saving a template of my work I wanted to save 
my current configuration. For days I was frustrated that any tweaks I made to 
my configuration would be lost when I quit Hob. A "template", to me, implies 
some of the data will not be saved, which is distinct from the idea of saving 
my full, current, configuration (which is what "save template" is doing).

As a further example, while working on my PPC image let's say I also wanted to 
use Hob to work on an ARM image. In that case I'd go to 
~/devel/yocto/git-method and run "poky/oe-init-build-env arm-image", find 
myself in ~/devel/yocto/git-method/arm-image, and then invoke "hob". I now 
would have two instances of Hob running, but there is nothing to say that the 
Hob I invoked from the ARM project directory is modifying the ARM project and 
that the Hob invoked from the PPC project is modifying the PPC project. I could 
use the Hob invoked from the ARM project to "save as a template" for the PPC 
work.

It just seems more natural to me that if I started Hob from a given project 
directory (which is required since it needs bitbake), and if this instance of 
Hob is smart enough to start by using various configuration items from said 
project directory, that any changes or images made using this instance of Hob 
should be reflected back to the same configuration files and should tweak the 
project's configuration files based on the changes made while running Hob 
without having to explicitly save the configuration or "save as a template" any 
of the work that is done. In other words, given the same project, if I do some 
configurations by hand and then invoke "bitbake" or use Hob to perform other 
configurations and click "build image" I would end up with two completely 
different builds and this doesn't seem right. It would seem natural that Hob 
should be a different path (gui) to working with the same given project since 
Hob can only be invoked within a project, not that Hob is off wor
 king on its own, almost completely unrelated, project.

Thoughts?

Best regards,
    Trevor
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto

Reply via email to