SliTaz SliTaz Forum

You are not logged in.

#1 2016-07-09 00:50:39

AnhHuynh
Member
Registered: 2016-07-08
Posts: 23

slitaz-4: tazpkg deletes files if they are in two packages

Hi,

The binary /usr/bin/ldd is in both packages [c]glibc-dev[/c] and [c]slitaz-base-files[/c]. When I remove [c]glibc-dev[/c] package as I don't need it anymore, the file /usr/bin/ldd is removed too. It took me quite a long time to figure out [c]slitaz-base-files[/c] also had the file. Reinstalling that helped, but the removal behavior is not expected.

Any idea?

Offline

#2 2016-07-09 15:39:26

mojo
Administrator
Registered: 2011-03-29
Posts: 2,173

Re: slitaz-4: tazpkg deletes files if they are in two packages

Many packages own files with the same path and name that overwrite the pre-existing packages file when installed. Tazpkg adds the package(modifier) that overwrites to the pre-existing packages modifier record. Before you remove a modifier it warns that a package on your system was modified by the package you want to remove. After the removal it asks if you want to reinstall the modified package which will restore the missing file due to the removal of the modifier. If there are multiple names in the modifier record it refers the user to check the modifier record.   

Warning before removal:

root@slitaz:/home/tux# tazpkg remove  glibc-dev

The following packages depend on glibc-dev:

  glibc

  slitaz-toolchain

The following packages have been modified by glibc-dev:

slitaz-base-files

Remove glibc-dev (2.13) ?

Please confirm uninstallation (y/N) :

Post removal:

Because slitaz-base-files was also modified by another package(busybox) still on the system it points user to slitaz-base-files modifier record. Overwriting busybox changes to slitaz-base-files by reinstalling slitaz-base-files is user decision.

root@slitaz:/home/tux# tazpkg remove  glibc-dev

The following packages depend on glibc-dev:

  glibc

  slitaz-toolchain

The following packages have been modified by glibc-dev:

  slitaz-base-files

Remove glibc-dev (2.13) ?

Please confirm uninstallation (y/N) : y

Removing: glibc-dev

================================================================================

Removing all files installed...                                      [ OK ]

Removing package receipt...                                          [ OK ]

Remove packages depending on glibc-dev (y/N) ?

Reinstall packages modified by glibc-dev (y/N) ? y

Check /var/lib/tazpkg/installed/slitaz-base-files/modifiers for reinstallation

If you try to repack a package that has been modified it fails and lists the modifiers:

root@slitaz:/home/tux# tazpkg repack slitaz-base-files

Repacking : slitaz-base-files-4.6.tazpkg

================================================================================

Can't repack, slitaz-base-files files have been modified by:

  busybox

  glibc-dev

Find packages(installed or not installed on system) owning a file in the repo:

root@slitaz:/home/tux# tazpkg search-pkgname /usr/bin/ldd

Search result for file /usr/bin/ldd

================================================================================

glibc-dev

slitaz-base-files

================================================================================

2 pkg(s) found with file: /usr/bin/ldd

Offline

#3 2016-07-10 06:52:58

AnhHuynh
Member
Registered: 2016-07-08
Posts: 23

Re: slitaz-4: tazpkg deletes files if they are in two packages

Thanks for your explanation.

I use "yes | tazpkg remove ..." when removing packages in non-interactive environment. I didn't notices from [c]tazpkg[/c].

Is there any option to keep files when they should be removed? If two or more packages hold some file, I think it's better to keep that file as long as at least one of the packages is still on the system.

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.018 seconds, 7 queries executed - Memory usage: 1.53 MiB (Peak: 1.77 MiB) ]