Open Source Licensing - Tirrilee/TechTalk GitHub Wiki

Overview

μ˜€ν”ˆμ†ŒμŠ€ κ°œλ°œμ΄λž€ ν”„λ‘œκ·Έλž¨μ˜ μ†ŒμŠ€μ½”λ“œλ₯Ό κ³΅κ°œν•˜λŠ” 것을 μ˜λ―Έν•˜λ©°, μ΄λŸ¬ν•œ κ°œλ°œκ³Όμ •μ—λŠ” μ΄ˆλŒ€λ°›μ€ κ°œλ°œμžλ“€μ΄ 자발적으둜 μ°Έμ—¬ν•œλ‹€. 'μ˜€ν”ˆμ†ŒμŠ€' λΌλŠ” κ²ƒμ˜ λΏŒλ¦¬λŠ” Free Software Foundation μ΄λΌλŠ” μž¬λ‹¨μœΌλ‘œλΆ€ν„° μΆœλ°œν–ˆλ‹€. FSF μ—μ„œλŠ” μ†ŒμŠ€μ½”λ“œλŠ” 독점적인 것이 μ•„λ‹ˆλΌ μ–΄λŠ λˆ„κ΅¬μ—κ²Œλ‚˜ κ³΅κ°œλ˜μ–΄ μ‚¬μš©μžκ°€ μ›ν•˜λŠ”λŒ€λ‘œ μ‘°μ‚¬ν•˜κ³  μˆ˜μ •ν•  수 μžˆμ–΄μ•Ό ν•˜λŠ” 것이라고 μ£Όμž₯ν–ˆλ‹€.

Open Source Business

μ˜€ν”ˆ μ†ŒμŠ€μ˜ λ°˜λŒ€λ§μ€ close source 이닀. 말 κ·ΈλŒ€λ‘œ μ†ŒμŠ€μ½”λ“œλ₯Ό κ³΅κ°œν•˜μ§€ μ•ŠλŠ” 방식을 μ˜λ―Έν•œλ‹€. 그런데 μ†ŒμŠ€μ½”λ“œλ₯Ό κ³΅κ°œν•˜λ©΄ μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό κ°œλ°œν•œ νšŒμ‚¬λŠ” 무슨 μˆ˜μ΅μ„ μ–»κ³ , 무슨 보상을 λ°›μœΌλ©΄μ„œ κ°œλ°œμ„ ν•  μ§€κ°€ μ˜λ¬Έμ΄λ‹€. μ˜€ν”ˆ μ†ŒμŠ€ νšŒμ‚¬μ˜ μˆ˜μ΅μ€ μ–΄λ””μ„œ 창좜될까? 사싀, μ˜€ν”ˆ μ†ŒμŠ€ νšŒμ‚¬λŠ” μ†Œν”„νŠΈμ›¨μ–΄ κ·Έ 자체λ₯Ό νŒλ§€ν•˜λ €λŠ” 것이 μ•„λ‹ˆλΌ, κ·Έ μ†Œν”„νŠΈμ›¨μ–΄ (μ—¬κΈ°μ„œλŠ” μ†ŒμŠ€μ½”λ“œ κ·Έ 자체)λ₯Ό μ§€μ›ν•˜λ©΄μ„œ μ–»λŠ” μˆ˜μ΅μ„ λͺ©μ μœΌλ‘œ μš΄μ˜ν•œλ‹€.

Open Source Licensing

μ†ŒμŠ€ μ½”λ“œκ°€ κ³΅κ°œλ˜μ–΄ μžˆλ‹€κ³  ν•΄μ„œ, λ§ˆμŒλŒ€λ‘œ κ°€μ Έλ‹€ μ“°λ©΄ μ•ˆλœλ‹€. λ°”λ‘œ μ˜€ν”ˆμ†ŒμŠ€ λΌμ΄μ„ΌμŠ€ 쑰건 λ•Œλ¬Έμ΄λ‹€. μ˜€ν”ˆμ†ŒμŠ€ 개발의 κ°€μž₯ 기본적인 원칙은 "λͺ¨λ‘κ°€ 자유둭게 μ΄μš©ν•  수 μžˆλ‹€" λŠ”λ° μžˆμ§€λ§Œ, κ·Έλ ‡λ‹€κ³  이 원칙이 μ–΄λŠ λˆ„κ΅¬λ‚˜ 그듀이 μ›ν•˜λŠ” λ°©μ‹λŒ€λ‘œ 이 μ½”λ“œλ₯Ό μ΄μš©ν•  수 μžˆλ‹€λŠ” 말은 μ•„λ‹ˆλ‹€. μ •ν•΄μ§„ κ·œμΉ™, 합법적인 쑰건에 맞게 μ‚¬μš©ν•΄μ•Ό 함을 μ˜λ―Έν•œλ‹€.

License Model

μ˜€ν”ˆμ†ŒμŠ€λ₯Ό μ‚¬μš©ν•˜κΈ° 전에 κΌ­ ν•΄λ‹Ή μ˜€ν”ˆμ†ŒμŠ€κ°€ μ–΄λ–€ λΌμ΄μ„ΌμŠ€ 정책을 μ‚¬μš©ν•˜λŠ”μ§€λ₯Ό μ‚΄νŽ΄λ΄μ•Ό ν•œλ‹€. μ˜€ν”ˆμ†ŒμŠ€ λΌμ΄μ„ΌμŠ€μ—λŠ” λŒ€ν‘œμ μΈ λͺ¨λΈ μ„Έ κ°€μ§€κ°€ μžˆλ‹€. μ•„λ§ˆ λŒ€λΆ€λΆ„μ˜ μ˜€ν”ˆμ†ŒμŠ€λ“€μ€ μ§€κΈˆλΆ€ν„° μ†Œκ°œν•˜λŠ” μ„Έ λͺ¨λΈ λ²”μ£Όμ•ˆμ—μ„œ λΌμ΄μ„ΌμŠ€λ₯Ό μ œμ‹œν•  것이닀.

GNU GPL License

  • General Public License (GPL) λΌμ΄μ„ΌμŠ€ 정책을 λ”°λ₯΄λŠ” μ˜€ν”ˆ μ†ŒμŠ€λŠ” 단 ν•œμ€„μ΄λΌλ„ μ‚¬μš©ν•˜λ©΄ κ·Έ λͺ¨λ“  μ†ŒμŠ€λŠ” λ˜‘κ°™μ΄ κ³΅κ°œλ˜μ–΄μ•Ό ν•˜λŠ” 정책이닀. 즉, 우리 μ˜€ν”ˆμ†ŒμŠ€λ₯Ό 썼으면 λ„ˆν¬λ„ μ˜€ν”ˆ μ†ŒμŠ€ μ†Œν”„νŠΈμ›¨μ–΄κ°€ λ˜μ–΄μ•Όν•¨μ„ μ˜λ―Έν•œλ‹€.

GNU LGPL License

  • Lesser General Public License (LGPL) 은 μΌμ’…μ˜ GPL의 λ³€ν˜• λΌμ΄μ„ΌμŠ€μ΄λ‹€. GPL λ³΄λ‹€λŠ” 규제의 정도가 μ‘°κΈˆμ€ λœν•΄μ„œ Lesser λΌλŠ” 이름이 λΆ™μ—ˆλ‹€.

  • LGPL μ •μ±…

    • μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό λ°°ν¬ν•˜λŠ” 경우 μ €μž‘κΆŒ ν‘œμ‹œ, λ³΄μ¦μ±…μž„μ΄ μ—†λ‹€λŠ” ν‘œμ‹œ 및 LGPL에 μ˜ν•΄ λ°°ν¬λœλ‹€λŠ” 사싀을 λͺ…μ‹œ
    • LGPL 라이브러리의 일뢀λ₯Ό μˆ˜μ •ν•˜λŠ” 경우 μˆ˜μ •ν•œ 라이브러리의 μ†ŒμŠ€μ½”λ“œ 곡개
    • LGPL λΌμ΄λΈŒλŸ¬λ¦¬μ— μ‘μš©ν”„λ‘œκ·Έλž¨μ„ 링크할(정적 및 동적 링크 λͺ¨λ‘) 경우 ν•΄λ‹Ή μ‘μš©ν”„λ‘œκ·Έλž¨μ˜ μ†ŒμŠ€λ₯Ό κ³΅κ°œν•  ν•„μš” μ—†μŒ. λ‹€λ§Œ μ‚¬μš©μžκ°€
    • 라이브러리 μˆ˜μ • ν›„ λ™μΌν•œ μ‹€ν–‰ νŒŒμΌμ„ 생성할 수 μžˆλ„λ‘ 정적 λ§ν¬μ‹œμ—λŠ” μ‘μš©ν”„λ‘œκ·Έλž¨μ˜ 였브젝트 μ½”λ“œλ₯Ό μ œκ³΅ν•΄μ•Ό 함
    • νŠΉν—ˆμ˜ 경우 GPLκ³Ό 동일함

<μ°Έκ³ >

  • Dynamic Link (DLL)

    • Dynamic Link 라 ν•˜λ©΄, 라이브러리λ₯Ό ν™œμš©ν•¨μ— μžˆμ–΄μ„œ DLL κ³Ό 같이 run-time μ‹œμ— ν•΄λ‹Ή μ†ŒμŠ€μ— μ ‘κ·Όν•˜λŠ” 것을 λ§ν•œλ‹€.
  • Static Link (Lib)

    • Static Link 라 ν•˜λ©΄, μ½”λ“œ 개발 μ‹œμ— 라이브러리λ₯Ό import ν•˜μ—¬ μ •μ μœΌλ‘œ μ ‘κ·Όν•˜λŠ” 것을 λ§ν•œλ‹€.

BSD License

  • Berkley Standard Distribution (BSD) λΌμ΄μ„ΌμŠ€λŠ” μ†ŒμŠ€μ½”λ“œλ₯Ό κ³΅κ°œν•˜μ§€ μ•Šμ•„λ„ λœλ‹€λŠ” 정책을 κ°€μ§„ λŒ€ν‘œμ μΈ λͺ¨λΈμ΄λ‹€. λ”°λΌμ„œ λ‚΄κ°€ λ§Œλ“€κ³ μž ν•˜λŠ” μ†Œν”„νŠΈμ›¨μ–΄κ°€ close source system 으둜 λ§Œλ“€κ³  싢은데, μ˜€ν”ˆμ†ŒμŠ€μ˜ ν™œμš©μ΄ ν•„μš”ν•˜λ‹€λ©΄ BSD License 의 μ˜€ν”ˆμ†ŒμŠ€λ₯Ό 찾아보면 λœλ‹€.