[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: uids for daemons on a spin



On Wed, Aug 6, 2008 at 8:28 PM, Enrico Scholz <enrico scholz informatik tu-chemnitz de> wrote:
"Martin Langhoff" <martin langhoff gmail com> writes:

> So I would need to have an "config" package that
>  - depends on fedora-usermgmt fedora-usermgmt-shadowutils
>  - is guaranteed to install _before_ any other package that depends on
> fedora-usermgmt

See

 http://fedoraproject.org/wikiold/PackageUserCreation (old wiki;
 conversion to new broke some things)

 https://www.redhat.com/archives/fedora-extras-list/2006-March/msg00793.html

 http://ensc.de/fedora/fedora-usermgmt-my.spec

Latter is a spec file which should be used to create a package for a
local repository.  Register this repository in your kickstart file, and
add 'fedora-usermgmt-my' to the %files section.  Due to its shorter
name it wins against 'fedora-usermgmt-shadow-utils' (which applies the
non-predictable behaviour by default).

AFICT, this is Untrue, rpm don't do so.

rpm use a topological sorting in install, eg partial ordering based - it will be non deterministic only with dependency loop. See this example

rpm -Uvvvvvvvh --test /home/machbuild/rpmbuild/RPMS/verylooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooongrpm-1.0-1.noarch.rpm  /home/machbuild/rpmbuild/RPMS/veryl-1.0-1.noarch.rpm 2>&1 | grep -A 5 -B 5 "tsorting packages"
D: ========== +++ foo-1.0-1 noarch/linux 0x0
D:  Requires: rpmlib(CompressedFileNames) <= 3.0.4-1        YES (cached)
D:  Requires: rpmlib(PayloadFilesHavePrefix) <= 4.0-1       YES (cached)
D: closed   db index       /var/lib/rpm/Depends
D: ========== recording tsort relations
D: ========== tsorting packages (order, #predecessors, #succesors, tree, depth, breadth)
D:     0    0    1    0    1    0   +verylooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooongrpm-1.0-1.noarch
D: ========== successors only (12581 bytes)
D:     1    1    0    0    2    0     +veryl-1.0-1.noarch

D: installing binary packages
D: mounted filesystems:

rpm -Uvh /home/machbuild/rpmbuild/RPMS/verylooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooongrpm-1.0-1.noarch.rpm  /home/machbuild/rpmbuild/RPMS/veryl-1.0-1.noarch.rpm 2>&1
Preparing...                ########################################### [100%]
installing verylooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooongrpm
   1:veryloooooooooooooooooo########################################### [ 50%]
installing veryl
   2:veryl                    ########################################### [100%]

veyl has : Requires(post): verylooo..grpm

So verylooong will be installed before veryl. OTHO. AFAICT it is possible anyway to influence
the ordering if some other package increment the incoming edge deps on the veryl package.

yum, which is based on rpmlib, do the same. Anaconda ordering is/was/can be different.


Regards


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]