/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ő konfigurációs fájl. A Portage környezet globális szintű testreszabására használják. A Portage legtöbb konfigurációs fá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 csomagra. 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 konfigurációs fá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 konfiguráció nem csak a make.conf-on alapul. Ebben a fájlban meghatározott globális beállítások továbbfinomíthatóak (vagy újradefiniálhatóak) csomagonké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 csomag 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ő konfigurációkhoz különböző változókat kell beállítani. 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 konfigurálá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 csomagépítési és fordítási jelzőket, amelyeket az összes csomagtelepí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 csomaggal). 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 csomagok 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

EMERGE DEFAULT OPTS/hu

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 csomagok 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 csomagok 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

The DISTDIR variable defines the location where Portage will store the downloaded source code archives Its value defaults to /var/cache/distfiles on new installations. Previously the default was ${PORTDIR}/distfiles which resolved to /usr/portage/distfiles by default.

Users can set the DISTDIR variable in /etc/portage/make.conf:

Warning
Beware where you place your DISTDIR! Only trusted users should be granted write access to this location.


File integrity check and unpacking is a non-atomic operation, allowing for an attack where a file is swapped in between, possibly leading to compromise the system.
FILE /etc/portage/make.confUsing a different DISTDIR location
DISTDIR=/var/gentoo/distfiles

For more information, please refer to the DISTDIR article.

PKGDIR

PKGDIR az a hely, ahol a Portage a bináris kódra már lefordított programcsomagokat 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 programcsomagok 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 csomagonkénti vezérlését és az /etc/portage/package.use fájlt az egyes csomagok 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 csomaghoz 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 csomagkezelőnek, hogy mely szoftverlicencek engedélyezettek. A nem elfogadott licenccel rendelkező csomagok nem telepíthetők a rendszerre.

FILE /etc/portage/make.confÖsszes licenc elfogadása az összes csomag 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 csomag 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 csomagkezelőt a CPU által engedélyezett CPU-jelölőzászlókról (szolgáltatásokról). Ezt az információt a csomaglegenerálá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 csomagban 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 csomag az emerge-legenerálá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