이 문제는 "atom"이라는 텍스트 편집기와는 아무런 관련이 없습니다.
포티지 매뉴얼 페이지에서는 "ATOM"이라는 용어를 사용하지만 용어에 대한 정의를 찾을 수 없어 혼란스럽습니다. Atom이 패키지를 설명한다는 것을 알고 있지만 다음 항목 중 어느 항목이 Atom인지 알 수 없습니다.
dev-lang/python
dev-lang/python-3.4.5
=dev-lang/python-3.4.5
>=dev-lang/python-3.4.5
dev-lang/*
답변1
~에 따르면ebuild(5) 매뉴얼 페이지, "종속성" 아래:
ㅏ원자에 의존패키지 간의 관계를 계산할 때 포티지가 사용하는 종속성입니다.
그런 다음 다양한 유형의 원자에 대해 설명합니다.
- Atom 기본 사항: 순수 클래스/패키지 이름(예: dev-lang/python)
- Atom 버전: 위와 같지만 버전이 있습니다(예: dev-lang/python-3.4.5).
- 원자 접두사 연산자: 부울 연산자가 있는 버전이 지정된 원자(예: >=dev-lang/python-3.4.5)
- 확장된 원자 접두사/접미사: 와일드카드 및 차단기(예: dev-lang/python-3*)
- Atom 슬롯/하위 슬롯: 공존할 수 있는 패키지 버전(예: dev-lang/python-3.4.5:3.4/3.4m, :2.7 및 :3.6과 동시에 설치 가능))
- Atom USE 문: USE 플래그 처리
이것은 ebuild가 내부적으로 사용하는 것이며 일상적인 사용에는 실제로 필요하지 않습니다. 왜냐하면 패키지 관리자만이 정기적으로 이것을 볼 수 있기 때문입니다(그러나 슬롯은 볼 수 있습니다).
그러나 포티지는 원자를 약간 다르게 사용합니다. ~에 따르면맨페이지, 다음 원자 유형을 지원합니다.
- 기본 사항: 순수 클래스/패키지(예: dev-lang/python)
- version: 카테고리/패키지 버전(예: dev-lang/python-3.4.5), 비교 연산자 유무
- 슬롯:카테고리/패키지 버전:슬롯(예: dev-lang/python-3.4.5:3.4)
- 저장소: 카테고리/패키지 버전::repository (예: dev-lang/python::gentoo)
- 와일드카드: 대체(예: dev-lang/* 또는 =*/*-9999)
실제로는 종속성 측면에서 사용되지는 않지만 ebuild 시스템으로 전송될 때 일반적으로 동일한 규칙을 따릅니다. 또한 이들을 결합할 수도 있으므로 "<*/python*-9999:3.6::test"가 유효한 원자 사양이 됩니다. 하지만 나는 일반적으로 기본, 버전 및 저장소 원자를 고수합니다. 왜냐하면 슬롯은 일반적으로 중요하지 않고 와일드카드는 주의하지 않으면 예상치 못한 것과 일치할 수 있기 때문입니다.