<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Licensing Archives - FODINA 4 FOSS</title>
	<atom:link href="https://fodina.de/tag/licensing/feed/" rel="self" type="application/rss+xml" />
	<link>https://fodina.de/tag/licensing/</link>
	<description>a treasure trove for free software, techniques, and ideas</description>
	<lastBuildDate>Sat, 12 Aug 2023 08:35:40 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.2</generator>
	<item>
		<title>Using JavaScript Compliantly</title>
		<link>https://fodina.de/license-compliant-javascript/</link>
					<comments>https://fodina.de/license-compliant-javascript/#respond</comments>
		
		<dc:creator><![CDATA[Karsten Reincke]]></dc:creator>
		<pubDate>Wed, 17 May 2023 08:26:57 +0000</pubDate>
				<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Licensing]]></category>
		<guid isPermaLink="false">http://127.0.0.1/wpd.fd/?p=6204</guid>

					<description><![CDATA[<p>To speed up deliverability, the developers mostly distribute compressed JavaScript libraries that do not contain any whitespaces, line feeds, and comments. They have minified the libs. As a result, they usually contain only very rudimentary license information — at least not the license text itself. But all FOSS licenses require us to ship some compliance [&#8230;]</p>
<p>The post <a href="https://fodina.de/license-compliant-javascript/">Using JavaScript Compliantly</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>To speed up deliverability, the developers mostly distribute compressed JavaScript libraries that do not contain any whitespaces, line feeds, and comments. They have <a href="https://kinsta.com/blog/minify-javascript/">minified</a> the libs. As a result, they usually contain only very rudimentary license information — at least not the license text itself. But all FOSS licenses require us to ship some compliance artifacts with the code — especially the license text. This is the challenge for using JavaScript compliantly — in <em>bootScore</em> and elsewhere:<span id="more-6204"></span></p>



<p class="has-text-align-right"></p><div class="container"><div class="d-flex justify-content-end sample-row"><div class="col-xs"><div class="text-right">[ en | <a href="https://karsten-reincke.de/lizenzkonformes-javascript">de</a> ]</div></div></div></div>



<h2 class="wp-block-heading"><i class=" fa-regular fa-face-smile"></i> Solution</h2>



<ul class="wp-block-list">
<li>Use the <em>Bootstrap</em> JavaScript library as delivered by <em>bootScore</em></li>



<li>Use the JavaScript libraries as delivered by <em>WordPress</em></li>



<li>Create a table containing the JavaScript compliance information</li>



<li>For each JavaScript library delivered by <em>bootScore</em> or <em>WordPress</em> create a respective row in your JS table.</li>



<li>Embed this table into your <em>Open Source Compliance Page</em></li>



<li>Make this <em>Open Source Compliance Page</em> accessible by the footer of your pages</li>
</ul>



<h2 class="wp-block-heading"><i class=" fa-regular fa-lightbulb"></i> Background</h2>



<p><a href="https://github.com/bootscore/bootscore">bootSCore</a> contains some JS components. For example, its own unfolded JavaScript libraries<sup><a href="https://fodina.de/license-compliant-javascript/#footnote_0_6204" id="identifier_0_6204" class="footnote-link footnote-identifier-link" title="cf. ./bootscore/js/theme.js">1</a></sup> — implicitly licensed under the MIT license but without any explicit licensing statement — and the minified Bootstrap JavaScript library<sup><a href="https://fodina.de/license-compliant-javascript/#footnote_1_6204" id="identifier_1_6204" class="footnote-link footnote-identifier-link" title="cf. ./bootscore/js/lib/bootstrap.bundle.min.js">2</a></sup> — explicitly licensed under the MIT by a respective licensing statement. But none of them contain the license text itself. </p>



<p>Also, WordPress brings with it some own and some minified 3rd party JavaScript libraries<sup><a href="https://fodina.de/license-compliant-javascript/#footnote_2_6204" id="identifier_2_6204" class="footnote-link footnote-identifier-link" title="cf. https://codex.wordpress.org/Javascript_Reference respectively ./wp-includes/js">3</a></sup>, like the jQuery library<sup><a href="https://fodina.de/license-compliant-javascript/#footnote_3_6204" id="identifier_3_6204" class="footnote-link footnote-identifier-link" title="cf. wp-includes/js/jquery/">4</a></sup> that is licensed under the MIT and contains a respective licensing statement, but does not cover the license text itself. Regardless, of whom the site owner has got these libs — from bootScore or WordPress -, eventually it is she who has to fulfill the license requirements because it is her system that distributes the JavaScript libraries to her readers.</p>



<p>But what is actually the challenge?</p>


<div class="wp-block-image"><figure class="alignright size-medium is-resized is-style-default "><a href="https://fodina.de/wp-content/uploads/2023/05/js.jpg" data-fancybox><img decoding="async" src="https://fodina.de/wp-content/uploads/2023/05/js-300x300.jpg" alt="Riding a dead horse" width="240"></a></figure></div>



<p>Like the JavaScript libraries of <em>Bootstrap</em> and <em>jQuery</em>, most JS libraries are MIT licensed. It requires that the copyright line and the license text are distributed together with the open-source program. “The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.“<sup><a href="https://fodina.de/license-compliant-javascript/#footnote_4_6204" id="identifier_4_6204" class="footnote-link footnote-identifier-link" title="cf. MIT License">5</a></sup></p>



<p>For (L|A)GPL-licensed JavaScript libraries it is nearly the same. These licenses permit the distribution of the source code “provided that one conspicuously and appropriately publishes on each copy an appropriate copyright notice and disclaimer of warranty […] and gives any other recipients of the Program a copy of this License along with the Program”.<sup><a href="https://fodina.de/license-compliant-javascript/#footnote_5_6204" id="identifier_5_6204" class="footnote-link footnote-identifier-link" title="pars pro toto cf. GPL-2.0. Additionally, the (A)GPL requires that we license our code that uses the (A)GPL-licensed library, etc. also under the (A)GPL (copyleft effect). But that's not the point in this context.">6</a></sup></p>



<p>So, we see a contradiction between the claim of the licenses and the everyday practice. On the one side, a browser not only loads down the page text (HTML) but also the JavaScript library. This download distributes the code and hence triggers the necessity to fulfill the open-source license requirements. On the other side, usually, the compressed libraries — although as a package often offered by the authors — no longer contain the required license information: the smaller the libs, the faster the machine can display the site using that libs.</p>



<p>As site owners, we have two options to deal with this challenge. Either we subsequently (and (semi) manually) heal the packages we implicitly have taken over by using WordPress and <em>bootScore</em>. Or we use them as we’ve got them. It’s clear: Healing would imply that we redo that job whenever we update WordPress or bootScore. So, we tend to go the other way.</p>



<p>The solution is this:</p>



<p>Whenever developers decide to distribute minified JavaScript libraries, they also assume that their ‘customers’ use their work in that version. That is a reasonable assumption. So, we may derive that they implicitly permit that kind of use even if it violated the license they’ve chosen. Nevertheless, we should offer our users another option to get the required information. A substitute for bundling the license text, the copyright information, etc. with the JavaScript libraries themselves. However, we must take care only to include the minified JavaScript libraries the developers themselves have provided. In the case of the <em>Bootstrap</em>-JS-Lib in <em>bootScore</em> and the <em>Jquery</em>-JS-Lib etc. in <em>WordPress,</em> we may assume that they did so.</p>



<p>If we apply this process to our 3rd. party JS libraries, we have a strong argument for our position in case of a legal dispute — I’ve never heard of one — and we’re in good company: Even the FSF is proposing to do so.<sup><a href="https://fodina.de/license-compliant-javascript/#footnote_6_6204" id="identifier_6_6204" class="footnote-link footnote-identifier-link" title="cf. https://www.gnu.org/licenses/javascript-labels.html, https://www.gnu.org/licenses/javascript-labels-rationale.html, and https://www.iusmentis.com/computerprograms/opensourcesoftware/license-notices-web-applications">7</a></sup> And the FSF really doesn’t have a reputation for taking license compliance lightly.</p>


  <hr class="wp-block-separator has-alpha-channel-opacity">
<h5 class="wp-block-heading"><i class="fa-solid fa-link"></i> And in what way is this …</h5>
  <p class="myPageContext">… part of the overarching topic <i class="fa-brands fa-linux"></i> 
  FOSS <i class="fa-brands fa-osi"></i> Compliance? 
  For fulfilling the requirements of <a href="https://opensource.org/licenses/">FOSS licenses</a>, 
  we have to consider <a href="http://fodina.de/jniz/">specific</a> individual 
  <a href="http://fodina.de/yocto-iot-gplv3/">cases</a> as well as 
  <a href="http://fodina.de/lilypond-gpl/">side effects</a> — for 
  <a href="http://fodina.de/license-compliant-javascript/">software</a>, 
  <a href="http://fodina.de/image-databases/">pictures</a>, or documents. 
  We should unhide <a href="http://fodina.de/cc-by-trolls/">trends</a> and write 
  <a href="http://fodina.de/bosl-3-0/">guidelines</a>. Above all, however, we must 
  drive forward the <a href="http://fodina.de/tdosca/">automation of license fulfillment</a>, 
  make our <a href="http://fodina.de/oslic/">licensing knowledge</a> freely available, 
  cast it into <a href="http://fodina.de/oscad/">smaller tools</a>, and 
  <a href="http://fodina.de/oscake/">bring it into larger systems</a>: Because FOSS 
  thrives on freedom through license fulfillment, large and small. 
  That’s what also this article is about.</p>
  <hr class="wp-block-separator has-alpha-channel-opacity">
<ol class="footnotes"><li id="footnote_0_6204" class="footnote">cf. <code>./bootscore/js/theme.js</code></li><li id="footnote_1_6204" class="footnote">cf. <code>./bootscore/js/lib/bootstrap.bundle.min.js</code></li><li id="footnote_2_6204" class="footnote">cf. <a href="https://codex.wordpress.org/Javascript_Reference">https://codex.wordpress.org/Javascript_Reference</a> respectively <code>./wp-includes/js</code></li><li id="footnote_3_6204" class="footnote">cf. <code>wp-includes/js/jquery/</code></li><li id="footnote_4_6204" class="footnote">cf. <a href="https://opensource.org/license/mit/">MIT License</a></li><li id="footnote_5_6204" class="footnote">pars pro toto cf. <a href="https://opensource.org/license/gpl-2-0/">GPL‑2.0</a>. Additionally, the (A)GPL requires that we license our code that uses the (A)GPL-licensed library, etc. also under the (A)GPL (copyleft effect). But that’s not the point in this context.</li><li id="footnote_6_6204" class="footnote">cf. <a href="https://www.gnu.org/licenses/javascript-labels.html">https://www.gnu.org/licenses/javascript-labels.html</a>, <a href="https://www.gnu.org/licenses/javascript-labels-rationale.html">https://www.gnu.org/licenses/javascript-labels-rationale.html</a>, and <a href="https://www.iusmentis.com/computerprograms/opensourcesoftware/license-notices-web-applications">https://www.iusmentis.com/computerprograms/opensourcesoftware/license-notices-web-applications</a></li></ol><p>The post <a href="https://fodina.de/license-compliant-javascript/">Using JavaScript Compliantly</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://fodina.de/license-compliant-javascript/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Getting Nice Pictures — Where From, If Not Steal?</title>
		<link>https://fodina.de/image-databases/</link>
					<comments>https://fodina.de/image-databases/#respond</comments>
		
		<dc:creator><![CDATA[Karsten Reincke]]></dc:creator>
		<pubDate>Thu, 02 Mar 2023 22:18:31 +0000</pubDate>
				<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Images]]></category>
		<category><![CDATA[Licensing]]></category>
		<guid isPermaLink="false">http://127.0.0.1/wpd.fd/?p=5636</guid>

					<description><![CDATA[<p>I love ZEN presentations. For that, you need pictures. Many pictures. Good pictures. Fortunately, it is technically easy to integrate photos from the internet into your own site. What is challenging, however, is getting nice pictures legally. Solution Background Images, photos, and logos are also subject to copyright law. Often also of the trademark law. [&#8230;]</p>
<p>The post <a href="https://fodina.de/image-databases/">Getting Nice Pictures — Where From, If Not Steal?</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>I love ZEN presentations. For that, you need pictures. Many pictures. Good pictures. Fortunately, it is technically easy to <a href="https://fodina.de/blurred-featured-images/">integrate photos from the internet</a> into your own site. What is challenging, however, is getting nice pictures <a href="https://fodina.de/cc-by-trolls/">legally</a>.<span id="more-5636"></span></p>



<p class="has-text-align-right"></p><div class="container"><div class="d-flex justify-content-end sample-row"><div class="col-xs"><div class="text-right">[ en | <a href="https://karsten-reincke.de/bilder-datenbanken">de</a> ]</div></div></div></div>



<h2 class="wp-block-heading"><i class=" fa-regular fa-face-smile"></i> Solution</h2>



<ul class="wp-block-list">
<li>First, use image databases whose pictures are released under the terms of the <a href="https://creativecommons.org/publicdomain/zero/1.0/">CC0 license</a>.<sup><a href="https://fodina.de/image-databases/#footnote_0_5636" id="identifier_0_5636" class="footnote-link footnote-identifier-link" title="We're allowed to use those for no consideration, after all.">1</a></sup> E.g. <a href="https://pxhere.com/">pxhere</a><sup><a href="https://fodina.de/image-databases/#footnote_1_5636" id="identifier_1_5636" class="footnote-link footnote-identifier-link" title="for licensing see https://pxhere.com/en/license">2</a></sup> or <a href="https://openclipart.org/">openclipart</a>.<sup><a href="https://fodina.de/image-databases/#footnote_2_5636" id="identifier_2_5636" class="footnote-link footnote-identifier-link" title="for licensing cf. https://openclipart.org/faq">3</a></sup></li>



<li>Then evaluate image databases whose pictures have been published under any different Creative Commons license. E.g. <a href="https://commons.wikimedia.org/">Wikimedia</a><sup><a href="https://fodina.de/image-databases/#footnote_3_5636" id="identifier_3_5636" class="footnote-link footnote-identifier-link" title="for licensing cf. https://commons.wikimedia.org/wiki/Commons:Licensing/de">4</a></sup>, <a href="https://www.flickr.com/creativecommons/">flicker.com/creativecommons</a> or <a href="https://www.piqs.de/">piqs.de</a></li>



<li>But avoid images that are licensed under a CC-??-NC-??<sup><a href="https://fodina.de/image-databases/#footnote_4_5636" id="identifier_4_5636" class="footnote-link footnote-identifier-link" title="for the layer model of CC licenses, see https://creativecommons.org/licenses/">5</a></sup> license.<sup><a href="https://fodina.de/image-databases/#footnote_5_5636" id="identifier_5_5636" class="footnote-link footnote-identifier-link" title="Because legally even the simplest blog can still be interpreted as a commercial enterprise.">6</a></sup></li>



<li>And meticulously fulfill the other conditions, such as attribution. A good place to do that is a page with image credits.</li>



<li>Finally, be careful if you use an image database that distributes its images under its own license, which is equivalent to a CC0 license, but excludes certain uses after all.<sup><a href="https://fodina.de/image-databases/#footnote_6_5636" id="identifier_6_5636" class="footnote-link footnote-identifier-link" title="Challengingly, these databases often allow commercial use, but at the same time prohibit the sale of the images, even in print, or their incorporation into other databases">7</a></sup>. E.g. <a href="https://www.pexels.com/" class="broken_link">pexel</a><sup><a href="https://fodina.de/image-databases/#footnote_7_5636" id="identifier_7_5636" class="footnote-link footnote-identifier-link" title="for licensing cf. https://www.pexels.com/license/">8</a></sup>, <a href="https://unsplash.com/">unsplash</a><sup><a href="https://fodina.de/image-databases/#footnote_8_5636" id="identifier_8_5636" class="footnote-link footnote-identifier-link" title="for licensing cf. https://unsplash.com/license">9</a></sup>, or <a href="https://pixabay.com/" class="broken_link">pixabay</a><sup><a href="https://fodina.de/image-databases/#footnote_9_5636" id="identifier_9_5636" class="footnote-link footnote-identifier-link" title="for licensing cf. https://pixabay.com/de/service/license/">10</a></sup>)</li>



<li>Avoid, if possible, image databases that mix commercial paid images with free.<sup><a href="https://fodina.de/image-databases/#footnote_10_5636" id="identifier_10_5636" class="footnote-link footnote-identifier-link" title="Too great the risk that you pick a non-free image.">11</a></sup> E.g. <a href="https://freephotos.cc/en">freephotos</a> or <a href="https://thenounproject.com/">the nounproject</a></li>



<li>Definitely avoid meta image databases in any case.<sup><a href="https://fodina.de/image-databases/#footnote_11_5636" id="identifier_11_5636" class="footnote-link footnote-identifier-link" title="What exactly applies here is very hard to track there.">12</a></sup></li>
</ul>



<h2 class="wp-block-heading"><i class=" fa-regular fa-lightbulb"></i> Background</h2>



<p></p><div class="wp-block-image"><figure class="alignleft size-medium is-resized alignright "><a href="https://fodina.de/wp-content/uploads/2023/03/copyright.svg" data-fancybox><img decoding="async" src="https://fodina.de/wp-content/uploads/2023/03/copyright.svg" alt="copyright law" width="200"></a></figure></div> Images, photos, and logos are also subject to copyright law. Often also of the trademark law. Without the photographer or owner granting us the rights of use, we are not allowed to use their photographs and logos. Moreover, even what is pictured can limit our exploitation — while the freedom of art expands our scope. How does a user get out of this ‘snake pit’ unscathed?



<p>On the first attempt, it seems easy. After all, most of the time, the author will only want to ‘illustrate’ her posts. But if she has linked a web store or consulting offer to her site, she earns money indirectly with the images. And thus she uses the images commercially. So again the question is, what can she do?</p>



<p>I have outlined my way above. Two additions to this:</p>



<ul class="wp-block-list">
<li>When it comes to ‘logos’, I search the web presence of the logo owners. Often they tell us explicitly what we can and cannot do with their logos. And this is even true for non-profit organizations, like the <a href="https://opensource.org/">OSI</a>((for logo usage cf. <a href="https://opensource.org/logo-usage-guidelines/">https://opensource.org/logo-usage-guidelines/</a>)) or those of the <a href="https://www.gimp.org/">Gimp</a>((for logo usage cf. <a href="https://github.com/GNOME/gimp/blob/master/docs/Wilber.xcf.gz.README">https://github.com/GNOME/gimp/blob/master/docs/Wilber.xcf.gz.README</a>)).</li>



<li>When it comes to what is pictured, I follow two rules of thumb:
<ul class="wp-block-list">
<li>Be careful with people and products depicted — they’d rather not.</li>



<li>Caution with unknown buildings</li>
</ul>
</li>
</ul>


  <hr class="wp-block-separator has-alpha-channel-opacity">
<h5 class="wp-block-heading"><i class="fa-solid fa-link"></i> And in what way is this …</h5>
  <p class="myPageContext">… part of the overarching topic <i class="fa-brands fa-linux"></i> 
  FOSS <i class="fa-brands fa-osi"></i> Compliance? 
  For fulfilling the requirements of <a href="https://opensource.org/licenses/">FOSS licenses</a>, 
  we have to consider <a href="http://fodina.de/jniz/">specific</a> individual 
  <a href="http://fodina.de/yocto-iot-gplv3/">cases</a> as well as 
  <a href="http://fodina.de/lilypond-gpl/">side effects</a> — for 
  <a href="http://fodina.de/license-compliant-javascript/">software</a>, 
  <a href="http://fodina.de/image-databases/">pictures</a>, or documents. 
  We should unhide <a href="http://fodina.de/cc-by-trolls/">trends</a> and write 
  <a href="http://fodina.de/bosl-3-0/">guidelines</a>. Above all, however, we must 
  drive forward the <a href="http://fodina.de/tdosca/">automation of license fulfillment</a>, 
  make our <a href="http://fodina.de/oslic/">licensing knowledge</a> freely available, 
  cast it into <a href="http://fodina.de/oscad/">smaller tools</a>, and 
  <a href="http://fodina.de/oscake/">bring it into larger systems</a>: Because FOSS 
  thrives on freedom through license fulfillment, large and small. 
  That’s what also this article is about.</p>
  <hr class="wp-block-separator has-alpha-channel-opacity">
<ol class="footnotes"><li id="footnote_0_5636" class="footnote">We’re allowed to use those for no consideration, after all.</li><li id="footnote_1_5636" class="footnote">for licensing see <a href="https://pxhere.com/en/license">https://pxhere.com/en/license</a></li><li id="footnote_2_5636" class="footnote">for licensing cf. <a href="https://openclipart.org/faq">https://openclipart.org/faq</a></li><li id="footnote_3_5636" class="footnote">for licensing cf. <a href="https://commons.wikimedia.org/wiki/Commons:Licensing/de">https://commons.wikimedia.org/wiki/Commons:Licensing/de</a></li><li id="footnote_4_5636" class="footnote">for the layer model of CC licenses, see <a href="https://creativecommons.org/licenses/">https://creativecommons.org/licenses/</a></li><li id="footnote_5_5636" class="footnote">Because legally even the simplest blog can still be interpreted as a commercial enterprise.</li><li id="footnote_6_5636" class="footnote">Challengingly, these databases often allow commercial use, but at the same time prohibit the sale of the images, even in print, or their incorporation into other databases</li><li id="footnote_7_5636" class="footnote">for licensing cf. <a href="https://www.pexels.com/license/" class="broken_link">https://www.pexels.com/license/</a></li><li id="footnote_8_5636" class="footnote">for licensing cf. <a href="https://unsplash.com/license">https://unsplash.com/license</a></li><li id="footnote_9_5636" class="footnote">for licensing cf. <a href="https://pixabay.com/de/service/license/" class="broken_link">https://pixabay.com/de/service/license/</a></li><li id="footnote_10_5636" class="footnote">Too great the risk that you pick a non-free image.</li><li id="footnote_11_5636" class="footnote">What exactly applies here is very hard to track there.</li></ol><p>The post <a href="https://fodina.de/image-databases/">Getting Nice Pictures — Where From, If Not Steal?</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://fodina.de/image-databases/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>A Picture Credit Page? Really?</title>
		<link>https://fodina.de/picture-credit-page/</link>
					<comments>https://fodina.de/picture-credit-page/#respond</comments>
		
		<dc:creator><![CDATA[Karsten Reincke]]></dc:creator>
		<pubDate>Wed, 01 Mar 2023 09:10:45 +0000</pubDate>
				<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[bootScore]]></category>
		<category><![CDATA[Images]]></category>
		<category><![CDATA[Licensing]]></category>
		<category><![CDATA[WordPress]]></category>
		<guid isPermaLink="false">http://127.0.0.1/wpd.fd/?p=5631</guid>

					<description><![CDATA[<p>I don’t buy images. Never. I take my own pictures. Or I use free images released under a Creative Commons License. Or in the ‘public domain’. Some image databases offer their photographs under their own licenses, equivalent to the free licenses, as long as I do not make their images publicly available through another image [&#8230;]</p>
<p>The post <a href="https://fodina.de/picture-credit-page/">A Picture Credit Page? Really?</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>I don’t buy images. Never. I take my own pictures. Or I use free images released under a <a href="https://creativecommons.org/licenses/?lang=de">Creative Commons License</a>. Or in the ‘public domain’. Some image databases offer their photographs under their own licenses, equivalent to the free licenses, as long as I do not make their images publicly available through another image database. I accept that as well. And as open-source licenses do, too, <a href="https://fodina.de/image-databases/">some ‘picture’ licenses impose certain duties on me</a>. Thus, I need <a href="https://fodina.de/picture-credits/">a picture credit page</a>:<span id="more-5631"></span></p>



<p>For example, sometimes I have to say where I got the image, who its photographer is, and what license it is under. The right place to fulfill such conditions is a page for image credits<sup><a href="https://fodina.de/picture-credit-page/#footnote_0_5631" id="identifier_0_5631" class="footnote-link footnote-identifier-link" title="BTW: In the European legal space, there is no such thing as 'public domain'. But we can usually use the images published in this way in America">1</a></sup>:</p>



<p class="has-text-align-right"></p><div class="container"><div class="d-flex justify-content-end sample-row"><div class="col-xs"><div class="text-right">[ en | <a href="https://karsten-reincke.de/bilderverzeichnis">de</a> ]</div></div></div></div>



<h2 class="wp-block-heading"><i class=" fa-regular fa-face-smile"></i> Solution</h2>



<h3 class="wp-block-heading">A Table For Image Credits</h3>



<ul class="wp-block-list">
<li>Create a page ‘Image Credits’ and include it on your site like your imprint</li>



<li>Install the plugin <a href="https://de.wordpress.org/plugins/tablepress/">TablePress</a>.</li>



<li>Create a table with the 4 columns ‘Picture’, ‘Download &amp; Licensing’, ‘License’, and ‘Attribution’.</li>



<li>Include this table in your page <em>Image Credits</em> by using the TablePress shortcode.</li>
</ul>



<h3 class="wp-block-heading">A New Image Reference</h3>



<ul class="wp-block-list">
<li>Add a new row to the image reference table.</li>



<li>Concerning the first column ‘IMAGE’ 
<ul class="wp-block-list">
<li>open the media library, click on the new image and remember its ID, which is displayed in the browser URL.</li>



<li>enter the already-known short code <code>wrong image data</code>.</li>
</ul>
</li>



<li>In the second column, link an appropriate text to the same image in the database. If the target page does not contain a licensing statement, add a second link in the same column that leads to the licensing statement of the picture database.</li>



<li>In the third column, link the license name to the license text, preferably in the version from the image database.</li>



<li>In the fourth column, enter all the information that the license requires.</li>
</ul>



<h2 class="wp-block-heading"><i class=" fa-regular fa-lightbulb"></i> Background</h2>



<p>First things first: The WordPress plugin <em><a href="https://de.wordpress.org/plugins/tablepress/">TablePress</a></em> is <a href="https://de.wordpress.org/plugins/tablepress/#developers">actively maintained</a> and is — according to the file <a href="https://plugins.trac.wordpress.org/browser/tablepress/trunk/readme.txt">readme.txt</a> — GPL‑2.0 licensed. So this is a ‘flawless’ piece of Open-Source software.</p>



<p>Finally, the more complex aspects: Why do we need an image credit at all? Formally, we don’t! We just need to fulfill in some way every requirement of the license that has been linked to the image we are using. But the license compliance itself is non-negotiable for the sincere user: either she respects the terms of the license, or she does not use the image.<sup><a href="https://fodina.de/picture-credit-page/#footnote_1_5631" id="identifier_1_5631" class="footnote-link footnote-identifier-link" title="I have already written about image trolls and their 'business model'">2</a></sup></p>



<p>That’s why I make things simple for myself: I enter <strong>every</strong> image into my table for image credits according to the marked pattern. Even those, where I am free to say nothing — like with PxHere pictures. And if I follow the pattern, nothing slips through my hands either. Hopefully.</p>



<p>To that end, I’ve written myself a set of short codes that make it a snap to add a new image to the table. I will gladly pass on these codes on request.</p>


<hr class="wp-block-separator has-alpha-channel-opacity">
<h5 class="wp-block-heading"><i class="fa-solid fa-road"></i> And how does this …</h5>
  <p class="myPageContext">… support our 
  <a href="/bootscore-migration/">migration</a> to 
  <a href="https://bootscore.me/">bootScore</a>? Well,
  once started with <a href="/pimp-your-bootscore/">improving</a> the
  <a href="/speed-up-images">image handling</a>, a web designer will 
  also notice the <a href="/blurred-featured-images/">blurred ‘featured images’</a> 
  of bootScore. She will <a href="/larger-image-squares/">try</a> and 
  <a href="/less-blurred-images/">refine</a> solutions. And she may also tackle them 
  <a href="/without-any-blurred-images/">with new HTML‑5 techniques</a>. Because with 
  that, <a href="/image-databases/">a fancier image strategy</a> combined 
  with <a href="/picture-credit-page/">an integrated license fulfillment process</a>
  and its own <a href="/logos-and-favicons/">logo</a> will really make sense.
  However, pictures bring colors to reading. So they should be integrated into 
  <a href="}/color-concept">a customized color concept</a>. 
  This post also contributes something to this topic.
  </p><hr class="wp-block-separator has-alpha-channel-opacity">

<ol class="footnotes"><li id="footnote_0_5631" class="footnote">BTW: In the European legal space, there is no such thing as ‘public domain’. But we can usually use the images published in this way in America</li><li id="footnote_1_5631" class="footnote">I have already written about image trolls and their ‘business model’</li></ol><p>The post <a href="https://fodina.de/picture-credit-page/">A Picture Credit Page? Really?</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://fodina.de/picture-credit-page/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>A Copyright Line As Feeding For Your Footer</title>
		<link>https://fodina.de/copyright-line/</link>
					<comments>https://fodina.de/copyright-line/#respond</comments>
		
		<dc:creator><![CDATA[Karsten Reincke]]></dc:creator>
		<pubDate>Tue, 07 Feb 2023 18:56:10 +0000</pubDate>
				<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[bootScore]]></category>
		<category><![CDATA[Licensing]]></category>
		<guid isPermaLink="false">http://127.0.0.1/wpd.fd/?p=5282</guid>

					<description><![CDATA[<p>In the European legal area, exploitation rights inherently belong to the author of a work. She does not have to do anything else. In the American legal area, things are different. There, every work falls into the ‘public domain’ by default. Only when the author actively claims her ‘copyright’, the work belongs to her. Thus, [&#8230;]</p>
<p>The post <a href="https://fodina.de/copyright-line/">A Copyright Line As Feeding For Your Footer</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>In the European legal area, exploitation rights inherently belong to the author of a work. She does not have to do anything else. In the American legal area, things are different. There, every work falls into the ‘public domain’ by default. Only when the author actively claims her ‘copyright’, the work belongs to her. Thus, having in copyright line in your footer could be helpful for you:<span id="more-5282"></span></p>



<p>But what happens with original European works in the American legal area? Without claiming authorship, they probably fall into the <em>public domain</em>. So an author is well advised to mark her European publications with a copyright notice, even if this seems superfluous from the European viewpoint.<sup><a href="https://fodina.de/copyright-line/#footnote_0_5282" id="identifier_0_5282" class="footnote-link footnote-identifier-link" title="Therefore the FSF says that the free GNU software is first put under copyright and then becomes copyleft software by means of the GPL.">1</a></sup> And so she should keep it with her Internet sites.</p>



<p class="has-text-align-right"></p><div class="container"><div class="d-flex justify-content-end sample-row"><div class="col-xs"><div class="text-right">[ en | <a href="https://karsten-reincke.de/copyright-line">de</a> ]</div></div></div></div>



<h2 class="wp-block-heading"><i class=" fa-regular fa-face-smile"></i> Solution</h2>



<ul class="wp-block-list">
<li>Add the following line to the file <em>scss/_bscore_custom.scss</em> of your child theme:</li>
</ul>



<pre class="wp-block-code"><code>.bootscore-copyright {display: none;}</code></pre>



<ul class="wp-block-list">
<li>Add a text box to the new widget <em>Footer Info</em> arising under <em>Appearance/Widgets</em>.</li>



<li>Enter a text line starting with ‘©’ YEAR Author-Name’.</li>
</ul>



<h2 class="wp-block-heading" id="block-a46783c3-3d64-4145-af92-78f617e1f00b"><i class=" fa-regular fa-lightbulb"></i> Background</h2>



<p></p><div class="wp-block-image"><figure class="alignleft size-medium is-resized alignleft "><a href="https://fodina.de/wp-content/uploads/2023/04/update-pxb-1672356-420x112-1.png" data-fancybox><img decoding="async" src="https://fodina.de/wp-content/uploads/2023/04/update-pxb-1672356-420x112-1-300x80.png" alt="Update Plate" width="200"></a></figure></div> Until version <em>bootScore 5.2.3.3</em>, we had to create a widget for the copyright line ourselves and activate it in the <a href="https://fodina.de/minor-footer-stuff/">footer.php</a> file. With version 5.2.3.4, the <em>bootScore authors</em> have thankfully taken this idea of an editable CR-Line and provided the widget ‘Footer Info’ for it. In this sense, I have updated the solution and background information.



<p></p>



<p>So, eventually, there is the question of location and copyright sign in the line. In this case, the form is rather secondary: you are not obliged to use the HTML tag $copy; for ©. You can also use images like <i class=" fa-regular fa-copyright"></i> or — very old-fashioned — the string <code>(C)</code>. You also do not need to add a town or a country. In case of dispute, you only have to prove that You are You. That’s why I often add my place of residence and my nation. Does that work? No idea. I’m not a lawyer and I don’t give advice; I just tell. And I have never been involved in a dispute.</p>


<hr class="wp-block-separator has-alpha-channel-opacity">
<h5 class="wp-block-heading"><i class="fa-solid fa-road"></i> And how does this …</h5>
  <p class="myPageContext">… support our 
  <a href="http://fodina.de/bootscore-migration/">migration</a> to 
  <a href="https://bootscore.me/">bootScore</a>?  Well,
  if a web designer must <a href="http://fodina.de/yaml-css/">abandon her current WordPress theme</a>, 
  she needs a replacement. A <a href="https://github.com/bootscore">free ‘off-the-shelf’ theme</a>, 
  she probably wants to <a href="http://fodina.de/pimp-your-bootscore/">personalize</a>. 
  First <a href="http://fodina.de/bootscore-font-awesome-shortcode/">a bit</a> 
  <a href="http://fodina.de/font-awesome-checklist/">cosmetically</a>, then in 
  terms of <a href="http://fodina.de/hyphenation/">the gray value of her pages</a>, 
  <a href="http://fodina.de/bilingualism/">multilingualism</a> and internal
  <a href="http://fodina.de/footnotes/">reference techniques</a> and
  <a href="http://fodina.de/internal-linking/">linking</a>. Finally, 
  she perhaps enables  <a href="http://fodina.de/minor-footer-stuff/">special footers</a>, 
  <a href="http://fodina.de/subordinated-menu/">a secondary menu</a> or 
  a <a href="http://fodina.de/copyright-line/">copyright notice</a> before 
  <a href="http://fodina.de/no-broken-links-please/">checking</a>
  the <a href="http://fodina.de/bootscore-plus-seo/">SEO</a> features 
  of the selected theme. This is a way that this post supports too.
  </p><hr class="wp-block-separator has-alpha-channel-opacity">

<ol class="footnotes"><li id="footnote_0_5282" class="footnote">Therefore <a href="https://www.gnu.org/licenses/copyleft.html">the FSF</a> says that the free GNU software is first put under copyright and then becomes copyleft software by means of the GPL.</li></ol><p>The post <a href="https://fodina.de/copyright-line/">A Copyright Line As Feeding For Your Footer</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://fodina.de/copyright-line/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>The Bitkom Open Source Guide 3.0</title>
		<link>https://fodina.de/bosl-3-0/</link>
					<comments>https://fodina.de/bosl-3-0/#respond</comments>
		
		<dc:creator><![CDATA[Karsten Reincke]]></dc:creator>
		<pubDate>Mon, 11 Jul 2022 13:57:29 +0000</pubDate>
				<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Licensing]]></category>
		<guid isPermaLink="false">http://127.0.0.1/kr/?p=4265</guid>

					<description><![CDATA[<p>For 6 years, the Bitkom Open Source Guide 2.0 was a tutorial for the appropriate use of open-source software. It was a benchmark for German companies. But it has aged over time, naturally. Good that Bitkom and its ‘Open Source’ working group have taken up the topic again: In June 2022, there was officially released [&#8230;]</p>
<p>The post <a href="https://fodina.de/bosl-3-0/">The Bitkom Open Source Guide 3.0</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="wp-block-image"><figure class="alignleft size-medium is-resized is-style-default "><a href="https://fodina.de/wp-content/uploads/2023/05/bosl.png" data-fancybox><img decoding="async" src="https://fodina.de/wp-content/uploads/2023/05/bosl-212x300.png" alt="Riding a dead horse" width="80"></a></figure></div>



<p>For 6 years, the <a href="https://www.bitkom.org/sites/default/files/file/import/FirstSpirit-1498131485664160229-OSS-Open-Source-Software.pdf">Bitkom Open Source Guide 2.0</a> was a tutorial for the appropriate use of open-source software. It was a benchmark for German companies. But it has aged over time, naturally. Good that <a href="https://www.bitkom.org/">Bitkom</a> and its <a href="https://www.bitkom.org/Bitkom/Organisation/Gremien/Open-Source.html">‘Open Source’ working group</a> have taken up the topic again: In June 2022, there was <a href="https://www.bitkom.org/Bitkom/Publikationen/Open-Source-Leitfaden-Praxisempfehlungen-fuer-Open-Source-Software-Version-30">officially released</a> an expanded and refined <a href="https://www.bitkom.org/sites/main/files/2022-06/220624-Bitkom-Leitfaden-Open%20Source-3.0_0.pdf">Bitkom Open Source Guide 3.0</a>, — again intended to be a manual and a benchmark for companies <span id="more-4265"></span></p>



<p class="has-text-align-right"></p><div class="container"><div class="d-flex justify-content-end sample-row"><div class="col-xs"><div class="text-right">[ en | <a href="https://karsten-reincke.de/bosl-3-0">de</a> ]</div></div></div></div>



<div style="height:14px" aria-hidden="true" class="wp-block-spacer"></div>



<p>The one amazing thing is that with this guide, Bitkom has published a ‘handout’ under a (kind of) open-source license for the first time, that is to say: under a Creative Commons license (CC BY-ND 3.0 DE). Apparently, the idea of ​​a freely accessible service is also coming to the fore at Bitkom. That gives his voice even more weight. But it is understandable that Bitkom does not allow third parties to modify the work (ND = Non Derivation). It wants to preserve the gained quality and reliability. However, by using this CC license Bitkom permits any other type of use by third parties, including commercial use. And in the not-too-distant future, Bitkom will certainly bring itself to make the sources generally accessible, not just in a ‘closed’ GitHub organization.</p>



<p>The second astonishing thing is related to this. Bitkom has allowed its authors to organize themselves via and with GitHub. Anyone could take part. Anyone could become a member of the organization and thus access the GitHub repository containing the (partial) results. Bitkom has — again, for the first time and successfully — developed a book using the methods of open-source software development. The authors wrote the chapters of the Bitkom open-source guide in Markdown. Then they checked their modifications into the repository as snippets. Eventually, they combined them as a complete work via incidents and pull requests, although by no means all authors were familiar with GitHub from the beginning. This fact also points beyond itself: <a href="https://git-scm.com/">Git</a>, <a href="https://github.com/">GitHub</a> or <a href="https://gitlab.com/">GitLab</a> can significantly simplify (cross-company) cooperation and collaboration.</p>



<p>And the third amazing thing is the transformation of the content. While the release 2.0 still focused on the legal aspects of use, the new  <a href="https://www.bitkom.org/sites/main/files/2022-06/220624-Bitkom-Leitfaden-Open%20Source-3.0_0.pdf"><strong>Bitkom Open Source Guide 3.0</strong></a> is much more comprehensive and balanced: It discusses both, the benefits of FOSS and its development process. It analyzes the integration into business models and corporate strategies, explains open source compliance, and considers the FOSS history — each on almost the same number of pages. The other aspects of FOSS are no longer an appendage of compliance. The BOSL‑3.0 takes the prerequisites for the successful use of open-source software into account generally, without reducing the topic of ‘license compliance’. And each section, with only 10–20 pages, can easily be used to get a quick overview.</p>



<p>What does this mean for companies? Well, for the moment, BOSL‑3.0 is still a German guideline. But with it, the companies get another reliable guideline that external experts have reviewed several times.</p>


  <hr class="wp-block-separator has-alpha-channel-opacity">
<h5 class="wp-block-heading"><i class="fa-solid fa-link"></i> And in what way is this …</h5>
  <p class="myPageContext">… part of the overarching topic <i class="fa-brands fa-linux"></i> 
  FOSS <i class="fa-brands fa-osi"></i> Compliance? 
  For fulfilling the requirements of <a href="https://opensource.org/licenses/">FOSS licenses</a>, 
  we have to consider <a href="http://fodina.de/jniz/">specific</a> individual 
  <a href="http://fodina.de/yocto-iot-gplv3/">cases</a> as well as 
  <a href="http://fodina.de/lilypond-gpl/">side effects</a> — for 
  <a href="http://fodina.de/license-compliant-javascript/">software</a>, 
  <a href="http://fodina.de/image-databases/">pictures</a>, or documents. 
  We should unhide <a href="http://fodina.de/cc-by-trolls/">trends</a> and write 
  <a href="http://fodina.de/bosl-3-0/">guidelines</a>. Above all, however, we must 
  drive forward the <a href="http://fodina.de/tdosca/">automation of license fulfillment</a>, 
  make our <a href="http://fodina.de/oslic/">licensing knowledge</a> freely available, 
  cast it into <a href="http://fodina.de/oscad/">smaller tools</a>, and 
  <a href="http://fodina.de/oscake/">bring it into larger systems</a>: Because FOSS 
  thrives on freedom through license fulfillment, large and small. 
  That’s what also this article is about.</p>
  <hr class="wp-block-separator has-alpha-channel-opacity">
<p>The post <a href="https://fodina.de/bosl-3-0/">The Bitkom Open Source Guide 3.0</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://fodina.de/bosl-3-0/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>CC-BY Image Trolls</title>
		<link>https://fodina.de/cc-by-trolls/</link>
					<comments>https://fodina.de/cc-by-trolls/#respond</comments>
		
		<dc:creator><![CDATA[Karsten Reincke]]></dc:creator>
		<pubDate>Sat, 26 Feb 2022 14:31:53 +0000</pubDate>
				<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Images]]></category>
		<category><![CDATA[Licensing]]></category>
		<guid isPermaLink="false">http://127.0.0.1/kr/?p=3987</guid>

					<description><![CDATA[<p>A presentation without images sucks. Therefore, we are sometimes tempted to take some from the Internet for beautifying our work. There are so many excellent pictures on the World Wide Web. But to legally inserting a foreign picture in one’s own presentation is not that easy. Unfortunately, a new type of troll has emerged recently, [&#8230;]</p>
<p>The post <a href="https://fodina.de/cc-by-trolls/">CC-BY Image Trolls</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="wp-block-image"><figure class="alignleft size-medium is-resized is-style-default "><a href="https://fodina.de/wp-content/uploads/2023/06/troll-600x337-1.png" data-fancybox><img decoding="async" src="https://fodina.de/wp-content/uploads/2023/06/troll-600x337-1-300x169.png" alt="A Troll" width="160"></a></figure></div>



<p>A presentation without images sucks. Therefore, we are sometimes tempted to <a href="https://fodina.de/image-databases/">take some from the Internet</a> for beautifying our work. There are so many excellent pictures on the World Wide Web. But to legally inserting a foreign picture in one’s own presentation is not that easy. Unfortunately, a new type of troll has emerged recently, the <em>CC-BY image trolls</em>:<span id="more-3987"></span></p>


<div class="container"><div class="d-flex justify-content-end sample-row"><div class="col-xs"><div class="text-right">[ en | <a href="https://karsten-reincke.de/cc-by-trolls">de</a> ]</div></div></div></div>



<div style="height:22px" aria-hidden="true" class="wp-block-spacer"></div>



<p>If we reuse pictures from the Internet, we have to respect the copyrights of the painters or photographers, just as we have to pay license fees to the patent owners, if we use their techniques, or as we have to fulfill the license requirements if we reuse open-source software. Recently, a new type of troll has emerged, the ‘image troll’.[<a href="#FN147">1</a>] It is good to know how they work and how we can protect ourselves from falling victim to them:</p>



<p>Often, free pictures are released under one of the Creative-Commons Licenses. They are similar to Open-Source Licenses: both follow the principle of ‘Paying by Doing’. Instead of paying for getting the right to use licensed objects, you have to do something. Which rights you get and what you have to do depends on the license. There exists a complex system of creative commons licenses[<a href="#FN2">2</a>], but nearly all of them have a ‘BY’ clause indicating, that you must give the photographer’s name, state the license version, and include a link to download the image and a link to download the license text.[<a href="#FN3">3</a>]</p>



<p>These BY-conditions are — as the discoverer of the <em>image trolls</em> said — “[…] easy to get wrong”.[<a href="#FN147">4</a>] That’s the one ingredient an <em>image troll</em> needs: the easier it is to miss the conditions, the more potential victims he has.</p>



<p>The second ingredient is, that earlier versions of the CC-licenses — like the license <em>CC-BY 2.0</em> or the license <em>CC-BY 3.0</em> — contain a “Termination” clause: “This License and the rights granted hereunder will terminate automatically upon any breach by You of the terms of this License.”[<a href="#FN5">5</a>] The meaning of this clause is, that you ‘lose’ the rights of use the moment you fail to fulfill a condition.</p>



<p>One can recognize the explosiveness of such a clause from the fact that the license <em>CC-BY 4.0</em> also contains a termination clause, but additionally provides the possibility to heal a violation: It says that the terminated rights “[…] reinstates automatically as of the date the violation is cured, provided it is cured within 30 days of Your discovery of the violation […]”.[<a href="#FN6">6</a>]</p>



<p>As a third ingredient an ‘image troll’ needs a method to automatically find the users of his pictures and to analyze whether he failed to fulfill the requirements. Meanwhile, the internet offers a very well-established technique to automatically search for similar images on the Internet.</p>



<p>The fourth ingredient an ‘image troll’ needs is a legal system granting him large compensation payments for rights violations. The USA has such a legal system.</p>



<p>So, how does an <em>image troll</em> work? He only must create nice pictures and publish them in a well-used image database under any CC license with a termination clause.  That becomes his “honeypot”. After that, he must automatically crawl the internet for his picture and analyze whether his ‘customers’ have fulfilled his conditions. If not, he can file a lawsuit against the respective user — his next victim. And at least in the USA, we talk about “statutory damages” up to $150.000.[<a href="#FN147">7</a>]</p>



<p>What can we do to protect ourselves from such attacks, which are legal but at the very least go against the spirit of free software and documents?</p>



<ul class="wp-block-list">
<li>The best method to protect yourself is a) to perfectly know under which terms the pictures you are going to reuse are licensed, and b) to thoroughly fulfill all license requirements.</li>



<li>A good method is to focus on <em>CC0</em> licensed pictures[<a href="#FN8">8</a>] as — for example — offered by <em>pxhere.com</em>[<a href="#FN9">9</a>]: a license, which does not require anything, cannot be misused to file a lawsuit against you.</li>



<li>Another good method is to focus on <em>CC-BY-xyz 4.0</em> licensed pictures.[<a href="#FNA">A</a>] While you must also thoroughly comply with all licensing requirements, at least you have a chance to iron out your mistakes.</li>



<li>If you want to use <em>CC-BY-xyz 3.0 or earlier</em> licensed pictures, you should read and apply the license text, not only the summaries, offered by creative commons.</li>
</ul>



<p>But ignoring image copyrights altogether and just grabbing off the internet what you think you need is the most certain way that any copyright owner will catch you up in a lawsuit. Just as using Open Source Software without fulfilling the license requirements or using patented techniques without paying the license fees.</p>


  <hr class="wp-block-separator has-alpha-channel-opacity">
<h5 class="wp-block-heading"><i class="fa-solid fa-link"></i> And in what way is this …</h5>
  <p class="myPageContext">… part of the overarching topic <i class="fa-brands fa-linux"></i> 
  FOSS <i class="fa-brands fa-osi"></i> Compliance? 
  For fulfilling the requirements of <a href="https://opensource.org/licenses/">FOSS licenses</a>, 
  we have to consider <a href="http://fodina.de/jniz/">specific</a> individual 
  <a href="http://fodina.de/yocto-iot-gplv3/">cases</a> as well as 
  <a href="http://fodina.de/lilypond-gpl/">side effects</a> — for 
  <a href="http://fodina.de/license-compliant-javascript/">software</a>, 
  <a href="http://fodina.de/image-databases/">pictures</a>, or documents. 
  We should unhide <a href="http://fodina.de/cc-by-trolls/">trends</a> and write 
  <a href="http://fodina.de/bosl-3-0/">guidelines</a>. Above all, however, we must 
  drive forward the <a href="http://fodina.de/tdosca/">automation of license fulfillment</a>, 
  make our <a href="http://fodina.de/oslic/">licensing knowledge</a> freely available, 
  cast it into <a href="http://fodina.de/oscad/">smaller tools</a>, and 
  <a href="http://fodina.de/oscake/">bring it into larger systems</a>: Because FOSS 
  thrives on freedom through license fulfillment, large and small. 
  That’s what also this article is about.</p>
  <hr class="wp-block-separator has-alpha-channel-opacity">



<ul class="wp-block-list">
<li><a name="FN147"></a>[1], [4], [7]:  cf. <a href="https://doctorow.medium.com/a-bug-in-early-creative-commons-licenses-has-enabled-a-new-breed-of-superpredator-5f6360713299">https://doctorow.medium.com/a‑bug-in-early-creative-commons-licenses-has-enabled-a-new-breed-of-superpredator-5f6360713299</a>. This article reports on aspects that <em>Cory Doctorow</em> has outlined first. He talks about ‘copyleft trolls’. But I think that using pictures inadequately is the most dangerous.</li>



<li><a name="FN2"></a>[2]: cf. <a href="https://creativecommons.org/about/cclicenses/">https://creativecommons.org/about/cclicenses/</a></li>



<li><a name="FN3"></a>[3]: cf. <a href="https://creativecommons.org/licenses/by/4.0/legalcode">https://creativecommons.org/licenses/by/4.0/legalcode</a>, Section 3 Attribution. It is worth to know the CC organization provide summaries that condense these conditions to the one sentence ‘Credit must be given to the creator’ (cf. <a href="https://creativecommons.org/licenses/by/3.0/">https://creativecommons.org/licenses/by/3.0/</a>). Hence, you are not free to acknowledge the author just as you want.</li>



<li><a name="FN5"></a>[5]: cf. <a href="https://creativecommons.org/licenses/by/2.0/legalcode">https://creativecommons.org/licenses/by/2.0/legalcode</a> or <a href="https://creativecommons.org/licenses/by/3.0/legalcode">https://creativecommons.org/licenses/by/3.0/legalcode</a></li>



<li><a name="FN6"></a>[6]: cf. <a href="https://creativecommons.org/licenses/by/4.0/legalcode">https://creativecommons.org/licenses/by/4.0/legalcode</a></li>



<li><a name="FN8"></a>[8]: cf. <a href="https://creativecommons.org/publicdomain/zero/1.0/">https://creativecommons.org/publicdomain/zero/1.0/</a></li>



<li><a name="FN9"></a>[9]: cf. <a href="https://pxhere.com/en/license">https://pxhere.com/en/license</a></li>



<li><a name="FNA"></a>[A]: cf. <a href="https://creativecommons.org/licenses/by/4.0">https://creativecommons.org/licenses/by/4.0</a></li>
</ul>
<p>The post <a href="https://fodina.de/cc-by-trolls/">CC-BY Image Trolls</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://fodina.de/cc-by-trolls/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Automating FOSS Compliance: TDOSCA &#038; OSCake</title>
		<link>https://fodina.de/tdosca/</link>
					<comments>https://fodina.de/tdosca/#respond</comments>
		
		<dc:creator><![CDATA[Karsten Reincke]]></dc:creator>
		<pubDate>Sat, 28 Nov 2020 10:14:48 +0000</pubDate>
				<category><![CDATA[Compliance]]></category>
		<category><![CDATA[FSFE]]></category>
		<category><![CDATA[Licensing]]></category>
		<category><![CDATA[OSI]]></category>
		<guid isPermaLink="false">http://127.0.0.1/kr/?p=3106</guid>

					<description><![CDATA[<p>By releasing the Open Source License Compendium and the Open Source Compliance Advisor, Deutsche Telekom has supported Open Source Compliance. At BOSL‑3.0 I was one of the co-authors — on behalf of DT. But DT offers so many complex Open Source based products that it is too expensive to create the necessary Open Source compliance [&#8230;]</p>
<p>The post <a href="https://fodina.de/tdosca/">Automating FOSS Compliance: TDOSCA &amp; OSCake</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="wp-block-image">
<figure class="alignleft size-full is-resized"><img decoding="async" src="https://fodina.de/wp-content/uploads/2023/06/oscake-logo-400x482-1.png" alt class="wp-image-6327" width="95" height="115" srcset="https://fodina.de/wp-content/uploads/2023/06/oscake-logo-400x482-1.png 400w, https://fodina.de/wp-content/uploads/2023/06/oscake-logo-400x482-1-249x300.png 249w" sizes="(max-width: 95px) 100vw, 95px"></figure></div>


<p>By releasing the <a href="https://fodina.de/oslic/"><em>Open Source License Compendium</em></a> and the <a href="https://fodina.de/oscad/"><em>Open Source Compliance Advisor</em></a>, <span style="color: #e20074;">Deutsche Telekom</span> has supported Open Source Compliance. At <a href="https://fodina.de/bosl-3-0/">BOSL‑3.0</a> I was one of the co-authors — on behalf of DT. But <span style="color: #e20074;">DT</span> offers so many complex Open Source based products that it is too expensive to create the necessary Open Source compliance artifacts manually. Thus, <span style="color: #e20074;">DT</span> needs a practically usable automated toolchain. This post discusses a new method (<a href="https://github.com/Open-Source-Compliance/tdosca">TDOSCA</a>) and a new tool (<a href="https://fodina.de/oscake/">OSCake</a>) for automating FOSS compliance that DT develops and contributes under the umbrella of the Open Chain Project.<span id="more-3106"></span></p>


<div class="container"><div class="d-flex justify-content-end sample-row"><div class="col-xs"><div class="text-right">[ en | <a href="https://karsten-reincke.de/tdosca">de</a> ]</div></div></div></div>



<div style="height:29px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">3 simple questions for an Open Source Compliance tool</h2>



<p>Without any doubt, there exist already many Open Source compliance tools. The <a href="http://oss-compliance-tooling.org/Tooling-Landscape/OSS-Based-License-Compliance-Tools/.">Open-Chain-Reference-Tooling-Work-Group</a> has compiled a list of relevant information:</p>


<div class="wp-block-image"><figure class="alignright size-medium is-resized is-style-default "><a href="https://fodina.de/wp-content/uploads/2023/06/a-3questions.png" data-fancybox><img decoding="async" src="https://fodina.de/wp-content/uploads/2023/06/a-3questions-300x207.png" alt="TDOSCA architecture" width="160"></a></figure></div>



<ul class="wp-block-list">
<li>Some of the tools can be grouped by the offering organizations like the Apache Foundation, SPDX, Eclipse, or the About Code Initiative.</li>



<li>Some of the tools are on the sidelines because they have a specific focus or are not really tools or anything else.</li>



<li>Some other means are services, not tools.</li>
</ul>



<p><span style="color: #e20074;"><strong>Deutsche Telekom</strong></span> has a simple point of view on FOSS compliance tools. Whenever <span style="color: #e20074;"><strong>DT</strong></span> comes across such a tool, it asks: Does this tool deliver the FOSS compliance artifacts <span style="color: #e20074;"><strong>DT</strong></span> really needs? If not</p>



<ul class="wp-block-list">
<li>What part of them can it deliver?</li>



<li>How much work does <span style="color: #e20074;"><strong>DT</strong></span> still have to do manually if it used the tool?</li>
</ul>



<p><span style="color: #e20074;"><strong>DT</strong></span> has a long tradition of evaluating FOSS compliance tools. Its employees met excellent tools and brilliant experts. They often thought they could essentially support <span style="color: #e20074;"><strong>DT</strong></span>. But in the end, <span style="color: #e20074;"><strong>DT</strong></span> mostly felt like they didn’t really understand what DT needed (and still needs). To clarify this point: Whoever delivers large lists of (found) FOSS items and says that a company now has to discuss each entry of the list with its legal department does not really help the company.</p>



<p>Nevertheless, <span style="color: #e20074;"><strong>DT</strong></span> has to deal with such large lists, today known as ‘<a href="https://en.wikipedia.org/wiki/Software_supply_chain">Software Bill of Material</a>’. Open-Source-Compliance is not a question of pleasure or displeasure. Either one uses Open-Source software and fulfills the respective requirements, or one does not use the software. Therefore <span style="color: #e20074;"><strong>DT</strong></span> can’t wait anymore. The complexity of its products enforces <span style="color: #e20074;"><strong>DT</strong></span> to advance the automation of open source compliance actively. For solving that issue, it doesn’t want to start the next greenfield approach but to participate in existing projects — entirely in the spirit of the open-source idea.</p>



<h2 class="wp-block-heading">Setting up the <span style="color: #e20074;">T</span>est-<span style="color: #e20074;">D</span>riven environment </h2>



<p><span style="color: #e20074;"><strong>DT</strong></span>’s first step was to improve its own communication: it wants to clarify in a better way what it really needs — from the point of view of a large company dealing with many complex software stacks. Thus, <span style="color: #e20074;"><strong>DT</strong></span> tried to apply the idea of ‘Test-Driven Software Development’ to the development of compliance tools:</p>



<ul class="wp-block-list">
<li>On the one side, these test cases should contain really usable software, licensing statements, and dependency information — in a way that real projects use.</li>



<li>On the other side, these test cases should contain those compliance artifacts that would allow the distribution of the software compliantly if added to the respective software package. </li>
</ul>



<p>Additionally, <span style="color: #e20074;"><strong>DT</strong></span> thinks:</p>



<ul class="wp-block-list">
<li>E<em>xisting open-source projects are mostly too complex for being used as reference material</em>.</li>



<li><em>Artificially generated software could better focus on essential compliance issues</em>.</li>



<li><em>The reference software should functionally be a simple hello world program</em>.</li>



<li><em>And it should ‘implement’ sophisticated compliance issues </em>in a way that<em> real open-source</em> projects use.</li>
</ul>



<p>By using such test cases, DT wants to enable the community, the tools, and the companies to verify,</p>



<ul class="wp-block-list">
<li>with which compliance traps a tool can already successfully deal,</li>



<li>which artifacts a tool already deliver (and which not),</li>



<li>where there are still some open issues, and</li>



<li>where deviating results are only a matter of interpretation.</li>
</ul>



<h2 class="wp-block-heading">The ‘Hello World’ Open Source Compliance Test Cases</h2>



<p>All TDOSCA-test-cases are offered under the umbrella of the GitHub organization <a href="https://github.com/Open-Source-Compliance/"><em>Open-Source-Compliance</em></a> and clustered by the prefix <a href="https://github.com/Open-Source-Compliance/tdosca"><em>tdosca</em></a>. The README of main repository <a href="https://github.com/Open-Source-Compliance/tdosca/blob/master/README.md"><em>tdosca</em></a> describes the general approach: one may expect that each test case offers the same structure. For example, take a look at <a title="https://github.com/Open-Source-Compliance/tdosca-tc06-plainhw" href="https://github.com/Open-Source-Compliance/tdosca-tc06-plainhw">tdosca-tc06-plainhw</a>:</p>



<ul class="wp-block-list">
<li> On the top level, a test case-specific README describes its intention. </li>



<li>In the directory <em>input-sources</em>, you find a compilable software package
<ul class="wp-block-list">
<li>that contains the licensing information just as real open source projects do </li>



<li>and can be installed by a standard technique (in this case: java + maven). </li>
</ul>
</li>



<li> On the top level, a compliance-trap file describes the challenges that are implemented in the source and should be managed by the tools. </li>



<li>And in the directory <em>reference-compliance-artifacts, </em>one can find the compliance artifacts that a tool should deliver:
<ul class="wp-block-list">
<li>a BOM file listing the (sub) components of the package </li>



<li>a list of the packages that must be preinstalled on the target host </li>



<li>the Open Source Compliance File, which — added to the package — establishes a compliantly distributable open-source software package. </li>
</ul>
</li>
</ul>



<p>The test cases themselves are stored in the respective repositories<strong><em> tdosca-tc01</em></strong> … <em><strong>tdosca-tc0n</strong></em></p>



<p>The core reference entity of a test case is its <em>Open Source Compliance File</em>: Such a file shall contain all compliance artifacts so that a package is compliantly distributed if it is bundled with the respective OSCF. This idea was inspired by the file that CISCO adds to its jabber client: https://www.cisco.com/c/dam/en_us/about/doing_business/open_source/ docs/CiscoJabberforWindows-128–1578365187.pdf. This file is not completely sufficient. But it gives a good idea, how to deal with this issue. In the TDOSCA context, the meaning of such an Open Source Compliance File can be explained by looking at the <a href="https://github.com/Open-Source-Compliance/tdosca-tc06-plainhw/blob/master/reference-compliance-artifacts/oscf.pdf">OSCF of the 6th test case</a>.</p>



<h2 class="wp-block-heading">A summary and an addendum:</h2>



<p>In general each TDOSCA test-case implements the following structure:</p>



<p>The TDOSCA initiative — hosted under the umbrella of OpenChain and the OpenChain Reference Tooling Work Group — could be a good method for the community to evaluate its tools by such test cases.</p>



<p>But if <span style="color: #e20074;"><strong>DT</strong></span> followed this approach purely, <span style="color: #e20074;"><strong>DT</strong></span> would easily slip into the role of a police officer or a judge. That’s not what <span style="color: #e20074;"><strong>DT</strong></span> wants to be; it wants to be a supportive part of the community. For that purpose, <span style="color: #e20074;"><strong>DT</strong></span> has already evaluated existing tools on the base of the TDOSCA test cases, has made some experiences, and decided on some consequences:</p>



<h2 class="wp-block-heading">Applying the approach to ORT</h2>



<p>First <span style="color: #e20074;"><strong>DT</strong></span> decided to use ORT — the <a href="https://github.com/oss-review-toolkit/ort">Open Source Review Toolkit</a> — for creating a break-through tool-chain-version which takes the test-case input and derives the compliance output:</p>



<p>In the picture you see</p>



<ul class="wp-block-list">
<li>the five components, ORT mentions in its README,</li>



<li>the data they generate, and</li>



<li>how they use the output of their predecessors.</li>
</ul>



<p>Using this outline, we can now exemplify some of …</p>



<h2 class="wp-block-heading">… and gaining experiences with ORT</h2>



<ul class="wp-block-list">
<li> First, <span style="color: #e20074;"><strong>DT</strong></span> noticed that it could not evaluate even the first and most simple test case using the GNU Autotools </li>



<li> Second, DT had to learn that in cooperation with Gradle, ORT — for the moment — can not decide which of the found licenses is the default license.</li>



<li> Third, DT noticed that the standard templates included in ORT reader follow the principle of over fulfillment, the principle of over-fulfilling the license requirements. </li>
</ul>



<p>What does the last point mean? If you have a software project completely and exclusively licensed under the MIT license, then it is sufficient to bundle the license text and its embedded copyright line with the package for making it compliantly distributable. Tools that follow the <em>principle of over-fulfillment</em> would also add the artifacts created based on the GPL requirements, such as ‘all copyright headers of all files’ and so on.</p>



<p>Many approaches apply the <em>principle of over-fulfillment</em> — and use a problematic strategy:</p>



<ul class="wp-block-list">
<li>On the one hand, the distributors must correctly create the required compliance artifacts. If they create them incorrectly, they have to expect that someone will approach them about it.</li>



<li>On the other hand, the surplus compliance artifacts could overwrite or lever out the essential artifacts.</li>
</ul>



<p>Fortunately, ORT follows the design principle to make everything configurable and extendable, which allows <span style="color: #e20074;"><strong>DT</strong></span> to adapt its needs in three ways:</p>



<h2 class="wp-block-heading">Improving ORT</h2>



<ul class="wp-block-list">
<li><span style="color: #e20074;"><strong>Deutsche Telekom</strong></span> plans to implement and give back to ORT an evaluation technique of the <em>Autotools</em> scripts. </li>



<li>It will define, implement, and give upstream to ORT a generally usable strategy to determine the default license of a package. </li>
</ul>



<h2 class="wp-block-heading">Extending the case structure</h2>



<ul class="wp-block-list">
<li><span style="color: #e20074;"><strong>DT</strong></span> will define more test cases according to the multi-dimensional room: complexity, programming language, and dependency manager.</li>
</ul>



<h2 class="wp-block-heading">Defining an <span style="color: #e20074;">O</span>pen <span style="color: #e20074;">S</span>ource <span style="color: #e20074;">C</span>ompliance <span style="color: #e20074;">a</span>rtifact <span style="color: #e20074;">k</span>nowledge <span style="color: #e20074;">e</span>ngine</h2>



<ul class="wp-block-list">
<li><span style="color: #e20074;"><strong>DT</strong></span> develops an intelligent component into which it embeds the Open Source License Compliance knowledge in a declarative manner by
<ul class="wp-block-list">
<li>adding respective writers into ORT</li>



<li>adding a FOSS compliance domain-specific language realized on the base of Eclipse, XText</li>



<li>adding a respective compliance artifact composer based on XTend.</li>
</ul>
</li>
</ul>



<p>DT names this new component of and for <em>Open Source Compliance Chains</em> <span style="color: #e20074;"><strong>OSCake</strong></span> — the <em><span style="color: #e20074;"><strong>O</strong></span>pen <span style="color: #e20074;"><strong>S</strong></span>ource <span style="color: #e20074;"><strong>C</strong></span>ompliance <span style="color: #e20074;"><strong>a</strong></span>rtifact <span style="color: #e20074;"><strong>k</strong></span>nowledge <span style="color: #e20074;"><strong>e</strong></span>ngine</em> -,  and develops it under the terms of the Eclipse Public License 2.0</p>



<p><span style="color: #e20074;"><strong>OSCake</strong></span> shall close the gaps evoked by Open Source scanning tools that follow the principle of compliance over-fulfillment. It will take Open Source Compliance collections and deliver Open Source Compliance Files that really fit the requirements of the involved Open Source Licenses and their contexts. OSCake will become an agnostic compliance knowledge engine; it will not depend on a specific scanning tool but only on an error-tolerant input format. For being able to offer these features, OSCake will have an internal structure:</p>



<h2 class="wp-block-heading">Fazit</h2>



<p>TDOSCA and OSCake establish a promising goal set for the company itself as well as for the community and other commercial approaches:</p>



<ul class="wp-block-list">
<li><span style="color: #e20074;"><strong>DT</strong></span> indeed wants to set up a practically usable FOSS compliance toolchain that automatically generates the compliance artifacts we need.</li>



<li><span style="color: #e20074;"><strong>DT</strong></span> wants to reduce the manual work as far as possible.</li>



<li>And <span style="color: #e20074;"><strong>DT</strong></span> develops this chain (and its components) under the control of TDOSCA: the project to develop Test-Driven Open Source Compliance Artifact Gatherers and Compilers — including our own tool ‘OSCake’.</li>
</ul>



<p>And it is an outstanding aspect that DT is going to develop both parts under the umbrella of <a href="https://www.openchainproject.org/">OpenChain</a> and its <a href="http://oss-compliance-tooling.org/">Open Chain Reference Tooling Workgroup</a>.</p>


  <hr class="wp-block-separator has-alpha-channel-opacity">
<h5 class="wp-block-heading"><i class="fa-solid fa-link"></i> And in what way is this …</h5>
  <p class="myPageContext">… part of the overarching topic <i class="fa-brands fa-linux"></i> 
  FOSS <i class="fa-brands fa-osi"></i> Compliance? 
  For fulfilling the requirements of <a href="https://opensource.org/licenses/">FOSS licenses</a>, 
  we have to consider <a href="http://fodina.de/jniz/">specific</a> individual 
  <a href="http://fodina.de/yocto-iot-gplv3/">cases</a> as well as 
  <a href="http://fodina.de/lilypond-gpl/">side effects</a> — for 
  <a href="http://fodina.de/license-compliant-javascript/">software</a>, 
  <a href="http://fodina.de/image-databases/">pictures</a>, or documents. 
  We should unhide <a href="http://fodina.de/cc-by-trolls/">trends</a> and write 
  <a href="http://fodina.de/bosl-3-0/">guidelines</a>. Above all, however, we must 
  drive forward the <a href="http://fodina.de/tdosca/">automation of license fulfillment</a>, 
  make our <a href="http://fodina.de/oslic/">licensing knowledge</a> freely available, 
  cast it into <a href="http://fodina.de/oscad/">smaller tools</a>, and 
  <a href="http://fodina.de/oscake/">bring it into larger systems</a>: Because FOSS 
  thrives on freedom through license fulfillment, large and small. 
  That’s what also this article is about.</p>
  <hr class="wp-block-separator has-alpha-channel-opacity">



<ul class="wp-block-list">
<li><span><span style="color: #e20074;"><strong>OSLiC</strong></span> sources: <a href="https://github.com/telekom/oslic">https://github.com/telekom/oslic</a></span></li>



<li><span><span style="color: #e20074;"><strong>OSLiC</strong></span> homepage: <a href="http://telekom.github.io/oslic/" title="http://telekom.github.io/oslic/">http://telekom.github.io/oslic/</a></span></li>



<li><span><span style="color: #e20074;"><strong>OSLiC</strong></span> version 1.0.2: <a href="https://telekom.github.io/oslic/releases/oslic.pdf" title="https://telekom.github.io/oslic/releases/oslic.pdf">https://telekom.github.io/oslic/releases/oslic.pdf</a></span></li>



<li><span><span style="color: #e20074;"><strong>OSCAd</strong></span> sources: <a href="https://github.com/telekom/oscad" title="https://github.com/telekom/oscad">https://github.com/telekom/oscad</a></span></li>



<li><span><span style="color: #e20074;"><strong>OSCAd</strong></span> homepage: <a href="https://telekom.github.io/oscad/" title="https://telekom.github.io/oscad/">https://telekom.github.io/oscad/</a></span></li>



<li><span><span style="color: #e20074;"><strong>OSCAd</strong></span> instance: <a href="http://oscad.fodina.de/" title="http://oscad.fodina.de/">http://oscad.fodina.de/</a></span></li>



<li>OpenChain homepage: <a href="https://www.openchainproject.org/" title="https://www.openchainproject.org/">https://www.openchainproject.org/</a></li>



<li>Respective Linux Foundation project page: <a href="https://www.linuxfoundation.org/" title="https://www.linuxfoundation.org/projects/security-compliance/">https://www.linuxfoundation.org/projects/security-compliance/</a></li>



<li>Introduction into the Open Chain Reference Tooling Work Group: <a href="https://www.openchainproject.org/news/2020/03/15/openchain-reference-tooling-work-group-in-2020" title="https://www.openchainproject.org/news/2020/03/15/openchain-reference-tooling-work-group-in-2020">https://www.openchainproject.org/news/2020/03/15/openchain-reference-tooling-work-group-in-2020</a></li>



<li>Open Chain Reference Tooling Work Group homepage: <a href="http://oss-compliance-tooling.org/" title="http://oss-compliance-tooling.org/">http://oss-compliance-tooling.org/</a></li>



<li>Existing Open Source license compliance tools: <a href="http://oss-compliance-tooling.org/Tooling-Landscape/OSS-Based-License-Compliance-Tools/" title="http://oss-compliance-tooling.org/Tooling-Landscape/OSS-Based-License-Compliance-Tools/">http://oss-compliance-tooling.org/Tooling-Landscape/OSS-Based-License-Compliance-Tools/</a></li>



<li><span style="color: #1bada2;"><strong>O</strong></span>pen-source <span style="color: #1bada2;"><strong>R</strong></span>eview <span style="color: #1bada2;"><strong>T</strong></span>oolkit: <a href="https://github.com/oss-review-toolkit/ort" title="https://github.com/oss-review-toolkit/ort">https://github.com/oss-review-toolkit/ort</a></li>



<li><span style="color: #e20074;"><strong>T</strong></span>est <span style="color: #e20074;"><strong>D</strong></span>riven <span style="color: #e20074;"><strong>O</strong></span>pen <span style="color: #e20074;"><strong>S</strong></span>ource <span style="color: #e20074;"><strong>C</strong></span>ompliance <span style="color: #e20074;"><strong>I</strong></span>nitiative: <a href="https://github.com/Open-Source-Compliance/tdosca" title="https://github.com/Open-Source-Compliance/tdosca">https://github.com/Open-Source-Compliance/tdosca</a></li>



<li><span style="color: #e20074;"><strong>O</strong></span>pen <span style="color: #e20074;"><strong>S</strong></span>ource <span style="color: #e20074;"><strong>C</strong></span>ompliance <span style="color: #e20074;"><strong>a</strong></span>rtifact <span style="color: #e20074;"><strong>k</strong></span>nowledge <span style="color: #e20074;"><strong><span>e</span></strong></span>ngine: <a href="https://github.com/Open-Source-Compliance/OSCake" title="https://github.com/Open-Source-Compliance/OSCake">https://github.com/Open-Source-Compliance/OSCake</a></li>



<li>Open Compliance Summit 2020: <a href="https://events.linuxfoundation.org/open-compliance-summit/program/schedule/" title="https://events.linuxfoundation.org/open-compliance-summit/program/schedule/">https://events.linuxfoundation.org/open-compliance-summit/program/schedule/</a></li>
</ul>
<p>The post <a href="https://fodina.de/tdosca/">Automating FOSS Compliance: TDOSCA &amp; OSCake</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://fodina.de/tdosca/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>The Corona Warn App as Open Source Software</title>
		<link>https://fodina.de/cwa/</link>
					<comments>https://fodina.de/cwa/#respond</comments>
		
		<dc:creator><![CDATA[Karsten Reincke]]></dc:creator>
		<pubDate>Tue, 16 Jun 2020 11:00:00 +0000</pubDate>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[Licensing]]></category>
		<guid isPermaLink="false">http://127.0.0.1/kr/?p=2767</guid>

					<description><![CDATA[<p>Today, the German Corona-Warn-App was released as Open Source Software. You may know it as CWA. The journalists mostly received it positively, even those of Spiegel and Welt. The German government wanted to release it as open-source software. That should increase the acceptance of the app by the German people. Unfortunately, there is still some [&#8230;]</p>
<p>The post <a href="https://fodina.de/cwa/">The Corona Warn App as Open Source Software</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Today, the German Corona-Warn-App was released as Open Source Software. You may know it as <a href="https://www.coronawarn.app/de/">CWA</a>. The journalists mostly received it positively, even those of <a href="https://www.spiegel.de/netzwelt/apps/coronavirus-was-sie-ueber-die-warn-app-wissen-sollten-a-b823e18d-d235-42d5-8516-47015cda6c8b">Spiegel</a> and <a href="ttps://www.welt.de/wirtschaft/webwelt/article209655419/Corona-Warn-App-im-Test-Funktion-Design-Leistung-was-kann-das-Programm.html">Welt</a>. The German government wanted to release it as open-source software. That should increase the acceptance of the app by the German people. Unfortunately, there is still some skepticism. Let me comment on some of these concerns:<span id="more-2767"></span></p>


<div class="container"><div class="d-flex justify-content-end sample-row"><div class="col-xs"><div class="text-right">[ en | <a href="https://karsten-reincke.de/cwa">de</a> ]</div></div></div></div>



<div style="height:28px" aria-hidden="true" class="wp-block-spacer"></div>



<ul class="wp-block-list">
<li>Some people say the <a href="https://github.com/corona-warn-app/">CWA</a> is not open-source software because it uses the (closed) API offered by Google or Apple. But the government has released the system <a href="https://opensource.org/licenses/alphabetical">under the terms of an officially approved open-source software license</a> (<a href="https://github.com/corona-warn-app/cwa-documentation/blob/master/LICENSE">Apache v2</a>). And even Richard Stallmann published his Emacs as free software, although it used the underlying Unix system libs.</li>



<li>Others state that one cannot trust the Corona Warn App because it nevertheless can secretly transmit protected data. But the principles of openness and voluntarism prevent this abuse. You can verify that the code does not do anything forbidden or undesirable — by analyzing the publicly accessible code. Additionally, no one enforces us to use this app: you decide whether you install the app or not, you decide whether you make your illness known or not, and you decide whether you call for notifications of illness or not.</li>



<li>Finally, some assume that the corona warn app system later secretly will become a general tool of the Government to monitor the contacts of its citizens. But for doing so, the Governments must at least publish the apps themselves in the official Google and Apple stores. Thus, the skeptics can them with the binaries compiled on the base of the code in the publicly accessible repository: If there is a (big) difference, the reviewer would notice, that there is something strange</li>
</ul>



<p>Hence, we may trust this work, and we should use it for preventing us from overloading our health system.</p>


  <hr class="wp-block-separator has-alpha-channel-opacity">
<h5 class="wp-block-heading"><i class="fa-solid fa-gear"></i> And in what way is this …</h5>
  <p class="myPageContext">… part of the overarching topic <i class="fa-brands fa-linux"></i> 
  FOSS <i class="fa-brands fa-osi"></i>? 
  Well, my <a href="http://fodina.de/kreincke/">professional life</a> is dominated by free software
  and open source compliance. But sometimes I find more offbeat 
  <a href="http://fodina.de/cwa/">tools</a> that are still worth sharing 
  — at least with my forgetful future ‘me’. To whom I like to recommend — for example — 
  <a href="http://fodina.de/atom-ubuntu/">suitable</a>, advanced 
  <a href="http://fodina.de/vscodium/">editors</a>. Or 
  <a href="http://fodina.de/gtgt/">ancient preparatory work</a>. 
  Or some free <a href="http://fodina.de/frescobaldi-ubuntu/">music editors</a> 
  for <a href="http://fodina.de/musescore-ubuntu/">compositoy work</a>. But with some posts, 
  I just want to remind my later ‘me’ of attitudes, points of view, and attitudes. 
  So that I don’t fall behind myself. That’s what it’s about in here too.
  </p><hr class="wp-block-separator has-alpha-channel-opacity">

<p>The post <a href="https://fodina.de/cwa/">The Corona Warn App as Open Source Software</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://fodina.de/cwa/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>GPL-Licensed LilyPond Snippets — And Some Sideaffects</title>
		<link>https://fodina.de/lilypond-gpl/</link>
					<comments>https://fodina.de/lilypond-gpl/#comments</comments>
		
		<dc:creator><![CDATA[Karsten Reincke]]></dc:creator>
		<pubDate>Tue, 29 Oct 2019 19:32:43 +0000</pubDate>
				<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Musicology]]></category>
		<category><![CDATA[Licensing]]></category>
		<guid isPermaLink="false">http://127.0.0.1/kr/?p=2405</guid>

					<description><![CDATA[<p>This article talks about some side effects. It explains why it is a bit suboptimal to distribute LilyPond snippets under the terms of the GPL. Even, if one loves to create, share, and/or use free and open-source software. And believe me, I do so. The side effect is simple. Including GPL-licensed LilyPond snippets enforce you [&#8230;]</p>
<p>The post <a href="https://fodina.de/lilypond-gpl/">GPL-Licensed LilyPond Snippets — And Some Sideaffects</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="wp-block-image">
<figure class="alignleft size-full is-resized"><img decoding="async" src="https://fodina.de/wp-content/uploads/2023/06/harmonyli-ly-logo-160x160-1.png" alt class="wp-image-6387" width="78" height="78" srcset="https://fodina.de/wp-content/uploads/2023/06/harmonyli-ly-logo-160x160-1.png 160w, https://fodina.de/wp-content/uploads/2023/06/harmonyli-ly-logo-160x160-1-150x150.png 150w" sizes="(max-width: 78px) 100vw, 78px"></figure></div>


<p>This article talks about some side effects. It explains why it is a bit suboptimal to distribute <a href="https://fodina.de/harmonyli-ly/">LilyPond snippets under the terms of the GPL</a>. Even, if one loves to create, share, and/or use free and open-source software. And believe me, I do so. The side effect is simple. Including GPL-licensed LilyPond snippets enforce you to distribute your own work under the terms of the GPL:<span id="more-2405"></span></p>


<div class="container"><div class="d-flex justify-content-end sample-row"><div class="col-xs"><div class="text-right">[ en | <a href="https://karsten-reincke.de/lilypond-gpl">de</a> ]</div></div></div></div>



<div style="height:17px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Let us start with some hopefully indisputable points: The program ‘LilyPond’ is licensed under the GPLv3 [⇒ 1]. It wants “[…] (to create) beautiful sheet music”. [⇒ 2] For that purpose, the program LilyPond takes a file containing a music sheet represented in and by the LilyPond language. And based on this input file, LilyPond compiles the output: </p>


<div class="wp-block-image"><figure class="aligncenter size-medium is-resized is-style-default "><a href="https://fodina.de/wp-content/uploads/2023/06/tristan-chord.png" data-fancybox><img decoding="async" src="https://fodina.de/wp-content/uploads/2023/06/tristan-chord.png" alt="Tristan Chord" width="360"></a></figure></div>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>LilyPond is a compiled system: it is run on a text file describing the music. The resulting output is viewed on-screen or printed. In some ways, LilyPond is more similar to a programming language than graphical score editing software. [⇒ 3]</p>
</blockquote>



<p>Hence, the language LilyPond pretends for writing a music sheet is a programming language executed by the LilyPond interpreter. Writing music in and by LilyPond is software programming. In other words: LilyPond is a programming system like PHP‑, PYTHON‑, or BASH. The interpreter (the PHP‑, python‑, bash‑, or LilyPond engine) takes its input code and creates the corresponding, but new output. Such (open source based) engines are often licensed under different licenses than the code they execute. For example, PHP is licensed under the PHP license. But there exist many PHP programs licensed under the MIT, the BSD, or even under the LGPL license. </p>



<p>This holds also true for LilyPond — as the LilyPond repository proves. This repository contains … [⇒ 4] </p>



<ul class="wp-block-list">
<li>a file named COPYING which contains the text of the GPLv3 license. </li>



<li> a file named LICENSE, stating that LilyPond falls under the terms of the GPLv3.</li>



<li> a file named LICENSE.Documentation stating that all document input falls under the GNU Free Documentation License except the files in the directory snippets. They are public domain. </li>
</ul>



<p>From these facts we can conclude:</p>



<ol class="wp-block-list">
<li>LilyPond itself is licensed under the terms of the GPL: You may run, study, modify and redistribute it. But in case of distributing a (modified) instance, you have also to distribute the License text, a list of the copyright owners, the source code and some other compliance artifacts — namely together with your instance.</li>



<li>But the GPLv3 does not say anywhere, that the input files (e.g. the snippets, written in the LilyPond language) or the output files (pdf, png, …) have also to be distributed under the terms of GPLv3.</li>



<li>Additionally, the LilyPond copyright holders DO NOT require anywhere that the input and output files also have to be released under the GPL (what they could have done, as for the example some code generators have done).</li>



<li>Moreover, the LilyPond copyright owners know and accept that the LilyPond input (and output) files are not automatically be covered by the ‘strong copyleft effect’ of the GPL. Otherwise, they could not have embedded a set of snippets into their repository while stating that these are part of the public domain.</li>
</ol>



<p>Hence, we may generally conclude that — from the viewpoint of LilyPond and its developers — the LilyPond input and output files may be licensed under other licenses than the interpreting program itself.</p>



<p>Consequently, we now should ask, which license the LilyPond snippet authors should choose. We see two role models:</p>



<ol class="wp-block-list">
<li>The first role model is the LilyPond Snippets Repository which hosts reusable snippets. In accordance to this LSR, all these snippets are public domain. [⇒ 5]</li>



<li> The second model is the Open LilyPond Library. [⇒ 6]  Its homepage is mostly a site skeleton. It only says that “openLilyLib is an enhancement library for the GNU LilyPond music notation software”. [⇒ 7 ] But if one takes a look at the GitHub repositories collected under openlilylib [⇒ 6], one finds the main repository “oll-core”, which introduces itself as “the heart of openLilyLib” and promises to provide common functionality that any ‘openLilyLib’ package uses. [⇒ 8]</li>
</ol>



<p>Although this repository does not contain any file named COPYING (containing the GPL) or a file LICENSE or LICENSING, the header of the central source code file ‘<code>package.ily</code>’ clearly states, that “[…] <em>openLilyLib is free software: you can redistribute it and/or modify  it under the terms of the GNU General Public License</em>”. [⇒ 9] This statement describes the will of developers (copyright owners) that each user of openlilylib has to respect. </p>



<p><strong>But  unfortunately the role model ‘GPLv3 licensed LilyPond snippets’ has some very unattractive consequences:</strong></p>



<p>We know already, that the LilyPond snippet code itself is software. The command #include “ABC.ly” links a snippet into one’s own LilyPond music code. Or you copy the content of a snippet into your music code literally. Both modes of use trigger the strong copyleft effect of the GPL (v3 and v2): if my code functionally calls a method offered by a GPL-licensed snippet or if my code contains the GPL-licensed snippet literally, then my work depends on this GPL-licensed prework and I have to distribute my code also under the terms of the GPL, regardless whether I distribute it as source code or in form of compiled results.</p>



<p><strong>Now, you might smell the rat</strong>: If I write my music by using the LilyPond description language and if I use any GPL-licensed snippet to do so, then I have to distribute my music under the terms of the GPL, namely the created pictures / pdfs as well as the code itself. Moreover, by distributing it under the GPL I grant anyone, who gets my results to use them, to study them, to modify them, and to redistribute them. And what does it mean to use music scores: Beside others, of course, to play the music.</p>



<p><strong>Hence, using a GPL-licensed</strong> LilyPond snippet for creating your own music — regardless, of <strong>whether you use the include- or the copy &amp; paste method — evokes that everyone who gets your work also and inherently gets the right to use it — for any purpose and without having to ask you again.</strong></p>



<p>For being clear: Any author has the right to license his work under any license he likes. And the users of his work have to fulfill the requirements of the license he has chosen. No doubt. That’s the core of the Free Software World.</p>



<p>But what can those snippet developers do, who do not want to load such heavy consequences on their users?</p>



<ul class="wp-block-list">
<li>First, you might think that they could distribute their snippets/libs under the terms of the LGPL. [⇒ B] Then — due to the weak copyleft effect of the LGPL [⇒ B, §2/§4] — their users are free to distribute their own code/music under different conditions.</li>
</ul>



<p>But that has also a — perhaps unwished — side effect: If I wrote a piece of music based on an LGPL licensed snippet, then I have to distribute together with my work the code of the snippet, the LGPL license text itself, a list of copyright owners [⇒ B, §4], and some other compliance artifacts. Distributing my work without these compliant artifacts would simply not be compliant. And for this it does not matter whether  I distribute my work as Lilypond source code or binary pictures or pdfs!</p>



<ul class="wp-block-list">
<li>As a substitute, the snippet developers could explicitly state that distributing the music in the form of pictures / pdfs does NOT trigger the requirements of the LGPL. </li>
</ul>



<p>Linking an open-source license with such an exception is a well-known practice. But using a really appropriate license is better than using an exception. Such a supplement states that the license text does not mean what it says.</p>



<ul class="wp-block-list">
<li>Third, they could license their LilyPond snippet under any other permissive open-source license. </li>
</ul>



<p>But even these licenses enforce them to distribute compliance artifacts together with their music — in case of the Apache‑2.0 license, for example, the license text itself and the NOTICE file of their packages. [⇒ C §4]</p>



<ul class="wp-block-list">
<li>Finally, they could license the snippets/libs under the terms of one of the creative commons licenses [⇒ D] </li>
</ul>



<p>By using the respective attributes they determine how the users shall show them respect (BY) and which additional requirements they have to fulfill [SA] or whether they do not have to fulfill any requirements [CC0]</p>



<ul class="wp-block-list">
<li>And very last they could shift their snippets into the public domain. In this case, they have to give up all copyrights. </li>
</ul>



<p>The LSR chose this way to distribute the snippets. Unfortunately, this indeed does not hold for the European Legal Area: Here, we cannot give up our copyrights, we can only grant some of them to others: In Europe, there does not exist any ‘public domain’</p>



<p>Hence, what shall we do, if we — the snippet developers — want to support other musicians by simplifying their development work instead of burdening it by enforcing them to create some seldom recognized compliance artifacts?</p>



<ul class="wp-block-list">
<li>First, we can distribute our LilyPond snippets under the terms of the MIT license.<strong> </strong>This license is so small, that we can literally integrate it into our source code. Then, our source code contains already all artifacts the license requires: <em>„The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.“</em> [⇒ E]</li>



<li>Second, we can distribute our snippets under the terms of a creative commons license. But only the CC0 does not impose our users anything. [⇒ F]</li>



<li>Third, we can use the method of dual licensing — just as I did in the case of my snippet ‘<a href="https://fodina.de/harmonyli-ly/">harmonyli.ly</a>’.</li>
</ul>



<p><strong>Yes, if we do so, we can no longer enforce, that our users share their improvements with the community. But let us be honest with ourselves: are our snippets so important, that we must protect their worth? I think, sometimes it is better to give without requiring a return. </strong>Our users often give us something back <strong>voluntarily. </strong></p>


  <hr class="wp-block-separator has-alpha-channel-opacity">
<h5 class="wp-block-heading"><i class="fa-solid fa-link"></i> And in what way is this …</h5>
  <p class="myPageContext">… part of the overarching topic <i class="fa-brands fa-linux"></i> 
  FOSS <i class="fa-brands fa-osi"></i> Compliance? 
  For fulfilling the requirements of <a href="https://opensource.org/licenses/">FOSS licenses</a>, 
  we have to consider <a href="http://fodina.de/jniz/">specific</a> individual 
  <a href="http://fodina.de/yocto-iot-gplv3/">cases</a> as well as 
  <a href="http://fodina.de/lilypond-gpl/">side effects</a> — for 
  <a href="http://fodina.de/license-compliant-javascript/">software</a>, 
  <a href="http://fodina.de/image-databases/">pictures</a>, or documents. 
  We should unhide <a href="http://fodina.de/cc-by-trolls/">trends</a> and write 
  <a href="http://fodina.de/bosl-3-0/">guidelines</a>. Above all, however, we must 
  drive forward the <a href="http://fodina.de/tdosca/">automation of license fulfillment</a>, 
  make our <a href="http://fodina.de/oslic/">licensing knowledge</a> freely available, 
  cast it into <a href="http://fodina.de/oscad/">smaller tools</a>, and 
  <a href="http://fodina.de/oscake/">bring it into larger systems</a>: Because FOSS 
  thrives on freedom through license fulfillment, large and small. 
  That’s what also this article is about.</p>
  <hr class="wp-block-separator has-alpha-channel-opacity">



<ul class="wp-block-list">
<li>[1] <a href="http://LilyPond.org/gpl.html">http://LilyPond.org/gpl.html</a></li>



<li>[2] <a href="http://LilyPond.org/introduction.html">http://LilyPond.org/introduction.html</a></li>



<li>[3] <a href="http://LilyPond.org/text-input.html">http://LilyPond.org/text-input.html</a></li>



<li>[4] <a href="https://github.com/LilyPond/LilyPond">https://github.com/LilyPond/LilyPond</a></li>



<li>[5] <a href="http://lsr.di.unimi.it/LSR/html/whatsthis.html">http://lsr.di.unimi.it/LSR/html/whatsthis.html</a></li>



<li>[6] <a href="https://github.com/openlilylib/">https://github.com/openlilylib/</a> </li>



<li>[7] <a href="https://openlilylib.org/">https://openlilylib.org/</a></li>



<li>[8] <a href="https://github.com/openlilylib/oll-core">https://github.com/openlilylib/oll-core</a></li>



<li>[9] <a href="https://github.com/openlilylib/oll-core/blob/master/package.ily">https://github.com/openlilylib/oll-core/blob/master/package.ily</a></li>



<li>[A] <a href="https://opensource.org/licenses/GPL-3.0">https://opensource.org/licenses/GPL‑3.0</a></li>



<li>[B] <a href="https://opensource.org/licenses/LGPL-3.0">https://opensource.org/licenses/LGPL‑3.0</a></li>



<li>[C] <a href="https://opensource.org/licenses/Apache-2.0">https://opensource.org/licenses/Apache‑2.0</a></li>



<li>[D] <a href="https://creativecommons.org/share-your-work/licensing-types-examples/">https://creativecommons.org/share-your-work/licensing-types-examples/</a></li>



<li>[E] <a href="https://opensource.org/licenses/MIT">https://opensource.org/licenses/MIT</a></li>



<li>[F] <a href="https://creativecommons.org/publicdomain/zero/1.0/">https://creativecommons.org/publicdomain/zero/1.0/</a></li>
</ul>
<p>The post <a href="https://fodina.de/lilypond-gpl/">GPL-Licensed LilyPond Snippets — And Some Sideaffects</a> appeared first on <a href="https://fodina.de">FODINA 4 FOSS</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://fodina.de/lilypond-gpl/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
	</channel>
</rss>
