From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Fri, 7 Feb 2003 21:14:24 +0300 From: Sergey Vlasov To: devel@altlinux.ru Subject: Re: [devel] Re: rpm packaging (was: Symbolic link and replace the dir) Message-Id: <20030207211424.4126f6f6.vsu@altlinux.ru> In-Reply-To: <20030207205628.4aab4a10.vyt@vzljot.ru> References: <20030203212157.1b202e13.vyt@vzljot.ru> <20030204074510.GA2791@sam-solutions.net> <20030205194245.51e06220.vyt@vzljot.ru> <20030205195916.0e56844f.vsu@altlinux.ru> <20030205210105.5063f648.vyt@vzljot.ru> <20030206154611.609c8179.vsu@altlinux.ru> <20030207202738.3f56cc70.vyt@vzljot.ru> <20030207205628.4aab4a10.vyt@vzljot.ru> X-Mailer: Sylpheed version 0.8.8 (GTK+ 1.2.10; i586-alt-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=KOI8-R Content-Transfer-Encoding: 8bit Sender: devel-admin@altlinux.ru Errors-To: devel-admin@altlinux.ru X-BeenThere: devel@altlinux.ru X-Mailman-Version: 2.0.9 Precedence: bulk Reply-To: devel@altlinux.ru List-Unsubscribe: , List-Id: List-Post: List-Help: List-Subscribe: , List-Archive: Archived-At: List-Archive: List-Post: On Fri, 7 Feb 2003 20:56:28 +0300 Vitaly Ostanin wrote: > On Fri, 7 Feb 2003 20:47:12 +0300 (MSK) > Ivan Zakharyaschev wrote: > > > > > > Ставятся новые файлы, и в этом месте (видимо) почему-то > > > удаляются > > > те их новых, которые были в старой сборке. > > > > > > Я так и не понял, почему часть файлов удаляется, а для других > > > пишется skip. И гадать уже особо некогда. Это секретная > > > информация, или никто не сталкивался? > > > > Предположение: symlink сбивает rpm столку. > > > > В старом пакете было: > > > > /dir1/a > > > > В новом пакете: > > > > /dir1 -> /dir2 > > /dir2/a > > > > > > Тогда происходит так: > > > > %pre удаляет всю /dir1/. > > > > Ставится новый пакет, в том числе файлы: /dir1 как симлинк на > > /dir2 и /dir2/a. > > > > Удаляется старый, в том числе все те файлы, которые > > принадлежали старому, но не принадлежали новому. > > > > В старом был файл /dir1/a, а в новом файла с таким путём нет. > > Если верить rpm -qf pathtofile, то после установки "dir1/a" > принадлежит пакету, как и "dir2/a", при том, что dir1 - симлинк > на dir2. > > Так вот, в моём случае удаляются файл в старом > пакете есть файл "dir1(каталог)/a" и в новом > пакете есть "dir1(симлинк)/a". > > То есть в новом пакете файл с таким путём есть (но через > симлинк). > > По наводке MHZ попробовал создавать этот симлинк в %post и > включать в %files через %ghost. Не помогло. А если так: 1. В %pre создавать ссылку только при новой установке (не при обновлении), при убивании - сначала проверить, каталог это или ссылка (каталог убивать, ссылку оставить на месте). 2. В %preun подчистить ссылку при полном удалении. 3. В %triggerpostun на старую версию пакета создать ссылку.