소스가 공개된 소프트웨어를 오픈 소스 소프트웨어 라고 하고, 소프트웨어 말고도 개발 과정이나 설계가 공개되는 경우 하드웨어에도 오픈 소스 모델 적용이 가능
오픈 소스 코드를 활용하여 이를 2차 창작까지 허용하는 경우가 대부분.
대부분 무료로 사용 가능 ⇒ Freeware와 헷갈리는 경우 많음
💡Freeware?
🚫 아님
⭐ 오픈 소스 소프트웨어가 유료일 수도 있음
라이센스에 따라 다르지만, 개발에 사용된 대부분의 코드가 공개되어 있음
💡 License?
클로즈드 소스 프로젝트는 개발 당사자가 아닌 이상 유지보수를 하려면 소스 코드를 전부 리버스 엔지니어링으로 분석해서 역설계 하는 게 아니라면 불가능
또한, 공개된 소스코드를 바탕으로 해당 프로젝트 개선에 기여하거나, 자체적으로 개선해서 별개의 프로젝트를 만드는 등 유저들이 소프트웨어를 발전 시키기 좋은 환경을 제공
오픈소스 기여자 대부분이 영리 목적 X
아까는 유리하다며
결국 공개된 오픈 소스 프로젝트의 ‘오픈’은 장점이자 단점
GPL은 현재 가장 많은 오픈소스 소프트웨어가 채택하고 있는 라이센스이다. 오픈소스 라이센서들 중에서 가장 많이 알려져 있고 의무사항들도 타 라이센스에 비해 엄격한 편이다. 소프트웨어를 배포하는 경우 저작권 표시, 보증책임이 없다는 표시 및 GPL에 의해 배포된다는 사실 명시 소프트웨어를 수정하거나 새로운 소프트웨어를 병합(Dynamic linking 포함)시키는 경우, GPL에 의해 소스 코드 제공 GPL 소프트웨어를 배포하는 경우, 소스 코드 그 자체를 함께 배포하거나 소스코드를 제공받을 수 있는 방법에 대한 정보를 함께 제공
GPL 라이센스를 사용하기만 해도 소스코드를 공개해야 한다는 부담 때문에 라이브러리와 모듈로의 링크를 허용한 라이선스이다 원래는 한정된 라이브러리에만 적용하려는 의로도 'Library GPL'이라는 이름을 붙였으나, 모든 라이브러리에 적용된다는 오해를 사 2.1 버전으로 'Lesser GPL'로 변경되었다. ⇒ 잠깐! 여기서 'Lesser란?' → (크기.양.중요성이) 더 적은, 덜한 소프트웨어를 배포하는 경우, 저작권 표시, 보증책임이 없다는 표시 및 LGPL에 의해 배포된다는 사실 명시 LGPL Library의 일부를 수정하는 경우 수정한 Library를 LGPL에 의해 소스코드 공개
BSD 라이센스는 GPL/LGPL보다 덜 제한적이기 때문에 허용 범위가 넓다. 가장 큰 차이점은 소스코드를 공개하지 않아도 된다는 점이다. 소프트웨어를 배포하는 경우 저작권 표시, 보증 책임이 없다는 표시 수정 프로그램에 대한 소스 코드의 공개를 요구하지 않기 때문에 상용 소프트웨어에 무제한 사용가능
아파치 소프트웨어 재단에서 자체적으로 만든 소프트퉤어에 대한 라이센스 규정이다. 아파치 재단(ASF: Apache Software Foundation)의 모든 소프트웨어에 적용되며 BSD 라이센스와 비슷하여 소스코드 공개 등의 의무가 발생하지 않는다. 다만 "Apache"라는 이름에 대한 상표권을 침해하지 않아야 한다는 조항이 명시적으로 들어가 있고, 특허권에 관한 내용이 포함되어 BSD 라이센스보다는 좀 더 법적으로 완경된 내용을 담고 있다. 특히 GPL 2.0 으로 배포되는 코드와 결합되는 것이 어렵다는 문제가 있는데...GPL 3.0에서는 이 문제를 해결하여 아파치 라이센스로 배포되는 코드가 GPL 3.0으로 배포되는 코드와 결합하여 사용하는 것이 가능해졌다.
우리는 MIT License를 사용할 예정
오픈 소스에 MIT 라이센스를 붙인다면?
{"name": "your-package-name","version": "1.0.0","license": "MIT"}
필요한 코드를 만들어서 레포를 만들기

{"name": "@davinci-opensource/shared", // 고유한 이름!"version": "0.1.0", // 고유한 버전... 생략"license": "MIT", // license 형식 선언}
LICENSE 파일 루트에 생성
MIT LicenseCopyright (c) 2024 Da Vinci OpensourcePermission is hereby granted, free of charge, to any person obtaining a copyof this software and associated documentation files (the "Software"), to dealin the Software
레포에 코드 푸시하기


+ADD Organization 클릭




배포 완료!
이제 사용을 해보자





MIT 라이센스는 미국 매사추세츠공과대학교(MIT)에서 해당 대학 소프트웨어 공학도들을 돕기 위해 개발한 라이센스이다. 라이센스와 저작권 관련 명시만 지켜주면 되는 라이센스이다.
| License | 필수 요구사항 | 가능한 활동 | 소스코드 공개의무 | 제약 조건 | 원문 |
| GNU GPL v2.0/v3.0 | - 수정된 소스코드 또는 GPL 소스코드를 활용한 소프트웨어 모두 GPL로 공개 - 라이선스 및 저작권 명시 - 변경사항 명시 | - 상업적 이용 - 배포, 수정 가능 - 특허신청, 사적 이용 | 있음 | 높음 | Link |
| LGPL | - LGPL 소스코드를 단순 라이브러리 이용 이외의 목적으로 사용 시 소스코드 공개 - 라이선스 및 저작권 명시 - 변경사항 명시 | - 상업적 이용 - 배포, 수정 가능 - 특허신청, 사적 이용 | 있음 | 중간 | Link |
| BSD | - 라이선스 및 저작권 명시 | - 상업적 이용 - 배포, 수정 가능 - 특허신청, 사적 이용 | 없음 | 낮음 | Link |
| Apache | - 라이선스 및 저작권 명시 - 변경사항 명시 | - 상업적 이용 - 배포, 수정 가능 - 특허신청, 사적 이용 - 2차 라이선스 가능 | 없음 | 낮음 | Link |
| MIT | - 라이선스 및 저작권 명시 | - 상업적 이용 - 배포, 수정 가능 - 특허신청, 사적 이용 - 2차 라이선스 가능 | 없음 | 낮음 | Link |
| MPL | - 수정된 소스코드 MPL 라이선스로 공개 (단순 활용 시 공개 의무 없음) - 라이선스 및 저작권 명시 - 특허기술이 구현된 경우 관련 사실을 LEGAL이란 파일에 기록하여 배포 | - 상업적 이용 - 배포, 수정 가능 - 특허신청, 사적 이용 - 2차 라이선스 가능 | 가변적 | 중간 | Link |
| Eclipse | - 수정된 소스코드를 Eclipse 라이선스로 공개 (단순 활용 시 공개 의무 없음) - 라이선스 및 저작권 명시 | - 상업적 이용 - 배포, 수정 가능 - 특허신청, 사적 이용 - 2차 라이선스 가능 | 가변적 | 중간 | Link |