Re: replacing folders with symlinks (pre vs pretrans)

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

 



Quoting Panu Matilainen (2012-09-21 10:17:27)
> A directory (empty or not) can't be automatically replaced by anything 
> else (symlink or otherwise) in the existing rpm versions. If absolutely 
> necessary, it can be accomplished by doing the necessary renames and 
> symlinks in "%pretrans -p <lua>" scriptlet, but that should be only seen 
> as the last resort as its not exactly a safe operation.

This used to work in %pre scriptlet as well. It seems like RPM is now doing some
additional checks and it will not even get to the point of %pre scriptlet. As
far as I can see for F17/F18 %pre scriptlet will work, but F19+ %pretrans has to
be used, correct?

Since I *knew* we used %pre for this exact problem before, I have used it and
it broke upgrade paths[1]. I assume just rewriting %pre[2] into following
%pretrans will work:

    for key, dir in pairs({"boot", "conf"}) do
        path = "%{_datadir}/%{name}/" .. dir
        if posix.readlink(path) then
           os.remove(path)
        end
    end:

It certainly seemed to work now, but I wonder if I am just missing something else.

[1] https://admin.fedoraproject.org/updates/FEDORA-2013-9207/xmvn-0.5.0-2.fc19
[2] http://pkgs.fedoraproject.org/cgit/xmvn.git/tree/xmvn.spec#n117

-- 
Stanislav Ochotnicky <sochotnicky@xxxxxxxxxx>
Software Engineer - Developer Experience

PGP: 7B087241
Red Hat Inc.                               http://cz.redhat.com
-- 
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/devel





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux