Rozważam pomysł przeniesienia istniejącego pakietu oprogramowania na inny język. Jest wydany na licencji Apache License 2.0 i jest dystrybuowany za darmo; ale jest duża różnica między używaniem biblioteki a tworzeniem jej kopii. Oczywiście dałbym pełny kredyt i szczerze mówiąc, skąd się wziął, i na pewno nie planuję zarabiać pieniędzy z portu, po prostu wykorzystuję je w innych projektach.
Oczywiście przeczytałem licencję, która mówi:
- Udzielenie licencji autorskiej. Z zastrzeżeniem warunków niniejszej Licencji, każdy Współtwórca niniejszym udziela Użytkownikowi wieczystej, ogólnoświatowej, niewyłącznej, bezpłatnej, nieodpłatnej, nieodwołalnej licencji na prawa autorskie do reprodukcji, przygotowania Dzieł pochodnych, publicznego wyświetlania, publicznego wykonywania, udzielać sublicencji i rozpowszechniać Dzieło i takie Dzieła pochodne w formie Źródłowej lub Obiektowej.
[...]
Redystrybucja. Użytkownik może reprodukować i rozpowszechniać kopie Dzieła lub Dzieł pochodnych na dowolnym nośniku, z modyfikacjami lub bez, oraz w formie Źródła lub Przedmiotu, pod warunkiem spełnienia następujących warunków:
za. Musisz przekazać innym odbiorcom Dzieła lub Dzieł pochodnych kopię niniejszej Licencji; i
b. Musisz spowodować, aby wszelkie zmodyfikowane pliki były opatrzone widocznymi powiadomieniami stwierdzającymi, że zmieniłeś pliki; i
do. Musisz zachować, w formie Źródłowej wszelkich Dzieł pochodnych, które rozpowszechniasz, wszelkie informacje o prawach autorskich, patentach, znakach towarowych i uwagach dotyczących autorstwa pochodzące z Źródłowej formy Dzieła, z wyłączeniem ogłoszeń, które nie dotyczą żadnej części Dzieł pochodnych; i
re. Jeśli dzieło zawiera plik tekstowy „NOTICE” jako część jego dystrybucji, wszelkie dzieła pochodne, które rozpowszechniasz, muszą zawierać czytelną kopię uwag o uznaniu autorstwa zawartych w takim pliku NOTICE [...]
Użytkownik może dodać własne oświadczenie o prawach autorskich do swoich modyfikacji i może zapewnić dodatkowe lub różne warunki licencji na użytkowanie, powielanie lub rozpowszechnianie swoich modyfikacji lub na wszelkie takie Dzieła pochodne jako całość, pod warunkiem użytkowania, powielania i dystrybucji Praca w inny sposób spełnia warunki określone w niniejszej Licencji.
Które brzmi bardzo podobnie do portu (jako „Dzieła pochodnego”) jest całkowicie dozwolone za zgodą autora lub bez niego, pod warunkiem, że starannie zachowam kopie licencji, istniejące informacje o prawach autorskich, informacje o autorstwie itp.
Ale to nie znaczy, że rozumiem wszystkie tego konsekwencje. Na przykład, czy port musiałby koniecznie współdzielić tę samą licencję co oryginał?
Nie rozpocząłem żadnej pracy, ani nie skontaktowałem się jeszcze z autorami pakietu (choć tak zrobię). Chcę ustalić, czy istnieje ryzyko marnowania dużej ilości pracy. Muszę też wiedzieć, czy muszę wykonać implementację czystego pokoju opartą tylko na interfejsie API, czy też mogę oprzeć swoją pracę na istniejącym kodzie źródłowym (na który jeszcze nie spojrzałem).