Command Line Story for Gnome OS

I read the blog post about making Gnome OS general purpose and got really excited. I’m a fan and daily user of Gnome, and I’m genuinely intrigued by immutable distros (currently experimenting with Silverblue). Furthermore, I also really like Poettering’s vision of “putting everything together” that is also linked in the post.

From my understanding, the distro would not have a package manager apart from flatpak. To me, the question is: How would you install command line tools or things like programming language interpreters or compilers? From the blog post, the focus is not the developers, but maybe it still makes sense to offer an option here.

Silverblue, for example, goes the route of putting all these things in containers via podman, and a higher level abstraction toolbx. I think it would make sense to include podman and either toolbx or distrobox. That would free the project of thinking about package management, and still provide access to all packages for those that need it.

PS: I’m happy to help with the project :slight_smile: I’m a professional web developer and tech book author. So I can help with both website tasks and documentation. But I’m also happy to help out in other areas.

Some time ago I tried and didn’t find out a way how to use tools like ping with flatpak. So “apart from flatpak” became “flatpak beside with a system package manager” in my use case. Probably there’s a way to utilize some linux-cap alternatives for ping now, but not sure.

I imagine you would need to use toolbx? The OS itself is immutable, so you certainly won’t be able to install stuff on the host system.

2 Likes

Though that is not the end story, for how we want to distribute cross-distro tools, we do have some tools already in GNOME OS. Because we need developers to be able to use GNOME OS also for what they need to do outside of GNOME. So now we have:

  • podman, toolbox, distrobox (on the development layer)
  • libvirtd, qemu (on the development layer as well)
  • snapd (on its own layer, on which you can install things like lxd or multipass)

And of course there is systemd-nspawn.

I am surprised that people still need to use ping. If you have a good use case for that, and you use GNOME OS, we will add it. It is built. Just not shipped in the final image.

2 Likes

yes, I still use ping to ping hosts. It was a note linked to flatpak only, suppose there’s no need in it globally, on GnomeOS ping is buildable with its present devel tools and kept in user home directory in my use.

Er, what do you use when you want to send a ping?

I’m wondering if David is referring to the fact that a lot of setups people turn off ICMP in their networking stack so you don’t use ping anymore but some kind of REST api to detect whether a service is working. Maybe the work of our new cloud native world?

Is that even possible to disable icmp in linux network stack? (Suppose it’s about firewalling or something like that)

Hi,

Can you please teach me how aviable develooment layer?

I try this tutorial put no working for me:

I believe the path /usr/lib/sysregistry.d/40-gnomeos-devel.conf is wrong.

I suppos the correct path is: /usr/lib/sysupdate.d/40-gnomeos-devel.transfer

Sorry for my bad english.

Can you correct me if I’m wrong please?

I’ve updated that page. It’s much simpler now.

1 Like

Oh man this is fantastic :partying_face: :partying_face: :partying_face: :partying_face:

Thank you so much @akitouni