역자주: 이 글에서 말하는 사용 허가(license)란 오픈 소스의 정의에 부합하는 GPL, BSD 사용 허가서, X 컨소시움 사용 허가서, Artistic 사용 허가서, MPL 등의 구체적인 소프트웨어 사용 허가서를 의미합니다. 따라서 이글의 제목인 ``오픈 소스의 정의''는 오픈 소스의 범위에 포함되는 다양한 종류의 사용 허가서들이 지켜야 할 최소한의 기준을 정의해 놓은 것이라고 할 수 있습니다.

한국어 번역: 1999년 11월 26일 송창훈 <chsong@gnu.org>
최근 수정일: 2002년 6월 27일

[ 영어 | 한국어 ]



오픈 소스의 정의

1.9판

각각의 문단마다 이유라는 단어와 함께 이탤릭체로 들여쓰기 된 부분은 오픈 소스의 정의(OSD)에 대한 주석이며 OSD의 일부가 아닙니다. 주석이 포함되지 않은 OSD 원판은 이곳에서 참고할 수 있습니다.

소개

오픈 소스란 단지 원시 코드를 이용할 수 있다는 것만을 의미하는 것이 아닙니다. 오픈 소스 소프트웨어의 배포 조건은 다음과 같은 기준들을 만족시켜야만 합니다.

1. 자유로운 재배포

오픈 소스 사용 허가(license)는 몇 개의 다른 출처로부터 모아진 프로그램들로 구성된 집합 저작물 형태의 배포판의 일부로 소프트웨어를 판매하거나 무상 배포하는 것을 제한해서는 안됩니다. 또한 그러한 판매에 대해 사용료나 그밖의 다른 비용을 요구해서도 안됩니다.

이유: 사용 허가에 자유로운 재배포를 규정하도록 강제함으로써 우리는 단기간의 적은 판매 수익을 얻기 위해 많은 장기적인 이익을 포기하는 유혹을 없앨 수 있습니다. 만약 이렇게 하지 않는다면, 협력자들에게 많은 변심의 압력이 있을 것입니다.

2. 원시 코드

오픈 소스 프로그램에는 원시 코드(source code)가 포함되어야 하며, 컴파일된 형태 뿐 아니라 원시 코드의 배포도 허용되어야 합니다. 만약 원시 코드가 함께 제공되지 않는 제품이 있다면 원시 코드를 복제하는데 필요한 합당한 비용만으로 원시 코드를 구할 수 있는 널리 알려진 방법이 제공되어야만 합니다. 이러한 경우에 있어 가장 권장할 만한 방법은 별도의 비용없이 인터넷을 통해 원시 코드를 다운받을 수 있도록 하는 것입니다. 원시 코드는 프로그래머가 이를 개작하기에 용이한 형태여야 하며, 고의로 복잡하고 혼란스럽게 만들어진 형태와 선행 처리기나 번역기에 의해 생성된 중간 형태의 코드는 인정되지 않습니다.

이유: 원시 코드를 불분명하지 않은 형태로 제공하도록 규정하는 이유은 프로그램을 발전시키기 위해서 원시 코드에 대한 개작이 선행되어야 하기 때문입니다. 우리의 목적은 발전을 용이하게 만들기 위한 것이므로 개작이 용이하게 이루어 질 수 있는 방법을 요구합니다.

3. 파생 저작물

오픈 소스 사용 허가에는 프로그램의 개작과 2차적 프로그램의 창작이 허용되어야 하며, 이러한 파생 저작물들이 원프로그램에 적용된 것과 동일한 사용 허가의 규정에 따라 배포되는 것을 허용해야만 합니다.

이유: 단순히 원시 코드를 열람할 수 있는 것만으로는 독립된 등위 검토(peer review)와 빠른 발전 경쟁에서의 생존을 지원할 수 없습니다. 프로그램을 빠르게 발전시키기 위해서는 사람들에게 개작된 프로그램을 실험하고 재배포할 수 있도록 허용할 필요가 있습니다.

4. 저작자의 원시 코드 원형 유지

오픈 소스 사용 허가는 바이너리를 생성할 시점에서 프로그램을 수정할 목적으로, 원시 코드를 수반한 ``패치 파일''의 배포를 허용한 경우에 한해서 패치로 인해 변경된 원시 코드의 배포를 제한할 수 있습니다. 그러나 이 경우에도 변경된 원시 코드를 통해 만들어진 소프트웨어의 배포는 명시적으로 허용해야만 합니다. 오픈 소스 사용 허가는 파생 저작물에 최초의 소프트웨어와 다른 판 번호(version)와 이름이 사용되도록 규정할 수 있습니다.

이유: 소프트웨어에 많은 향상이 이루어지도록 장려하는 것은 좋은 일입니다. 그러나 사용자에게는 그들이 사용하고 있는 소프트웨어를 누가 책임지고 있는 지를 알 권리가 있습니다. 또한 저작자와 관리자에게도 반대 입장에서 사용자들이 그들에게 어떤 지원을 요구하고 있는 지를 알 권리와 그들의 명성을 보호할 권리가 있습니다.

따라서 오픈 소스 사용 허가는 원시 코드가 쉽게 이용될 수 있도록 보증해야만 하지만 변형되지 않은 최초의 원시 코드가 패치 파일와 함께 배포되도록 규정할 수도 있습니다. 이러한 방법을 통해 ``비공식'' 수정들을 이용할 수 있으면서 원시 코드의 원형이 쉽게 구별될 수 있습니다.

5. 개인 및 단체에 대한 차별 금지

오픈 소스 사용 허가는 특정 개인이나 단체를 차별해서는 안됩니다.

이유: 오픈 소스의 공정으로부터 최대의 이익을 끌어내기 위해 최대한 다양한 개인과 단체에게 오픈 소스에 기여할 수 있는 동등한 자격이 부여되어야 합니다. 따라서 우리는 어떠한 오프 소스 사용 허가도 특정인을 오픈 소스의 공정으로부터 제외시키는 것을 금지합니다.

아메리카 합중국을 포함한 몇몇 국가에서는 특정한 종류의 소프트웨어에 대한 수출이 금지되고 있습니다. OSD를 준수하는 사용 허가는 피양도자에게 이러한 종류의 제한에 대해 경고하고 해당 법률을 준수해야 한다는 사실을 상기시킬 수 있습니다. 그러나 사용 허가 자체에 그러한 제한이 통합되어서는 안됩니다.

6. 사용 분야에 대한 차별 금지

오픈 소스 사용 허가는 프로그램이 특정 분야에서 사용되는 것을 금지하는 제한을 설정해서는 안됩니다. 예를 들면, 기업이나 유전학 연구에 프로그램을 사용할 수 없다는 등과 같은 제한을 설정해서는 안됩니다.

이유: 이 조항의 주된 목적은 오픈 소스가 상업적으로 이용되지 못하게 방해하는 규정이 사용 허가에 포함되는 것을 금지하기 위한 것입니다. 우리는 상업 이용자들도 오픈 소스 공동체에 동참하기를 원하며 이들이 공동체로부터 소외감을 느끼지 않기를 바랍니다.

7. 사용 허가의 배포

프로그램에 대한 권리는 배포에 따른 각 단계에서 배포자에 의한 별도의 사용 허가 없이도 프로그램을 재배포받은 모든 사람에게 동일하게 인정되어야만 합니다.

이유: 이 조항은 비공개 계약을 요구하는 것과 같은 간접적인 수단을 통해 소프트웨어가 제한되는 것을 금지하기 위한 것입니다.

8. 특정 제품에만 유효한 사용 허가의 금지

프로그램에 대한 권리는 프로그램이 특정한 소프트웨어 배포판의 일부가 될 때에 한해서만 유효해서는 안됩니다. 만약 특정 배포판에 포함되어 있던 프로그램을 별도로 분리한 경우라 하더라도 프로그램에 적용된 사용 허가에 따라 프로그램이 사용되거나 배포된다면 프로그램을 재배포받은 모든 사람에게 최초의 소프트웨어 배포판을 통해 프로그램을 배포받은 사람과 동일한 권리가 보장되어야만 합니다.

이유: 이 조항은 또다른 형태의 사용 허가상의 제한을 방지하기 위한 것입니다.

9. 다른 소프트웨어를 제한하는 사용 허가의 금지

오픈 소스 사용 허가는 오픈 소스 사용 허가가 적용된 소프트웨어와 함께 배포되는 다른 소프트웨어에 대한 제한을 포함해서는 안됩니다. 예를 들면, 사용 허가 안에 동일한 매체를 통해 배포되는 다른 소프트웨어들이 모두 오픈 소스 소프트웨어여야 한다는 제한을 두어서는 안됩니다.

이유: 오픈 소스 소프트웨어의 배포자들은 그들의 소프트웨어에 대한 스스로의 선택 권리를 갖고 있습니다.

물론, GPL은 이러한 규정을 충족시키고 있습니다. GPL 라이브러리와 결합되는 소프트웨어는 하나의 단일 저작물을 형성할 때에 한해서 GPL이 계승되는 것이지 단순히 함께 배포된다는 것만으로 GPL 소프트웨어가 되어야 하는 것은 아닙니다.


유래: 이 문서의 초안은 ``데비안 자유 소프트웨어 지침(DFSG)''이라는 이름으로 브루스 페렌스(Bruce Perens)에 의해 작성되었으며, 1997년 6월 한달 동안 전자 메일을 이용한 회의로 수렴된 데비안 개발자들의 언급을 통해 다듬어졌다. 그는 ``오픈 소스에 대한 정의''를 만들기 위해 데비안에 한정된 부분들을 제외시켰다.

Copyright © 2002 Open Source Initiative