<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.finkproject.org/index.php?action=history&amp;feed=atom&amp;title=Fink%3APolicy%3ATrees</id>
	<title>Fink:Policy:Trees - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.finkproject.org/index.php?action=history&amp;feed=atom&amp;title=Fink%3APolicy%3ATrees"/>
	<link rel="alternate" type="text/html" href="https://wiki.finkproject.org/index.php?title=Fink:Policy:Trees&amp;action=history"/>
	<updated>2026-04-30T03:48:46Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.13</generator>
	<entry>
		<id>https://wiki.finkproject.org/index.php?title=Fink:Policy:Trees&amp;diff=203&amp;oldid=prev</id>
		<title>Dmacks: fix tag-balance problem</title>
		<link rel="alternate" type="text/html" href="https://wiki.finkproject.org/index.php?title=Fink:Policy:Trees&amp;diff=203&amp;oldid=prev"/>
		<updated>2017-07-16T13:53:52Z</updated>

		<summary type="html">&lt;p&gt;fix tag-balance problem&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&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 13:53, 16 July 2017&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 24:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 24:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;pre&amp;gt;fink --trees=stable/main list -t | grep -v '\[' | cut -f2 &amp;gt; pkgs&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;pre&amp;gt;fink --trees=stable/main list -t | grep -v '\[' | cut -f2 &amp;gt; pkgs&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;edit &amp;lt;code&amp;gt;pkgs&amp;lt;/code&amp;gt; to remove any known blockers:&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;edit &amp;lt;code&amp;gt;pkgs&amp;lt;/code&amp;gt; to remove any known blockers:&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;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;* &amp;lt;code&amp;gt;libgems-rb*&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;rubygems-rb*&amp;lt;code&amp;gt; (-rb16 and -rb18 cannot be built concurrently)&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&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;* &amp;lt;code&amp;gt;libgems-rb*&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;rubygems-rb*&amp;lt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;/&lt;/ins&gt;code&amp;gt; (-rb16 and -rb18 cannot be built concurrently)&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;pre&amp;gt;cat pkgs | xargs fink --trees=stable/main,virtual rebuild&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;pre&amp;gt;cat pkgs | xargs fink --trees=stable/main,virtual rebuild&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Dmacks</name></author>
	</entry>
	<entry>
		<id>https://wiki.finkproject.org/index.php?title=Fink:Policy:Trees&amp;diff=155&amp;oldid=prev</id>
		<title>Dmacks: /* Tree Modularity */ more improvements</title>
		<link rel="alternate" type="text/html" href="https://wiki.finkproject.org/index.php?title=Fink:Policy:Trees&amp;diff=155&amp;oldid=prev"/>
		<updated>2015-10-27T02:31:35Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Tree Modularity: &lt;/span&gt; more improvements&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&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 02:31, 27 October 2015&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 31:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 31:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;pre&amp;gt;fink --trees=stable,virtual list --format=dotty | perl -n -e 'if (/&quot;(.*?)&quot; -&amp;gt; &quot;(.*?)&quot;/) { push @{$need{$2}}, $1} elsif (/&quot;(.*?)&quot; \[/) {$have{$1}++}} END {foreach (sort keys %need) {print &quot;missing $_ for &quot;.join(&quot; &quot;,@{$need{$_}}).&quot;\n&quot; unless $have{$_}}'&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;pre&amp;gt;fink --trees=stable,virtual list --format=dotty | perl -n -e 'if (/&quot;(.*?)&quot; -&amp;gt; &quot;(.*?)&quot;/) { push @{$need{$2}}, $1} elsif (/&quot;(.*?)&quot; \[/) {$have{$1}++}} END {foreach (sort keys %need) {print &quot;missing $_ for &quot;.join(&quot; &quot;,@{$need{$_}}).&quot;\n&quot; unless $have{$_}}'&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty&quot;&gt;&amp;#160;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&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;For complete diagnosis, that one-liner also needs to be run with &amp;lt;code&amp;gt;--format=dotty-build&amp;lt;/code&amp;gt; in place of &amp;lt;code&amp;gt;--format=dotty&amp;lt;/code&amp;gt; (to get &amp;lt;code&amp;gt;BuildDepends&amp;lt;/code&amp;gt;) and both times as &amp;lt;code&amp;gt;fink -m&amp;lt;/code&amp;gt; (to get &amp;lt;code&amp;gt;TestDepends&amp;lt;/code&amp;gt; included).&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;{{Fink_Header}}&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;{{Fink_Header}}&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Dmacks</name></author>
	</entry>
	<entry>
		<id>https://wiki.finkproject.org/index.php?title=Fink:Policy:Trees&amp;diff=154&amp;oldid=prev</id>
		<title>Dmacks: /* Tree Modularity */ make it a one-liner</title>
		<link rel="alternate" type="text/html" href="https://wiki.finkproject.org/index.php?title=Fink:Policy:Trees&amp;diff=154&amp;oldid=prev"/>
		<updated>2015-10-27T02:28:54Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Tree Modularity: &lt;/span&gt; make it a one-liner&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&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 02:28, 27 October 2015&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 29:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 29:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;An alternative way to test for modularity and find all unsatisfied dependencies is:&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;An alternative way to test for modularity and find all unsatisfied dependencies is:&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&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;&amp;lt;pre&amp;gt;fink --trees=stable,virtual list --format=dotty &amp;gt; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;foo&lt;/del&gt;.&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;dot&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&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;&amp;lt;pre&amp;gt;fink --trees=stable,virtual list --format=dotty &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;| perl -n -e 'if (/&quot;(.*?)&quot; -&lt;/ins&gt;&amp;gt; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&quot;(&lt;/ins&gt;.&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;*?)&quot;/) { push @{$need{$2}}, $1} elsif (/&quot;(.*?)&quot; \[/) {$have{$1}++}} END {foreach (sort keys %need) {print &quot;missing $_ for &quot;.join(&quot; &quot;,@{$need{$_}}).&quot;\n&quot; unless $have{$_}}'&amp;lt;/pre&amp;gt;&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;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;perl -n -e 'if (/&quot;(.*?)&quot; -&amp;gt; &quot;(.*?)&quot;/) { push @{$need{$2}}, $1} elsif (/&quot;(.*?)&quot; \[/) {$have{$1}++}} END {foreach (sort keys %need) {print &quot;missing $_ for &quot;.join(&quot; &quot;,@{$need{$_}}).&quot;\n&quot; unless $have{$_}}' foo.dot&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty&quot;&gt;&amp;#160;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&amp;#160;&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;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Dmacks</name></author>
	</entry>
	<entry>
		<id>https://wiki.finkproject.org/index.php?title=Fink:Policy:Trees&amp;diff=70&amp;oldid=prev</id>
		<title>Dmrrsn: revise description of ssl linking</title>
		<link rel="alternate" type="text/html" href="https://wiki.finkproject.org/index.php?title=Fink:Policy:Trees&amp;diff=70&amp;oldid=prev"/>
		<updated>2010-07-01T17:31:04Z</updated>

		<summary type="html">&lt;p&gt;revise description of ssl linking&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Fink_Header}}&lt;br /&gt;
&lt;br /&gt;
== Linking Against OpenSSL ==&lt;br /&gt;
&lt;br /&gt;
If the package currently has to be marked &amp;quot;License: Restrictive&amp;quot; because it [[Fink:Policy:Crypto|links against OpenSSL]], there is a workaround.  The GPL specifies that it is OK to link against non-GPL software if it is a system-provided library.  Since Apple includes OpenSSL as part of the base Mac OS X install, it can be linked against without license issues.&lt;br /&gt;
&lt;br /&gt;
To do so, use the [[Fink:Policy:system-openssl|system-openssl-dev]] package.&lt;br /&gt;
&lt;br /&gt;
== Tree Modularity ==&lt;br /&gt;
&lt;br /&gt;
Any package in the stable tree must have all its (Build)Depends be satisfiable by packages in the stable tree. The idea is that a user could use only the stable tree and still still have a self-contained fink installation with no missing dependent packages.&lt;br /&gt;
&lt;br /&gt;
Prior to July 1, 2010, any package that had a (Build)Depends that can only be satisfied by package(s) in section:crypto was required to itself be in section:crypto.  This requirement was dropped when crypto was moved into the main tree. &lt;br /&gt;
&lt;br /&gt;
You can pipe the output of 'fink list' into 'fink rebuild' to see if there are any packages with broken dependencies. The subsets are:&lt;br /&gt;
# stable/main&lt;br /&gt;
# unstable/main stable/main&lt;br /&gt;
(There used to be two more subsets, involving the crypto tree.)&lt;br /&gt;
&lt;br /&gt;
Because some users might only have unstable/main, every package in the stable tree should also appear in the unstable tree, in either the same or a more recent version.&lt;br /&gt;
&lt;br /&gt;
You can use fink's --trees flag instead of having to alter the &amp;lt;code&amp;gt;Trees&amp;lt;/code&amp;gt; line in your &amp;lt;code&amp;gt;fink.conf&amp;lt;/code&amp;gt; file for each subset of the distro, for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;fink --trees=stable/main list -t | grep -v '\[' | cut -f2 &amp;gt; pkgs&amp;lt;/pre&amp;gt;&lt;br /&gt;
edit &amp;lt;code&amp;gt;pkgs&amp;lt;/code&amp;gt; to remove any known blockers:&lt;br /&gt;
* &amp;lt;code&amp;gt;libgems-rb*&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;rubygems-rb*&amp;lt;code&amp;gt; (-rb16 and -rb18 cannot be built concurrently)&lt;br /&gt;
&amp;lt;pre&amp;gt;cat pkgs | xargs fink --trees=stable/main,virtual rebuild&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An alternative way to test for modularity and find all unsatisfied dependencies is:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;fink --trees=stable,virtual list --format=dotty &amp;gt; foo.dot&lt;br /&gt;
perl -n -e 'if (/&amp;quot;(.*?)&amp;quot; -&amp;gt; &amp;quot;(.*?)&amp;quot;/) { push @{$need{$2}}, $1} elsif (/&amp;quot;(.*?)&amp;quot; \[/) {$have{$1}++}} END {foreach (sort keys %need) {print &amp;quot;missing $_ for &amp;quot;.join(&amp;quot; &amp;quot;,@{$need{$_}}).&amp;quot;\n&amp;quot; unless $have{$_}}' foo.dot&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Fink_Header}}&lt;br /&gt;
&lt;br /&gt;
[[Category: Fink|Policy:Trees]]&lt;br /&gt;
[[Category: Fink_Documentation|Policy:Trees]]&lt;br /&gt;
[[Category: Fink_Policy|Trees]]&lt;/div&gt;</summary>
		<author><name>Dmrrsn</name></author>
	</entry>
</feed>