NPM에 있는 모듈 맘대로 써도 될까?

JeHwan Yoo·2021년 5월 21일
2

npm install

node.js로 개발하다보면 아무 생각 없이 npm install을 하곤 한다.

지금까지 개발하면서 한번도 라이센스(LICENSE)에 대해 깊이 생각해본적이 없는거 같다.

오픈소스에는 어김 없이 LICENSE가 존재한다. 그 문서에는 copyright 내지는 copyleft가 있다.

나는 그 문서를 한번이라도 제대로 읽어 본 적이 있을까...?

운이 좋게도

npm에 올라오는 프로젝트는 운이 좋게도 9할 이상이 MIT LINCENSE를 채택하고 있다.

MIT LICENSE 도 엄연한 라이센스이지만, 이 라이센스 때문에 문제가 되었다라는 얘기는 들어본적이 없는거 같다.

NPM이 방대한 생태계를 갖게된것도 하루에 500개가 넘는 모듈이 올라와도 문제가 안터지는 것도 모두 MIT 덕인듯.

그래도 배포전에는 확인하자

아주 흔하게 사용하는 dotenv 모듈을 살펴보자.

dotenv는 BSD-2-Clause LICENSE를 채택하고 있다.

즉, 두가지를 지켜줘야하는데

  1. 저작권자 표시
  2. 라이센스 내용과 보증 부정

당신의 프로젝트의 NOTICE.md 같은 텍스트 파일에 위 내용을 명시해줘야한다.

그래서 어떻게

첫번째 방법은 LICENSE의 사본을 그대로 가져오는 것이다.

두번째 방법은 LICENSE 사본의 링크를 첨부하는 방법이다. 라이센스의 사본을 첨부해야하는데 라이센스가 너무 긴 경우에 활용할 수 있다.

사본을 프로젝트 내 다른 문서에 저장해놓거나 사본이 있는 하이퍼링크를 명시해 놓자.

아 너무 복잡해

/*
 * ----------------------------------------------------------------------------
 * "THE BEER-WARE LICENSE" (Revision 42):
 * <phk@FreeBSD.ORG> wrote this file.  As long as you retain this notice you
 * can do whatever you want with this stuff. If we meet some day, and you think
 * this stuff is worth it, you can buy me a beer in return.   Poul-Henning Kamp
 * ----------------------------------------------------------------------------
 */

ooo 가 이 파일을 작성함. 이 고지를 유지하는한 너 맘대로 뭘 해도 상관 없어. 언젠가 우리가 서로 만나게 됐을때, 너가 맘에 들었다면, 맥주나 한잔 사줘.

복잡한 이 세상, 모든 사람들이 Beerware 처럼 살아가면 얼마나 좋을까.

profile
코딩이 삶이고 삶은 계란이다

1개의 댓글

comment-user-thumbnail
2021년 5월 27일

"나는 그 문서를 한 번이라도 제대로 읽어본 적이 있을까?" 라는 물음에 공감하게 되네요.
beerware license가 있는 것도 처음 알았네요! 좋은 글 감사합니다.

답글 달기