Gentoo Portage Slot Conflict
Posted By admin On 24/07/22If the conflict solely involves built slot-operator (foo/bar:X/Y=) dependencies (the -verbose-conflicts option can help you determine this), then you should temporarily add the emerge -pretend and -ignore-built-slot-operator-deps=y options to your emerge command, as discussed in the answer to the previous question. Gentoo Portage Slot Conflict their gaming policies, Gentoo Portage Slot Conflict therefore you will never find that as a possibility within your Gentoo Portage Slot Conflict online casino career. However, there is a possibility to try out the no deposit bonuses that come with no turnover requirements.
Updated: Jul 2019Index
NAME
ebuild - the internal format, variables, and functions in an ebuild scriptDESCRIPTION
The ebuild(1) program accepts a single ebuild script as an argument.This script contains variables and commands that specify how to download,unpack, patch, compile, install and merge a particular software package fromits original sources. In addition to all of this, the ebuild script can alsocontain pre/post install/remove commands, as required. All ebuild scripts arewritten in bash.Dependencies
A depend atom is simply a dependency that is used by portage whencalculating relationships between packages. Please note that if the atom hasnot already been emerged, then the latest version available is matched.Examples:
Versions are normally made up of two or three numbers separated by periods,such as 1.2 or 4.5.2. This string may be followed by a character such as 1.2aor 4.5.2z. Note that this letter is not meant to indicate alpha, beta,etc... status. For that, use the optional suffix; either _alpha, _beta, _pre(pre-release), _rc (release candidate), or _p (patch). This means for the3rd pre-release of a package, you would use something like 1.2_pre3. Thesuffixes here can be arbitrarily chained without limitation.
Examples:
Example:
Example:
Example:
Examples:
Examples:
Examples:
Examples:
Examples:
Examples:
To implement the equals slot operator, the package managerwill need to store the slot/sub-slot pair of the best installedversion of the matching package. This syntax is only for packagemanager use and must not be used by ebuilds. The package managermay do this by inserting the appropriate slot/sub-slot pairbetween the colon and equals sign when saving the package'sdependencies. The sub-slot part must not be omitted here(when the SLOT variable omits the sub-slot part, the packageis considered to have an implicit sub-slot which is equal tothe regular slot).
Examples:
Example | Meaning |
foo[bar,baz] | foo must have both bar and baz enabled |
foo[-bar,baz] | foo must have bar disabled and baz enabled |
Compact Form | Equivalent Expanded Form |
foo[!bar?] | bar? ( foo ) !bar? ( foo[-bar] ) |
foo[bar=] | bar? ( foo[bar] ) !bar? ( foo[-bar] ) |
foo[!bar=] | bar? ( foo[-bar] ) !bar? ( foo[bar] ) |
Examples:
jpeg? ( media-libs/jpeg )
!nophysfs? ( dev-games/physfs )
This is often useful for those times when you want to want to add optionalsupport for a feature and have it enabled by default.
gtk2? ( =x11-libs/gtk+-2* ) !gtk2? ( =x11-libs/gtk+-1* )
That way the default is the superior GTK2 library.
Example:
Here we see that unreal-tournament has a normal version and it has a gotyversion. Since they provide the same base set of files, another package canuse either. Adding a virtual is inappropriate due to the small scope of it.
Another good example is when a package can be built with multiple videointerfaces, but it can only ever have just one.
Example:
Here only one of the packages will be chosen, and the order of preference isdetermined by the order in which they appear. So sdl has the best chance ofbeing chosen, followed by svga, then opengl, then ggi, with a default of X ifthe user does not specify any of the previous choices.
Note that if any of the packages listed are already merged, the package managerwill use that to consider the dependency satisfied.
Variable Usage Notes
- *
- Variables defined in make.conf(5) are available for use inebuilds (except Portage-specific variables, which might be not supported byother package managers).
- *
- When assigning values to variables in ebuilds, you cannot have aspace between the variable name and the equal sign.
- *
- Variable values should only contain characters that are members of theascii(7) character set. This requirement is mandated by GLEP 31.
Variables Used In Ebuilds
Example:
Example:
Example:
Example:
Example:
Examples:
Example:
Value | Meaning |
buildonly | source-build which is not scheduled for merge |
source | source-build which is scheduled for merge |
Contains the path that portage should use as the root of the live filesystem.When packages wish to make changes to the live filesystem, they should do so inthe tree prefixed by ${ROOT}. Often the offset prefix needs to be takeninto account here, for which the variable ${EROOT} is provided (seebelow). Do not modify this variable.
KEYWORDS works in conjunction with ACCEPT_KEYWORDS (see make.conf(5))to implement a system of creating sets of different types of packageswhich can then be masked or unmasked en masse. In the Gentoo Linuxproject, they are used by the Gentoo arch teams to define what ebuildsare included in a particular CPU architecture's set of stable and unstableunmasked packages.
Here's how they work. For purposes of explanation, let's assume you havea stable x86-64bit system, typically referred to as 'amd64'.ARCH would be defined as 'amd64'. If you were using the stable build ofGentoo Linux, then ACCEPT_KEYWORDS would be set to 'amd64' via profiles.Any ebuild that then has'amd64' in KEYWORDS will be unmasked by default.
On an 'unstable'amd64 system, ACCEPT_KEYWORDS will be set to 'amd64 ~amd64', with thetilde denoting 'unstable.' Then, if an ebuild has either'amd64' or '~amd64' in KEYWORDS, it will be keyword unmasked by default onthat system. Similarly, if an ebuild is known to not be compatiblewith a particular architecture, the '-' prefix ( i.e. '-amd64') settingcan be specified to mask it only on that arch.If you are developing ebuilds for Gentoo Linux, there are certainpolicies regarding KEYWORDS that you are expected to follow in orderto align with Gentoo's arch team workflow. The most importantpolicies are listed below:
It is possible to customize the behavior of ACCEPT_KEYWORDS and KEYWORDS ona per-package basis using package.accept_keywords and package.keywords filesin profiles. See portage(5) for more information on using these files.
Note that while other Gentoo-based projectshave KEYWORDS and ACCEPT_KEYWORDS, they likely will not have exactlythe same policies regarding their use. Therefore, it is necessary that youresearch their specific policies and how they differ from Gentoo.Beginning with EAPI 5, the SLOT variable may containan optional sub-slot part that follows the regular slot andis delimited by a / character. The sub-slot must be a validslot name. The sub-slot is used to represent cases in whichan upgrade to a new version of a package with a differentsub-slot may require dependent packages to be rebuilt. Whenthe sub-slot part is omitted from the SLOT definition, thepackage is considered to have an implicit sub-slot which isequal to the regular slot. Refer to the Atom SlotOperators section for more information about sub-slotusage.
Starting from EAPI 7, tools should go into the BDEPENDvariable instead, as DEPEND will only be installed into thesystem being built and hence cannot be executed when cross-compiling.
You may use the syntax described above in the Dependencies section.
In EAPI 3 or earlier, if this is not set, then it defaults to the valueof DEPEND. In EAPI 4 or later, RDEPEND will never beimplicitly set.
You may use the syntax described above in the Dependencies section.
This variable was formally introduced in EAPI 7 but waspreviously known as HDEPEND in the experimentalEAPI 5-hdepend.
You may use the syntax described above in the Dependencies section.
***WARNING***
Use this only as last resort to break cyclic dependencies!
You may use the syntax described above in the Dependencies section.
Behavior | Expression |
If flag1 enabled then flag2 enabled | flag1? ( flag2 ) |
If flag1 disabled then flag2 enabled | !flag1? ( flag2 ) |
If flag1 disabled then flag2 disabled | !flag1? ( !flag2 ) |
Must enable any one or more (inclusive or) | ( flag1 flag2 flag3 ) |
Must enable exactly one but not more (exclusive or) | ^^ ( flag1 flag2 flag3 ) |
May enable at most one (EAPI 5 or later) | ?? ( flag1 flag2 flag3 ) |
- binchecks
- Disable all QA checks for binaries. This should ONLY be used in packagesfor which binary checks make no sense (linux-headers and kernel-sources, forexample, can safely be skipped since they have no binaries). If the binarychecks need to be skipped for other reasons (such as proprietary binaries),see the QA CONTROL VARIABLES section for more specific exemptions.
- bindist
- Distribution of built packages is restricted.
- fetch
- like mirror but the files will not be fetched via SRC_URI either.
- installsources
- Disables installsources for specific packages. This is for packages withbinaries that are not compatible with debugedit.
- mirror
- files in SRC_URI will not be downloaded from the GENTOO_MIRRORS.
- network-sandbox
- Disables the network namespace for specific packages.Should not be used in the main Gentoo tree.
- preserve-libs
- Disables preserve-libs for specific packages. Note than when a package ismerged, RESTRICT=preserve-libs applies if either the new instance or theold instance sets RESTRICT=preserve-libs.
- primaryuri
- fetch from URIs in SRC_URI before GENTOO_MIRRORS.
- splitdebug
- Disables splitdebug for specific packages. This is for packages withbinaries that trigger problems with splitdebug, such as file-collisionsbetween symlinks in /usr/lib/debug/.build-id (triggered by bundled libraries).
- strip
- final binaries/libraries will not be stripped of debug symbols.
- test
- do not run src_test even if user has FEATURES=test.
- userpriv
- Disables userpriv for specific packages.
- interactive
- One or more ebuild phases will produce a prompt that requires user interaction.
- live
- The package uses live source code that may vary each time that the packageis installed.
QA Control Variables:
Note that objects that violate these rules may fail on some architectures.
This variable is intended to be used on closed-source binary objects thatcannot be altered.
This variable is intended to be used on objects that truly need executablestack (i.e. not those marked to need it which in fact do not).
This variable is intended to be used on files of binary packages which ignoreCFLAGS, CXXFLAGS, FFLAGS, FCFLAGS, and LDFLAGS variables.
PORTAGE DECLARATIONS
- .eclass extension. Also note that the inherit statement must comebefore other variable declarations unless these variables are used in globalscope of eclasses.
PHASE FUNCTIONS
Initial working directory: $PORTAGE_TMPDIR
Initial working directory: $WORKDIR
Gentoo Portage Slot Conflict Guide
Initial working directory: $S
Initial working directory: $S
Initial working directory: $S
Initial working directory: $S
Initial working directory: $S
Beginning with EAPI 4, if src_install is undefined then thefollowing default implementation is used:
Initial working directory: $PWD
Initial working directory: $PWD
Initial working directory: $PWD
HELPER FUNCTIONS
Phases:
Default Phase Functions |
default_src_unpack |
default_src_prepare |
default_src_configure |
default_src_compile |
default_src_test |
General:
Beginning with EAPI 4, all helpers automatically call diewhenever some sort of error occurs. Helper calls may be prefixed withthe nonfatal helper in order to prevent errors from being fatal.
- Example:
- Examples:
The item list is delimited by the IFS variable. This variablehas a default value of ' ', or a space. It is a bash(1) setting.
In EAPI 5 and EAPI 6, the package is searched for in thebuild host if the --host-root option is given.
In EAPI 7 and later, the confusing --host-root optionhas been replaced with -b, which corresponds to a dependencysatisfied by BDEPEND in the build host. Similarly, the-d option corresponds to DEPEND in SYSROOT and the-r option corresponds to RDEPEND in ROOT.
Example:
Output:
- eloginformative message
- If you need to display a message that you wish the user to read and takenotice of, then use elog. It works just like echo(1), butadds a little more to the output so as to catch the user's eye. The messagewill also be logged by portage for later review.
- ewarnwarning message
- Same as einfo, but should be used when showing a warning to the user.
- eqawarnQA warning message
- Same as einfo, but should be used when showing a QA warning to the user.
- eerrorerror message
- Same as einfo, but should be used when showing an error to the user.
- ebeginhelpful message
- Like einfo, we output a helpful message and then hint that thefollowing operation may take some time to complete. Once the task isfinished, you need to call eend.
- eend<status>[error message]
- Followup the ebegin message with an appropriate 'OK' or '!!' (forerrors) marker. If status is non-zero, then the additional errormessage is displayed.
Unpack:
- EXTRA_EINSTALL variable since it is for users.
- docompress[-x] <path> [list of more paths] Beginning with EAPI 4, the docompress helper is used tomanage lists of files to be included or excluded from optional compression.If the first argument is -x, add each of its subsequent arguments tothe exclusion list. Otherwise, add each argument to the inclusion list.The inclusion list initially contains /usr/share/doc,/usr/share/info, and /usr/share/man. The exclusion listinitially contains /usr/share/doc/${PF}/html.
- doseds:orig:change:g <filename> Beginning with EAPI 4, the
- dodir<path> [more paths]
- Creates directories inside of ${ED}.
'dodir /usr/lib/apache'creates ${ED}/usr/lib/apache. Note that the do* functions will rundodir for you. If this directory will be empty when it is merged,then please use keepdir instead. - diropts[options for install(1)]
- Can be used to define options for the install function used indodir. The default is -m0755.
- into<path>
- Sets the root (DESTTREE) for other functions like dobin,dosbin, doman, doinfo, dolib.
The default root is /usr. - keepdir<path> [more paths]
- Similar to dodir, but used to create directories that would otherwisebe empty. The treatment of completely-empty directories is undefined byPMS, and using keepdir ensures that they are tracked.
- dobin<binary> [list of more binaries]
- Installs a binary or a list of binaries into DESTTREE/bin.Creates all necessary dirs.
- dosbin<binary> [list of more binaries]
- Installs a binary or a list of binaries into DESTTREE/sbin.Creates all necessary dirs.
- doinitd<init.d script> [list of more init.d scripts]
- Install Gentoo init.d scripts. They will be installed into thecorrect location for Gentoo init.d scripts (/etc/init.d/). Creates allnecessary dirs.
- doconfd<conf.d file> [list of more conf.d file]
- Install Gentoo conf.d files. They will be installed into thecorrect location for Gentoo conf.d files (/etc/conf.d/). Creates allnecessary dirs.
- doenvd<env.d entry> [list of more env.d entries]
- Install Gentoo env.d entries. They will be installed into thecorrect location for Gentoo env.d entries (/etc/env.d/). Creates allnecessary dirs.
- dolib<library>[list of more libraries]
- dolib.a<library>[list of more libraries]
- dolib.so<library>[list of more libraries]
- Installs a library or a list of libraries into DESTTREE/lib.Creates all necessary dirs.
- libopts[options for install(1)]
- Can be used to define options for the install function used inthe dolib functions. The default is -m0644.
- doman[-i18n=<locale>]<man-page> [list of more man-pages]
- Installs manual-pages into /usr/share/man/man[0-9n] depending on themanual file ending. The files are compressed if they are not already. Youcan specify locale-specific manpages with the -i18n option. Then theman-page will be installed into /usr/share/man/<locale>/man[0-9n].Beginning with EAPI 2, a locale-specific manpage which contains a localein the file name will be installed in /usr/share/man/<locale>/man[0-9n],with the locale portion of the file name removed, and the -i18n optionhas no effect. For example, with EAPI 2, a manpage namedfoo.<locale>.1 will be installed as/usr/share/man/<locale>/man1/foo.1. Beginning with EAPI 4,the -i18n option takes precedence over the locale suffix of thefile name.
- dohard<filename> <linkname>
- Beginning with EAPI 4, the dohard helper no longer exists. Ebuildsshould call ln(1) directly.
- dosym<filename> <linkname>
- Performs the ln command to create a symlink.
- doheader[-r] <file> [list of more files]
- Installs the given header files into /usr/include/, by defaultwith file mode 0644 (this can be overridden with theinsopts function). Setting -r sets recursive. Thedoheader helper is available beginning with EAPI 5.
- dohtml [-a filetypes] [-r] [-x list-of-dirs-to-ignore] [list-of-files-and-dirs]
- Installs the files in the list of files (space-separated list) into/usr/share/doc/${PF}/html provided the file ends in .htm, .html, .css, .js, Setting -a limits what types of files will be included,-A appends to the default list, setting -x sets which dirs toexclude (CVS excluded by default), -p sets a document prefix,-r sets recursive.
- doinfo<info-file> [list of more info-files]
- Installs info-pages into DESTDIR/info. Files are automaticallygzipped. Creates all necessary dirs.
- domo<locale-file> [list of more locale-files]
- Installs locale-files into DESTDIR/usr/share/locale/[LANG]depending on local-file's ending. Creates all necessary dirs.
- fowners[-h -H -L -P -R] [user][:group] <file> [files]
- fperms[-R] <permissions> <file> [files]
- Performs chown (fowners) or chmod (fperms), applyingpermissions to files.
- insinto[path]
- Sets the destination path for the doins function.
The default path is /. - insopts[options for install(1)]
- Can be used to define options for the install function used indoins. The default is -m0644.
- doins[-r] <file> [list of more files]
- Installs files into the path controlled by insinto. This functionuses install(1). Creates all necessary dirs.Setting -r sets recursive. Beginning with EAPI 4, bothdoins and newins preserve symlinks. In EAPI 3 andearlier, symlinks are dereferenced rather than preserved.
- exeinto[path]
- Sets the destination path for the doexe function.
The default path is /. - exeopts[options for install(1)]
- Can be used to define options for the install function used in doexe.The default is -m0755.
- doexe<executable> [list of more executables]
- Installs executables into the path controlled by exeinto. This functionuses install(1). Creates all necessary dirs.
- docinto[path]
- Sets the subdir used by dodoc and dohtmlwhen installing into the document tree(based in /usr/share/doc/${PF}/). Default is no subdir, or just '.
- dodoc[-r] <document> [list of more documents]
- Installs a document or a list of documents into/usr/share/doc/${PF}/<docinto path>.Documents are marked for compression. Creates all necessary dirs.Beginning with EAPI 4, there is support for recursion, enabled by thenew -r option.
- newbin<old file> <new filename>
- newsbin<old file> <new filename>
- newinitd<old file> <new filename>
- newconfd<old file> <new filename>
- newenvd<old file> <new filename>
- newlib.so<old file> <new filename>
- newlib.a<old file> <new filename>
- newman<old file> <new filename>
- newins<old file> <new filename>
- newexe<old file> <new filename>
- newdoc<old file> <new filename>
- All these functions act like the do* functions, but they only work with onefile and the file is installed as [new filename].Beginning with EAPI 5, standard input is read when thefirst parameter is - (a hyphen).
- NAME
- DESCRIPTION
- Dependencies
- Variable Usage Notes
- Variables Used In Ebuilds
- QA Control Variables:
- PORTAGE DECLARATIONS
- PHASE FUNCTIONS
- HELPER FUNCTIONS
- Phases:
- General:
- Output:
- Unpack:
- Compile:
- Install:
- EXAMPLES
- FILES
- SEE ALSO
- REPORTING BUGS
- AUTHORS
The optional compression shall be carried out after src_installhas completed, and before the execution of any subsequent phasefunction. For each item in the inclusion list, pretend it has thevalue of the D variable prepended, then:
If it is a directory, act as if every file or directory immediatelyunder this directory were in the inclusion list.If the item is a file, it may be compressed unless it has beenexcluded as described below.
If the item does not exist, it is ignored.
Whether an item is to be excluded is determined as follows: For eachitem in the exclusion list, pretend it has the value of the Dvariable prepended, then:
If it is a directory, act as if every file or directory immediatelyunder this directory were in the exclusion list.If the item is a file, it shall not be compressed.
If the item does not exist, it is ignored.
Gentoo Portage Slot Conflict Buster
dosed helper no longer exists. Ebuildsshould callGentoo Portage Slot Conflict Bracket
sed(1) directly (and assume that it is GNU sed).Performs sed in place on filename inside ${ED}. If no expression isgiven then 's:${D}::g' is used as the default expression. Notethat this expression does NOT use the offset prefix.
'dosed s:/usr/local:/usr:g /usr/bin/some-script'runs sed on ${ED}/usr/bin/some-script
EXAMPLES
FILES
SEE ALSO
ebuild(1),make.conf(5),color.map(5)REPORTING BUGS
Please report bugs via https://bugs.gentoo.org/AUTHORS
Index
Time: 08:59:11 GMT, December 07, 2020I'm trying to understand the explanation of this but I don't quite see it. It
looks like conflicting libraries used by gimp, inkscape and openoffice.
I don't quite understand the explanation, and what my options are.
Translation appreciated.
Thanks,
Mike
msoulier@anton:~$ emerge --pretend --update --deep world
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild U ] dev-libs/libassuan-1.0.5 [1.0.4]
[ebuild U ] dev-lang/python-2.5.4-r2 [2.5.2-r7] USE='xml%*'
[ebuild U ] dev-python/setuptools-0.6_rc9 [0.6_rc8-r1]
[ebuild U ] app-text/poppler-0.10.5-r1 [0.10.4]
[ebuild U ] app-text/poppler-bindings-0.10.5-r1 [0.10.4]
[ebuild U ] app-crypt/gnupg-2.0.11 [2.0.10]
[ebuild U ] dev-python/pygtk-2.14.1 [2.14.0]
!!! Multiple package instances within a single package slot have been pulled
!!! into the dependency graph, resulting in a slot conflict:
app-text/poppler-bindings:0
('installed', '/', 'app-text/poppler-bindings-0.10.4', 'nomerge') pulled in
by
~app-text/poppler-bindings-0.10.4[gtk,cairo] required by ('installed',
'/', 'media-gfx/gimp-2.6.4', 'nomerge')
~app-text/poppler-bindings-0.10.4[gtk,cairo] required by ('installed',
'/', 'virtual/poppler-glib-0.10.4', 'nomerge')
~app-text/poppler-bindings-0.10.4[gtk,cairo] required by ('installed',
'/', 'media-gfx/inkscape-0.46-r5', 'nomerge')
(and 1 more)
('ebuild', '/', 'app-text/poppler-bindings-0.10.5-r1', 'merge') pulled in by
app-text/poppler-bindings required by world
Explanation:
New USE for 'app-text/poppler-bindings:0' are incorrectly set. In
order to solve this, adjust USE to satisfy '~app-text/poppler-
bindings-0.10.4[gtk,cairo]'.
app-text/poppler:0
('ebuild', '/', 'app-text/poppler-0.10.5-r1', 'merge') pulled in by
~app-text/poppler-0.10.5 required by ('ebuild', '/',
'app-text/poppler-bindings-0.10.5-r1', 'merge')
(and 1 more)
('installed', '/', 'app-text/poppler-0.10.4', 'nomerge') pulled in by
~app-text/poppler-0.10.4 required by ('installed', '/',
'dev-tex/luatex-0.30.3', 'nomerge')
~app-text/poppler-0.10.4 required by ('installed', '/',
'app-text/poppler-bindings-0.10.4', 'nomerge')
~app-text/poppler-0.10.4 required by ('installed', '/',
'app-office/openoffice-3.0.0', 'nomerge')
(and 3 more)
It may be possible to solve this problem by using package.mask to
prevent one of those packages from being selected. However, it is also
possible that conflicting dependencies exist such that they are
impossible to satisfy simultaneously. If such a conflict exists in the
dependencies of two different packages, then those packages can not be
installed simultaneously.
For more information, see MASKED PACKAGES section in the emerge man page
or refer to the Gentoo Handbook.
--
Michael P. Soulier <msou...@digitaltorque.ca>
'Any intelligent fool can make things bigger and more complex... It takes a
touch of genius - and a lot of courage to move in the opposite direction.'
--Albert Einstein