Commit ab9085c4 authored by Javier Serrano's avatar Javier Serrano

Format and small typos

parent 3ea4ddcf
......@@ -27,20 +27,20 @@ citecolor=blue]{hyperref}
\section{Introduction}
This document contains guidelines on how to apply the CERN-OHL-S v2 to a given
hardware design, and on the use of hardware designs licensed under
CERN-OHL-S v2. This means we will be talking to you sometimes as a licensor,
and other times as a licensee.
hardware design, and on the use of hardware designs licensed under CERN-OHL-S
v2. This means we will be talking to you sometimes as a licensor, and other
times as a licensee.
As a licensor, there are many ways in which you can make it clear to your
licensees that you are sharing your designs under the licence. These guidelines
are only to be taken as advice, illustrating some ways in which we think this
can be done efficiently.
To help you distinguish between requirements imposed by the licence (mostly as a licensee)
and our suggestions to you (mostly as a licensor), we will use the word `rule'
for the former and the word `suggestion' for the latter. Any perceived
contradiction between these guidelines and the licence text should of course be
resolved in favour of the licence text.
To help you distinguish between requirements imposed by the licence (mostly as a
licensee) and our suggestions to you (mostly as a licensor), we will use the
word `rule' for the former and the word `suggestion' for the latter. Any
perceived contradiction between these guidelines and the licence text should of
course be resolved in favour of the licence text.
\section{How to apply CERN-OHL-S v2 to a hardware design}
......@@ -48,17 +48,17 @@ resolved in favour of the licence text.
Authorship/ownership of the design must be clear and undisputed. Only the legal
owner of the rights in the hardware design may decide under what conditions to
make it available. Generally, If ownership is vested in more than one person/entity, there
must be an agreement among the owners (or a chain of compatible licences from
each of them) to release the hardware design as open hardware, and under the
CERN-OHL-S v2 in particular.
make it available. Generally, if ownership is vested in more than one
person/entity, there must be an agreement among the owners (or a chain of
compatible licences from each of them) to release the hardware design as open
hardware, and under the CERN-OHL-S v2 in particular.
\subsection{Your sources}
\label{subsec:your-sources}
Nowadays, most designers who intend to share their work do so by hosting their
design files (sources) in a publicly-accessible repository using
version-control systems such as git. The sites hosting these repositories usually provide users
design files (sources) in a publicly-accessible repository using version-control
systems such as git. The sites hosting these repositories usually provide users
with the convenience of downloading a whole repository as a compressed (e.g.
zip) file. This is a very effective way of working: it makes it easier for you
to receive feedback, shows your users the complete history of the project and
......@@ -73,21 +73,13 @@ allows them to easily start using it and contributing improvements.
If your goal is to share, it makes sense to provide enough information to users
about the contents of the design package they download, and to make it easy for
them to browse that information. For example, if you have designed your
hardware using proprietary tools, people who download the design files may not
have access to the tools you used. Sometimes you can also provide exported
versions of those files which, although not as useful for modification as the
originals, will make life easier for people who want to understand your designs.
For example, PCB schematics and layout can be exported as pdf files, and
3D mechanical designs can be exported to the STEP format.
\begin{enumerate}[label=\textbf{\ref*{subsec:your-sources}.3}]
\item \textbf{Rule: } if your design is a modification of someone else's
design, or incorporates parts of another's design, and in each case the
other's design is released under CERN-OHL, CERN-OHL-W or CERN-OHL-S you must
(if your tools allow this) include in your design sources versions of the
files exported to formats everybody can read using tools available under an
free or open source software licence.
them to browse that information. For example, if you have designed your hardware
using proprietary tools, people who download the design files may not have
access to the tools you used. Sometimes you can also provide exported versions
of those files which, although not as useful for modification as the originals,
will make life easier for people who want to understand your designs. For
example, PCB schematics and layout can be exported as pdf files, and 3D
mechanical designs can be exported to the STEP format.
\begin{enumerate}[label=\textbf{\ref*{subsec:your-sources}.2}]
\item \textbf{Suggestion: } include in your design sources versions of the
......@@ -96,6 +88,13 @@ For example, PCB schematics and layout can be exported as pdf files, and
source licences, provide information about where the recipient can find them.
\end{enumerate}
\begin{enumerate}[label=\textbf{\ref*{subsec:your-sources}.3}]
\item \textbf{Rule: } if your design is a modification of someone else's
design, or incorporates parts of another's design, and in each case the
other's design is released under CERN-OHL, CERN-OHL-W or CERN-OHL-S you must
(if your tools allow this) include in your design sources versions of the
files exported to formats everybody can read using tools available under a
free or open source software licence.
\end{enumerate}
It can also be good to let people know that you are following this guide, so
......@@ -123,40 +122,41 @@ to the licence at
One of the requirements for licensees who make modifications to the design and
publish those modifications is to make them explicit in a dedicated text file.
As a licensor, you can make this obligation more easy for licensees to see and bear in mind
by including a placeholder file called CHANGES.txt in your sources.
As a licensor, you can make this obligation more easy for licensees to see and
bear in mind by including a placeholder file called CHANGES.txt in your sources.
\begin{enumerate}[label=\textbf{\ref*{subsec:your-sources}.6}]
\item \textbf{Suggestion: } include an empty CHANGES.txt file in your sources.
You may write a few lines in the beginning of the file stating that anyone
modifying the design should provide brief information about the modifications,
including the date they were made, and stating that information about the design should be
added but never removed from that file. It could also state that, according to section 3.3.b
of the licence, licensees should provide a brief entry with a date and the nature of the
modification for each design change. For example `26 April 2020: AC/DC power converter circuit
removed as AC input no longer necessary'. You can make this obligation easier to manage by
making your design modular in the first place (so that the CHANGES.txt file does not accumulate
information from parts of designs which you are not using).
including the date they were made, and stating that information about the
design should be added but never removed from that file. It could also state
that, according to section 3.3.b of the licence, licensees should provide a
brief entry with a date and the nature of the modification for each design
change. For example `26 April 2020: AC/DC power converter circuit removed as
AC input no longer necessary'. You can make this obligation easier to manage
by making your design modular in the first place (so that the CHANGES.txt file
does not accumulate information from parts of designs which you are not
using).
\end{enumerate}
Now, as you have seen, as the initial licensor, relatively few rules apply to
you. We are going to assume that it is your intent to license your
design under CERN-OHL-S v2 though, and in that sense the minimal requirements
are going to be described as `rules' below.
you. We are going to assume that it is your intent to license your design under
CERN-OHL-S v2 though, and in that sense the minimal requirements are going to be
described as `rules' below.
Some files can easily include a header of a text box with copyright and
licensing information which will be easily visible to whoever opens them. For
file types which do not easily grant that possibility, consider using a
separate text file taking as its name the name of the original file with
`.license'\footnote{Here we exceptionally use US spelling for the word
`licence' in order to be coherent with the REUSE project, which is where we got
this idea. See \href{https://reuse.software/}{https://reuse.software/} for
file types which do not easily grant that possibility, consider using a separate
text file taking as its name the name of the original file with
`.license'\footnote{Here we exceptionally use US spelling for the word `licence'
in order to be coherent with the REUSE project, which is where we got this
idea. See \href{https://reuse.software/}{https://reuse.software/} for
details.} appended to it. So if you have e.g. a file called
`my\_3d\_design.FCStd', you can add another file in the same directory called
`my\_3d\_design.FCStd.license' which is a text file containing copyright and
licensing information.
\begin{enumerate}[label=\textbf{\ref*{subsec:your-sources}.7}]
\item \textbf{Rule: } include for each source file, either embedded in the file
itself or in a separate text file which refers to it:
......@@ -179,8 +179,7 @@ licensing information.
\end{enumerate}
\end{enumerate}
Here is an example for a hypothetical designer called Sam Smith hosting a
design
Here is an example for a hypothetical designer called Sam Smith hosting a design
called Gizmo at https://example\_url:
\begin{mdframed}
......@@ -197,31 +196,29 @@ called Gizmo at https://example\_url:
Source location: https://example\_url
\\
As per CERN-OHL-S v2 section 4, should You produce hardware based on this
source, You must where practicable maintain the Source Location visible on the external case of
the Gizmo or other products you make using this source.
source, You must where practicable maintain the Source Location visible on the
external case of the Gizmo or other products you make using this source.
\end{mdframed}
The first three lines in the example above, containing copyright and licence
type, can be substituted by a valid SPDX header, like this:
\noindent SPDX-FileCopyrightText: 2020 Sam Smith \textless
sam@example.com\textgreater\\
SPDX-License-Identifier: CERN-OHL-S-2.0
sam@example.com\textgreater\\ SPDX-License-Identifier: CERN-OHL-S-2.0
or, in case the `or later' version is preferred:
\noindent SPDX-FileCopyrightText: 2020 Sam Smith \textless
sam@example.com\textgreater\\
SPDX-License-Identifier: CERN-OHL-S-2.0+
sam@example.com\textgreater\\ SPDX-License-Identifier: CERN-OHL-S-2.0+
\begin{enumerate}[label=\textbf{\ref*{subsec:your-sources}.7}]
\begin{enumerate}[label=\textbf{\ref*{subsec:your-sources}.8}]
\item \textbf{Suggestion: } use standard SPDX headers whenever possible so that
your choice of licence is easy to understand by humans and computers alike.
\end{enumerate}
Why would you license your design under `CERN-OHL-S v2 or later'? Imagine we
discovered a shortcoming of the licence which made us write a new version,
let's say version 3.0, to fix it. Let us further imagine that we decided to make v3
discovered a shortcoming of the licence which made us write a new version, let's
say version 3.0, to fix it. Let us further imagine that we decided to make v3
incompatible with v2 (this actually happened with the GPL). If you licensed your
design under `v2 only' that means it could not be combined with new designs
licensed under v3. If, on the other hand, you license your design under `v2 or
......@@ -229,11 +226,10 @@ later', you give future licensees the option of interpreting the design as
licensed under the hypothetical v3, and there would be no compatibility issues.
This is quite an important decision to take when you use a reciprocal licence,
so we thought we'd mention it in this guide. You have to make your own judgment
as to whether you believe that CERN can be trusted to ensure that
future versions of the CERN-OHL will be similar in spirit and effect to
this version.
as to whether you believe that CERN can be trusted to ensure that future
versions of the CERN-OHL will be similar in spirit and effect to this version.
\begin{enumerate}[label=\textbf{\ref*{subsec:your-sources}.8}]
\begin{enumerate}[label=\textbf{\ref*{subsec:your-sources}.9}]
\item \textbf{Suggestion: } give some thought to the `or later' option before
publishing your design under CERN-OHL-S v2.
\end{enumerate}
......@@ -242,45 +238,43 @@ We are going to assume that you, as a licensor, want people who receive a produc
based on your design to know that it is Open Hardware and where they can find
the design files for that product, hence:
\begin{enumerate}[label=\textbf{\ref*{subsec:your-sources}.9}]
\item \textbf{Rule: } include in a part of the Source corresponding to a
visible
\begin{enumerate}[label=\textbf{\ref*{subsec:your-sources}.10}]
\item \textbf{Rule: } include in a part of the Source corresponding to a visible
part of the Product (e.g. silkscreen or top copper for a printed circuit
board):
\begin{enumerate}
\item the licence notice: “Licensed under CERN-OHL-S v2”;
\item the Source Location.
\end{enumerate}
\item \textbf{Suggestion: }You can optionally include a copyright notice to be
printed on the Product (remember you must keep intact any Notices in the source,
though), but do \emph{not} include the CERN logo. You may include a copyright
notice. If you do, and your design includes part of other designs, you should at
least acknowledge the work is not all your own by using Copyright \textcopyright
2020 Sam Smith and others.
\item \textbf{Suggestion: } You can optionally include a copyright notice to
be printed on the Product (remember you must keep intact any Notices in the
source, though), but do \emph{not} include the CERN logo. You may include a
copyright notice. If you do, and your design includes part of other designs,
you should at least acknowledge the work is not all your own by using e.g.
Copyright \textcopyright 2020 Sam Smith and others.
\end{enumerate}
\subsection{A Note on Components}
\label{subsec:note-components}
If your design is modular, consider licensing each of the components you have designed
separately, and then having an overarching design, also licensed under an appropriate
variant of CERN-OHL which contains each of the sub-components as an Available Component.
This will make life easier for licensees who only want to make use of one
component of your design.
If your design is modular, consider licensing each of the components you have
designed separately, and then having an overarching design, also licensed under
an appropriate variant of CERN-OHL which contains each of the sub-components as
an Available Component. This will make life easier for licensees who only want
to make use of one component of your design.
\section{How to deal with hardware designs licensed under CERN-OHL-S v2}
\label{sec:receive-designs}
Generally speaking, you must comply with the requirements applying to a
particular design detailed in the accompanying licence. If you
receive hardware designs licensed under the CERN-OHL-S v2, the requirements are
to:
particular design detailed in the accompanying licence. If you receive hardware
designs licensed under the CERN-OHL-S v2, the requirements are to:
\begin{enumerate}[label=\textbf{\ref*{sec:receive-designs}.1}]
\item \textbf{Rule: } keep intact all the copyright, acknowledgment and
trademark notices and
Source Location notices that are on the hardware design sources.
trademark notices and Source Location notices that are on the hardware design
sources.
\end{enumerate}
\begin{enumerate}[label=\textbf{\ref*{sec:receive-designs}.2}]
\item \textbf{Rule: } keep intact the references to the CERN-OHL-S v2.
......@@ -321,7 +315,7 @@ products, you must:
\begin{enumerate}[label=\textbf{\ref*{subsec:modify-designs}.4}]
\item \textbf{Rule: } license the modifications under the `CERN-OHL-S v2' (or
`CERN-OHL-S v2 or later' if permitted by the original licensor, and all other
components of the design allow you to license with the "or later" option.
components of the design allow you to license with the `or later' option).
\end{enumerate}
\subsection{Hardware production and distribution}
......@@ -349,8 +343,10 @@ Location on the hardware:
\section{Asking for help}
If there is something unclear in this guide, or you have any question on how to
apply the licence, the best place to ask is the CERN OHL forum at\\
\href{https://forums.ohwr.org/c/cernohl}{https://forums.ohwr.org/c/cernohl}. You may also find useful information in the FAQs at \href{https://www.ohwr.org/project/cernohl/wikis/faq}{https://www.ohwr.org/project/cernohl/wikis/faq}.
\end {enumerate}
apply the licence, the best place to ask is the CERN OHL forum
at\\ \href{https://forums.ohwr.org/c/cernohl}{https://forums.ohwr.org/c/cernohl}.
You may also find useful information in the FAQs at
\href{https://www.ohwr.org/project/cernohl/wikis/faq}
{https://www.ohwr.org/project/cernohl/wikis/faq}.
\end{document}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment