Mailinglist Archive: yast-devel (129 mails)

< Previous Next >
Re: [yast-devel] SCR usage statistics.
  • From: Lukas Ocilka <lukas.ocilka@xxxxxxx>
  • Date: Fri, 16 Nov 2007 10:11:49 +0100
  • Message-id: <473D5ED5.4080008@xxxxxxx>
Klaus Kaempf napsal(a):
* Justin Haygood <jhaygood@xxxxxxxxxxx> [Nov 15. 2007 19:06]:
From experience, SCRs are just plain hard to use unless you are a rocket
scientist. Writing and consuming SCRs (or their potential replacement)
should be a lot easier and more "fun".

Agreed !

And I forgot one more point in my list:

- Object orientation
The 'backend api' should pick up properties of object-orientation.

Old New
--- ---
value = SCR::Read( ) -> value =
SCR::Write(, value ) -> = value
SCR::Execute(, v1, v2) -> v1, v2 )

I think this fulfills the 'easy' and 'fun' requirements ;-)

Sounds great!

Nevertheless I don't see *any* benefit when comparing to the current
implementation. What I see are these drawbacks:

* Broken backward compatibility - and we know we need backward
compatibility in such important tasks as access to system is.
We just can't rewrite the whole YaST overnight (OES, SLEPOS, ...).

* Confuses developers - currently we have clearly written: 'Read',
'Write', 'Execute' or 'Dir'.
The proposal of replacement for SCR::Read vs. SCR::Execute is almost
the same:

any cmd_out = ( v1 )
any value =

any cmd_out = SCR::Execute (, v1)
any value = SCR::Read (

* It's not a fun to rewrite all the existing code :) ;) and it's not
easy either! ;)

The current SCR implementation expects caching the changed values, all
are written to disk at once to make it faster. I don't see any clear
/object-oriented/ syntax to rewrite it to be still understandable.

Anyway, if we are talking about SCR -> 'client', WFM would need to be
'system' or something similar. Which, on the other hand, would bring
another confusedness.

IMO: All in all, this is not worth changing. But please, convince me it is.


PS: The current documentation of SCR agents is generated from sources
for every release. See these pages, for instance:


SCR how-to document:


Lukas Ocilka, YaST Developer (xn--luk-gla45d)
SUSE LINUX, s. r. o., Lihovarska 1060/12, Praha 9, Czech Republic

< Previous Next >