kamadak / exif-rs

Exif parsing library written in pure Rust
BSD 2-Clause "Simplified" License
190 stars 42 forks source link

What is the recommended way to support 2nd clause of license #30

Closed ckcr4lyf closed 1 year ago

ckcr4lyf commented 1 year ago

First of, I know this issue isn't strictly related to this repository. But this is the first BSD library I am using, so want to make sure I do it correctly.

I am new to rust, and am building a CLI program to help sort images based on date. I want to distribute it as a compiled binary.

Is there a recommended way to "reproduce" the copyright notice? The 2nd clause states:

2. Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the distribution.

The simplest way I can think of is to store it in a str literal, and then some CLI flag to print it. But wondering if there might be a recommended / better way

ckcr4lyf commented 1 year ago

FYI: For now I just put it in a markdown file a root of repo: https://github.com/ckcr4lyf/dedup/blob/master/third-party-notices.md#exif-rs

kamadak commented 1 year ago

I am not a lawyer, so do not take this as legal advice.

In a CLI (and also GUI) software, documentation (for example, user manual) is a common place to attribute 3rd party components.

A command line flag to print license information is also an acceptable way, I think. If you distribute only a single binary without documentation, this could be a viable option.

GUI applications sometimes have a window to show license information (like about:license in Firefox and chrome://credit in Chrome).

ckcr4lyf commented 1 year ago

Thanks for the reply. I would be distrivuting as single .exe , so perhaps a flag seems like the way to go. Let me ask the best way to "embed" it behind a CLI flag in the rust forum or similar.