unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
* GuixSD install, bootable on multiple architectures
@ 2018-10-02  4:41 Nathan Dehnel
  2018-10-04 11:31 ` Ludovic Courtès
  0 siblings, 1 reply; 2+ messages in thread
From: Nathan Dehnel @ 2018-10-02  4:41 UTC (permalink / raw)
  To: help-guix

I had an idea for an operating system that is portable across CPU
architectures.

You would have a set of bootloaders for each architecture (let's say,
x86 and PowerPC). The x86 bootloader would be stored in the EFI
partition, and the PowerPC bootloader would be stored in the
OpenFirmware partition. (These could all be GRUB2, or whatever). The
bootloader would be configured to load the appropriate kernel.

You would have a set of Linux kernels stored in /boot, one compiled
for each architecture. Let's say the x86 bootloader loads the x86
kernel. Then the x86 kernel loads the appropriate x86-compiled init.
(This could be done by setting the init= kernel option, for example).

The init system loads the guix daemon, which is used from then on to
load the correct programs for the running system.

One copy of each application would be installed in /gnu/store for each
architecture keyworded (to use Gentoo termiology) by the package
manager. The appropriate application for the current CPU would be
linked to the typical location on the filesystem hierarchy (/bin/cp,
/bin/cat, etc.) by the guix daemon.

This would for example allow you to install GuixSD for x86, then, by
setting an option in your package manager, install a set of PowerPC
packages in parallel, and then put your drive in a PowerPC machine and
it would boot.

Is this theoretically possible to implement?

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: GuixSD install, bootable on multiple architectures
  2018-10-02  4:41 GuixSD install, bootable on multiple architectures Nathan Dehnel
@ 2018-10-04 11:31 ` Ludovic Courtès
  0 siblings, 0 replies; 2+ messages in thread
From: Ludovic Courtès @ 2018-10-04 11:31 UTC (permalink / raw)
  To: Nathan Dehnel; +Cc: help-guix

Hello,

Nathan Dehnel <ncdehnel@gmail.com> skribis:

> I had an idea for an operating system that is portable across CPU
> architectures.

[...]

> This would for example allow you to install GuixSD for x86, then, by
> setting an option in your package manager, install a set of PowerPC
> packages in parallel, and then put your drive in a PowerPC machine and
> it would boot.
>
> Is this theoretically possible to implement?

Yes.  You could use the ‘--system’ switch of these commands and if
needed, you could use the ‘qemu-binfmt’ service on GuixSD to allow
building for different architectures via QEMU.

That said, the example you gave above seems a bit far-fetched to me.  :-)

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2018-10-04 11:33 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-02  4:41 GuixSD install, bootable on multiple architectures Nathan Dehnel
2018-10-04 11:31 ` Ludovic Courtès

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).