File dengan Apache 2.0 dan modifikasi saya

38

Saya membaca teks asli Lisensi Apache, Versi 2.0 dan penjelasannya dalam bahasa Inggris.

OK, saya menyalin kelas yang didistribusikan oleh The Best Company in the World , lisensi mereka, dan sedikit memodifikasi kode.

File asli dengan perubahan saya.

/*
 * Copyright (C) 2011 The Best Company in the World
 * 
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 * http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.mypackage;

public class MyClass {

    private void someMethod() {
        // Their code
        // My little change
    }
}

Lalu saya menggunakan MyClass di aplikasi saya.

  1. Apakah saya perlu mengganti Perusahaan Terbaik di Dunia dengan nama perusahaan saya atau dengan nama saya sendiri? Jika tidak, akankah proyek saya mengandung dua lisensi: milik mereka dan milik saya? Di mana menyimpannya dalam kasus ini?
  2. Dan sejauh yang saya mengerti, saya harus mendistribusikan aplikasi saya menggunakan Lisensi Apache, Versi 2.0.

Wikipedia mengatakan:

Lisensi Apache secara luas, tetapi tidak secara universal, dianggap permisif karena tidak memerlukan karya turunan dari perangkat lunak, atau modifikasi dari aslinya, untuk didistribusikan menggunakan lisensi yang sama (tidak seperti lisensi copyleft - lihat perbandingan).

Maksim Dmitriev
sumber

Jawaban:

40

Bagian 4 dari Lisensi Apache 2.0 cukup jelas tentang apa yang harus Anda lakukan ketika Anda mendistribusikan file yang diubah:

  • Anda tidak boleh menghapus klaim hak cipta yang ada (yang oleh 'Perusahaan Terbaik di Dunia')
  • Anda harus membuatnya jelas bahwa file telah diubah. Cara termudah adalah dengan hanya menambahkan hak cipta Anda setelah yang asli:

    Modifications copyright (C) 2013 <your company/name>
    

    Jika Anda melakukan modifikasi atas nama perusahaan Anda, maka dalam kebanyakan kasus juga nama yang harus Anda masukkan pada pemberitahuan hak cipta

  • Anda dapat memilih untuk menggunakan lisensi hak cipta yang berbeda untuk modifikasi Anda. Namun, sangat jarang untuk satu file memiliki beberapa bagian yang berlaku untuk berbagai lisensi hak cipta dan saya ragu bahwa aspek hukum dari itu telah diuji di pengadilan, jadi saya akan menyarankan untuk tidak melakukannya.

Jika Anda tidak mendistribusikan modifikasi (atau tidak di luar perusahaan Anda), Anda tidak perlu melakukan apa pun. Lisensi hak cipta hanya berlaku saat mendistribusikan program / perpustakaan.

Bart van Ingen Schenau
sumber
Apakah "boleh memilih lisensi yang berbeda" berarti bahwa karya turunan dapat sepenuhnya berlawanan dengan karya sumber terbuka? Seperti milik atau sesuatu yang lebih ketat.
Talha
3
@Talha: Karya yang dihasilkan memang dapat menggunakan lisensi sumber tertutup, selama persyaratan lain dari lisensi Apache terpenuhi (seperti memberi tahu pengguna Anda bahwa sebagian perangkat lunak dilisensikan di bawah lisensi Apache). Tentunya tidak ada persyaratan untuk mengungkapkan kode yang Anda tulis sendiri.
Bart van Ingen Schenau