Calling for Advice. Setup/Toolbox/Podman?

Good day,

Recently I ended up with some sort of mess in my test ground box, Bare Metal Haiku. While this BMH is for testing things, trying to develop some stuff, and I don’t mind that much to do a clean install again now and then (Haiku installs quite fast), I certainly did enjoy Fedora’s Toolbox approach, which is, if I understand correctly, some sort of containerized system within the system, isolated from the main OS, based on podman.

Inside the Toolbox I could install anything, mess anything, and when things got messy, just remove the toolbox, create a new one and start again anew. All this without messing the base OS.

So two questions arise:

1- Is it possible to have such thing (toolbox/podman style thing) on Haiku?

2- How can I set things in my test BMH so I can do testing without messing with the OS and not using VM?

Thanks in advance.
Regards,
RR

Well idk what Fedora’s Toolbox or Podman are, but from reading what you want Haiku to do, I think this is related to what I’m trying to solve myself Can Haiku boot from itself (i.e. it’s own image)? and with everything else I’ve been working on, I haven’t had time to mess with it beyond what I did. But I plan to get to it in a few weeks for fun, and see if it works… from what I read it sounds like Haiku doesn’t have imaged environments.

I guess what Haiku does have is the ability to go back to another system state from its boot menu, so its possible to revert from installed packages.

But beyond that, yeah, being able to switch between different instances is missing and as a nerd that has fun with different systems, this really useful feature is missing in Haiku and it feels like me going outside with no socks or shoes on, it’s weird for sure not having it :frowning:

1 Like

Haiku does yet have any of the containerization primitives that Linux has which make things like podman, Toolbox or Docker possible. It might be useful to consider adding these things, but maybe not, and it would not happen until after an R1 release. A better approach which will help running other OSes better as well is accelerated virtualization support, which I’ve mentioned on these forums a lot. That would allow running Haiku (or other operating systems) in virtual machines with some decent performance.

Though with all the said the way Haiku packages work makes experimenting more low risk and it kind of feels like you can have the same approach where you can try something risky and still go back to your previous system. If you have particularly risky things to test, like changes to BFS, it might make sense to work off image files, or have separate partitions which you don’t mind formatting if needed.

3 Likes

What are you afraid of messing up? As the complete OS is in package files, it is quite hard to break it.

We have some support for doing chroots, which I think would fit your needs, but currently, it is only really used by haikuports. Probably the relevant parts of haikuports could be extracted to build a simpler “sandbox” tool to do this? I don’t think anyone has tried this yet?

1 Like

Good day @PulkoMandy,

Not afraid. Just like things to be clean and tidy to a certain degree… :wink:

Having some sort of sandboxed environment where I can install software for testing without polluting the production OS would be a nice feature that I would be happy to have. “That option just seems logical, Captain Kirk”. :sweat_smile:

As I still have plenty to learn about Haiku, having a sandboxed Haiku that I can mess with would keep my base Haiku clean without needing to worry about this or that app, hpkg, lib, whatever added to the OS that in the end I won’t use, and without needing to do a clean install now and then. No idea on how to do it, though. Just thinking aloud. :thinking:

Regards,
RR

One think that get messed up and are growing on eatch installation (also installing/deinstalling apps). I’m switching/installing between two installation, one are always backup for the other. I have done so long before packages came to Haiku.

Now how about a clean up option in settings (now that there are settings in system and Home)

Good day,

I would like to run Haiku inside Haiku for “development”/testing purposes in a way that the main system isn’t modified. Using QEMU on Haiku to run Haiku inside Virtual Machines is damn slow, and I constantly get locks of QEMU that make any task tedious, long, and makes me feel that I have some kind of hand motion disease.

Running Haiku in a container at the moment is not possible afaik. I’m thinking about the podman/toolbox approach used by Fedora on the Silverblues.

Is there any way in which I could run a “Haiku Session” inside a folder, where I could use pkgman to install packages just for use inside the “session”, and when the session is removed, no trace of those packages is left on the base system? And be able to have different “Sessions” for different uses.

Any insight on how to do that would be sincerely appreciated.

Regards,
RR

Something like chrooting?

Install Virtual?

  • Create a base install
  • Clone the base install (2x)
  • Use first clone to build
  • Use second clone to test

Good day,

@cafeina, never used chroot, and have no idea on how to use it. Need to do some research on that topic.

@Begasus , Virtual? haven’t found that on HaikuDepot, at least not on 64bit. Am I missing something here? :thinking:

Regards,
RR

RR Virtual as in VirtualBox etc …

Apologies. I had already asked about this a while ago in this topic:

So it’s a duplicate.
Sorry about that.

Regards,
RR

HaikuPorter does something similar, but i dont think invoking pkgman in a HaikuPorts shell is supported.

One could modify HP to be able to spawn in a folder and do everything you need.

But you can manually mount hpkgs into a folder and chroot into it.

:rofl:
Well, well, well… I need a reboot. :rofl:

Nonetheless, my goal is to run a Haiku “session” within Haiku on bare metal, so I get metal performance instead of virtual performance. With few time to do things, if I have to wait for VM cycles I can grow 1 meter eyebrows while waiting :rofl:.

@extrowerk , will take a look at that too, as well as chroot.

Thanks all for your replies. Let’s see if finally I can get something working.

Regards,
RR

It works well for me :stuck_out_tongue:

Good day,

To the forum managers, if it makes any sense, could it be possible to merge this thread with this one:
https://discuss.haiku-os.org/t/calling-for-advice-setup-toolbox-podman/

In order to avoid duplication.

Regards,
RR

OK, I moved it to this existing topic.

1 Like

After R1 you have a working Haiku DESKTOP that works.

I would corious if was there a discussion about WORKSTATION or SERVER grade type of Haiku that contains Legacy 32bit Haiku as a virtualized but seamless service of R2 ?

I would like to have both New (64bit) and Legacy (32bit) Haiku together on a partitioned PC hardware (multicore PC, multi NICs, 64 GB to 1 or 2 TB RAM with OS virtualization capabilities - even with preconfigured quemu and images of choice from different platforms (PPC, RisC-V, ARM).

That way the developing environment just created pre-built.

R2 would be this way too - for example …>

"For R2 we prepared a Special Edition to celebrate Haiku !

NOW

Get all our available Haikus in one Book –

Haiku R2 - Book of ALL our supported Haikus

The MULTI PLATFORM SPECIAL EDITION

64 bit host - with downloadable 32 bit and 64 bit pre-built guests images
purposely developer and genaral ones.

No need to download & install Haiku’s any platform editions separately
only that fits your hardware – all other platforms available virtualized for you
if you have an all capable Workstation or Server grade machine.

Like AIX LPARrs or XEN - but rather help with native Haiku QUEMU plus differen prebuilt and downloadable Haiku Images !

Try out Haiku on PPC, Risc-V, PA-Risc or ARM/ARM64 platforms before you bought any affected bare metal for them.

Haiku R2 requres multicore PC with Workstation and or Server grade machine :

32-64 cores* and above
64 GB-2.00 TB RAM*
Multi* ethernet ports

  • These are required to be able to partitioned your Haiku machine as much as you like.

Meet on this exciting journey of all platform Haiku ! "

You want native OS virtualization within Haiku so it’s in kernel on 64 bit kernel.
Let’s imagine together :
if you would get such capabilities in a further nightly image … do you have multicore PC with well enough RAM and separated hard disks not partitions - on different storage adapters and NICs to have all virtual Haiku configured a private hw device for functioning - against time sharing access ?

As you previously told that quemu within Haiku works slow - we can think that you may hve not enough strong hw to do this.
You need a workstation PC server grade machine to play with virtual Haiku images.

However on Linux with quemu and libvirt - I had not configured but the support team in USA - I was very satisfied on a Thinkpad 430 laptop with i5 or i7 quad core processor with HT and maybe 8 GB RAM. However I just run multi tabbed Mozilla, Notes and some putty (max 10-12 together in it ) and a different browser to reach tools if required to get separately due to customer environment and one for private use sometimes remote desktop X gui for installs reach windows servers or get access to customer machines in customers environment.
All of these reponse time was quite acceptable - especcially when I added plus 8 GB.

I do not know how much resource the developing requires when editing files, but I can think / imagine only compiling and debugging can require massive resources in the developing of Apps or OS.

Haiku is first and foremost, a desktop operating system. Haiku for workstations might still be within that scope, but for use in servers is beyond that.

2 Likes