[yast-devel] any inst_ldap-client?
Is there any inst_ldap-client we could use for a custom installation? We would like to set up the ldap without going into the inst_user.ycp. The problem we are in now is that inst_user trys to show the add new user dialog, and we do not want this to be shown, even when we accept the default ldap configuration. Right now we are patching inst_user.ycp but I understand this is not the way. Any pointers? thanx jordi -- Jordi Massaguer i Pla openTrends Solucions i Sistemes, S.L. Torre Llacuna C/Llacuna 166, 10º 1ª A 08018 Barcelona Phone: (+34) 93 320 84 14 Fax: (+34) 93 300 35 27 -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org For additional commands, e-mail: yast-devel+help@opensuse.org
Jordi Massaguer Pla napsal(a):
Is there any inst_ldap-client we could use for a custom installation? We would like to set up the ldap without going into the inst_user.ycp.
The problem we are in now is that inst_user trys to show the add new user dialog, and we do not want this to be shown, even when we accept the default ldap configuration. Right now we are patching inst_user.ycp but I understand this is not the way.
Any pointers?
All openSUSE or SLES/SLED installations are defined in a product control file. This file is part of an installation repository (CD/HTTP/whatever). If you don't want some steps and/or if you want to add or modify some steps. Change that control file, or create additional control file and an Add-On product that would modify the current control file. We use this for additional products built on SUSE Linux Enterprise and openSUSE has the very same functionality built-in. See this documentation: http://forgeftp.novell.com/yast/doc/SL11.0/tdg/inst_in_general_chap.html See also: http://svn.opensuse.org/svn/yast/trunk/installation/control/ especially control.openSUSE.xml (the current 11.0 control file) and add-on-template_installation.xml (special workflow for add-ons) Bye Lukas -- Lukas Ocilka, YaST Developer (xn--luk-gla45d) ----------------------------------------------------------------- SUSE LINUX, s. r. o., Lihovarska 1060/12, Praha 9, Czech Republic
Lukas, we've already done that. We've removed the user step in the firstboot. The problem is that, if we remove that step, the ldap client is never called, as it is called from the user module (the inst_user module to be right). The inst_user calls the ldap and then calls the add user. What we are trying to remove is the call to the add user. We've done so by patching the inst_user module, but I am sure it must be a better way to do it, at least for the next time, as we are running out of time and have found a solution for now. So we thought, let's add the ldap modules at the control.xml ... but it does not work as there is no inst_ldap module, or at least that is what I understand. Is that right? There is no inst_ldap module? Should we write an inst_ldap module that calls the ldap module instead? Is there any other solution? thanx El dv 01 de 02 del 2008 a les 13:55 +0100, en/na Lukas Ocilka va escriure:
Jordi Massaguer Pla napsal(a):
Is there any inst_ldap-client we could use for a custom installation? We would like to set up the ldap without going into the inst_user.ycp.
The problem we are in now is that inst_user trys to show the add new user dialog, and we do not want this to be shown, even when we accept the default ldap configuration. Right now we are patching inst_user.ycp but I understand this is not the way.
Any pointers?
All openSUSE or SLES/SLED installations are defined in a product control file. This file is part of an installation repository (CD/HTTP/whatever). If you don't want some steps and/or if you want to add or modify some steps. Change that control file, or create additional control file and an Add-On product that would modify the current control file.
We use this for additional products built on SUSE Linux Enterprise and openSUSE has the very same functionality built-in.
See this documentation: http://forgeftp.novell.com/yast/doc/SL11.0/tdg/inst_in_general_chap.html
See also: http://svn.opensuse.org/svn/yast/trunk/installation/control/ especially control.openSUSE.xml (the current 11.0 control file) and add-on-template_installation.xml (special workflow for add-ons)
Bye Lukas
-- Jordi Massaguer i Pla openTrends Solucions i Sistemes, S.L. Torre Llacuna C/Llacuna 166, 10º 1ª A 08018 Barcelona Phone: (+34) 93 320 84 14 Fax: (+34) 93 300 35 27 -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org For additional commands, e-mail: yast-devel+help@opensuse.org
Jordi Massaguer Pla napsal(a):
Lukas,
we've already done that. We've removed the user step in the firstboot.
The problem is that, if we remove that step, the ldap client is never called, as it is called from the user module (the inst_user module to be right). The inst_user calls the ldap and then calls the add user.
What we are trying to remove is the call to the add user. We've done so by patching the inst_user module, but I am sure it must be a better way to do it, at least for the next time, as we are running out of time and have found a solution for now.
So we thought, let's add the ldap modules at the control.xml ... but it does not work as there is no inst_ldap module, or at least that is what I understand. Is that right? There is no inst_ldap module? Should we write an inst_ldap module that calls the ldap module instead? Is there any other solution?
Yes, this is exactly what I wanted to advise you :) Create a new ycp client that just handles in/out and calls the ldap module inside: See, e.g., this one /usr/share/YaST2/clients/inst_language.ycp made by Jiri Suchomel: { import "GetInstArgs"; map args = GetInstArgs::argmap(); if (args["first_run"]:"yes" != "no") args["first_run"] = "yes"; return WFM::CallFunction ("select_language", [args]); } Very simple and works as expected. Patching an existent client works but could produce a lot of confusion when being tested and debugged. L.
Yes, this is exactly what I wanted to advise you :)
Create a new ycp client that just handles in/out and calls the ldap module inside:
See, e.g., this one /usr/share/YaST2/clients/inst_language.ycp made by Jiri Suchomel: { import "GetInstArgs";
map args = GetInstArgs::argmap();
if (args["first_run"]:"yes" != "no") args["first_run"] = "yes";
return WFM::CallFunction ("select_language", [args]); }
Very simple and works as expected. Patching an existent client works but could produce a lot of confusion when being tested and debugged.
L.
So I'll try this: { import "GetInstArgs"; map args = GetInstArgs::argmap(); if (args["first_run"]:"yes" != "no") args["first_run"] = "yes"; return WFM::CallFunction ("ldap", [args]); } is that what you meant? -- Jordi Massaguer i Pla openTrends Solucions i Sistemes, S.L. Torre Llacuna C/Llacuna 166, 10º 1ª A 08018 Barcelona Phone: (+34) 93 320 84 14 Fax: (+34) 93 300 35 27 -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org For additional commands, e-mail: yast-devel+help@opensuse.org
On pá 1. února 2008, Jordi Massaguer Pla wrote:
So I'll try this:
{ import "GetInstArgs";
map args = GetInstArgs::argmap();
if (args["first_run"]:"yes" != "no") args["first_run"] = "yes";
return WFM::CallFunction ("ldap", [args]); }
is that what you meant?
Not really, because that "first_run" argument is only special to that Language example and is not relevant for ldap . You actually only need { return WFM::CallFunction ("ldap-client", WFM::Args ()) } But you have to test it :-) Jiri -- Jiri Suchomel SUSE LINUX, s.r.o. e-mail: jsuchome@suse.cz Lihovarská 1060/12 tel: +420 284 028 960 190 00 Praha 9, Czech Republic http://www.suse.cz -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org For additional commands, e-mail: yast-devel+help@opensuse.org
Ok. Thank you very much. We'll try it out and test it for sure. We'll tell you how it goes. thanks again to you both! jordi El dv 01 de 02 del 2008 a les 14:24 +0100, en/na Jiří Suchomel va escriure:
On pá 1. února 2008, Jordi Massaguer Pla wrote:
So I'll try this:
{ import "GetInstArgs";
map args = GetInstArgs::argmap();
if (args["first_run"]:"yes" != "no") args["first_run"] = "yes";
return WFM::CallFunction ("ldap", [args]); }
is that what you meant?
Not really, because that "first_run" argument is only special to that Language example and is not relevant for ldap . You actually only need
{ return WFM::CallFunction ("ldap-client", WFM::Args ()) }
But you have to test it :-)
Jiri
-- Jordi Massaguer i Pla openTrends Solucions i Sistemes, S.L. Torre Llacuna C/Llacuna 166, 10º 1ª A 08018 Barcelona Phone: (+34) 93 320 84 14 Fax: (+34) 93 300 35 27 -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org For additional commands, e-mail: yast-devel+help@opensuse.org
El dv 01 de 02 del 2008 a les 14:24 +0100, en/na Jiří Suchomel va escriure:
On pá 1. února 2008, Jordi Massaguer Pla wrote:
So I'll try this:
{ import "GetInstArgs";
map args = GetInstArgs::argmap();
if (args["first_run"]:"yes" != "no") args["first_run"] = "yes";
return WFM::CallFunction ("ldap", [args]); }
is that what you meant?
Not really, because that "first_run" argument is only special to that Language example and is not relevant for ldap . You actually only need
{ return WFM::CallFunction ("ldap-client", WFM::Args ()) }
But you have to test it :-)
you missed the ; at the end of the line :) . Apparently it works, we'll go on with some more testing. { return WFM::CallFunction ("ldap-client", WFM::Args ()); } thanx again, jordi
Jiri
-- Jordi Massaguer i Pla openTrends Solucions i Sistemes, S.L. Torre Llacuna C/Llacuna 166, 10º 1ª A 08018 Barcelona Phone: (+34) 93 320 84 14 Fax: (+34) 93 300 35 27 -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org For additional commands, e-mail: yast-devel+help@opensuse.org
On pá 1. února 2008, Jordi Massaguer Pla wrote:
Lukas,
we've already done that. We've removed the user step in the firstboot.
The problem is that, if we remove that step, the ldap client is never called, as it is called from the user module (the inst_user module to be right). The inst_user calls the ldap and then calls the add user.
What we are trying to remove is the call to the add user. We've done so by patching the inst_user module, but I am sure it must be a better way to do it, at least for the next time, as we are running out of time and have found a solution for now.
So we thought, let's add the ldap modules at the control.xml ... but it does not work as there is no inst_ldap module, or at least that is what I understand. Is that right? There is no inst_ldap module? Should we write an inst_ldap module that calls the ldap module instead? Is there any other solution?
Yes, you can define your own firstboot sequence in firstboot.xml with such inst_ldap module. There's currently no inst_ldap, so yes, you need to write it and install it before the firstboot sequence is run. I think this is the right solution. Jiri -- Jiri Suchomel SUSE LINUX, s.r.o. e-mail: jsuchome@suse.cz Lihovarská 1060/12 tel: +420 284 028 960 190 00 Praha 9, Czech Republic http://www.suse.cz -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org For additional commands, e-mail: yast-devel+help@opensuse.org
On pá 1. února 2008, Lukas Ocilka wrote:
Jordi Massaguer Pla napsal(a):
Is there any inst_ldap-client we could use for a custom installation? We would like to set up the ldap without going into the inst_user.ycp.
The problem we are in now is that inst_user trys to show the add new user dialog, and we do not want this to be shown, even when we accept the default ldap configuration. Right now we are patching inst_user.ycp but I understand this is not the way.
Any pointers?
All openSUSE or SLES/SLED installations are defined in a product control file. This file is part of an installation repository (CD/HTTP/whatever). If you don't want some steps and/or if you want to add or modify some steps. Change that control file, or create additional control file and an Add-On product that would modify the current control file.
We use this for additional products built on SUSE Linux Enterprise and openSUSE has the very same functionality built-in.
See this documentation: http://forgeftp.novell.com/yast/doc/SL11.0/tdg/inst_in_general_chap.html
See also: http://svn.opensuse.org/svn/yast/trunk/installation/control/ especially control.openSUSE.xml (the current 11.0 control file) and add-on-template_installation.xml (special workflow for add-ons)
And especially for your case, your probably need to create your own Add-On Product (see http://developer.novell.com/wiki/index.php/Creating_Add-On_Media_with_YaST), with installation.xml (which is the file describing the Add-On installation workflow = the role of control.xml on the base product) where you defined own steps replacing current inst_user (or even inst_auth). Jiri
Bye Lukas
-- Jiri Suchomel SUSE LINUX, s.r.o. e-mail: jsuchome@suse.cz Lihovarská 1060/12 tel: +420 284 028 960 190 00 Praha 9, Czech Republic http://www.suse.cz -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org For additional commands, e-mail: yast-devel+help@opensuse.org
participants (3)
-
Jiří Suchomel
-
Jordi Massaguer Pla
-
Lukas Ocilka