[Bug 1172898] TW 2020-06-11 Installation: "Internal Error 'undefined method start' for class Yast2::Systemd::Target in inst_finish.rb
![](https://seccdn.libravatar.org/avatar/a895f78a81a109471893519443e4d933.jpg?s=120&d=mm&r=g)
https://bugzilla.suse.com/show_bug.cgi?id=1172898
https://bugzilla.suse.com/show_bug.cgi?id=1172898#c15
José Iván López González
$LOADED_FEATURES.grep(/target/) ["/usr/share/YaST2/lib/yast2/systemd/target.rb"]
In the last step of the installation, when we accept the installation summary, the installer performs a chroot and then the installation starts over the target system. Once the chroot is performed, the new required ruby files have a different path:
$LOADED_FEATURES.grep(/target/) ["/usr/share/YaST2/systemd/target.rb", "/mounts/mp_0001/usr/share/YaST2/lib/yast2/systemd/target.rb"]
This makes the Yast2::Systemd::Target class be required twice, and for this reason it fails when the "undef_method :start" is executed for a second time. But, even worse, possibly we are running the #main method of our singleton classes twice. This could have "interesting" effects. And why does it only fail when we change the language? Well, most likely systemd/target.rb is only required when the language is modified. I don't know why this is starting to fail now, because there is no significant changes in the source code in this regard. I would say the reason is something related to some changes in ruby 2.7 when requiring files. Martin, maybe you can enlighten us. Could you please have a look? -- You are receiving this mail because: You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@suse.com