Autoremove, autoremove! xD
Алексей, у нас всё ещё нет возможности автоматом вычистить ненужные зависимости?
Autoremove, autoremove! xD
Алексей, у нас всё ещё нет возможности автоматом вычистить ненужные зависимости?
we still have no way to clean the machine unnecessary dependencies (Google-translated)
devl547, what do you call "unnecessary dependencies"? So called "orphaned" libs on a HDD install?
Then your post belongs to http://forum.slitaz.org/topic/tazpkg-improvements ;-)
Hi Alexander,
Yes, we still missed this necessary function. The system continues bloat from unwanted packages that were downloaded as dependencies and not removed once installed several programs "to see" and removed them. If I am not mistaken, the idea is in the air five years now or so.
I think is necessary to start with order to document the facts, why each of the packages was installed (as desired by the user, or as dependency to the other package with its name). Yet another database.
As a rough approximation we could remove all lib* packages that have no rdepends? (And iterate until there are no more of them.)
Anyway this "remove unneeded packages" thing will always have pitfalls. E.g. I occasionally compile a program from sources or install it from a tarball: it depends on some libs, but these dependencies are not "registered"...
This simple script...
#!/bin/sh
awk -F$'\t' '
{
dep[$1] = " " $8 " ";
desc[$1] = $4;
size[$1] = $7;
}
END {
for (i in dep) {
orphan="yes";
for (j in dep) {
if (index(dep[j], " " i " ")) {
orphan = ""; break;
}
}
if (orphan) {
printf "\e[1m%s\e[0m: %s (%s)\n", i, desc[i], size[i];
++numorphans;
}
}
printf "============\n%s orphans\n", numorphans;
}
' /var/lib/tazpkg/installed.info
... will show you all your installed packages with their short description and size in which no one other package needs. Something like that:
unzip: Zip dearchiver. (92K 280K)
...
ubuntu-font-family: Set of new libre/open fonts (1.3M 4.1M)
gtk-engines: All standart GTK+2 engines for themes (100K 548K)
linux-firmware: Firmware thats compiled from linux source code. (812K 1.9M)
...
locale-de: German locale pack (452K 2M)
openbox-imlib2: Small-footprint and standard compliant Window Manager (Allow icons in
menus). (168K 552K)
nano: GNU Nano Text Editor (100K 392K)
hicolor-icon-theme: Icon theme that all icon themes automatically inherit from. (16K
164K)
slitaz-icons-faenza-dark: SliTaz icon set based on the Faenza-Dark icons (32K 216K)
qupzilla-locales: Translations for the QupZilla browser (664K 5.4M)
gparted: GTK partition editor. (256K 856K)
tazdev: SliTaz developers tools. (16K 48K)
gnome-calculator: GNOME Calculator is a powerful graphical calculator with financial,
logical and scientific modes. (328K 4.1M)
get-rar: Get RAR packer. (16K 28K)
...
xarchiver: A GTK+ lightweight archive manager (104K 376K)
============
340 orphans
For better results we must check variable SUGGESTED
. For example, one of the lines above:
qupzilla-locales: Translations for the QupZilla browser (664K 5.4M)
But I have package "qupzilla" installed:
tazpkg info qupzilla
TazPkg information
================================================================================
Package : qupzilla
State : installed package
Version : 1.8.5 (new build available)
Category : network
Short desc : QupZilla - QtWebKit browser
Maintainer : claudinei@slitaz.org
License : GPL3
Depends : libQtCore libQtDBus libQtGui libQtNetwork libQtScript libQtSql
libQtXml libcrypto xorg-libX11 zlib cacerts xdg-utils libQtWebkit
Suggested : libQtWebkit-video qupzilla-locales
Build deps : wget cacerts Qt4-dev qmake openssl-dev xorg-libX11-dev
Web site : https://github.com/QupZilla/qupzilla
Size : 1.7M/6.7M
Tags : web-browser
================================================================================
... and this "qupzilla" suggested me to install "qupzilla-locales", and I installed it, so this package is not so useless. This leads me to want to add the contents of the variable "SUGGESTED" into the package database installed.info (it is better and faster to process single DB file than to cycle over hundreds of receipts in the /var/lib/tazpkg/installed, executing each of them as shell script to get content of their variables).
And — of course — we need to know from where came a package, for example libsdl-mixer. Now on my system no package needs it. Most likely, that this package was installed as a dependency for a certain game that I have already removed. Therefore, this package can be deleted automatically.
________
Lucas, your example:
I occasionally compile a program from sources or install it from a tarball: it depends on some libs, but these dependencies are not "registered"...
You understand why the program can not be installed into the system without using the package manager? If so, then assemble the package and install it into the system. Describe it's dependencies in the receipt and all will be well. Do you agree?
we need to know from where came a package
This doesn't sound easy. I wonder if the feature is worth the effort. Or maybe you just need to add a flag, say "d", in the DB, to packages installed as deps?
Do you agree?
Yes, I know I'd better write a receipt...
you can test tazpkg-866
1) -gi is now working right
2) blocked packages aren't updated, as expected (with only blocked packages in the list given by "up", tazpkg doesn't even ask, nice!)
3) list-cache: add it to "usage"?
Thanks for these improvements.
hello folk, on slitaz5-rc3 if try to change repos to another version get this error
root@slitaz:~$ tazpkg setup-mirror
Current mirror(s)
=======================================================================
http://mirror.slitaz.org/packages/5.0/
Please enter URL of the new mirror (http, ftp or local path). You must specify
the complete address to the directory of the packages and packages.list file.
New mirror(s) URL: http://mirror.slitaz.org/packages/4.0/
Setting mirror(s) to: "http://mirror.slitaz.org/packages/4.0/"
root@slitaz:~$ tazpkg recharge
Recharging repository "Main"
=======================================================================
Creating backup of the last packages list... [ Done ]
Getting "bundle.tar.lzma"... [ Failed ]
Recharging failed
Restoring database files... [ Done ]
root@slitaz:~$
bug or locked at fixed repos?
Hi gibor,
Format of the packages database evolved and don't backward-compatible with the format of SliTaz-4.0 packages DB. I changed it to provide speedup of DB retrieving and some possibilities available only with the new format. I planning to add backward compatibility with the old format but I have not enough time now. Probably it is a task for January.
If you need recognition of (only) old format now, you can manually search, download and install package "tazpkg" from the SliTaz-4.0 on http://pkgs.slitaz.org/ and after that you can change the mirror.
I only want to warn you that almost all of the SliTaz 4.0 packages are unusable in the SliTaz Rolling / 5.0 because they are compiled with the older versions of "glibc" (package "glibc-base") and "gcc" (package "gcc-lib-base"). At the same time, you still can use packages that not including compiled binary executables, for example, icon themes, gtk themes, fonts, python scripts, or shell scripts.
Hi aleksey, thank for your explained, no problem for me.
Compatibilty not is problem, recompile packages on case,
[ot]
my goal is restructuring slutaz5 on too old format slitaz
And I have make this procedure two time (slitaz 3> to 2 and 4 to 3) and at this time tried to reply 5 to 4.
Or on another word my system mantain the same structure of primary version of slitaz.
This is more important for me, the force of slitaz is the fast script on boot. For the rest (sorry at all) prefer on another style of development (es. like slitaz-archlinux).
[/ot]
thank at all.
Sorry, I can't understand your quote completely.
Why anyone needs to move to ancient structure?
What the structure is?
What advantages does it give?
To maintain own distribution as a single developer is a hell.
All programs and libraries drops compatibility from time to time, not only SliTaz itself. It is attempt to make them faster, better, to provide new features. Attempt to be compatible with the other recent mainstream libraries and programs. Just progress and evolution...
Sorry, I can't understand your quote completely.
Why anyone needs to move to ancient structure?
What the structure is?
What advantages does it give?
To maintain own distribution as a single developer is a hell.
answer an order to your post
ancient or old it's a concept very relative, more people are obsessed do this at least...
http://www.linuxfromscratch.org/lfs/view/development/index.html
the basic system linux it performant essential and to run all conventional application, all other flavours added it's optional and only a personal trend.
The first version have more more concept of lfs, other versione are missed this impriting.
To recreate a similar first ambient of linux it simple: remove tazpanel, polkit, webserver and other gnome like, and the system are upgraded from binary/library and perform at same mode on all standard applications.
IMHO
Thank you for explanation.
Seems all you need is looks like "base" flavor.
But here a lot people for whom base is not enough.
As far as I know, SliTaz not violated packages building rules: all files are in places as mainstream developers expected.
If you want, please give me examples how you change the structure (other than removing tazpanel, polkit and any other removing - I already understand it from your post).
Also, in addition to lfs, the blfs project exist: http://www.linuxfromscratch.org/blfs/view/svn/
It contains Polkit that you removed. And many other useful things...
Hi aleksej, say to have more difficult to speak on english, and to do explain this step it's an big obstacle.
Anyway polkit I put out of the door since 20year old (window have polkit embedded...) and step by step the more trashware migrate to linux.
I not allowed this invasion, on my home have access only friendly software. All other code it tray out mercylessy.
Whats is my reference so? Simply Slitaz-3.0. If the developer working on this direction well, or another case I self made the my system!
have a nice day.
Hi gibor,
I see. It's hard to you to speak English.
I do not want to torture you, so I close our discussion.
If I understand you correctly, you using the package list from SliTaz 3.0 with the packages actually from SliTaz Rolling. And that's all.
I respect the right of others, but I doubt I can help you to move current SliTaz back to SliTaz 3.0. At least for me, it will not make me happy.
Respect.
This topic has been closed to new replies.