/etc/portage/make.conf

From Gentoo Wiki
< /etc‎ | portage
Jump to:navigation Jump to:search
This page is a translated version of the page /etc/portage/make.conf and the translation is 100% complete.

A /etc/portage/make.conf (amely korábban a /etc/make.conf helyen volt) a fő beállításfájl. A Portage környezet globális szintű testreszabására használják. A Portage legtöbb beállításfájlját a /etc/portage könyvtár tartalmazza.

Ebben az egy make.conf fájlban beállított összes dolgok vonatkozni fog az összes, emerge által létrehozott szoftvercsomagra. Ezek a beállítások a Portage működésének számos elemét vezérlik, mint például a globális USE jelölőzászlókat, a nyelvi (L10N) beállításokat, a Portage tükörszervereket stb.

Egy nagyon alap verzió kerül telepítésre a Stage fájl kibontása közben. A telepítésről található egy példa a /usr/share/portage/config/make.conf.example helyen.

Mint oly sok Portage beállításfájl, így a make.conf is lehet egy könyvtár, és a tartalma összegződik, mintha egyetlen fájl lenne.

See also
A kézikönyv a make.conf használatával foglalkozik, különösen a USE jelölőzászlók, a portage szolgáltatások és a változók szakaszaiban. Tekintse meg a man make.conf fájlt az átfogó dokumentációért.

Elsőbbség

A végső Portage beállítás nem csak a make.conf fájlon alapul. Ebben a fájlban meghatározott globális beállítások továbbfinomíthatóak (vagy újradefiniálhatóak) szoftvercsomagonként az /etc/portage/package.use/-ban, valamint környezeti változókon keresztül. A disztribúció által kezelt alapértelmezett beállítások is elérhetők (részben a Portage alapértelmezett szoftvercsomag beállításain, részben pedig a használatban lévő Gentoo profilon keresztül).

Note
Bár a portage továbbra is támogatja a régi /etc/make.conf fájlhelyet, de használata nem javasolt. Használja inkább a /etc/portage/make.conf fájlt. Ha mindkét fájl létezik a rendszerben, akkor az /etc/portage/make.conf beállításai elsőbbséget élveznek az /etc/make.conf fájl beállításaival szemben.

Változók

A make.conf fájlban számos változó szabható testre. Ebben a cikkben csak a leggyakrabban használtakat ismertetjük részletesebben, példával és egy részletesebb cikkre mutató hivatkozással (ha létezik ilyen). További információkért és a változók teljes listájáért keresse fel a make.conf man page kézikönyvet a következő futtatásával:

user $man make.conf

A legtöbb változó nem kötelező, több sort is átívelhet, de nem jelenhet meg többször.

Note
A különböző beállításokhoz különböző változókat kell megadni. Ne kezelje a következő példákat végleges listaként vagy minimális követelménykészletként. Kizárólag a szükséges változókat állítsa be.

CHOST

A CHOST változót az ebuild beállítási lépésén keresztül kell átadni a rendszer build-hostjának beállításához.

Warning
A Portage profilok már beállítják a megfelelő CHOST értéket, és ennek frissítése mély belelátást és tapasztalatot igényel a build láncokba.
Note
A 23.0-s profilverziótól kezdődően nem javasolt a CHOST beleírása a make.conf fájlba.[1]
See also
További információért tekintse meg a CHOST cikket.

CFLAGS és CXXFLAGS

A CFLAGS és CXXFLAGS változók határozzák meg az szoftvercsomag létrehozási és kódfordítási jelölőzászlókat, amelyeket az összes szoftvercsomag telepítéshez használni fognak (néhány kivételtől eltekintve, attól függetlenül, hogy ki szűri ki azokat a jelölőzászlókat, amelyekről ismert, hogy problémákat okoznak a szoftvercsomaggal). A CFLAGS változó a C alapú alkalmazásokhoz, míg a CXXFLAGS a C++ alapú alkalmazásokhoz való. A legtöbb felhasználónál mindkét változó tartalma azonos marad.

FILE /etc/portage/make.confÁltalánosan használt észszerű beállítás a CFLAGS és CXXFLAGS számára
CFLAGS="-march=native -O2 -pipe"
CXXFLAGS="${CFLAGS}"
See also
További információkért lásd a GCC optimizálás cikket, a safe CFLAGS-t, valamint a CFLAGS és CXXFLAGS leírást a Gentoo kézikönyvben. Tekintse meg a FAQ leírást.

CONFIG_PROTECT

The CONFIG_PROTECT variable contains a space-delimited list of files and/or directories that Portage will protect from automatic modification. Proposed changes to protected configuration locations will require manual merge(s) from the system administrator (see dispatch-conf or similar merge tools).

A current list of presently protected locations can be displayed with portageq:

user $portageq envvar CONFIG_PROTECT
/etc /usr/share/config /usr/share/gnupg/qualified.txt

Using portageq is a short hand alternative to running a regular expression search on verbose, informational output from the emerge command:

user $emerge --verbose --info | grep -E '^CONFIG_PROTECT='
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt"

Files or subdirectories defined within the CONFIG_PROTECT can be excluded from protection through the CONFIG_PROTECT_MASK variable. Masking is useful when a parent directory should be protected, but a certain child directory beneath it.

The variable has a sane default setting handled by the Portage installation and the users' Gentoo profile. It can be extended through the system environment (which is often used by applications that update the variable through their /etc/env.d file) and the users' /etc/portage/make.conf setting.

FILE /etc/portage/make.confExample CONFIG_PROTECT definitions
CONFIG_PROTECT="/var/bind"

See also the Environment variables chapter in the Gentoo Handbook.


FEATURES

The FEATURES variable contains a list of Portage features that the user wants enabled on the system, effectively influencing Portage's behavior. It is set by default via /usr/share/portage/config/make.globals, but can be easily updated through /etc/portage/make.conf. Since this is an incremental variable, FEATURES values can be added without directly overriding the ones implemented through the Gentoo profile.

FILE /etc/portage/make.confAdding keepwork to FEATURES in Portage
FEATURES="keepwork"

For more information, please see Portage features in the Gentoo Handbook and the FEATURES article. For a complete list of available features, see man 5 make.conf.

See also
További információért tekintse meg a FEATURES cikket.

GENTOO_MIRRORS

See also
Tekintse meg a GENTOO_MIRRORS cikket.

MAKEOPTS

A MAKEOPTS változó a make számára átadott argumentumok megadására szolgál, amikor a szoftvercsomagok forráskódból épülnek fel.

FILE /etc/portage/make.confAjánlott beállítás egy kétmagos processzorhoz. Hyper-Threading engedélyezve, 8 GB RAM-al
MAKEOPTS="-j4"
See also
További információkért tekintse meg a MAKEOPTS cikket.
Note
Olvassa el az EMERGE_DEFAULT_OPTS-t, mivel ez a változó befolyásolja a build viselkedést is.

EMERGE_DEFAULT_OPTS

Az EMERGE_DEFAULT_OPTS egy változó a Portage szoftvercsomag-kezelő számára, amely meghatározza azokat a bejegyzéseket, amelyek az emerge parancssorához lesznek hozzáfűzve.

Az EMERGE_DEFAULT_OPTS lehetővé teszi a párhuzamos emerge műveleteket a --jobs N és --load-average X.Y opciók segítségével. Az EMERGE_DEFAULT_OPTS változót a Portage használja az operációs rendszer terhelésének, vagyis a terhelési átlagnak a figyelembevételére, és arra, hogy korlátozza, egyszerre hány szoftvercsomag kerülhet létrehozásra.

Három build feladat egyidejű futtatásához:

FILE /etc/portage/make.confPárhuzamosan három szoftvercsomag létrehozásának az engedélyezése
EMERGE_DEFAULT_OPTS="--jobs 3"

További információért tekintse meg az EMERGE_DEFAULT_OPTS cikket.

PORTAGE_SCHEDULING_POLICY

See also
Tekintse meg a Portage niceness cikket.

PORTAGE_TMPDIR

A PORTAGE_TMPDIR változó határozza meg a Portage ideiglenes fájljainak a helyét. Az érték alapértelmezés szerint a /var/tmp, így a /var/tmp/portage a build helye. A /var/tmp/ccache a Portage ccache támogatására van, és így tovább.

FILE /etc/portage/make.confAlapértelmezett PORTAGE_TMPDIR beállítás
PORTAGE_TMPDIR="/var/tmp"

Egyes rendszereken a /var/tmp/ a noexec kapcsolóval van felcsatolva. Ilyen esetekben a következő hibát jelenítené meg az emerge a szoftvercsomagok ebuild-összeállításakor:

user $emerge --ask package
Can not execute files in /var/tmp/portage
Likely cause is that you've mounted it with one of the
following mount options: 'noexec', 'user', 'users'
 
Please make sure that portage can execute files in this directory.

Ebben az esetben, amikor a problémát okozó opció eltávolítása a /etc/fstab fájlból nem lehetséges, a PORTAGE_TMPDIR-t egy másik könyvtárra kell ráállítani.

Ha elegendő memória áll rendelkezésre, akkor a szoftvercsomagok ebuild-legenerálása felgyorsítható a PORTAGE_TMPDIR felcsatolásával (mountolásával) a RAM-ba. További részletekért lásd a Portage TMPDIR on tmpfs című cikket.

DISTDIR

A DISTDIR változó határozza meg azt a helyet, ahol a Portage tárolja a letöltött forráskód archívumokat.]]</noinclude> Új telepítések esetén az alapértelmezett értéke /var/cache/distfiles. Korábban az alapértelmezett ${PORTDIR}/distfiles volt, amely alapértelmezetten /usr/portage/distfiles értékre oldódott fel.

A felhasználók beállíthatják a DISTDIR változót a /etc/portage/make.conf fájlban:

Warning
Figyeljen arra, hová helyezi a DISTDIR-t! Írási hozzáférést kizárólag megbízható felhasználóknak szabad biztosítani ehhez a helyhez.


A fájl integritásának ellenőrzése és kicsomagolása nem atomi művelet, ami lehetővé teszi egy olyan támadást, ahol egy fájlt közben kicserélnek, ami esetlegesen a rendszer veszélyeztetéséhez vezethet.
FILE /etc/portage/make.confMásik DISTDIR hely használata
DISTDIR=/var/gentoo/distfiles

További információért tekintse meg a DISTDIR cikket.

PKGDIR

PKGDIR az a hely, ahol a Portage a bináris kódra már lefordított szoftvercsomagokat tárolja. Alapértelmezés szerint a PKGDIR változó a /var/cache/binpkgs könyvtárra van ráállítva.

Régebben a bináris kódra lefordított szoftvercsomagok helye a ${PORTDIR}/packages értékre volt ráállítva, ami alapértelmezés szerint a /usr/portage/packages útvonalat adta végeredményül.

Futtassa a man make.conf parancsot a további információkért.

USE

A USE változó lehetővé teszi a USE jelölőzászlók rendszerszintű beállítását vagy deaktiválását. Ez a változó szóközzel elválasztott lista, és több sort is átívelhet.

USE="-kde -qt5 ldap"
See also
A teljes magyarázatért tekintse meg az USE jelölőzászlókról szóló cikket. Tekintse meg a USE jelölőzászlók szoftvercsomagonkénti vezérlését és az /etc/portage/package.use fájlt az egyes szoftvercsomagok USE jelölőzászlók beállításáról.
Note
Mindig fontolja meg azt, hogy valóban érdemes-e beállítani globálisan a USE jelölőzászlót, és ennek milyen következményei lesznek a rendszerre. Gondolja át, hogy érdemes-e csak egy vagy több szoftvercsomaghoz külön-külön beállítani a jelölőzászlót.
Tip
A hatás leellenőrzése miatt ideiglenesen be lehet állítani a parancssorban egy USE jelölőzászlót, mielőtt a world fájlba beleírná azt: USE="[USE flag to test]" emerge --pretend --verbose --update --deep --newuse world

ACCEPT_LICENSE

Az ACCEPT_LICENSE változó megmondja a Portage szoftvercsomag-kezelőnek, hogy mely szoftverlicencek engedélyezettek. A nem elfogadott licenccel rendelkező szoftvercsomagok nem telepíthetők az operációs rendszerre.

FILE /etc/portage/make.confÖsszes licenc elfogadása az összes szoftvercsomag számára
ACCEPT_LICENSE="*"

Az összes licenc elfogadásának előnyben részesített módja a -@EULA beállítás, amely lehetővé teszi a felhasználók számára, hogy ellenőrizzék a védett szoftver feltételeit.

FILE /etc/portage/make.confÖsszes licenc elfogadása az összes szoftvercsomag számára, kivéve a tulajdonjoggal rendelkezők
ACCEPT_LICENSE="* -@EULA"
FILE /etc/portage/make.confCsak a teljesen szabad és ingyenes (free) szoftverek elfogadása
ACCEPT_LICENSE="-* @FREE"

USE_EXPAND

Important
A múltban az USE_EXPAND jelölőzászlók a /etc/portage/make.conf fájlban voltak beállítva, de ez sorrendbeli problémákhoz vezethetett a Portage szoftvercsomag-kezelőben. Emiatt ez a cikk most a preferált módszert használja, amely a /etc/portage/package.use.

A USE_EXPAND változó egy lista. A Portage 2.0.51.20 verziójától kezdve a profiles/base/make.defaults-ban van beállítva.[2]

CPU_FLAGS_*

See also
További információért tekintse meg a CPU_FLAGS_* cikket.

A CPU_FLAGS_* változók tájékoztatják a Portage szoftvercsomag-kezelőt a CPU által engedélyezett CPU-jelölőzászlókról (szolgáltatásokról). Ezt az információt a szoftvercsomag létrehozások optimalizálására használják, kifejezetten a megcélzott szolgáltatásokhoz. A jelenleg támogatott változók: CPU_FLAGS_X86 (amd64 és x86 architektúrákhoz), CPU_FLAGS_ARM (arm and arm64 architektúrákhoz), és CPU_FLAGS_PPC (ppc és ppc64 architektúrákhoz).

A cpuid2cpuflags segédprogram (amely a app-portage/cpuid2cpuflags szoftvercsomagban található) használható a rendszer processzora által támogatott CPU jelölőzászlók teljes listájának lekérdezésére. A szoftvercsomag az emerge létrehozás után így használható:

user $cpuid2cpuflags
CPU_FLAGS_X86: aes avx f16c mmx mmxext pclmul popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3

INPUT_DEVICES

Tekintse meg az Útmutató/Xorg cikk make.conf részét a lehetséges értékekért.

LINGUAS

FILE /etc/portage/package.use/00local
*/*  LINGUAS: de pt_BR en en_US en_GB

L10N

Tekintse meg a L10N részt a lokalizáció útmutatóban.

FILE /etc/portage/package.use/00local
*/*  L10N: de pt-BR en en-US en-GB
Note
Amíg a LINGUAS-ban és az L10N-ben a kétbetűs nyelvi kódok jelölésmódjai azonosak (például a de vagy a fr), addig az összetettebb bejegyzések szintaxisa már eltérő, mivel az L10N az IETF nyelvi címkézésmódot (más néven a BCP 47 módot) használja. Például LINGUAS-ban használatos pt_BR és sr@latin az L10N-ben pt-BR és sr-Latn lesz.

VIDEO_CARDS

Warning
Ez a módszer a bug #922307-es hiba miatt elavult. Kérjük, a helyes beállítás érdekében, használja a következő kézikönyvet: Handbook:AMD64/Installation/Base

Ennek a USE_EXPAND változónak a lehetséges értékeiért tekintse meg a VIDEO_CARDS részt.

Gép Diszkrét videókártya VIDEO_CARDS
Intel x86 Egyik sem Tekintse meg a Intel#Feature support részt.
x86/ARM Nvidia nvidia
Bármilyen Nvidia kivéve Maxwell, Pascal és Volta nouveau
Bármilyen AMD, Sea Islands óta amdgpu radeonsi
Bármilyen ATI és idősebb AMD Tekintse meg a radeon#Feature support részt.
Bármilyen Intel intel
Raspberry Pi N/A vc4
QEMU/KVM Bármilyen virgl
WSL Bármilyen d3d12

A gépek és videokártyák elterjedt kombinációi közül helyettesítse be a használandó illesztőprogram(ok) nevét.

A megfelelő VIDEO_CARDS érték(ek) belefoglalják a megfelelő illesztőprogram(oka)t.

A VIDEO_CARDS értékek módosítását követően, azért, hogy a változtatások érvénybe léphessenek, kérjük frissítse a rendszert a következő paranccsal:

FILE /etc/portage/package.use/00video
*/* VIDEO_CARDS: -* intel nouveau radeon radeonsi
root #emerge --getbinpkg --ask --changed-use --deep @world

Hagyja ki a --getbinpkg parancsot, azért hogy ne legyenek használva a konfigurált bináris csomagokat tároló számítógépek.

Ha az átlagos felhasználó grafikus asztali környezetet szándékozik használni, akkor ezt a változót kifejezetten meg kell határozni. További információkért lásd az Xorg útmutató make.conf szakaszát.

További részletekért tekintse meg az AMDGPU, Intel, Nouveau vagy NVIDIA cikkeket.

További olvasnivaló a témával kapcsolatban

Külső források

Hivatkozások