[yast-devel] YCP Killer appliance
![](https://seccdn.libravatar.org/avatar/4511967db188146680b16bdb4743a073.jpg?s=120&d=mm&r=g)
Does anyone have the ycp-killer appliance ISO based on opensuse 12.3? The one in SUSE Studio was deleted, and I need to convert a custom YCP module to Ruby. Upgrading it to Leap causes all kinds of havoc with Perl, like missing .so files and symbols. Erico M. Mendonça Dedicated Support Engineer SUSE Rua Joaquim Floriano, 466 – Ed. Corporate 12º andar, Itaim Bibi – São Paulo – SP / Brasil Tel: +55 (11) 3345-3900 Cel: + 55 (61) 8594-9557 erico.mendonca@suse.com www.suse.com N�����r��y隊\���^��~�{.n�+������Ǩ��r��i�m��0��ޙ��ɫ-u�ޗ�0�����Ǩ�
![](https://seccdn.libravatar.org/avatar/f9a9cf77af20d925b328ee8c95c0068c.jpg?s=120&d=mm&r=g)
On Thu, 7 Jan 2016 13:37:29 +0000 Erico Mendonca <Erico.Mendonca@suse.com> wrote:
Does anyone have the ycp-killer appliance ISO based on opensuse 12.3? The one in SUSE Studio was deleted, and I need to convert a custom YCP module to Ruby. Upgrading it to Leap causes all kinds of havoc with Perl, like missing .so files and symbols.
Hi Erico, what I did in past is that I use directly y2r[1] script to convert ycp files. I also document known bugs in it[2]. I found it faster, then trying to adapt ycp killer. What you basically need to do, is to do all steps ycp killer did as mentioned in [3]. If you need more help, do not hesitate to contact me as I in past convert some third party modules. Josef [1] https://github.com/yast/y2r [2] https://github.com/yast/y2r/blob/master/KNOWN_BUGS.md [3] https://github.com/yast/ycp-killer/#overview
Erico M. Mendonça Dedicated Support Engineer SUSE Rua Joaquim Floriano, 466 – Ed. Corporate 12º andar, Itaim Bibi – São Paulo – SP / Brasil Tel: +55 (11) 3345-3900 Cel: + 55 (61) 8594-9557 erico.mendonca@suse.com www.suse.com
N_____r__y___\___^__~_{.n_+___________r__i_m__0________-u____0_________
-- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org To contact the owner, e-mail: yast-devel+owner@opensuse.org
![](https://seccdn.libravatar.org/avatar/4511967db188146680b16bdb4743a073.jpg?s=120&d=mm&r=g)
Hello Josef, I got the latest y2r from git running it after following the instructions in README.md, but I seem to have run into a wall. I’m running it on OpenSUSE Leap 42.1. Since YaST here is already in Ruby, it’ll complain about all the missing YCP modules imported by my module. To solve that, I got the files from SLES 11 SP4 media: erico@docmobile-suse:~/Projetos/ycp2ruby> unsquashfs -d squashfs-root-root /mnt/usbstick/boot/x86_64/root erico@docmobile-suse:~/Projetos/ycp2ruby> unsquashfs -d squashfs-root-common /mnt/usbstick/boot/x86_64/common Then I added the relevant dirs to LD_LIBRARY_PATH: erico@docmobile-suse:~/Projetos/ycp2ruby> export LD_LIBRARY_PATH=~/Projetos/ycp2ruby/squashfs-root-root/usr/lib/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi:~/Projetos/ycp2ruby/squashfs-root-root/usr/lib64:~/Projetos/ycp2ruby/squashfs-root-common/usr/lib64 It finds everything it needs, throws a couple of deprecated code warnings… until it hits the native Perl loaders: ycpc: symbol lookup error: /home/erico/Projetos/ycp2ruby/squashfs-root-root/usr/lib/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi/LibStorage.so: undefined symbol: Perl_Gthr_key_ptr These were compiled with a different version of the interpreter. I reproduced the above in a SLES 11 SP4 VM, and it appears to have got past that point, but there were Ruby syntax errors. Apparently there are language syntax differences between Ruby 1.8 and Ruby 2.1? I’ll keep working. Let’s see what happens. -- — Erico Mendonça Dedicated Support Engineer SUSE Em [DATE], "[NAME]" <[ADDRESS]> escreveu:
On Thu, 7 Jan 2016 13:37:29 +0000 Erico Mendonca <Erico.Mendonca@suse.com> wrote:
Does anyone have the ycp-killer appliance ISO based on opensuse 12.3? The one in SUSE Studio was deleted, and I need to convert a custom YCP module to Ruby. Upgrading it to Leap causes all kinds of havoc with Perl, like missing .so files and symbols.
Hi Erico, what I did in past is that I use directly y2r[1] script to convert ycp files. I also document known bugs in it[2]. I found it faster, then trying to adapt ycp killer. What you basically need to do, is to do all steps ycp killer did as mentioned in [3].
If you need more help, do not hesitate to contact me as I in past convert some third party modules.
Josef
[1] https://github.com/yast/y2r [2] https://github.com/yast/y2r/blob/master/KNOWN_BUGS.md [3] https://github.com/yast/ycp-killer/#overview
Erico M. Mendonça Dedicated Support Engineer SUSE Rua Joaquim Floriano, 466 – Ed. Corporate 12º andar, Itaim Bibi – São Paulo – SP / Brasil Tel: +55 (11) 3345-3900 Cel: + 55 (61) 8594-9557 erico.mendonca@suse.com www.suse.com
N_____r__y___\___^__~_{.n_+__________?_r__i_m__0________-u____0_________
-- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org To contact the owner, e-mail: yast-devel+owner@opensuse.org
![](https://seccdn.libravatar.org/avatar/4511967db188146680b16bdb4743a073.jpg?s=120&d=mm&r=g)
Replying to myself… I installed and tested y2r on Ruby 1.8, 2.1 and 2.3 on SLES 11 SP4 using the packages from devel:languages:ruby. They all fail with the same syntax errors on y2r code. I’m afraid I’m too much of a newbie on Ruby to take it on. Could someone help here? /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:506:in `element_to_node': undefined method `to_sym' for nil:NilClass (NoMethodError) Did you mean? to_s from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:530:in `element_to_node' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:195:in `element_to_node' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:189:in `element_to_node' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:601:in `block in extract_children' from /usr/lib64/ruby/gems/2.3.0/gems/nokogiri-1.5.6/lib/nokogiri/xml/node_set.rb:239:in `block in each' from /usr/lib64/ruby/gems/2.3.0/gems/nokogiri-1.5.6/lib/nokogiri/xml/node_set.rb:238:in `upto' from /usr/lib64/ruby/gems/2.3.0/gems/nokogiri-1.5.6/lib/nokogiri/xml/node_set.rb:238:in `each' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:601:in `map' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:601:in `extract_children' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:606:in `extract_collection' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:199:in `element_to_node' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:380:in `element_to_node' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:189:in `element_to_node' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:601:in `block in extract_children' from /usr/lib64/ruby/gems/2.3.0/gems/nokogiri-1.5.6/lib/nokogiri/xml/node_set.rb:239:in `block in each' from /usr/lib64/ruby/gems/2.3.0/gems/nokogiri-1.5.6/lib/nokogiri/xml/node_set.rb:238:in `upto' from /usr/lib64/ruby/gems/2.3.0/gems/nokogiri-1.5.6/lib/nokogiri/xml/node_set.rb:238:in `each' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:601:in `map' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:601:in `extract_children' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:606:in `extract_collection' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:199:in `element_to_node' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:189:in `element_to_node' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:136:in `xml_to_ast' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r/parser.rb:69:in `parse' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/lib/y2r.rb:10:in `compile' from /usr/lib64/ruby/gems/2.3.0/gems/y2r-1.0.1/bin/y2r:71:in `<top (required)>' from /usr/bin/y2r.ruby2.3:23:in `load' from /usr/bin/y2r.ruby2.3:23:in `<main>' -- — Erico Mendonça Dedicated Support Engineer SUSE Em [DATE], "[NAME]" <[ADDRESS]> escreveu:
I reproduced the above in a SLES 11 SP4 VM, and it appears to have got past that point, but there were Ruby syntax errors. Apparently there are language syntax differences between Ruby 1.8 and Ruby 2.1?
I’ll keep working. Let’s see what happens.
-- — Erico Mendonça
Dedicated Support Engineer SUSE
Em [DATE], "[NAME]" <[ADDRESS]> escreveu:
On Thu, 7 Jan 2016 13:37:29 +0000 Erico Mendonca <Erico.Mendonca@suse.com> wrote:
Does anyone have the ycp-killer appliance ISO based on opensuse 12.3? The one in SUSE Studio was deleted, and I need to convert a custom YCP module to Ruby. Upgrading it to Leap causes all kinds of havoc with Perl, like missing .so files and symbols.
Hi Erico, what I did in past is that I use directly y2r[1] script to convert ycp files. I also document known bugs in it[2]. I found it faster, then trying to adapt ycp killer. What you basically need to do, is to do all steps ycp killer did as mentioned in [3].
If you need more help, do not hesitate to contact me as I in past convert some third party modules.
Josef
[1] https://github.com/yast/y2r [2] https://github.com/yast/y2r/blob/master/KNOWN_BUGS.md [3] https://github.com/yast/ycp-killer/#overview
Erico M. Mendonça Dedicated Support Engineer SUSE Rua Joaquim Floriano, 466 – Ed. Corporate 12º andar, Itaim Bibi – São Paulo – SP / Brasil Tel: +55 (11) 3345-3900 Cel: + 55 (61) 8594-9557 erico.mendonca@suse.com www.suse.com
N_____r__y___\___^__~_{.n_+__________?_r__i_m__0________-u____0_________
-- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org To contact the owner, e-mail: yast-devel+owner@opensuse.org
?�{.n�+������ɫ-u�ޗ맲��r��z�^�ˬz��N�(�֜��^� ޭ隊\���^��~� ޮ�^�ˬz�
![](https://seccdn.libravatar.org/avatar/e76779f0629280df6d2dfce07e4e1600.jpg?s=120&d=mm&r=g)
Hello, Am Donnerstag, 7. Januar 2016 schrieb Erico Mendonca:
I installed and tested y2r on Ruby 1.8, 2.1 and 2.3 on SLES 11 SP4 using the packages from devel:languages:ruby. They all fail with the same syntax errors on y2r code. I’m afraid I’m too much of a newbie on Ruby to take it on. Could someone help here?
I'm not an YCP, ruby or YaST expert, but - IIRC openSUSE 13.1 was the first with ruby-based YaST. Therefore I'd recommend to setup a VM with openSUSE 12.3, which most probably has the package versions that were used back then. (Maybe newer-than-12.3 Factory was used, but 12.3 should be close enough.) I'd also guess that this will work out much faster than hunting down one error after the other ;-) (It might also be a good idea to keep that VM in case someone needs it again ;-) Regards, Christian Boltz -- Die drei Todfeinde des Programmieres: Sonnenlicht, frische Luft und das unerträgliche Gebrüll der Vögel. -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org To contact the owner, e-mail: yast-devel+owner@opensuse.org
![](https://seccdn.libravatar.org/avatar/f9a9cf77af20d925b328ee8c95c0068c.jpg?s=120&d=mm&r=g)
On Thu, 07 Jan 2016 21:45:54 +0100 Christian Boltz <opensuse@cboltz.de> wrote:
Hello,
Am Donnerstag, 7. Januar 2016 schrieb Erico Mendonca:
I installed and tested y2r on Ruby 1.8, 2.1 and 2.3 on SLES 11 SP4 using the packages from devel:languages:ruby. They all fail with the same syntax errors on y2r code. I’m afraid I’m too much of a newbie on Ruby to take it on. Could someone help here?
I'm not an YCP, ruby or YaST expert, but -
IIRC openSUSE 13.1 was the first with ruby-based YaST.
Therefore I'd recommend to setup a VM with openSUSE 12.3, which most probably has the package versions that were used back then. (Maybe newer-than-12.3 Factory was used, but 12.3 should be close enough.)
I'd also guess that this will work out much faster than hunting down one error after the other ;-)
(It might also be a good idea to keep that VM in case someone needs it again ;-)
Regards,
Christian Boltz
Yes, Christian is right. I recommend to use 13.2 or Leap for such kind of operation. SLE12 SP1 is also good for it. SLE11 is just too old for such operation. Josef -- To unsubscribe, e-mail: yast-devel+unsubscribe@opensuse.org To contact the owner, e-mail: yast-devel+owner@opensuse.org
participants (3)
-
Christian Boltz
-
Erico Mendonca
-
Josef Reidinger