Changeset - eeba7a3154bb
[Not reviewed]
www/conservancy/static/copyleft-compliance/vmware-lawsuit-faq.html
Show inline comments
...
 
@@ -24,57 +24,65 @@
 
  non-profit charity serving the public good, seeks to be as transparent as
 
  possible.  If you have additional questions you'd like to see answered
 
  here, please <a href="mailto:info@sfconservancy.org">email
 
  &lt;info@sfconservancy.org&gt;</a>, but understand that we may often need
 
  to answer: <q>We cannot comment on this while litigation is pending</q>.</p>
 

	
 
<dl>
 
  <dt>Who is the Plaintiff in the lawsuit?</dt>
 
<details>
 
  <summary>Who is the Plaintiff in the lawsuit?</summary>
 

	
 
  <dd>Christoph is one of most active developers of the Linux kernel. He has
 
  <p>Christoph is one of most active developers of the Linux kernel. He has
 
   contributed 279,653 lines of code to the latest Linux 3.19 kernel, and
 
   thus ranks 20th among the 1,340 developers involved in that release.
 
   Christoph also ranks 4th among those who have reviewed third-party source
 
   code, and he has tirelessly corrected and commented on other developers'
 
   contributions.</dd>
 
   contributions.</p>
 
</details>
 

	
 
  <dt id="court-documents">Are the court documents released?</dt>
 
</details>
 

	
 
  <dd>Not currently.  Court proceedings are not public by default in Germany
 
  (unlike in the USA).  Conservancy will continue to update this FAQ with
 
<details>
 
  <summary id="court-documents">Are the court documents released?</summary>
 

	
 
  <p>Not currently.  Court proceedings are not public by default in Germanyg (unlike in the USA).  Conservancy will continue to update this FAQ with
 
  information that Conservancy knows about the case.  We would all also
 
  welcome an agreement with VMware whereby both sides would agree to publish
 
  all Court documents.  Unfortunately, VMware has explicitly asked for the
 
  filings not to be published.   Accordingly, Conservancy itself has not
 
  even been able to review VMware's statement of defense nor Christoph's
 
  response to that statement of defense.</dd>
 
  response to that statement of defense.</p>
 
</details>
 

	
 
  <dt id="funding">Who's funding this lawsuit?</dt>
 
<details>
 
  <summary id="funding">Who's funding this lawsuit?</summary>
 

	
 
  <dd>Conservancy has engaged in a grant agreement with Christoph Hellwig for
 
  <p>Conservancy has engaged in a grant agreement with Christoph Hellwig for
 
  the purposes of pursuing this specific legal action in Germany.
 
  Conservancy is funding this legal action specifically as part of
 
  Conservancy's program activity in
 
  its <a href="/copyleft-compliance/about.html">GPL Compliance
 
  Project for Linux Developers</a>.</dd>
 
  Project for Linux Developers</a>.</p>
 
</details>
 

	
 
  <dt id="combined-and-derivative-works">Is this the Great Test Case of Combined / Derivative Works?</dt>
 
<details>
 
  <summary id="combined-and-derivative-works">Is this the Great Test Case of Combined / Derivative Works?</summary>
 

	
 
  <dd>This case is specifically regarding a combined work that VMware
 
  <p>This case is specifically regarding a combined work that VMware
 
  allegedly created by combining their own code (&ldquo;vmkernel&rdquo;) with
 
  portions of Linux's code, which was licensed only under GPLv2.  As such,
 
  this, to our knowledge, marks the first time an enforcement case is
 
  exclusively focused on this type of legal question relating to GPL.
 
  However, there are so many different ways to make combined and/or
 
  derivative works that are covered by GPL that no single case could possibly
 
  include all such issues. </dd>
 
  include all such issues. </p>
 
</details>
 

	
 
  <dt id="why-lawsuit">Why must you file a lawsuit?  Isn't there any other way to convince
 
    VMware to comply with GPL?</dt>
 
<details>
 
  <summary id="why-lawsuit">Why must you file a lawsuit?  Isn't there any other way to convince VMware to comply with GPL?</summary>
 

	
 
  <dd><p>Neither Conservancy nor Christoph takes this action lightly nor without
 
  <p>Neither Conservancy nor Christoph takes this action lightly nor without
 
  exhausting every other possible alternative first.  This lawsuit is the
 
    outgrowth of years of effort to convince VMware to comply with GPL.</p>
 

	
 
    <p>In October 2011, Conservancy received a GPL violation report on
 
  BusyBox for VMware's ESXi products.  Conservancy opened the matter in its
 
  usual, friendly, and non-confrontational way.  Nevertheless, VMware
...
 
@@ -118,28 +126,32 @@
 
 VMware's lawyers to comply.  Those events were then followed by a year of
 
   work by Christoph and Till to achieve compliance in a separate action.</p>
 

	
 
 <p>Simply put, Conservancy and Christoph fully exhausted every possible
 
 non-litigation strategy and tactic to convince VMware to do the right thing
 
 before filing this litigation.</p>
 
  </dd>    
 
  </p>
 
</details>
 

	
 
  <dt>What are VMware's primary defenses for their alleged copyright
 
    infringement?</dt>
 
<details>
 
  <summary>What are VMware's primary defenses for their alleged copyright
 
    infringement?</summary>
 

	
 
  <dd>With the guidance of counsel, Christoph was able to provide Conservancy
 
  <p>With the guidance of counsel, Christoph was able to provide Conservancy
 
  with a high-level summary of VMware's statement of defense, which we share
 
  in this FAQ.  Specifically, VMware's statement of defense primarily focuses
 
  on two issues.  First, VMware questions Christoph's copyright interest in
 
  the Linux kernel and his right to bring this action.  Second, VMware claims
 
  vmklinux is an &ldquo;interoperability module&rdquo; which communicates
 
  through a stable interface called VMK API.</dd>
 
  through a stable interface called VMK API.</p>
 
</details>
 

	
 
  <dt>How did Christoph respond to VMware's statement of defense?</dt>
 
<details>
 
  <summary>How did Christoph respond to VMware's statement of defense?</summary>
 

	
 
  <dd>Christoph's response discusses his extensive contributions to the Linux
 
  <p>Christoph's response discusses his extensive contributions to the Linux
 
  kernel and disputes the technical merits of VMware's assertions. The
 
  response points out that vmklinux is <strong>not</strong> an
 
  interoperability module, but rather an arbitrary separation of the Linux
 
  derived module from vmkernel.   Specifically, vmklinux is nonfunctional
 
  with any non-ESX OS, and vmklinux is tied intimately to a specific version
 
  of ESXi.  Vmklinux does not allow reuse of unmodified Linux drivers in
...
 
@@ -149,18 +161,20 @@
 
  copyleft terms found in the GPL.  Finally, the response explains that
 
  vmkernel and vmklinux don't &ldquo;communicate over an interface&rdquo;,
 
  rather they run in the same process as a single computer program.  Thus,
 
  VMK API, as used by vmklinux, is not an &ldquo;interface&rdquo; as set
 
  forth in
 
  the <a href="http://eur-lex.europa.eu/legal-content/EN/TXT/HTML/?uri=CELEX:32009L0024&from=EN">EU
 
      Directive 2009/24/EC</a>.</dd>
 
      Directive 2009/24/EC</a>.</p>
 
</details>
 

	
 
  <dt id="tech">Can you explain further how VMware incorporated code from Linux into
 
  their kernel?</dt>
 
<details>
 
  <summary id="tech">Can you explain further how VMware incorporated code from Linux into
 
  their kernel?</summary>
 

	
 
  <dd>
 
  <p>
 
  <p id="diagram">
 
    Conservancy prepared this diagram to show the technical situation as we
 
    understand it.  The diagram compares the technical architecture of a full,
 
    running Linux kernel with a full, running VMware kernel:
 
    <p>
 
      <a href="/copyleft-compliance/linux-vs-vmkernel_en.png">
...
 
@@ -170,17 +184,19 @@
 
    <p>If you want to download the diagram, it's available
 
    in <a href="/copyleft-compliance/linux-vs-vmkernel_en.svg">SVG
 
    (English)</a>, <a href="/copyleft-compliance/linux-vs-vmkernel_en.png">PNG
 
    (English)</a>, <a href="/copyleft-compliance/linux-vs-vmkernel_de.svg">SVG
 
    (German)</a>, and <a href="/copyleft-compliance/linux-vs-vmkernel_de.png">PNG
 
    (German)</a>.</p>
 
  </dd>
 
  </p>
 
  </p>details>
 

	
 
  <dt>Can you explain further in words (rather than a picture) about the central
 
  component in ESXi that the lawsuit alleges violates the GPL?</dt>
 
<dd>
 
  <details>
 
  <summary>Can you explain further in words (rather than a picture) about the central
 
  component in ESXi that the lawsuit alleges violates the GPL?</summary>
 
<p>
 
    <p>The GPL violation at issue involves VMware's ESXi product.
 
    Conservancy independently reviewed ESXi and its incomplete
 
      <abbr title="complete, corresponding source">CCS</abbr>
 
    release as part of our GPL enforcement efforts described above.</p>
 

	
 
    <p>Conservancy's preliminary investigation indicated that the operating
...
 
@@ -195,19 +211,21 @@ Code, and for which (at least some) source code is provided.
 
              is provided.</li>
 
        </ul>
 

	
 
    <p>Conservancy examined the incomplete CCS alongside the
 
           binary &ldquo;vmkernel&rdquo; component.  Such examination indicates that functions
 
           in &ldquo;vmkernel&rdquo; do make function calls to Linux's kernel code
 
      in the usual way for a single program written in C.</p></dd>
 
      in the usual way for a single program written in C.</p></p>
 
            </li>details>
 

	
 
    <dt>Doesn't VMware's &ldquo;shim layer&rdquo; insulate them from GPL
 
            <details>
 
    <summary>Doesn't VMware's &ldquo;shim layer&rdquo; insulate them from GPL
 
    obligations and allow them to keep certain code in their kernel
 
    proprietary?</dt>
 
    proprietary?</summary>
 

	
 
    <dd>
 
    <p>
 
    <p>Many in the media have talked about the possibility that VMware might
 
    use some so-called &ldquo;shim layer&rdquo; between Linux code and
 
    VMware's proprietary code.  While, for decades, there has been much talk of
 
    various mechanisms of GPL obligation avoidance, Conservancy believes that
 
    merely modifying technical details of a combination's construction
 
    does not typically influence the legal analysis in a combined or
...
 
@@ -217,26 +235,30 @@ Code, and for which (at least some) source code is provided.
 
    do not even mirror the typical scenarios that have usually been called
 
    &ldquo;shim layers&rdquo;.  Conservancy's analysis of VMware's ESXi
 
    product, in fact, indicates that VMware rather flagrantly combined Linux
 
    code in their own kernel, and evidence seems to indicate the work as a
 
    whole was developed by modifying Linux code in tandem with
 
    modifications to &ldquo;vmkernel&rdquo; in a tightly coupled manner.</p>
 
    </dd>
 
   <dt id="shim-meaningless">Is Conservancy proposing a &ldquo;shim
 
      layer&rdquo; as a viable solution for GPL compliance?</dt>
 
    </p></details>
 

	
 
    <dd>No, in fact, as we say above, Conservancy doesn't think the phrase
 
            <details>
 
   <summary id="shim-meaningless">Is Conservancy proposing a &ldquo;shim
 
      layer&rdquo; as a viable solution for GPL compliance?</summary>
 

	
 
    <p>No, in fact, as we say above, Conservancy doesn't think the phrase
 
        &ldquo;shim layer&rdquo; has any meaning, despite regular use of that
 
        phrase in the media.  Conservancy generally doubts there is any
 
        technological manipulation that changes the outcome of a
 
        combined/derivative work analysis.</dd>
 
        combined/derivative work analysis.</p>
 
            </details>
 

	
 
    <dt id="example">Can you give a <em>specific</em> example, with code, showing how
 
    VMware combined Linux source code with their binary-only components?</dt>
 
            <details>
 
    <summary id="example">Can you give a <em>specific</em> example, with code, showing how
 
    VMware combined Linux source code with their binary-only components?</summary>
 

	
 
     <dd><p>There are numerous examples available that show this.  The
 
     <p><p>There are numerous examples available that show this.  The
 
       details of alleged infringement specifically relating to Hellwig's
 
       contributions to Linux are of course the main matter of the
 
       allegations in the litigation, and Conservancy
 
       released <a href="#diagram">the diagram above</a> to exemplify that
 
       issue.  Conservancy continues to <a href="#court-documents">hope VMware will
 
       agree to make public all court documents</a> as a matter of public
...
 
@@ -279,13 +301,13 @@ LinuxPCIDeviceRemoved(vmk_PCIDevice vmkDev)
 
      vmkDevName[0] = 0;
 
  }
 
[...]
 
VMKAPI_MODULE_CALL_VOID(pciDevExt-&gt;moduleID,
 
                        linuxDev-&gt;driver-&gt;remove,
 
                        linuxDev);
 
</pre>        
 
</pre>
 

	
 
<h4>Combination of &ldquo;vmkernel&rdquo; code with &ldquo;vmkdrivers&rdquo;</h4>
 

	
 
<p>The function, <code>vmk_PCIGetDeviceName()</code> must be defined, with an
 
      implementation, for this code above to work, or even compile.
 
      Inside <code>BLD/build/HEADERS/vmkapi-current-all-public/generic/release/hardware/vmkapi_pci_incompat.h</code>,
...
 
@@ -473,16 +495,18 @@ static struct pci_driver tg3_driver = {
 
        in <code>k.b00</code>.</li>
 
    </ul>
 
<p>The above is but one piece of evidence among many, but hopefully it helps
 
  to explain some of the &ldquo;combined work&rdquo; violations found in
 
  VMware's ESXi product.  Conservancy did a similar analysis for ESXi 5.0
 
  as well as ESXi 5.5 Update 2 and found nearly identical results.</p>
 
</p>details>
 

	
 
<dt id="verify">How can I verify Conservancy's technical findings above?</dt>
 
<details>
 
<summary id="verify">How can I verify Conservancy's technical findings above?</summary>
 

	
 
<dd><p>The binary and source packages mentioned above are available
 
<p><p>The binary and source packages mentioned above are available
 
on VMware's website.  These packages contain the
 
previously-mentioned <code>linux_pci.c</code>,
 
<code>vmkapi_pci_incompat.h</code>, and <code>k.b00</code> files, as well as
 
    <code>vmklinux_9</code> and the source code that builds the latter.</p>
 

	
 
  <p>To speed up the process, Conservancy has provided
...
 
@@ -574,43 +598,49 @@ at <code>bin/vmtar</code> inside
 

	
 
  <p>Note that VMware may present you with <abbr title="End User Licensing Agreement">EULA</abbr>s and <abbr title="Terms of Service">ToS</abbr> when you download
 
  software from VMware's website.  Conservancy strongly suggests that you review these
 
  terms in great detail with the assistance of your own legal counsel before
 
  downloading the software and/or engaging in the process that Conservancy
 
  discusses above.</p>
 
  </p>details>
 

	
 
<dt id="similarity-analysis">How do you know Christoph's code is present in
 
  VMware's work?</dt>
 
  <details>
 
<summary id="similarity-analysis">How do you know Christoph's code is present in
 
  VMware's work?</summary>
 

	
 
<dd>Conservancy
 
<p>Conservancy
 
published <a href="/copyleft-compliance/vmware-code-similarity.html">its
 
comparison analysis between Christoph's code and VMware's code</a>. This
 
particular analysis uses a two step process: (a) use Linux's public Git logs
 
to find Christoph's contributions from Christoph, and (b) use a widely
 
accepted and heavily academically cited tool, CCFinderX, to show that VMware
 
copied Christoph's code into their product.</dd>
 
copied Christoph's code into their product.</p>
 
  </details>
 

	
 
<dt id="appeal">I heard that Christoph's case was dismissed.  Is that
 
  true?</dt>
 
  <details>
 
<summary id="appeal">I heard that Christoph's case was dismissed.  Is that
 
  true?</summary>
 

	
 
  <dd>There was a ruling in July 2016 in the Hamburg District Court, which
 
  <p>There was a ruling in July 2016 in the Hamburg District Court, which
 
    dismissed Christoph's case against VMware.  The ruling concerned German
 
    evidence law and the Court did not rule on the merits of the case. The
 
    ruling centered around German evidentary rules related to documenting
 
    Christoph's contributions that appear in VMware's product.
 
    In <a href="http://bombadil.infradead.org/~hch/vmware/2016-08-09.html">a
 
    statement on his website</a>, Christoph Hellwig announced that he will
 
    appeal the ruling. Christoph also published
 
    (in <a href="http://bombadil.infradead.org/~hch/vmware/Urteil_2016-07-08.pdf">German</a>
 
    and <a href="http://bombadil.infradead.org/~hch/vmware/Judgment_2016-07-08.pdf">English)
 
    the Court's ruling</a> which explains why the materials submitted did not
 
    satisfy German evidence rules &mdash; despite publicly available
 
    information in Linux's Git repositories. In addition, the Court chose not
 
    to seek expert testimony.</dd>
 
  <dt id="statements-of-support">Have others issued statements of support about this action?</dt>
 
  <dd>Various individuals and groups have publicly stated their support for
 
    to see</p>details>
 

	
 
  <details>k expert testimony.</p>
 
  <summary id="statements-of-support">Have others issued statements of support about this action?</summary>
 
  <p>Various individuals and groups have publicly stated their support for
 
    Conservancy's and Hellwig's actions in this matter.  They include:
 
    <ul>
 
        <li><a href="http://www.april.org/en/statement-support-software-freedom-conservancy-and-christoph-hellwig-gpl-enforcement-lawsuit">APRIL</a></li>
 
        <li><a href="https://fsf.org/news/conservancy-and-christoph-hellwig-gpl-enforcement-lawsuit">Free
 
            Software Foundation</a></li>
 
        <li><a href="https://fsfe.org/news/2015/news-20150331-01.en.html">Free
...
 
@@ -628,54 +658,59 @@ copied Christoph's code into their product.</dd>
 
        <li><a href="http://lwn.net/Articles/635624/">Luis R. Rodriguez (aka mcgrof), Linux Developer</a></li>
 
        <li><a href="http://lwn.net/Articles/635855/">Wolfram Sang, Linux Developer</a></li>
 
        <li><a href="https://twitter.com/josh_triplett/status/573543072929198083">Josh
 
        Triplett, Linux Developer</a></li>
 
        <li><a href="https://lwn.net/Articles/635617/">Rik van Riel, Linux Developer</a></li>
 
    </ul>
 
  </dd>
 
  </p>
 
  </details>
 

	
 
<dt>I
 
  <details>
 
<summary>I
 
see <a href="https://fsf.org/news/conservancy-and-christoph-hellwig-gpl-enforcement-lawsuit">FSF's
 
statement of support</a>, but why
 
isn't <a href="https://www.fsf.org/licensing/compliance">FSF enforcing</a> in
 
this case?</dt>
 
this case?</summary>
 

	
 
<dd>While FSF are the authors and license steward of the GNU GPL, it's up to
 
<p>While FSF are the authors and license steward of the GNU GPL, it's up to
 
the copyright holder to enforce GPL.  VMware created an operating system by
 
combining parts of the kernel named Linux with their own proprietary code,
 
and then added BusyBox to provide the userspace operating system components.
 
As such, ESXi is not
 
a <a href="https://www.gnu.org/gnu/linux-and-gnu.html">traditional GNU/Linux
 
system</a>.  FSF has many copyrights of its own, but these are almost
 
exclusively on various parts of the GNU system, not on the kernel, Linux.  As
 
such, FSF probably does not have copyright interests available to directly
 
enforce the GPL regarding the primary issue in this case.</dd>
 
enforce the GPL regarding the primary issue in this case.</p>
 
  </details>
 

	
 
  <dt><em>I</em> care about copyleft and the GPL.  How can I help?</dt>
 
  <details>
 
  <summary><em>I</em> care about copyleft and the GPL.  How can I help?</summary>
 

	
 
  <dd>Conservancy needs <a href="#donate-box" class="donate-now">your immediate financial
 
  <p>Conservancy needs <a href="#donate-box" class="donate-now">your immediate financial
 
  support to proceed with this litigation</a>.  Litigation costs are
 
  unpredictable, and this lawsuit may take years to resolve.  Conservancy is
 
  prepared to fund this case through its conclusion, but we can only do so
 
  with <a href="/sustainer/"><em>your</em> support</a>.  If you are an
 
  individual who supports copyleft and wants to see it defended, please
 
  donate now.  And, if you make a public statement of support, please email the
 
  URL
 
  to <a href="mailto:info@sfconservancy.org">&lt;info@sfconservancy.org&gt;</a>,
 
  as we'd like to include representative selection of supportive statements above.</dd>
 
  as we'd like to include representative selection of supportive statements above.</p>
 
  </details>
 

	
 
  <dt>Why is the case in Germany?</dt>
 
  <details>
 
  <summary>Why is the case in Germany?</summary>
 

	
 
  <dd>Copyright infringement claims can be brought anywhere that distribution
 
  <p>Copyright infringement claims can be brought anywhere that distribution
 
  of the copyrighted works occur.  VMware distributes ESXi throughout the
 
  world, but Germany is close to Christoph's home and his lawyer was
 
  available to do the litigation work there.  Finally, historically,
 
  Mr. Jaeger's cases in Germany have usually achieved worldwide compliance on
 
  the products at issue in those cases.</dd>
 
  
 
</dl>
 
  the products at issue in those cases.</p>
 
  </details>
 
{% endblock %}
 

	
 
<!--  LocalWords:  Christoph Hellwig VMware vmkernel Linux's GPLv VMware's
 
 -->
 
<!--  LocalWords:  ESXi CCS Christoph's Jaeger NDA SVG PNG vmklinux vmk un
 
 -->
www/conservancy/static/css/conservancy.css
Show inline comments
...
 
@@ -474,12 +474,13 @@ blockquote, div.quote /* div.quote is used by conservancy whitepaper */ {
 
    font-size: 70%;
 
    text-indent: 0;
 
    margin: .25em;
 
    min-width: 8%;
 
    max-width: 30%;
 
    width: auto;
 
    box-shadow: 1px 1px 2px rgba(0,0,0,.3);
 
}
 
.picture-small img {
 
   width: 100%;
 
}
 
.picture-tiny {
 
    padding-left: 1em;
...
 
@@ -649,6 +650,35 @@ dd {
 
   supported. */
 
div.small-right, div.medium-right {
 
    border: thick solid #577632;
 
    padding: .3em;
 
    text-align: center;
 
}
 

	
 
.breadcrumbs {
 
  font-size: 14px;
 
  padding: 0.5rem 0 0;
 
}
 

	
 
.breadcrumbs, .breadcrumbs a {
 
  color: #777;
 
}
 
.breadcrumbs a {
 
  padding: 0 0.5em;
 
}
 
.breadcrumbs a:first-child {
 
  padding-left: 0;
 
}
 
.breadcrumbs span {
 
  padding-left: 0.5em;
 
}
 

	
 
.press-release .date, .conservancy-blog .date {
 
  margin-bottom: 1rem;
 
}
 

	
 
/* Expanding sections. */
 
details summary {
 
  font-size: 1rem;
 
  font-weight: bold;
 
  padding: 0.5rem 0;
 
}
www/conservancy/templates/blog/entry_detail.html
Show inline comments
...
 
@@ -6,12 +6,15 @@
 
{% include "opengraph_urllist_partial.html" with property='video' urls=object.get_one_video_url %}
 
{% endblock %}
 

	
 
{% block subtitle %}{{ object.headline|striptags|safe }} - Conservancy Blog - {% endblock %}
 

	
 
{% block content %}
 
<div class="breadcrumbs">
 
  <p><a href="/">Home</a> / <a href="#fixme">News</a> / <a href="/blog/">Blog</a></p>
 
</div>
 

	
 
{% include "blog/entry_partial.html" with entry=object htag="h2" only %}
 

	
 
<p class="blog-comments">Please email any comments on this entry to
 
  <a href="mailto:info@sfconservancy.org">info@sfconservancy.org</a>.</p>
 

	
www/conservancy/templates/blog/entry_list.html
Show inline comments
 
{% extends "base_blog.html" %}
 
{% block subtitle %}Conservancy Blog - {% endblock %}
 

	
 
{% block content %}
 
<div class="breadcrumbs">
 
  <p><a href="/">Home</a> / <a href="#fixme">News</a></p>
 
</div>
 

	
 
<h2><a href="/feeds/blog/" class="feedlink"><img src="/img/feed-icon-14x14.png" alt="[RSS]"/></a> Conservancy Blog{% if author %} &mdash; {{ author.formal_name }}{% endif %}</h2>
 

	
 
{% if authors or tags %}
 
<p>Displaying posts
 
{% if authors %}by {% for author in authors %}{% if not forloop.last %}{% if not forloop.first %}, {% endif %}{% endif %}<a href="{{ author.biography_url }}">{{ author.formal_name }}</a>{% ifequal forloop.revcounter 2 %} and {% endifequal %}{% endfor %}{% endif %}
www/conservancy/templates/news/pressrelease_detail.html
Show inline comments
...
 
@@ -8,9 +8,12 @@
 

	
 
{% block subtitle %}{{ object.headline|striptags|safe }} - {% endblock %}
 

	
 
{% block content %}
 

	
 
<div id="mainContent">
 
  <div class="breadcrumbs">
 
    <p><a href="/">Home</a> / <a href="#fixme">News</a></p>
 
  </div>
 
{% include "news/pressrelease_partial.html" with pressr=object htag="h2" only %}
 
</div>
 
{% endblock %}
www/conservancy/templates/news/pressrelease_list.html
Show inline comments
...
 
@@ -7,12 +7,15 @@
 
         <h2>News Index by Year</h2>
 
         <ul>
 
         {% for year in date_list reversed %}<li class="{{ year|date:"Y" }}"><a href="{{ year|date:"Y" }}/">{{ year|date:"Y" }}</a></li>{% endfor %}
 
         </ul>
 
         </div>
 
         <div id="mainContent">
 
           <div class="breadcrumbs">
 
             <p><a href="/">Home</a> / <a href="#fixme">News</a></p>
 
           </div>
 
         <h1><a href="/feeds/news/" class="feedlink"><img src="/img/feed-icon-14x14.png" alt="[RSS]"/></a> Conservancy News</h1>
 

	
 

	
 
{% ifnotequal news.number 1 %}<p>(Page {{ news.number }} of {{ news.paginator.num_pages }})</p>{% endifnotequal %}
 

	
 
{% for pressr in news %}
www/conservancy/templates/sponsors.html
Show inline comments
...
 
@@ -3,12 +3,15 @@
 
{% block category %}sponsors{% endblock %}
 
{% block head %}
 
<meta charset="UTF-8"/>
 
{% endblock %}
 

	
 
{% block content %}
 
<div class="breadcrumbs">
 
  <p><a href="/">Home</a> / <a href="#fixme">Who We Are</a></p>
 
</div>
 

	
 
<h1>Conservancy's Sponsors &amp; Sustainers</h1>
 

	
 
<p>Conservancy relies on donations from the general public to support its
 
work, and asks everyone <a href="/donate">to donate generously</a>.
 

	
www/conservancy/templates/supporter/index.html
Show inline comments
...
 
@@ -7,12 +7,16 @@
 
<link href="/css/forms.css" rel="stylesheet" type="text/css"/>
 
{% include "opengraph_partial.html" with url="/sustainer/" title="Support Conservancy!" description="Software freedom is critical to many of today&rsquo;s most pressing social issues, but it&rsquo;s only effective when FOSS is for everyone. Support Conservancy today to help make that happen!" %}
 
{% include "opengraph_urllist_partial.html" with property='image' urls='' fallback='/img/conservancy-logo.png' %}
 
{% endblock %}
 

	
 
{% block content %}
 
<div class="breadcrumbs">
 
  <p><a href="/">Home</a> / <a href="#fixme">Who We Are</a></p>
 
</div>
 

	
 
<div class="donate-sidebar">
 
<table style="background-color:#afe478;width:100%;">
 
<tr><td style="text-align:center;padding:10px;padding-bottom:10px;">
 
<div id="donate-box" class="toggle-unit"><h1 class="toggle-content">Support
 
    Now!</h1></div>
 

	
0 comments (0 inline, 0 general)