unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Guix as a system vs as an end-user dev tool (re: Building a software toolchain that works)
@ 2022-03-19  0:20 Ryan Prior
  2022-03-19  9:06 ` Liliana Marie Prikler
                   ` (3 more replies)
  0 siblings, 4 replies; 10+ messages in thread
From: Ryan Prior @ 2022-03-19  0:20 UTC (permalink / raw)
  To: Guix Devel

[-- Attachment #1: Type: text/plain, Size: 2098 bytes --]

One side-thread in "Building a software toolchain that works" notes that Guix faces challenges for adoption because it's not readily available to users of proprietary operating systems like macOS and Windows.

I've witnessed over the past decade that GNU/Linux development on other platforms has become widespread, in large part due to the availability of the Docker for Desktop application which packages a lightweight, automagically managed GNU/Linux virtual machine running the Docker daemon with Docker client software built for the target platform.

A user of Docker for Desktop on a proprietary OS can run "docker" commands which transparently execute commands inside a GNU/Linux container, making building and testing software quite convenient and reproducible without needing to set up cross-compile toolchains or spend time managing VM software.

It makes absolute sense to me that Guix is not interested in building a native distribution for the Windows or macOS toolchains. One of Guix System's unique strengths is its adherence to the GNU FSDG and I don't think that's incompatible with making the Guix tools more generally available to end-user devs hacking on software using a proprietary OS.

Technically, I think we could use a similar approach to the Docker for Desktop system: a "Guix for Desktop" installs software to create and manage a minimal Guix System virtual machine which automatically updates and reconfigures itself, requiring no manual administration by the end-user. And it would install a Guix client that connects to the Guix daemon running in the VM using a shared socket, enabling users to incorporate Guix transparently into their workflows.

I think this would be a compromise for certain, the same way it is for Emacs and other GNU flagship projects that run on non-free systems. On the one hand, it serves to make those systems more valuable, which undermines our cause. But on the other hand it provides a major on-ramp to free software and superior build tooling, positively impacting the practical freedoms available to the end-users who adopt Guix.

wdyt?

[-- Attachment #2: Type: text/html, Size: 3209 bytes --]

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

end of thread, other threads:[~2022-03-21 10:35 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-03-19  0:20 Guix as a system vs as an end-user dev tool (re: Building a software toolchain that works) Ryan Prior
2022-03-19  9:06 ` Liliana Marie Prikler
2022-03-19 10:27 ` Jonathan McHugh
2022-03-19 13:21 ` zimoun
2022-03-19 18:18   ` Ryan Prior
2022-03-19 22:57     ` Yasuaki Kudo
2022-03-21 10:26     ` zimoun
2022-03-20  8:04 ` Zhu Zihao
2022-03-20 10:47   ` Josselin Poiret
2022-03-20 15:15   ` Aurora

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

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).