Discussion:
[Sisuite-devel] systemimager-debian - new patch for mkbootmedia
Geoffroy Vallée
2007-05-15 03:30:32 UTC
Permalink
Hi all,

I had to update the patch for mkbootmedia (10_disable-mkbootmedia.patch). The
new patch is also available in my branch (r63). BTW, what is the problem with
mkbootmedia? I remember that Dann told me we should fix the problem so I wonder
if someone has a description of the problem.

Thanks,

--- systemimager-3.8.0/Makefile.orig 2007-05-11 23:31:40.000000000 -0400
+++ systemimager-3.8.0/Makefile 2007-05-11 23:32:55.000000000 -0400
@@ -158,7 +158,7 @@
PXE_CONF_SRC = etc/pxelinux.cfg
PXE_CONF_DEST = $(ETC)/systemimager/pxelinux.cfg

-BINARIES := si_mkautoinstallcd si_mkautoinstalldiskette si_mkautoinstalldisk si_mkbootmedia si_psh si_pcp
+BINARIES := si_mkautoinstallcd si_mkautoinstalldiskette si_mkautoinstalldisk si_psh si_pcp #si_mkbootmedia
SBINARIES := si_addclients si_cpimage si_getimage si_mkdhcpserver si_mkdhcpstatic si_mkautoinstallscript si_mkbootserver si_mvimage si_pushupdate si_pushinstall si_rmimage si_mkrsyncd_conf si_mkclient
netboot si_netbootmond si_imagemanip si_mkbootpackage si_monitor si_monitortk si_installbtimage
CLIENT_SBINARIES := si_updateclient si_prepareclient
COMMON_BINARIES = si_lsimage
@@ -317,13 +317,13 @@
.PHONY: install_server_libs
install_server_libs:
mkdir -p $(LIB_DEST)/SystemImager
- mkdir -p $(LIB_DEST)/BootMedia
+# mkdir -p $(LIB_DEST)/BootMedia
$(SI_INSTALL) -m 644 $(LIB_SRC)/SystemImager/Server.pm $(LIB_DEST)/SystemImager
$(SI_INSTALL) -m 644 $(LIB_SRC)/SystemImager/HostRange.pm $(LIB_DEST)/SystemImager
- $(SI_INSTALL) -m 644 $(LIB_SRC)/BootMedia/BootMedia.pm $(LIB_DEST)/BootMedia
- $(SI_INSTALL) -m 644 $(LIB_SRC)/BootMedia/MediaLib.pm $(LIB_DEST)/BootMedia
- $(SI_INSTALL) -m 644 $(LIB_SRC)/BootMedia/alpha.pm $(LIB_DEST)/BootMedia
- $(SI_INSTALL) -m 644 $(LIB_SRC)/BootMedia/i386.pm $(LIB_DEST)/BootMedia
+# $(SI_INSTALL) -m 644 $(LIB_SRC)/BootMedia/BootMedia.pm $(LIB_DEST)/BootMedia
+# $(SI_INSTALL) -m 644 $(LIB_SRC)/BootMedia/MediaLib.pm $(LIB_DEST)/BootMedia
+# $(SI_INSTALL) -m 644 $(LIB_SRC)/BootMedia/alpha.pm $(LIB_DEST)/BootMedia
+# $(SI_INSTALL) -m 644 $(LIB_SRC)/BootMedia/i386.pm $(LIB_DEST)/BootMedia
mkdir -p $(USR)/share/systemimager/icons
$(SI_INSTALL) -m 644 $(LIB_SRC)/icons/serverinit.gif $(USR)/share/systemimager/icons
$(SI_INSTALL) -m 644 $(LIB_SRC)/icons/serverinst.gif $(USR)/share/systemimager/icons
--
Geoffroy
dann frazier
2007-05-15 17:20:03 UTC
Permalink
Post by Geoffroy Vallée
Hi all,
I had to update the patch for mkbootmedia (10_disable-mkbootmedia.patch). The
new patch is also available in my branch (r63).
merged
Post by Geoffroy Vallée
BTW, what is the problem with
mkbootmedia? I remember that Dann told me we should fix the problem so I wonder
if someone has a description of the problem.
mkbootmedia was my attempt to modularize the creation of boot media in
a generic fashion so that it'd be easy to add new architectures/boot
media types. I don't remember the state I left it in, but I remember
being mostly frustrated simply by the fact I was trying to implement
it in perl in time for an upcoming release deadline and spent more
time fighting the language than actually getting it going. Once I
missed the deadline, I pretty much let the code rot.

Anyway, the idea was to have a single, powerful tool that could be
enhanced to make any kind of boot media for any architecture and was
not tied to systemimager. Then systemimager could either reference it
directly or provide mkautoinstall* wrappers for it that behave just
like the old scripts but use the new infrastructure. I started it
after being frustrated by seeing a lot of code duplication (didn't I
already fix that bug? oh - no, that was in mkautoinstall*diskette*)
and having the per-arch-special case things inside functions that
really should be arch-agnostic. I also wanted to unify the netboot
stuff with the regular media tools so that they looked/felt/behaved
the same.

I'd written an API description at one point - looks like its
doc/media-api.txt. Unless someone is interested in picking up that
code base, its probably best to remove it from svn. fwiw, I was never
happy with the %spec thing and wished I could've taken more advantage
of oo features of the language (and really wished it was implemented
in python, but wanted to avoid the added interpreter dependency at the
time).
--
dann frazier
Andrea Righi
2007-05-16 09:00:29 UTC
Permalink
Post by dann frazier
Anyway, the idea was to have a single, powerful tool that could be
enhanced to make any kind of boot media for any architecture and was
not tied to systemimager. Then systemimager could either reference it
directly or provide mkautoinstall* wrappers for it that behave just
like the old scripts but use the new infrastructure. I started it
after being frustrated by seeing a lot of code duplication (didn't I
already fix that bug? oh - no, that was in mkautoinstall*diskette*)
and having the per-arch-special case things inside functions that
really should be arch-agnostic. I also wanted to unify the netboot
stuff with the regular media tools so that they looked/felt/behaved
the same.
I think this is the right direction, but at the moment si_mkbootmedia is
unmaintained and, it seems, even broken:

# si_mkbootmedia
Global symbol "$boot_image_size" requires explicit package name at /usr/lib/systemimager/perl/BootMedia/i386.pm line 41.
Global symbol "$boot_image_size" requires explicit package name at /usr/lib/systemimager/perl/BootMedia/i386.pm line 47.
Global symbol "$eltorito_path" requires explicit package name at /usr/lib/systemimager/perl/BootMedia/i386.pm line 75.
Global symbol "$eltorito_path" requires explicit package name at /usr/lib/systemimager/perl/BootMedia/i386.pm line 77.
syntax error at /usr/lib/systemimager/perl/BootMedia/i386.pm line 118, near ")
print"
Compilation failed in require at /usr/lib/systemimager/perl/BootMedia/BootMedia.pm line 40.
BEGIN failed--compilation aborted at /usr/lib/systemimager/perl/BootMedia/BootMedia.pm line 40.
Compilation failed in require at /usr/bin/si_mkbootmedia line 39.
BEGIN failed--compilation aborted at /usr/bin/si_mkbootmedia line 39.

I'll try to look at it ASAP to see if it's possible to continue the
development...

BTW:

# si_mkautoinstalldiskette
WARNING: deprecated command!!! use si_mkautoinstalldisk instead.

actually we should simply remove this, now...
Post by dann frazier
I'd written an API description at one point - looks like its
doc/media-api.txt. Unless someone is interested in picking up that
code base, its probably best to remove it from svn. fwiw, I was never
happy with the %spec thing and wished I could've taken more advantage
of oo features of the language (and really wished it was implemented
in python, but wanted to avoid the added interpreter dependency at the
time).
Agree.

Moreover, I wasn't able to follow all the details about the Debian efforts (even
if I hope to be able to contribute soon), but (at least) I'd like to say a
big *thank you* to Dann and Geoffoy. There're a lot of requests for the
Debian/Ubuntu support, so I think this activity is very important for
us...

-Andrea
Geoffroy VALLEE
2007-05-16 14:57:43 UTC
Permalink
Post by Andrea Righi
Moreover, I wasn't able to follow all the details about the Debian efforts
(even if I hope to be able to contribute soon), but (at least) I'd like to
say a big *thank you* to Dann and Geoffoy. There're a lot of requests for
the Debian/Ubuntu support, so I think this activity is very important for
us...
If you are looking for a summary for the Debian effort the current solution is
the following: I am creating the last patches in order to build packages for
systemimager-3.8.0 for Debian Sid x86. Note that the imagemanip and
initrdtemplate packages are still missing but i have somewhere some ugly
patches to fix that; i just need to update them based on Dann's remarks.

After that, my plans are:
- build packages for systemimager-3.8.1
- build packages for x86_64
Note that i do not have preferences regarding these two points, if the
community want to see me working on one of those first, let me know. :-)

And again, thanks to Dann, without him impossible to progress so quickly.
--
Geoff
Loading...