You are not logged in.
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
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
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
[ Generated in 0.018 seconds, 7 queries executed - Memory usage: 1.53 MiB (Peak: 1.77 MiB) ]