가이드 · 02

허용형 vs 카피레프트, 무엇을 고를까

MIT·Apache 같은 허용형과 GPL·LGPL·MPL 같은 카피레프트를 목표·생태계·사용 형태별로 비교하고, 라이선스를 정하기 전에 확인할 체크리스트를 제공합니다.

최종 확인: 2026-09-23

먼저 목표를 정한다

라이선스 선택은 취향이 아니라 내가 무엇을 원하는지의 문제입니다. 대부분은 아래 두 목표 사이 어딘가에 있습니다.

허용형: 넓은 채택, 적은 마찰

MIT, BSD, ISC, Apache-2.0 는 고지 유지 정도만 요구합니다. 기업 법무팀 대부분이 사전 승인 목록에 올려 두는 라이선스라 도입이 빠릅니다. 대신 누군가 코드를 고쳐 비공개 제품에 넣어도 막을 수 없습니다.

허용형 안에서의 선택은 주로 두 가지입니다.

카피레프트: 공개의 연쇄

GPL 은 결합한 프로그램 전체, LGPL 은 라이브러리, MPL 은 파일 단위로 공개 의무를 둡니다. 서버에서 도는 소프트웨어라면 AGPL 이 GPL 의 공백을 메웁니다. 카피레프트를 쓰면 일부 기업은 사용이나 기여를 꺼릴 수 있습니다. 특히 AGPL 은 많은 회사가 내부 정책으로 사용을 제한합니다. 이것이 의도한 효과일 수도, 원치 않는 부작용일 수도 있습니다.

생태계 관행도 무시할 수 없다

라이선스는 커뮤니티의 관례와 맞을 때 마찰이 적습니다.

생태계흔한 라이선스비고
JavaScript(npm)MIT, ISC작은 패키지가 많아 짧은 허용형 선호
Rust(crates.io)MIT OR Apache-2.0Rust 자체가 이 듀얼 방식
Python(PyPI)MIT, BSD-3-Clause, Apache-2.0과학 계산 쪽은 BSD-3 이 많음
GoBSD-3-Clause, MIT, Apache-2.0Go 표준 라이브러리는 BSD-3
리눅스 커널 모듈GPL-2.0-only커널과 결합하려면 사실상 필수
데스크톱 GNU 도구GPL-3.0-or-laterGNU 프로젝트 기본
C/C++ 라이브러리LGPL, MIT, BSL-1.0링크 방식이 선택에 영향

결정 체크리스트

  1. 의존성 확인: 이미 쓰고 있는 라이브러리의 라이선스가 선택지를 제한하지 않는지 봅니다. GPL 라이브러리와 결합한 프로그램을 배포한다면 선택지는 GPL 호환 라이선스로 좁혀집니다.
  2. 소속 확인: 업무로 작성한 코드는 보통 회사가 저작권자입니다. 회사의 오픈소스 정책이 정한 라이선스가 있는지 확인합니다.
  3. 사용 형태: 설치형인지, 라이브러리인지, 서비스인지에 따라 카피레프트의 효과가 달라집니다.
  4. 기여 방식: 외부 기여를 받을 계획이라면 나중에 라이선스를 바꾸기 어렵다는 점을 염두에 둡니다. 여러 사람의 저작권이 섞이기 때문입니다.
  5. 수익 모델: 상용 라이선스를 따로 팔 계획이라면 카피레프트 + 상용 듀얼 라이선스와 기여자 라이선스 계약(CLA)을 함께 고려합니다.

한 문장 요약

선택 마법사에서 이 기준을 질문 형태로 답하면 후보와 이유를 보여 줍니다.

이 글은 일반 정보이며 법률 자문이 아닙니다. 중요한 결정은 전문가와 상의하세요.

참고 출처