<story><title>Nix-GUI: Make NixOS usable for non-technical users through settings / GUI</title><url>https://github.com/nix-gui/nix-gui</url></story><parent_chain></parent_chain><comment><author>suchar</author><text>I think NixOS would benefit from easily accessible collection of opinionated modules&amp;#x2F;profiles&amp;#x2F;configurations with minimal set of options. Something like gnome-desktop &amp;#x2F; sway-desktop &amp;#x2F; etc. Gnome actually does pretty good job here.&lt;p&gt;The point is: currently my NixOS and Home Manager configurations have over 2k LOC total. When you search for configurations on GitHub&amp;#x2F;Google you are likely to find complex ones. For example, quick search for &amp;quot;nixos gnome&amp;quot; (Google) gives me link to NixOS Wiki (which describes only Gnome part) and blog post (&lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;gvolpe.com&amp;#x2F;blog&amp;#x2F;gnome3-on-nixos&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;gvolpe.com&amp;#x2F;blog&amp;#x2F;gnome3-on-nixos&amp;#x2F;&lt;/a&gt;) which is useful but links to really huge configuration (&lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;gvolpe&amp;#x2F;nix-config&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;gvolpe&amp;#x2F;nix-config&lt;/a&gt;) that is overwhelming to any beginner.&lt;p&gt;Great example of such approach is nixos-hardware (&lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;NixOS&amp;#x2F;nixos-hardware&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;NixOS&amp;#x2F;nixos-hardware&lt;/a&gt;) which provides one-line configuration covering hardware quirks.</text></comment>
<story><title>Nix-GUI: Make NixOS usable for non-technical users through settings / GUI</title><url>https://github.com/nix-gui/nix-gui</url></story><parent_chain></parent_chain><comment><author>xyzzy_plugh</author><text>A lot of odd Nix hate in here, or at least extreme dislike.&lt;p&gt;NixOS is so very usable. There are a lot of foot-guns but that&amp;#x27;s true of Linux systems.&lt;p&gt;It takes some time to get comfortable with all the different ways to configure stuff. There&amp;#x27;s a new language, a new build system, a new Linux distribution.&lt;p&gt;I&amp;#x27;ve spent very little time relative to say, figuring out dpkg or systemd, or learning Bash or C or Perl, or learning the Linux FHS.&lt;p&gt;NixOS makes running deterministic systems driven from a single configuration incredibly easy.&lt;p&gt;Nix the language and tools allow you to build software deterministically and create environments where that software is available (e.g. on $PATH).&lt;p&gt;Nix Flakes is an experimental feature aimed at bringing reproducible and hermetic configurations of dependencies into the fold (i.e. lock files, ala Gem or Cargo or Go Modules).&lt;p&gt;Nix-the-tool&amp;#x27;s interactive &amp;quot;package manager&amp;quot; should be deprecated, as it&amp;#x27;s a huge pitfall for most developers. But it works and is frankly a good first step for folks coming from Apt or Homebrew.&lt;p&gt;Learning to write modules is probably the steepest learning curve, but compared to learning how to build RPMs or Dpkg or Brew recipes, it&amp;#x27;s really not bad at all. I actually find it &lt;i&gt;easier&lt;/i&gt; and I&amp;#x27;ve been at this for less than a year. Sure, if you&amp;#x27;re trying to get something working no one has figured out yet you may be in for a pickle, but that feels like it&amp;#x27;s always been true. The difference is a lot of software breaks and bends the rules and boundaries constructed to keep things and people sane. Nix does not allow that, generally, which is a very good thing. Fixing other people&amp;#x27;s garbage is the bane of any package system maintainer, it&amp;#x27;s no different here.</text></comment>