<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.nixos.org/w/index.php?action=history&amp;feed=atom&amp;title=User%3ADanbst%2FIdeas_in_Limbo</id>
	<title>User:Danbst/Ideas in Limbo - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.nixos.org/w/index.php?action=history&amp;feed=atom&amp;title=User%3ADanbst%2FIdeas_in_Limbo"/>
	<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=User:Danbst/Ideas_in_Limbo&amp;action=history"/>
	<updated>2026-05-12T02:26:49Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.0</generator>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=User:Danbst/Ideas_in_Limbo&amp;diff=6344&amp;oldid=prev</id>
		<title>imported&gt;Danbst at 10:21, 13 January 2019</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=User:Danbst/Ideas_in_Limbo&amp;diff=6344&amp;oldid=prev"/>
		<updated>2019-01-13T10:21:01Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 10:21, 13 January 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l13&quot;&gt;Line 13:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 13:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;: A monumental, original SAL proposal. Abstracted over Docker, systemd and supervisord. But not without problems and abstraction leaks. edolstra rejected it in-fact (or rather, didn&amp;#039;t support), and PR author burned out on this idea.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;: A monumental, original SAL proposal. Abstracted over Docker, systemd and supervisord. But not without problems and abstraction leaks. edolstra rejected it in-fact (or rather, didn&amp;#039;t support), and PR author burned out on this idea.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;: &amp;lt;blockquote&amp;gt;I&amp;#039;m closing this pull request, as after two years of dealing with docker, kubernetes and other containarized environments, i have much better idea how nix-services should be designed. ... This work is from my perspecitve obsolete.&amp;lt;/blockquote&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;: &amp;lt;blockquote&amp;gt;I&amp;#039;m closing this pull request, as after two years of dealing with docker, kubernetes and other containarized environments, i have much better idea how nix-services should be designed. ... This work is from my perspecitve obsolete.&amp;lt;/blockquote&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;; [https://github.com/NixOS/nixpkgs/issues/22067 Develop a universal web service definition]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;: Another idea about finding greatest common factor, this time for web services (nginx, httpd, etc).&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Multiple services of one type ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Multiple services of one type ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key mediawiki:diff:1.41:old-6343:rev-6344:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>imported&gt;Danbst</name></author>
	</entry>
	<entry>
		<id>https://wiki.nixos.org/w/index.php?title=User:Danbst/Ideas_in_Limbo&amp;diff=6343&amp;oldid=prev</id>
		<title>imported&gt;Danbst: Created page with &quot;NixOS unified lots of different people, by providing a new, pretty much declarative way to configure system. It spawned lots of ideas, some of which were implemented, but most...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.nixos.org/w/index.php?title=User:Danbst/Ideas_in_Limbo&amp;diff=6343&amp;oldid=prev"/>
		<updated>2019-01-11T22:54:27Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;NixOS unified lots of different people, by providing a new, pretty much declarative way to configure system. It spawned lots of ideas, some of which were implemented, but most...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;NixOS unified lots of different people, by providing a new, pretty much declarative way to configure system. It spawned lots of ideas, some of which were implemented, but most did stagnate or reverted in opinionated fashion. Here&amp;#039;s going to be the list of such ideas, like an overview of ideas not landed to NixOS.&lt;br /&gt;
&lt;br /&gt;
=== Service Abstraction Layer (SAL) ===&lt;br /&gt;
Why should NixOS run &amp;quot;services&amp;quot; only via systemd? Or rather, why stick to one specific implementation for such an abstract thing as &amp;quot;service&amp;quot;? Can we use same service set for Linux and MacOS? Such questions drives lots of people to explore new abstraction primitives.&lt;br /&gt;
&lt;br /&gt;
; [https://github.com/NixOS/nixpkgs/pull/26075 PR: One way to do other types of services] by copumpkin&lt;br /&gt;
: This abstraction tries to use same launcher script in systemd ExecStart, Docker container and as executable script. No attempt to generalize systemd service parameters&lt;br /&gt;
&lt;br /&gt;
; [https://github.com/NixOS/nixpkgs/issues/26067 Make a service abstraction layer] by copumpkin&lt;br /&gt;
: This is driving issue for previous linked PR. It is a nice place to start, because edolstra provides constructive opposition to whole SAL idea. Should SAL support socket activation? Should we find Greatest Common Factor of service supervisors? Will it remove work for NixOS maintainers or add more? Is NixOS module system even good enough for SAL?&lt;br /&gt;
&lt;br /&gt;
; [https://github.com/NixOS/nixpkgs/pull/5246 PR: Create service abstraction layer (proposal, prototype)] by offlinehacker&lt;br /&gt;
: A monumental, original SAL proposal. Abstracted over Docker, systemd and supervisord. But not without problems and abstraction leaks. edolstra rejected it in-fact (or rather, didn&amp;#039;t support), and PR author burned out on this idea.&lt;br /&gt;
: &amp;lt;blockquote&amp;gt;I&amp;#039;m closing this pull request, as after two years of dealing with docker, kubernetes and other containarized environments, i have much better idea how nix-services should be designed. ... This work is from my perspecitve obsolete.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Multiple services of one type ===&lt;br /&gt;
You can start several service instances on a machine. For example, 2 postgresql services, 3 sshd servers and so on. All you have to do is specify different port and statefile in different configs before launching. Why then NixOS forces us to have one instance of service of a particular type?&lt;br /&gt;
&lt;br /&gt;
; [https://github.com/NixOS/nixpkgs/pull/5246#issuecomment-66937118 comment: my idea is...] by lethalman&lt;br /&gt;
: This originated from SAL PR.&amp;lt;blockquote&amp;gt;My idea of multi instances is to have multiple instances of the service :P Instead of e.g. one nginx httpd, you can define multiple nginx httpd using different versions for example. E.g. pgsql 9.3 and pgsql 9.4.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; [https://github.com/NixOS/nixpkgs/issues/6784 PR: Problem attempting to mkMultiInstance] by lethalman&lt;br /&gt;
: Continue of previous thought. Has backward compatibility. Multiple services should be defined like this:&lt;br /&gt;
{{file|example.nix|nix|&amp;lt;nowiki&amp;gt;&lt;br /&gt;
  services.nginx = {&lt;br /&gt;
    enable = true;&lt;br /&gt;
&lt;br /&gt;
    instances.foo = {&lt;br /&gt;
      enable = true;&lt;br /&gt;
    };&lt;br /&gt;
  };&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;}}&lt;br /&gt;
: This was closed with words &amp;quot;Why not use multiple instances of declarative containers when you want multiple instances of a service?&amp;quot;&lt;br /&gt;
&lt;br /&gt;
; [https://github.com/ip1981/nixsap external: nixsap] by ip1981&lt;br /&gt;
: The most advanced and likely not dead approach at multiple instances. As an extension to NixOS, you can use multiple services alongside NixOS original ones. Drawback is that its service configuration is different from NixOS one, and thus, not many services are available.&lt;/div&gt;</summary>
		<author><name>imported&gt;Danbst</name></author>
	</entry>
</feed>