Skip to Content.
Sympa Menu

sm-discuss - Re: [SM-Discuss] Return of the ISO

sm-discuss AT lists.ibiblio.org

Subject: Public SourceMage Discussion List

List archive

Chronological Thread  
  • From: David Kowis <dkowis AT shlrm.org>
  • To: sm-discuss AT lists.ibiblio.org
  • Subject: Re: [SM-Discuss] Return of the ISO
  • Date: Fri, 25 Dec 2015 12:00:24 -0600

Well done! I'm glad to hear that there's new a new ISO. Building an HTTP
interface sounds like a very interesting prospect.

Thanks a whole lot for this work, I really appreciate it.

On 12/24/2015 06:32 PM, flux AT sourcemage.org wrote:
> A long time in the making...
>
> tl;dr New iso, it's certified crap but has lots of new features/changes,
> please test it
>
> While not ready for a "general" release (i.e., this release is _not_
> intended for general public consumption), the new iso is finally at a
> stage where it can start being tested by Source Mage _developers_ (i.e.,
> people who know what they're doing within our ecosystem, and have likely
> experienced previous iso installs). At present, only a release for
> x86_64 is available, but x86 will follow soon, and hopefully later on
> releases for "new" architectures such as ARM, MIPS, and so on.
>
> The new iso was made entirely using the new cauldron command and
> framework. The builds are now repeatable, minus a few small exceptions
> for specific spells (several have fixes in the grimoire, but they
> haven't yet propagated to a stable grimoire release -- I always base iso
> "releases" on stable grimoire and stable sorcery releases only). There
> is also *much* greater flexibility in specifying how the isos are to be
> produced. I'll delve into the cauldron features later, as those will be
> more interesting when one wants to create a new iso of their own. From
> now, I will focus on the features of enchantment, the new installer
> framework, and the "updates" on the iso itself.
>
> The new installer framework provides a single, consistent API for
> different installer front-ends, which are called enchanters. Currently,
> only the shell enchanter (visually and functionally similar to the 0.10
> iso series installer) is implemented, but implementing a menu-based
> enchanter (using dialog) as well as a web-based (html) enchanter are in
> the TODO list (and others can be requested/submitted). The shell
> enchanter has been implemented as a single command, with all separate
> install functionality provided as subcommands (e.g., enchantment
> isokernel to install the kernel used in the iso runtime), but shell
> aliases are provided as shortcuts (as described in the enchanter's
> welcome screen and interface). As the enchanters are just front-ends to
> the enchantment "library" backend, the functionality of the enchanters
> can be controlled via the interfaces to the backend. The end-user now
> has great control through manipulation of environment variables. All
> environment variables are provided with default settings, loaded from a
> centralized set of config files (under /etc/enchantment/). Everything
> can be overridden either by editing a config file, or by setting the
> appropriate environment variable in the running shell. Such environment
> variables include settings for where to install to, where to pull the
> list of spells to install from, desired kernel version, and more. A full
> list of the environment variables, as well as all recognized enchanter
> commands, can be found in the enchantment.8 manpage (man enchantment).
>
> In addition to the changes in the installer interface, there are various
> changes to the iso runtime itself. The present iso developer preview
> release has a 4.1.14 kernel, with modules for nearly every network
> hardware device you might possibly use, as well as supporting various
> filesystems, etc. There is also full support for net functionality in
> userspace via wpa_supplicant, ping, etc. Do note, however, that this
> experimental release uses busybox to provide as much of the userspace
> functionality as possible, so some commands or command flags/arguments
> may differ from what you are used to. Which commands can/should be
> provided by busybox, and which should not, is still an area of
> experimentation and will likely be tweaked for future releases.
> Currently, man pages and other docs (/usr/share/doc) are included in the
> iso for all spells that provide them.
>
> Another big change in the iso, and this is in part due to having a newer
> kernel which supports newer filesystems, is the use of an overlayfs.
> This allows for having a read-only iso9660 filesystem as a base, but
> then being able to modify or create files directly over top of that base
> during runtime. This removes the need for having tmpfs hacks via /tmp,
> as well as the need for non-standard, non-mainline, or just slow union
> filesystems.
>
> The basesystem chroot tarball included in the iso is also different. It
> is now compressed with xz (as is the iso itself), and comes in at around
> 57 MB, but it's smallness is also due to being more minimal than it was
> previously. Both the iso runtime and the system tarball are produced
> completely from scratch, only providing +exactly* those files that are
> installed by the spells included in them (this has even caught some
> subtle bugs in our grimoire that have been around for a long time), and
> the system tarball includes only those spells that are exactly needed
> for compiling code via a C/C++ compiler. Not even a linux kernel or its
> sources/headers are included in the system tarball (the sources are in
> the iso runtime, or you can provide your own), so you would likely need
> to install those first before building as several spells do rely on
> having kernel headers in /usr/include in order to build.
>
> For booting, the iso uses a more modern syslinux environment, complete
> with a background image and a menu interface. It is quite easy to adapt
> the isolinux config to boot the iso content from a usb key (using
> syslinux from vfat or extlinux from an ext-formatted partition with the
> same config file, just given a different name), and syslinux is also
> capable of booting from (U)EFI machines in addition to traditional BIOS.
>
> Finally, the new iso now uses an initramfs rather than an initrd,
> meaning it is much easier to change it and mess about with it, and it
> also loads a little faster. The init script in the initramfs has also
> received a major overhaul, though work on it is still ongoing, and it
> can now present a basic menu for advanced boot options in case a proper
> boot setup can't be autodetected. You can also specify directly whether
> to attempt to boot from a removable optical medium (cdrom, dvd, bluray)
> or attempt to find an attached usb disk (usb external hard-disk, usb
> key), forego autodetection and load the initramfs menu, or go directly
> into a shell in the initramfs by specifying an appropriate kernel boot
> option in the bootloader (bootcd, bootusb, bootmenu, or bootshell).
>
> There are many improvements in the pipeline already for both cauldron
> (which I'll talk more about later) and enchantment. I have a TODO list
> in my local git repo that I can share if there is enough interest.
> Otherwise I'll just implement items off it as I can and you'll find out
> about them in future releases.
>
> Please help with the further development of the iso (more specifically,
> the cauldron and enchantment components used in making the isos) by
> testing them on different hardware and also testing various combinations
> of configuration options and commands.
>
>
>
> _______________________________________________
> SM-Discuss mailing list
> SM-Discuss AT lists.ibiblio.org
> http://lists.ibiblio.org/mailman/listinfo/sm-discuss
>

Attachment: signature.asc
Description: OpenPGP digital signature




Archive powered by MHonArc 2.6.24.

Top of Page