Handbook:AMD64/Portage/CustomTree/ko
젠투 저장소 하위 세트 활용
꾸러미 및 분류 항목 제외
각각의 분류 항목/꾸러미를 선택적으로 업데이트 할 수 있으며 다른 분류 항목/꾸러미를 무시할 수 있습니다. rsync로 emerge --sync 단계를 수행하는 동안 각각의 분류 항목/꾸러미를 제외하여 처리할 수 있습니다.
In order for this method to work, manifest verification must be disabled. This will reduce the security of the repo. To disable the verification, either disable the
rsync-verify
USE flag on the sys-apps/portage package or set sync-rsync-verify-metamanifest=no
(see man 5 portage) in the repos.conf entry of the Gentoo ebuild repository./etc/portage/make.conf의 PORTAGE_RSYNC_EXTRA_OPTS 변수에 제외할 패턴이 담긴 파일 이름을 정의해야 합니다.
PORTAGE_RSYNC_EXTRA_OPTS="--exclude-from=/etc/portage/rsync_excludes"
games-*/*
하지만, 허용한 새로운 꾸러미 일부가 제외한 새로운 꾸러미에 의존하는 문제가 있을 수 있음을 참고하십시오.
비공식 ebuild 추가
개별 저장소 지정
Manual creation
젠투 저장소에 공식적으로 존재하지 않는 ebuild를 사용하도록 포티지에 요청할 수 있습니다. 서드파티 ebuild를 저장할 새 디렉터리(예를 들어 /usr/local/portage)를 만드십시오. 공식 젠투 저장소와 같은 디렉터리 구조를 사용하십시오!
root #
mkdir -p /usr/local/portage/{metadata,profiles}
root #
chown -R portage:portage /usr/local/portage
다음 저장소를 알아볼 수 있는 이름을 지으십시오. 다음 예제에서는 저장소 이름을 "localrepo"로 사용합니다:
root #
echo 'localrepo' > /usr/local/portage/profiles/repo_name
Then define the EAPI used for the profiles within the repository:
root #
echo '8' > /var/db/repos/localrepo/profiles/eapi
포티지에 master 저장소를 주 젠투 저장소로, 해당 저장소를 자동으로 동기화하지 않게하겠습니다(rsync 서버, git 미러 또는 다른 저장소 공급원으로 받쳐주지 않았기 때문):
masters = gentoo
auto-sync = false
마지막으로, 로컬 저장소를 찾을 수 있는 위치를 포티지에 알리는 /etc/portage/repos.conf 파일에 저장소 설정 파일을 만들어 로컬 파일 시스템의 저장소를 활성화하겠습니다.
[localrepo]
location = /usr/local/portage
Optional: Creating a repo using eselect repository
Alternatively, a custom ebuild repository can be quickly created using the eselect repository module (from app-eselect/eselect-repository). In the following example, substitute localrepo
with a name of choice:
root #
eselect repository create localrepo
Adding localrepo to /etc/portage/repos.conf/eselect-repo.conf ... Repository <ebuild_repository_name> created and added
A bare repository named "localrepo" will be made available at /var/db/repos/localrepo.
다양한 오버레이 다루기
For those desiring to develop several ebuild repos, test packages before they hit the Gentoo repository, or who want to use unofficial ebuilds from various sources, the app-eselect/eselect-repository package also provides tooling to aid in keeping repositories up to date. See also eselect repository article.
eselect-repository
hardened-development 오버레이를 활성화하려면:
root #
eselect repository enable hardened-development
root #
emerge --sync
포티지에서 관리하지 않는 프로그램
자체 관리 프로그램으로 포티지 사용
포티지가 프로그램을 제공한다고 하지만, 여러분들을 위해 설정, 설치, 프로그램 관리를 자동화 해주는 포티지를 사용하지 않고 직접 설정, 설치, 관리하려고 할 때가 있습니다. 알려진 경우중 하나가 커널 소스나 엔비디아 드라이버입니다. 포티지를 설정해서 각각의 꾸러미를 시스템에 직접 설치했음을 알려줘야 합니다(그렇기 때문에 의존성을 확인하는 동안 계정에 정보를 넘깁니다). 이 과정을 주입이라고 하며 포티지에서는 /etc/portage/profile/package.provided 파일을 통해 지원합니다.
예를 들어 여러분이 gentoo-sources-6.6.21을 직접 설치했다고 포티지에 알리려면 다음 줄을 /etc/portage/profile/package.provided에 추가하십시오.
sys-kernel/gentoo-sources-6.6.21
=
연산자 없이 버전만 기재하는 파일입니다.