<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.abuissa.net/index.php?action=history&amp;feed=atom&amp;title=Thinkpiece%3A_alternative_config_option_over_%2Fetc%2F...%2F50-config.conf</id>
	<title>Thinkpiece: alternative config option over /etc/.../50-config.conf - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.abuissa.net/index.php?action=history&amp;feed=atom&amp;title=Thinkpiece%3A_alternative_config_option_over_%2Fetc%2F...%2F50-config.conf"/>
	<link rel="alternate" type="text/html" href="https://wiki.abuissa.net/index.php?title=Thinkpiece:_alternative_config_option_over_/etc/.../50-config.conf&amp;action=history"/>
	<updated>2026-04-07T00:42:36Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.13</generator>
	<entry>
		<id>https://wiki.abuissa.net/index.php?title=Thinkpiece:_alternative_config_option_over_/etc/.../50-config.conf&amp;diff=50&amp;oldid=prev</id>
		<title>Razzi: /* See also */</title>
		<link rel="alternate" type="text/html" href="https://wiki.abuissa.net/index.php?title=Thinkpiece:_alternative_config_option_over_/etc/.../50-config.conf&amp;diff=50&amp;oldid=prev"/>
		<updated>2021-12-03T23:53:01Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;See also&lt;/span&gt;&lt;/span&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 18:53, 3 December 2021&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 30:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 30:&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;== See also ==&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;== See also ==&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; 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: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;https://unix.stackexchange.com/a/570782/124123&lt;/div&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;https://unix.stackexchange.com/a/570782/124123&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty 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;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&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: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[How to make apt install without prompt via config]]&lt;/div&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;[[How to make apt install without prompt via config]]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;

&lt;!-- diff cache key mediawiki:diff:wikidiff2:1.12:old-49:rev-50:1.13.0 --&gt;
&lt;/table&gt;</summary>
		<author><name>Razzi</name></author>
	</entry>
	<entry>
		<id>https://wiki.abuissa.net/index.php?title=Thinkpiece:_alternative_config_option_over_/etc/.../50-config.conf&amp;diff=49&amp;oldid=prev</id>
		<title>Razzi: Created page with &quot;&lt;pre&gt; root@7c32f54356fc:/# tree /etc/apt/apt.conf.d/ /etc/apt/apt.conf.d/ |-- 01autoremove |-- 70debconf |-- 99-yes-install.conf |-- docker-autoremove-suggests |-- docker-clea...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.abuissa.net/index.php?title=Thinkpiece:_alternative_config_option_over_/etc/.../50-config.conf&amp;diff=49&amp;oldid=prev"/>
		<updated>2021-12-03T23:52:37Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;&amp;lt;pre&amp;gt; root@7c32f54356fc:/# tree /etc/apt/apt.conf.d/ /etc/apt/apt.conf.d/ |-- 01autoremove |-- 70debconf |-- 99-yes-install.conf |-- docker-autoremove-suggests |-- docker-clea...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
root@7c32f54356fc:/# tree /etc/apt/apt.conf.d/&lt;br /&gt;
/etc/apt/apt.conf.d/&lt;br /&gt;
|-- 01autoremove&lt;br /&gt;
|-- 70debconf&lt;br /&gt;
|-- 99-yes-install.conf&lt;br /&gt;
|-- docker-autoremove-suggests&lt;br /&gt;
|-- docker-clean&lt;br /&gt;
|-- docker-gzip-indexes&lt;br /&gt;
`-- docker-no-languages&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== What is going on in &amp;lt;code&amp;gt;.conf.d&amp;lt;/code&amp;gt; directories ==&lt;br /&gt;
&lt;br /&gt;
* packages have configuration&lt;br /&gt;
* configuration lives in directories &lt;br /&gt;
* directories are maps of filenames to file contents; filenames can have a priority number (99-something.conf overwrites 50-something.conf). &lt;br /&gt;
* file contents are arrays of lines &lt;br /&gt;
* lines are key:value pairs &lt;br /&gt;
* multiple lines can contain the same config value; the later ones overwrite the earlier ones. &lt;br /&gt;
&lt;br /&gt;
Basically the entire configuration, spanning the whole file system, can be reduced to a single json object. A package could force users to configure it in a single json object (and some do), but writing json by hand has ergonomic issues, and multiple packages might want to write config, and they may conflict. Who wins is undecidable from the packages&amp;#039; point of view, but the config should at least be consistent for a given filesystem state.&lt;br /&gt;
&lt;br /&gt;
== Issues ==&lt;br /&gt;
&lt;br /&gt;
99-filename.conf looks strange, and invites potentially unnecessary user decisions on how to name their configuration options, rather than one opinionated standard. The basic problem is how to have individual array elements assert their position.&lt;br /&gt;
&lt;br /&gt;
I suppose it would work fine to just say &amp;quot;it&amp;#039;s alphabetical&amp;quot; and let files name themselves 000000-MEFIRST.conf if they really care or &amp;lt;some gnarly unicode character&amp;gt;-MELAST.conf if they care. But most config can just be something like /etc/apt/apt.conf.d/config.conf. A lot of redundancy but at least it&amp;#039;s only communicating 2 concepts: &amp;quot;I am config&amp;quot; and &amp;quot;the config is for apt&amp;quot;. I think I&amp;#039;ll do that.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
https://unix.stackexchange.com/a/570782/124123&lt;br /&gt;
[[How to make apt install without prompt via config]]&lt;/div&gt;</summary>
		<author><name>Razzi</name></author>
	</entry>
</feed>