On Fri, Oct 31, 2014 at 08:00:20AM +0100, Josef Reidinger wrote:

> > my hackweek project was to evaluate using the boost graph library
> > (BGL) in libstorage. For me the project was interesting and
> > successful. I have documented it at
> > https://github.com/aschnell/libstorage-bgl-eval/wiki. The code is
> > also available there.
> > 
> > So now I would like to redesign the storage part of YaST. Here
> > are the main steps required:

> > - Make the new API robust against API and ABI changes.
> 
> Sounds good, question is how?

At least export (via header files) only what really required,
e.g. use the d-ptr pattern (e.g. http://qt-project.org/wiki/Dpointer).

> > - Export new API to Ruby (help would be good) for use by all YaST
> >   modules.
> 
> I think it would be very cool if we have in ruby nice object oriented
> API. I can help you with ruby bindings. I think it is usually better to
> have combination of C bindings and ruby code that make usage in ruby
> smoother.

I prefer to not write manual bindings. On the other hand I
haven't checked what swig allows here.

> > - Make all code in YaST use new API (task for several
> >   developers).
> 
> For this step we really need some storage setup factory, so e.g. in
> bootloader I can replace old mocks of target maps with new stuff and
> change code.

The current libstorage already has support to not probe the
system and instead read the setup from files. This will of course
stay and even be extended (to cover all features,
e.g. multipath).

> > - Finally drop target-map (as decided during workshop).
> 
> That will be great step especially together with object oriented API.
> Then we can have something like Disk.find( bios_id:
> "0x80").find_partition(mount_to: "/boot").sw_raid? in bootloader.

Well, I'm not used to such a "find" API so I cannot say whether
it will like that way.

Also so far libstorage does not know the bios-id, hwinfo provides
that informations and it's "merged" in Ruby into the target-map.

ciao
  Arvin

-- 
Arvin Schnell, <[email protected]>
Senior Software Engineer, Research & Development
SUSE LINUX GmbH, GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 21284 
(AG Nürnberg)
Maxfeldstraße 5
90409 Nürnberg
Germany
-- 
To unsubscribe, e-mail: [email protected]
To contact the owner, e-mail: [email protected]

Reply via email to