• Status New
  • Percent Complete
  • Task Type Feature Request
  • Category Devops
  • Assigned To No-one
  • Operating System pentium4
  • Severity Low
  • Priority Medium
  • Reported Version
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Arch Linux 32
Opened by Erich Eckner - 08.04.2021
Last edited by Erich Eckner - 08.04.2021

FS#176 - bring back archiso32 dual boot

We should make archiso32 be able to build a i686- and x86_64-bootable iso, again. This is really handy on a usb stick as a rescue system.

The problem with the old dual iso is, that I had to do the i686 iso from scratch, because upstream changed from build.sh to putting everything into mkarchiso. Now, everything is steered from a profile file.

So either, we find a way to make a profile for multiple architectures, or we need to patch mkarchiso to do that for us - and maybe upstream these changes.

bill-auger commented on 30.04.2021 03:53

we should collaborate on this - the new changes to the archiso broke most of the parabola patches too - it is going to be a lot of work to adapt to it - probably, we need to scrap everything and re-implement everything on top of a clean upstream clone

eli has asked me to take notes while doing that, and to make some discrete patches for any changes which would help derivatives like parabola and arch32, and to offer the patches to arch - if arch2 wants to make dual-arch ISOs, then the parabola and arch32 forks would be very similar

Erich Eckner commented on 30.04.2021 05:16

So you say, you're also planning to build dual-architecture isos? This sounds great! Unfortunately, I have no clue, where in mkarchiso to start looking …

OTOH, fortunately, we do not need too elaborate patches for single-architecture boot media: https://git.archlinux32.org/packages/tree/extra/archiso/PKGBUILD https://git.eckner.net/Erich/archlinuxewe/tree/archiso32/PKGBUILD

Thanks for the offer to cooperate on this - can you point me at any part of mkarchiso which looks like a good start?

bill-auger commented on 30.04.2021 06:38

we have been making dual-arch ISOs forever - in fact, my plan
is to stop making them - i dont think that anyone actually
wants them, because they are double the download size -
instead i would rather make separate i686 and x86_64 ISOs -
however, i do want the software to be able to create them, in
case users want to make their own

i cant really point to anything in the newest version - i have
not looked at it deeply yet; but the changes are extensive -
most of the customization logic was in the per-profile build.sh,
which no longer exists - our changes to mkarchiso.sh were
minimal - now all logic has been moved into mkarchiso.sh; and
the mkarchiso.sh was already significantly different than
mkparabolaiso.sh, even before the new config system was
implemented - i could only show you our current build.sh; but im
not sure how much of it can be salvaged as-is

archiso expects that each flavor of ISO has it's own
configuration - each was a directory under profile/ - now it
appears to be a config file - thats fine for a small number of
ISO variants - arch only needs one ISO flavor (the classic CLI
ISO); and until a few years ago, it was hard-coded to build a
dual-arch ISO - i had modified build.sh extensively, to allow a
single profile (with a single build.sh) to create any flavor of
ISO (any combination of arch, WM/DE, init-system, offline-cache,
and TTS/braille capability), simply by passing different
command-line options to it - that made the most sense to me;
because otherwise, there would need to be a separate profile for
each possible combination (48 IIRC), and each profile would be a
99% identical copy of the others

that work is on the parabolaiso 'unified' git branch - the
parabolaiso 'master' branch is closer to what the original
archiso was, before arch dropped i686 support (special but
mostly redundant configs for each ISO) - megver builds the
openrc ISOs from it, and has been rebasing it routinely onto
the latest archiso

the code on the parabolaiso 'master' branch, would be the
simplest way to build dual-arch ISOs for arch32; but it has the
limitation, that it can _only_ build dual-arch ISOs - i do not
use that code; because people want the smaller single-arch
downloads - megver is more of a purist - he likes to stay as
close as possible to what arch does; so he prefers the original
codebase - but arch does not make dual-arch ISOs anymore; so
thats one area where it is not possible to do as arch does -
whatever the final result, i want to preserve (somehow) the
versatility that i implemented


im not sure yet how to reconcile the new schema with such a
large potential build matrix - the paraboliso we have now works
perfectly; which is why this has been low priority - i would
like to try though eventually

tallero commented on 28.12.2021 11:50

I am using vanilla archiso to build a bootable live system.

tallero commented on 28.12.2021 11:51

*dual arch live system


Available keyboard shortcuts


Task Details

Task Editing