NoWayOS
KO
GitHub
메뉴닫기

검사와 기여

도움 받기와 기여하기

질문하고 버그나 취약점을 신고하는 곳, 그리고 NoWayOS에 변경을 제안하는 방법.

NoWayOS는 GitHub의 NoWayOS 조직 아래에서 공개적으로 개발됩니다. 코드를 찾고, 코드에 관해 묻고, 코드를 바꾸는 곳이 바로 그곳입니다.

질문과 버그

해당 저장소에 이슈를 여십시오. 운영체제는 nowayos, 화면 변환은 screen-compiler, 예제 애플리케이션은 showcase입니다. 좋은 이슈에는 무엇을 실행했는지, 무엇을 기대했는지, 대신 무슨 일이 일어났는지가 출력 및 실행한 커밋과 함께 담겨 있습니다.

이슈를 열기 전에, 각 저장소의 DEVELOPING.md에서 빌드, 테스트, 코드 구조를 확인하고, 용어는 용어집을 참고하십시오.

보안 취약점

취약점은 공개 이슈로 올리지 마십시오. 각 저장소의 SECURITY.md에 설명된 대로, 저장소 Security 탭의 GitHub 비공개 취약점 신고 기능이나 security@nowayos.com 이메일로 비공개 신고해 주십시오. 신고 내용은 수정 사항이 나올 때까지 비공개로 유지됩니다.

변경 제안하기

모든 변경은 Defence Agent에 기록된 같은 관문으로 심사합니다. 각 관문이 무엇을 검사하는지, 어떤 위협에 대응하는지, 누가 바꿀 수 있는지가 적혀 있습니다. 자세한 내용은 각 저장소의 CONTRIBUTING.md에 있습니다.

  1. 메인테이너가 수락한 이슈에서 시작하십시오. 이슈를 새로 열거나, 기존 이슈에 맡고 싶다고 남기십시오.
  2. 저장소의 DEVELOPING.md, 특히 기본 규칙을 읽으십시오. 관문이 이를 강제하므로, 규칙을 하나라도 어기는 변경은 통과하지 못합니다.
  3. 테스트와 함께 변경하십시오. 버그라면 실패하는 테스트부터 작성하십시오.
  4. make ci를 실행해 통과하는지 확인하십시오.
  5. 모든 커밋에 서명(sign-off)하십시오(git commit -s). Signed-off-by 줄은 Developer Certificate of Origin을 인증하며, 이 줄이 없는 커밋은 통과하지 못합니다.
  6. 저장소의 템플릿으로 풀 리퀘스트를 여십시오. 무엇을 왜 바꾸는지, 드라이버라면 참고한 출처, 그리고 AI 어시스턴트에게 받은 도움이 있다면 그 내용을 적습니다. 시스템이 부여하는 것을 넓힌다면 그렇다고 밝혀 주십시오. 더 넓은 권한 부여는 보안 변경으로 검토합니다.

용어

NoWayOS는 몇몇 말을 특정한 뜻으로 씁니다. 보호 도메인, 권한 부여, 기대 출력 파일, 페일세이프 상태 등입니다. 각각의 정의는 용어집에 있습니다.