ferritreader / ferrit

DISCONTINUED. Former fork of libreddit/libreddit.
GNU Affero General Public License v3.0
51 stars 4 forks source link

rebrand to remove Reddit trademarks #3

Closed Daniel-Valentine closed 2 years ago

Daniel-Valentine commented 2 years ago

Disclaimer. I am not a lawyer.

Libreddit is likely in violation of the Reddit API Terms of Service. So, too, is this fork so long as it references "libreddit" in the title and uses the Snoo anywhere in the app.

I will say that I have unease with the name "libreddit" since it could possibly infringe on Reddit's trademark. I am not a lawyer, but libreddit is probably in violation of the Reddit API Terms §4(a) (to which the Reddit User Agreement links in §3(a)) for embedding "reddit" in its name and its use of the Snoo in libreddit's mobile rendering to link to Reddit. Were we to fork, I think we need to address these issues.

4. Trademarks; Attribution; Publicity.

a. Use of Reddit Trademarks. You are not permitted to use the Reddit Trademarks in, or as part of the name of your application, or any logos used to promote or identify your application, unless expressly authorized in writing by Reddit or in these Terms. Further, You agree not to: (1) create any derivative works of the Reddit Trademarks that may create or reasonably imply Reddit’s endorsement, association or sponsorship with your application; (2) use the Reddit Trademarks in such a way that would mislead, deceive or confuse users, including, but not limited to, using or registering any mark that is confusingly similar to any Reddit Trademarks; and (c) challenge Reddit’s ownership of the Reddit Trademarks and You will not take any action inconsistent with this ownership and You will cooperate, at Reddit’s request and expense, in any action (including the conduct of legal proceedings) which Reddit deems necessary or desirable to establish or preserve Reddit’s exclusive rights in, and to, the Reddit Trademarks. All use of the Reddit Trademarks and all goodwill arising out of such use, will inure to Reddit’s benefit.

We need to remove any and all Reddit trademarks present in the code.

Daniel-Valentine commented 2 years ago

Here are all string references to "libreddit" as of 1284de8c13c. There are 76 in total.

$ git --no-pager grep -in libreddit
.github/ISSUE_TEMPLATE/feature_parity.md:3:about: Suggest implementing a feature into Libreddit that is found in Reddit.com
.github/ISSUE_TEMPLATE/feature_parity.md:15:## Describe how this could be implemented into Libreddit
.github/ISSUE_TEMPLATE/feature_request.md:3:about: Suggest a feature for Libreddit that is not found in Reddit
.github/workflows/docker-arm.yml:36:          tags: spikecodes/libreddit:arm
.github/workflows/docker-armv7.yml:39:          tags: spikecodes/libreddit:armv7
.github/workflows/docker.yml:36:          tags: spikecodes/libreddit:latest
.github/workflows/rust.yml:33:          name: libreddit
.github/workflows/rust.yml:34:          path: target/release/libreddit
.github/workflows/rust.yml:43:        run: sha512sum target/release/libreddit > libreddit.sha512
.github/workflows/rust.yml:53:            target/release/libreddit
.github/workflows/rust.yml:54:            libreddit.sha512
.replit:1:run = "while true; do wget -O libreddit https://github.com/spikecodes/libreddit/releases/latest/download/libreddit;chmod +x libreddit;./libreddit -H 63115200;sleep 1;done"
Cargo.lock:588:name = "libreddit"
Cargo.toml:2:name = "libreddit"
Cargo.toml:5:repository = "https://github.com/spikecodes/libreddit"
Dockerfile:8:WORKDIR /libreddit
Dockerfile:24:COPY --from=builder /libreddit/target/x86_64-unknown-linux-musl/release/libreddit /usr/local/bin/libreddit
Dockerfile:27:RUN adduser --home /nonexistent --no-create-home --disabled-password libreddit
Dockerfile:28:USER libreddit
Dockerfile:33:# Run a healthcheck every minute to make sure Libreddit is functional
Dockerfile:36:CMD ["libreddit"]
Dockerfile.arm:8:WORKDIR /usr/src/libreddit
Dockerfile.arm:24:COPY --from=builder /usr/local/cargo/bin/libreddit /usr/local/bin/libreddit
Dockerfile.arm:27:RUN adduser --home /nonexistent --no-create-home --disabled-password libreddit
Dockerfile.arm:28:USER libreddit
Dockerfile.arm:33:# Run a healthcheck every minute to make sure Libreddit is functional
Dockerfile.arm:36:CMD ["libreddit"]
Dockerfile.armv7:15:WORKDIR /libreddit
Dockerfile.armv7:31:COPY --from=builder /libreddit/target/armv7-unknown-linux-musleabihf/release/libreddit /usr/local/bin/libreddit
Dockerfile.armv7:34:RUN adduser --home /nonexistent --no-create-home --disabled-password libreddit
Dockerfile.armv7:35:USER libreddit
Dockerfile.armv7:40:# Run a healthcheck every minute to make sure Libreddit is functional
Dockerfile.armv7:43:CMD ["libreddit"]
README.md:3:**libbacon** is a front-end for Reddit, written in [Rust](https://www.rust-lang.org/). It is a fork of the [Libreddit project](https://github.com/spikecodes/libreddit) started by [spikecodes](https://spike.codes).
app.json:2:  "name": "Libreddit",
app.json:14:    "LIBREDDIT_DEFAULT_THEME": {
app.json:17:    "LIBREDDIT_DEFAULT_FRONT_PAGE": {
app.json:20:    "LIBREDDIT_DEFAULT_LAYOUT": {
app.json:23:    "LIBREDDIT_DEFAULT_WIDE": {
app.json:26:    "LIBREDDIT_DEFAULT_COMMENT_SORT": {
app.json:29:    "LIBREDDIT_DEFAULT_POST_SORT": {
app.json:32:    "LIBREDDIT_DEFAULT_SHOW_NSFW": {
app.json:35:    "LIBREDDIT_USE_HLS": {
app.json:38:    "LIBREDDIT_HIDE_HLS_NOTIFICATION": {
contrib/libreddit.service:2:Description=libreddit daemon
contrib/libreddit.service:11:EnvironmentFile=-/etc/libreddit.conf
contrib/libreddit.service:12:ExecStart=/usr/bin/libreddit -a ${ADDRESS} -p ${PORT}
docker-compose.yml:7:    container_name: "libreddit"
src/client.rs:76:       .header("User-Agent", format!("web:libreddit:{}", env!("CARGO_PKG_VERSION")))
src/main.rs:107:    let matches = Command::new("Libreddit")
src/main.rs:152:    println!("Starting Libreddit...");
src/main.rs:191:    // Proxy media through Libreddit
src/main.rs:289:    println!("Running Libreddit v{} on {}!", env!("CARGO_PKG_VERSION"), listener);
src/post.rs:229:            // Many libreddit users do not wish to see this kind of comment by default.
src/user.rs:43: // Retrieve other variables from Libreddit request
src/utils.rs:533:           if let Ok(default) = std::env::var(format!("LIBREDDIT_DEFAULT_{}", name.to_uppercase())) {
src/utils.rs:618:// Rewrite Reddit links to Libreddit in body of text
src/utils.rs:626:   // Rewrite external media previews to Libreddit
static/manifest.json:2: "name": "Libreddit",
static/manifest.json:3: "short_name": "Libreddit",
static/style.css:122:nav #libreddit {
templates/base.html:5:      <title>{% block title %}Libreddit{% endblock %}</title>
templates/base.html:7:      <meta name="description" content="View on Libreddit, an alternative private front-end to Reddit.">
templates/base.html:12:     <meta name="apple-mobile-web-app-title" content="Libreddit">
templates/base.html:32:             <a id="libreddit" href="/"><span id="lib">lib</span><span id="reddit">reddit.</span></a>
templates/base.html:51:             <a id="code" href="https://github.com/spikecodes/libreddit">
templates/post.html:19: <meta property="og:description" content="View on Libreddit, an alternative private front-end to Reddit.">
templates/post.html:24: <meta property="twitter:description" content="View on Libreddit, an alternative private front-end to Reddit.">
templates/search.html:4:{% block title %}Libreddit: search results - {{ params.q }}{% endblock %}
templates/search.html:13:           <input id="search" type="text" name="q" placeholder="Search" value="{{ params.q }}" title="Search libreddit">
templates/settings.html:4:{% block title %}Libreddit Settings{% endblock %}
templates/settings.html:66:                     <div id="feed_list" class="helper">Reddit videos require JavaScript (via HLS.js) to be enabled to be played with audio. Therefore, this toggle lets you either use Libreddit JS-free or utilize this feature.</div>
templates/subreddit.html:7: {% else %}Libreddit{% endif %}
templates/user.html:8:{% block title %}{{ user.name.replace("u/", "") }} (u/{{ user.name }}) - Libreddit{% endblock %}
templates/utils.html:19:    <input id="search" type="text" name="q" placeholder="Search" title="Search libreddit" value="{{ search }}">
templates/wiki.html:6:  {% else %}Libreddit{% endif %}
Daniel-Valentine commented 2 years ago

4a9f405 addresses the Reddit branding. We still need a better long-term replacement for the Snoo.