# pkg autoremove: totally unreliable



## Hanky-panky (Dec 14, 2016)

Like in the subject.

The experience with this `pkg autoremove` command is totally tragic in this perfectly working FreeBSD 11.0-RELEASE system.


```
% sudo pkg autoremove
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 63 packages:

Installed packages to be REMOVED:
        docbook2X-0.8.8_4
        OpenSP-1.5.2_3
        accerciser-3.14.0_1
        adacurses-20150808_4
        gnome-utils-3.18.0,1
        baobab-3.18.1
        clang36-3.6.2
        gnome-contacts-3.18.0_3
        enca-1.19
        enscript-a4-1.6.6_2
        eog-plugins-3.16.3
        evolution-mapi-3.18.4
        gcc6-aux-20160822
        gegl-0.2.0_19
        gnome-photos-3.18.2_1
        gfbgraph-0.2.3
        gnome-calculator-3.18.3
        gnome-clocks-3.18.0
        gnome-color-manager-3.18.0_1
        gnome-dictionary-3.18.1
        gnome-documents-3.18.2
        gnome-font-viewer-3.16.2
        gnome-maps-3.18.4
        gnome-screenshot-3.18.0
        gnome-search-tool-3.6.0_1
        gnome-system-log-3.9.90_1
        gnome-themes-2.32.1_1
        gnome-tweak-tool-3.18.1
        gnome-weather-3.18.1
        gnote-3.18.1_1
        grilo-plugins-0.2.17
        ini_file_manager-03_2
        itstool-2.0.2_1
        libclc-0.2.0.20151006
        libmapi-2.3_2
        libopenraw-0.1.0
        libzapojit-0.0.3_2
        libzrtpcppcore-4.6.4
        llvm36-3.6.2_2
        ninja-1.7.2,2
        orca-3.18.2
        p5-MIME-Base32-1.301
        p5-MIME-Base64-3.15
        p5-Unicode-Map8-0.13_1
        p5-Unicode-String-2.10
        py27-sphinx-1.4.8
        py27-Jinja2-2.8
        py27-MarkupSafe-0.23
        samba42-4.2.14
        py27-dnspython-1.15.0
        py27-docutils-0.13.1
        py27-imagesize-0.7.1
        py27-pygments-2.1.3
        py27-setuptools_scm-1.13.1
        py34-atspi-2.18.0
        py34-dbus-1.2.0_1
        recode-3.6_13
        swig13-1.3.40_1
        tex-libtexlua-5.2.4
        tex-libtexluajit-2.0.3
        texinfo-6.1.20160425,1
        unoconv-0.6
        yelp-tools-3.18.0

Number of packages to be removed: 63

The operation will free 941 MiB.

Proceed with deinstalling packages? [y/N]: n
```

If it ins't tragic, it will makes me laugh. I do use daily all those programs (Gnome 3 is my preferred environment and it is perfectly setup on that machine): that evil command want autoremove this program for me.

I experimented a bit with `pkg` in this last days and I found so much glitch and problems I can say it should just stick with his main goal: to install and remove packages on request.

Do you have different opinion and if yes, how you can justify `pkg` suggesting me to kill my perfectly working system autoremoving my daily use software?


----------



## marino (Dec 14, 2016)

Autoremove means it removes packages you didn't specifically install and aren't required by packages you did specifically install.
AFAIK it works fine and reliably, which leads to the conclusion that you way you installed the packages is suspect.  (or perhaps you removed other packages incorrectly and left a bunch of orphans)


----------



## kpa (Dec 14, 2016)

Autoremove is working exactly as intended, it removes packages that are not dependended on by any other installed packaged and were initially installed as automatic dependencies. If you remove a top level metaport, for example x11/xorg, all of the dependencies of x11/xorg will become candidates for autoremove because you most likely didn't originally install anything else but x11/xorg directly and all of its dependencies were pulled in as automatic dependencies.


----------



## tobik@ (Dec 14, 2016)

You can use pkg-set(8) to disable the automatic flag per package or for all packages (exclude them from autoremove): `pkg set -A 0 package` or for all packages `pkg set -A 0 -a` (not sure why you'd want to do that though)


----------



## ANOKNUSA (Dec 14, 2016)

tobik said:


> You can use pkg-set(8) to disable the automatic flag per package or for all packages (exclude them from autoremove): `pkg set -A 0 package` or for all packages `pkg set -A 0 -a` (not sure why you'd want to do that though)



Before you ever even consider doing that, you should look at the output of `pkg leaf`, which will list all ports/packages you have explicitly installed. If something is missing---say, x11/gnome3 or x11/gnome3-lite---then chances are you deleted it, which would be why those essential GNOME packages are listed to be removed.


----------



## Phishfry (Dec 15, 2016)

I am really surprised that none of the documentation notes the -leaf option. That is a great tip. Using `pkg info` shows too much chatter. I really needed that.

https://www.freebsd.org/cgi/man.cgi?pkg(7)
https://wiki.freebsd.org/pkgng
Here we have:"Automatically Removing Leaf Dependencies" the only reference to leaf and pkg.
https://www.freebsd.org/doc/handbook/pkgng-intro.html

Is leaf a Unix thing or more a tree based analogy.


----------



## Phishfry (Dec 15, 2016)

Nevermind. I see it probably migrated from the old pkg system as `pkg_cutleaves`

I also see that Portmaster uses a "leaf ports" category.


----------



## Hanky-panky (Dec 15, 2016)

marino@ said:


> Autoremove means it removes packages you didn't specifically install and aren't required by packages you did specifically install.
> AFAIK it works fine and reliably, which leads to the conclusion that you way you installed the packages is suspect.  (or perhaps you removed other packages incorrectly and left a bunch of orphans)


I didn't installed Gnome meta-port becouse I do personalize my system and I just install needed ports, then it is not a good reason for a serious package manager to call my perfectly customnized Gnome 3 as leftovers.

And what about Clang? It works perfectly fine and that kinky package manager call it a leftover, I need it to build some stuff, and Samba (?!?!?!?) how can it call it leftover if it is constantly used and in charge of file sharing on that machine?

Come on, `pkg`, in this case of autoremove, it is totally unreliable.


----------



## PacketMan (Dec 15, 2016)

ANOKNUSA said:


> ....you should look at the output of `pkg leaf`



Thanks for that. I've been using `portmaster -L` as it lists all the ports installed on the machine and also tells which ports are leaf, root, trunk, etc.  Use -l flag to list without checking to see if any have upgrades available, or use -L flag to see list and check for upgrades available.


----------



## SirDice (Dec 15, 2016)

Hanky-panky said:


> And what about Clang? It works perfectly fine and that kinky package manager call it a leftover, I need it to build some stuff, and Samba (?!?!?!?) how can it call it leftover if it is constantly used and in charge of file sharing on that machine?


It's the wrong kind of expectation. You're expecting the package system to know what you use, it doesn't. No package manager ever does, not with yum, not with apt, or any other Linux package manager. All it sees are dependencies. Apparently some time in the past you installed something that depended on Clang and/or Samba and it pulled those in automatically. This package has since been removed but because Clang (or Samba) was installed as a dependency and there's nothing else depending on it it's scheduled to be removed. All perfectly normal and expected.

Either set those packages to non-automatic or install them explicitly (which automatically sets them as non-auto).


----------



## Hanky-panky (Dec 15, 2016)

SirDice said:


> It's the wrong kind of expectation. You're expecting the package system to know what you use, it doesn't. No package manager ever does, not with yum, not with apt, or any other Linux package manager. All it sees are dependencies. Apparently some time in the past you installed something that depended on Clang and/or Samba and it pulled those in automatically. This package has since been removed but because Clang (or Samba) was installed as a dependency and there's nothing else depending on it it's scheduled to be removed. All perfectly normal and expected.
> 
> Either set those packages to non-automatic or install them explicitly (which automatically sets them as non-auto).


For me, and for any normal mind, I do expect `pkg autoremove` act like `emerge depclean` act in Linux Gentoo: it analize my system and it say which packages are broken, outdated, not maintained, in a term useless for the system. `pkg autoremove` can't, simply can't ask me to remove vital part of the ports compilation just becouse it think they were dependencies to another removed port or just becouse there is no meta port installed (in the case of Gnome 3 in my system).

And BTW, that machine is over five years old, constantly updated and upgraded and I'm sure Samba - for example - was installed DIRECTLY from ports long time ago and related with Clang, in the same machine reside my fav browser, Chromium, and Clang is needed to built Chromium. So why you want to remove it?

There is no perfect software, then `pkg autoremove` proved to be totally unreliable, my two cents.


----------



## SirDice (Dec 15, 2016)

Hanky-panky said:


> For me, and for any normal mind, I do expect  pkg autoremove act like  emerge depclean act in Linux Gentoo: it analize my system and it say which packages are broken, outdated, not maintained, in a term useless for the system.


This is the crux of the problem. You're expecting something that simply isn't there. You need to adjust your expectations.


----------



## Hanky-panky (Dec 15, 2016)

SirDice said:


> This is the crux of the problem. You're expecting something that simply isn't there. You need to adjust your expectations.


Or they need to change the name of the functio with something that explain it better.

Here another ridicolous listing from another machine, built by me, the one with outdated gcc. Pretty similar, it still think Gnome, Samba (?!?!?!?!?!) is to autoremoved and tex* too, I doo deeply use tex* LOL And so on... and the broken gcc was not on the listing 


```
% sudo pkg autoremove
Updating database digests format: 100%
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 63 packages:

Installed packages to be REMOVED:
        docbook2X-0.8.8_4
        OpenSP-1.5.2_3
        accerciser-3.14.0_1
        adacurses-20150808_4
        gnome-utils-3.18.0,1
        baobab-3.18.1
        clang36-3.6.2
        gnome-contacts-3.18.0_3
        enca-1.19
        enscript-a4-1.6.6_2
        eog-plugins-3.16.3
        evolution-mapi-3.18.4
        gcc6-aux-20160822
        gegl-0.2.0_19
        gnome-photos-3.18.2_1
        gfbgraph-0.2.3
        gnome-calculator-3.18.3
        gnome-clocks-3.18.0
        gnome-color-manager-3.18.0_1
        gnome-dictionary-3.18.1
        gnome-documents-3.18.2
        gnome-font-viewer-3.16.2
        gnome-maps-3.18.4
        gnome-screenshot-3.18.0
        gnome-search-tool-3.6.0_1
        gnome-system-log-3.9.90_1
        gnome-themes-2.32.1_1
        gnome-tweak-tool-3.18.1
        gnome-weather-3.18.1
        gnote-3.18.1_1
        grilo-plugins-0.2.17
        ini_file_manager-03_2
        itstool-2.0.2_1
        libclc-0.2.0.20151006
        libmapi-2.3_2
        libopenraw-0.1.0
        libzapojit-0.0.3_2
        libzrtpcppcore-4.6.4
        llvm36-3.6.2_2
        ninja-1.7.2,2
        orca-3.18.2
        p5-MIME-Base32-1.301
        p5-MIME-Base64-3.15
        p5-Unicode-Map8-0.13_1
        p5-Unicode-String-2.10
        py27-sphinx-1.4.8
        py27-Jinja2-2.8
        py27-MarkupSafe-0.23
        samba42-4.2.14
        py27-dnspython-1.15.0
        py27-docutils-0.13.1
        py27-imagesize-0.7.1
        py27-pygments-2.1.3
        py27-setuptools_scm-1.13.1
        py34-atspi-2.18.0
        py34-dbus-1.2.0_1
        recode-3.6_13
        swig13-1.3.40_1
        tex-libtexlua-5.2.4
        tex-libtexluajit-2.0.3
        texinfo-6.1.20160425,1
        unoconv-0.6
        yelp-tools-3.18.0

Number of packages to be removed: 63

The operation will free 941 MiB.

Proceed with deinstalling packages? [y/N]:
```

Hahahahahahaha


----------



## SirDice (Dec 15, 2016)

> I do expect pkg autoremove act like emerge depclean act in Linux Gentoo: it analize my system and it say which packages are broken, outdated, not maintained, in a term useless for the system.


Actually, I just checked the man pages and it works exactly the same way as pkg(8) on FreeBSD. It doesn't know what you're using and if something was installed as a dependency and nothing depends on it anymore a depclean will simply remove the package.


----------



## Hanky-panky (Dec 15, 2016)

SirDice said:


> Actually, I just checked the man pages and it works exactly the same way as pkg(8) on FreeBSD. It doesn't know what you're using and if something was installed as a dependency and nothing depends on it anymore a depclean will simply remove the package.


Yes, then it will never ever ask for Gnome remove if just there is no meta port installed. And it will never ever ask for samba remove if it is safe and in use.

Maybe the difference is Emerge works and pkg don't?

And, again, it as revdep-rebuild to eventually fix operator and software mistakes when running depclean. A big difference.


----------



## ASX (Dec 15, 2016)

I can confirm that some problem exists related to pkg autoremove, on my system it want to remove firefox and thunderbird among others, and those two are not installed as dependency of anything.

However, resetting the flags solve the problem for me, yet I think some other tool (possibly used to install from ports) may be behind this type of issue, which in my case remain to be investigated.

```
pkg set -A 0 thunderbird
pkg set -A 0 firefox
```


----------



## hukadan (Dec 15, 2016)

Hanky-panky said:


> then  pkg autoremove *proved* to be totally unreliable


I am really interested in that proof. Could you give me the test case showing that a package that is not installed as a dependency is removed by the `pkg autoremove` command.


----------



## roddierod (Dec 15, 2016)

Just a question, Hanky-panky has said things like:



> my perfectly customnized Gnome 3





> And what about Clang? It works perfectly fine and that kinky package manager call it a leftover, I need it to build some stuff





> Clang is needed to built Chromium.



So is you system a mix of ports that you have built and packages?  In which case there is your problem, I think.


----------



## Hanky-panky (Dec 15, 2016)

Proved becouse I can remember I installed the port "directly". Then if you know a command that show how and when a port was installed, please tell it to me and I will execute that command for you.


----------



## ASX (Dec 15, 2016)

hukadan said:


> I am really interested in that proof. Could you give me the test case showing that a package that is not installed as a dependency is removed by the `pkg autoremove` command.



Are you aware on any package/port that could pull in firefox or thunderbird as dependencies ?



roddierod said:


> So is you system a mix of ports that you have built and packages? In which case there is your problem, I think.



Care to explain why that would be a problem ?
(considering that the documentation state that installing from port is equivalent to installing from package repository).


----------



## Hanky-panky (Dec 15, 2016)

roddierod said:


> Just a question,
> 
> So is you system a mix of ports that you have built and packages?  In which case there is your problem, I think.


Absolutely DON'T! I avoid that type of hybrid systems. All my systems are built from ports! Also because, well, I never been too deep with this, then pkg seems unable to cope with personalized ports built packages, if you install a pkg on a port built system it will reset all your default, like reinstalling 600 packages with different defaults just to install a single package. This is so dumb too. Then as I said I never been too deep in this subject because I do build all my system using ports because I want a need personalized software and settings.


----------



## SirDice (Dec 15, 2016)

Hanky-panky said:


> And it will never ever ask for samba remove if it is safe and in use.


Actually, it will.

Suppose, you install packageA and packageB is installed as a dependency of packageA. If you later on remove packageA both pkg-autoremove(8) and emerge --depclean will remove packageB. It doesn't know _you_ depend on packageB, all it sees is a relation between packageA and packageB. And because packageA was removed there's no use for packageB any more.


----------



## hukadan (Dec 15, 2016)

ASX said:


> Are you aware on any package/port that could pull in firefox or thunderbird as dependencies ?


I posted just after you and your post was not visible to me at that time. For www/firefox, there is only www/firefox-i18n. For mail/thunderbird, there are mail/thunderbird-dictionaries and mail/thunderbird-i18n. Otherwise, I have no clue why those packages have been set to _automaticaly installed_ in your case.

Then, to be fair, since these two packages were set as _automatically installed_, then `pkg autoremove` worked as expected and the problem lies somewhere else. If `pkg autoremove` wanted to remove packages that were set as _non-automatically installed_, then it would be proven to be unreliable.


----------



## gkontos (Dec 15, 2016)

Hanky-panky said:


> if you install a pkg on a port built system it will reset all your default, like reinstalling 600 packages with different defaults just to install a single package. This is so dumb too.


Obviously you have no idea regarding dependencies and options. No surprise here, after all you managed to break 20 machines during freebsd-update in another thread.


----------



## hukadan (Dec 15, 2016)

ASX said:


> Care to explain why that would be a problem ?


As for mixing ports and packages, you have this thread : Thread 51531


----------



## ASX (Dec 15, 2016)

hukadan said:


> As for mixing ports and packages, you have this thread : Thread 51531



Ah, I see you are referring to use of the unreliable portmaster and portupgrade.

Actually I'm using Synth exclusively, building from port using `synth prepare-system`, followed by `pkg upgrade -r Synth`. Unsure if that qualify as installing from ports.


----------



## kpa (Dec 15, 2016)

ASX said:


> Ah, I see you are referring to use of the unreliable portmaster and portupgrade.
> 
> Actually I'm using Synth exclusively, building from port using `synth prepare-system`, followed by `pkg upgrade -r Synth`. Unsure if that qualify as installing from ports.



It does certainly but with a little twist. You're building from ports but you're using an extra step of creating a binary repository out of the built ports and using that repository with ports-mgmt/pkg. If you build and install ports directly with `make install` you don't get a package file but the results of the build are copied from the port staging directory as if the staging directory was the result of an extracted package file.


----------



## ASX (Dec 15, 2016)

hukadan said:


> I posted just after you and your post was not visible to me at that time. For www/firefox, there is only www/firefox-i18n. For mail/thunderbird, there are mail/thunderbird-dictionaries and mail/thunderbird-i18n. Otherwise, I have no clue why those packages have been set to _automaticaly installed_ in your case.



Thanks, I can confirm both the i18n packages were installed before and later removed, at the same time I'm also sure firefox and thunderbird were been installed before and separately from the corresponding i18n packages.



> Then, to be fair, since these two packages were set as _automatically installed_, then `pkg autoremove` worked as expected and the problem lies somewhere else. If `pkg autoremove` wanted to remove packages that were set as _non-automatically installed_, then it would be proven to be unreliable.



I agree, as I wrote before pkg autoremove itself seems to work as designed, not so sure about the pkg flags management.

Right now `pkg autoremove` has "nothing to do" on my system, I will monitor my install for the time being in relation to pkg autoremove..


----------



## hukadan (Dec 15, 2016)

ASX said:


> Ah, I see you are referring to use of the unreliable portmaster and portupgrade.


IMHO, the problem with mixing port and packages is not much about the tool you use. It is more about the fact that you install packages build from different version of the port tree (let alone different options). Much better description than mine have been made by others on this forum concerning this problem.


----------



## kpa (Dec 15, 2016)

hukadan said:


> IMHO, the problem with mixing port and packages is not much about the tool you use. It is more about the fact that you install packages build from different version of the port tree (let alone different options). Much better description than mine have been made by others on this forum concerning this problem.



Refer to the first chapter of my Poudriere HOWTO, it's a quite complete summary of everything wrong with the plain ports(7) system and the frontend tools like ports-mgmt/portmaster that don't separate the port building from the host.

Thread 38859


----------



## ASX (Dec 15, 2016)

hukadan said:


> IMHO, the problem with mixing port and packages is not much about the tool you use. It is more about the fact that you install packages build from different version of the port tree (let alone different options). Much better description than mine have been made by others on this forum concerning this problem.



Well, I agree with you, and that's why I switched to use ports-mgmt/synth exclusively, which help to prevent many of these mismatches, I continue to see how portupgrade and portmaster are unreliable, yet they are still the officially suggested tools to build from ports, unfortunately.


----------



## ANOKNUSA (Dec 15, 2016)

Phishfry said:


> I am really surprised that none of the documentation notes the -leaf option.



It's an alias. Check out /usr/local/etc/pkg.conf and pkg.con(5) for some ideas on writing your own. I switched min up to `query -e '%a = 0' %o | sort -d`, which makes it list the port origins alphabetically by port name, rather than by package name and version. I remember seeing kpa share something similar not that long ago, but can't remember the difference.


----------



## kpa (Dec 15, 2016)

ANOKNUSA said:


> It's an alias. Check out /usr/local/etc/pkg.conf and pkg.con(5) for some ideas on writing your own. I switched min up to `query -e '%a = 0' %o | sort -d`, which makes it list the port origins alphabetically by port name, rather than by package name and version. I remember seeing kpa share something similar not that long ago, but can't remember the difference.



https://forums.freebsd.org/threads/58889/#post-336933

Your version just checks for the automatic flag (which is the wrong indicator if you happen to delete leaf metaports), mine checks if the installed package is required by any other packages.


----------



## Hanky-panky (Dec 15, 2016)

ASX said:


> Well, I agree with you, and that's why I switched to use ports-mgmt/synth exclusively, which help to prevent many of these mismatches, I continue to see how portupgrade and portmaster are unreliable, yet they are still the officially suggested tools to build from ports, unfortunately.


I don't agree at all. Experience proved portmaster and building/upgrande source and kernel from scratch are the only serious way to maintain a FreeBSD machine. Pkg and freebsd-update proved IMHO to be contradictory and unreliable especially on deep customize Os installs.

Sorry for no formatting. I am on my beloved iPAD and very pressed.


----------



## kpa (Dec 15, 2016)

ASX said:


> Well, I agree with you, and that's why I switched to use ports-mgmt/synth exclusively, which help to prevent many of these mismatches, I continue to see how portupgrade and portmaster are unreliable, yet they are still the officially suggested tools to build from ports, unfortunately.



Until we got Synth there was no way you could recommend anything else to an average user. Poudriere for example requires setting up jails and is sometimes not so user friendly if you're not completely "in the know" of how certain things work. In my opinion Synth should be the default recommendation for ports building now that we have it because it's reliable, quite user friendly and removes much of the headaches involved in ports building that you constantly run across using the ports(7) system and the less sophisticated tools.


----------



## Hanky-panky (Dec 15, 2016)

kpa said:


> Until we got Synth there was no way you could recommend anything else to an average user. Poudriere for example requires setting up jails and is sometimes not so user friendly if you're not completely "in the know" of how certain things work. In my opinion Synth should be the default recommendation for ports building now that we have it because it's reliable, quite user friendly and removes much of the headaches involved in ports building that you constantly run across using the ports(7) system and the less sophisticated tools.


Synth is just another layer of complexity. Portmaster just works.


----------



## marino (Dec 15, 2016)

Hanky-panky@:  you're just wrong.  Portmaster does not "just work" and only people that don't know any better consider it for "serious use" and superior to poudriere and synth.
Basically, if you are convinced portmaster is superior (in addition to having zero actual experience with poudriere and synth) then you're just a person that refuses to be educated and really the thread should end.


----------



## marino (Dec 15, 2016)

Hanky-panky said:


> I didn't installed Gnome meta-port becouse I do personalize my system and I just install needed ports, then it is not a good reason for a serious package manager to call my perfectly customnized Gnome 3 as leftovers.
> 
> And what about Clang? It works perfectly fine and that kinky package manager call it a leftover, I need it to build some stuff, and Samba (?!?!?!?) how can it call it leftover if it is constantly used and in charge of file sharing on that machine?
> 
> Come on, `pkg`, in this case of autoremove, it is totally unreliable.



well, this response pretty much confirms it.  He's been told the problem was user error, yet he thinks pkg(8) magically has to know that the dependency clang should be updated to primary package because "he uses it" and still thinks pkg(8) is unreliable.  When people blame everyone and everything before considering themselves at fault, there's no point in continuing.  Let HP believe what he wants and let him solve his own issues.


----------



## kpa (Dec 15, 2016)

I've said what I had to say. If you're still convinced that you know better I challenge you to refute my points about what is wrong with the ports system in my Poudriere HOWTO. Everything you're complaining about is directly related to those faults and the message we've been trying to drive home is that tools like portmaster do not offer proper solutions to those faults, tools like Synth and Poudriere when used properly do.


----------



## Hanky-panky (Dec 15, 2016)

kpa said:


> I've said what I had to say. If you're still convinced that you know better I challenge you to refute my points about what is wrong with the ports system in my Poudriere HOWTO. Everything you're complaining about is directly related to those faults and the message we've been trying to drive home is that tools like portmaster do not offer proper solutions to those faults, tools like Synth and Poudriere when used properly do.


Sorry KPA but what I complained about is related to a pkg command, exactly the unreliable autoremove. Nothing to do with portmaster. And in this case it not IMHO, it is a fact.


----------



## Hanky-panky (Dec 15, 2016)

marino@ said:


> Hanky-panky@:  you're just wrong.  Portmaster does not "just work" and only people that don't know any better consider it for "serious use" and superior to poudriere and synth.


Ok so you call FreeBSD foundation 'people that don't know any better' considering that portmaster is the official choice for managing ports.


----------



## marino (Dec 15, 2016)

Hanky-panky said:


> Ok so you call FreeBSD foundation 'people that don't know any better' considering that portmaster is the official choice for managing ports.



That's a false statement.  Portmaster is not recommended.  All implied preference for it is supposed to be removed from documentation. 
Please provide a link showing this "official choice" so we can get it changed (or at least prove your assertion which I am strongly calling *wrong*)


----------



## kpa (Dec 15, 2016)

The handbook is user contributed mostly, just look at the credits in it. The FreeBSD Foundation pretty much only provides the facilities, the web servers etc. to host the user documentation.


----------



## roddierod (Dec 15, 2016)

ASX said:


> Are you aware on any package/port that could pull in firefox or thunderbird as dependencies ?



www/conkeror will pull in firefox as a dependency if you choose to use it as the rendering engine.


----------



## ASX (Dec 15, 2016)

roddierod said:


> www/conkeror will pull in firefox as a dependency if you choose to use it as the rendering engine.


Thanks, as I answered before in post #28, I had firefox-i18n installed and later removed. (same for thunderbird). 
As far as I can remember I have installed firefox alone originally, with default settings, however firefox-i18n removal is a strong hint I could have done it the wrong way,


----------



## Hanky-panky (Dec 15, 2016)

marino@ said:


> That's a false statement.  Portmaster is not recommended.  All implied preference for it is supposed to be removed from documentation.
> Please provide a link showing this "official choice" so we can get it changed (or at least prove your assertion which I am strongly calling *wrong*)


Just look at official /usr/ports/UPDATING and you will see they always refer to `portmaster` and `portupgrade`, usually in this order, when they speak about ports management. Shouldn't this say something?


----------



## marino (Dec 15, 2016)

Yes, it says users of those tools are forced to do extra steps that repository users don't have to do.
Or did you not notice there are no instructions for poudriere/synth + pkg(8) users?


----------



## Hanky-panky (Dec 15, 2016)

marino@ said:


> Yes, it says users of those tools are forced to do extra steps that repository users don't have to do.
> Or did you not notice there are no instructions for poudriere/synth + pkg(8) users?


Yes, it is becouse those two packages are simply unofficial contributions (simple ports like thousands of others) they don't need to cover. As I said before, just another layer adding complexity to the whole package management. they just consider `pkg` for binary users and `portmaster/portupgrade` for building from source. That's all.


----------



## marino (Dec 15, 2016)

"That's all" wrong.
You're just wrong.  It's not a subjective thing.
Poudriere is as official as it gets.  All binary packages distributed by FreeBSD are built by it.
All you've proven is that you have lots of opinions and apparently none of them based on any kind of fact.
That's all.


----------



## kpa (Dec 15, 2016)

Hanky-panky said:


> Yes, it is becouse those two packages are simply unofficial contributions (simple ports like thousands of others) they don't need to cover. As I said before, just another layer adding complexity to the whole package management. they just consider `pkg` for binary users and `portmaster/portupgrade` for building from source. That's all.



Wrong answer, they are no less "official" than the older portmaster and portuprade tools. The real reason is that you never need apply those hacky workarounds when using pkg-upgrade(8) with a binary repository such as the official repositories or one built by yourself. pkg(8) is able to use its rather clever conflict solver when used with a binary repo to figure out which packages have to replaced to avoid conflicts when doing updates, this is not possible at all with portmaster that still installs only one port at a time.


----------



## hukadan (Dec 15, 2016)

Hanky-panky said:


> it is becouse those two packages are simply unofficial contributions


The first lines should suffice : http://blog.shatow.net/posts/2015-04-27-Poudriere-FreeBSD-Journal.
And just in case you wonder who is  Bryan Drewery : https://github.com/bdrewery.


----------



## Hanky-panky (Dec 15, 2016)

kpa said:


> Wrong answer, they are no less "official" than the older portmaster and portuprade tools. The real reason is that you never need apply those hacky workarounds when using pkg-upgrade(8) with a binary repository such as the official repositories or one built by yourself. pkg(8) is able to use its rather clever conflict solver when used with a binary repo to figure out which packages have to replaced to avoid conflicts when doing updates, this is not possible at all with portmaster that still installs only one port at a time.


Then they still cover, first in line, `portmaster/portupgrade` and then `pkg` for binary users. This is becouse I think they think the most of FreeBSD users do install from source and then they offer a tool that cover binary installs.

And BTW, I didn't say pkg is horrible at all, I just said autoremove IMHO is a useless and dangerous tool. And IMHO they should rethink about it. That's all. Nothing more and nothing less. I hope they think about offering the option to eliminate the whole Gnome becouse gnome-meta is not installed. And look at the code, becouse they want delete Clang on a system where Chromium is installed and delete Samba becouse just the Good God knows why.


----------



## Hanky-panky (Dec 15, 2016)

hukadan said:


> The first lines should suffice : http://blog.shatow.net/posts/2015-04-27-Poudriere-FreeBSD-Journal.
> And just in case you wonder who is  Bryan Drewery : https://github.com/bdrewery.


I don't discuss the quality of Poudriere (in fact I do not speak about things I didn't try myself), I just said they do not covering it in /usr/ports/UPDATING, that's all.

To avoid hijacking this post, we should stay to the original problem: the broken output of pkg autoremove command on ALL my systems and what to do related with it.


----------



## marino (Dec 15, 2016)

It's been said many times now, but you're just not accepting it: There's nothing to do.  There's no problem, this is pure user error.  Simply stating that it's broken doesn't make it so.  Seriously, has a single person agreed with you on this topic?


----------



## Hanky-panky (Dec 15, 2016)

marino@ said:


> It's been said many times now, but you're just not accepting it: There's nothing to do.  There's no problem, this is pure user error.  Simply stating that it's broken doesn't make it so.  Seriously, has a single person agreed with you on this topic?


User error? You make me laugh like the output of `pkg autoremove`. My systems are perfectly coherent and tailored for my needs. I don't need gnome-meta to make them better and to run Gnome programs I need.


----------



## marino (Dec 15, 2016)

well, that's your core issue then.

added: please let me know when you find anybody that agrees with you.


----------



## Hanky-panky (Dec 15, 2016)

marino@ said:


> well, that's your core issue then.


Actually it's a `pkg autoremove` issue, not surely mine core issue. I can deal with it, then it is usefull to discuss it. Maybe a less skilled user could press "y" and destroy his/her system becouse of a dumb command output. In fact I will advise people building FreeBSD always from source like me, to totally avoid the use of pkg suite if not for `pkg delete` and WITH "-f" option to avoid any surprise. Maybe `pkg check -d` could be usefull too, then be fast to press Ctrl-C after it show broken dependencies. This is my advise to newbies.


----------



## marino (Dec 15, 2016)

Newbies should not be taking advice from somebody that refuses to consider they're wrong, or somebody that gets themselves in the situation that you have.  You seem to think this situation is common, but I doubt it is.  Please, don't give anyone advice on how to use (or not use) binary packages.


----------



## fernandel (Dec 15, 2016)

I did also run `pkg autoremove` and I have many ports for remove but nothing from GNOME3. I had long time ago installed KDE4 and I did remove and I know there are ports related to KDE still on my disk. I am using Synth and If I have a problem it will be easy to install packages from Synth. I do not know why want to remove VLC but it is not a problem 
BTW: I have also installed Fluxbox and CDE and looks like there are no related ports for remove.


----------



## ANOKNUSA (Dec 16, 2016)

Hanky-panky said:


> In fact I will advise people building FreeBSD always from source like me, to totally avoid the use of pkg suite if not for  pkg delete and WITH "-f" option to avoid any surprise. Maybe  pkg check -d could be usefull too, then be fast to press Ctrl-C after it show broken dependencies. This is my advise to newbies.


At this point, I have to call this trolling. Maybe I'm misunderstanding something here, but:

Advising people to use `pkg delete -f` as a routine procedure is dangerously stupid at best.
I've been using pkg(8) for years and haven't run `pkg check` once. Not once. I had to even look up the man page afer reading the quoted comment to learn that it actually existed.

Hanky-panky joined back in 2012; you'd have to actively avoid information on pkg to be so unaware of how packages and ports work for that long.


----------



## Hanky-panky (Dec 17, 2016)

ANOKNUSA said:


> At this point, I have to call this trolling. Maybe I'm misunderstanding something here, but:
> 
> Advising people to use `pkg delete -f` as a routine procedure is dangerously stupid at best.
> I've been using pkg(8) for years and haven't run `pkg check` once. Not once. I had to even look up the man page afer reading the quoted comment to learn that it actually existed.
> ...


You definitely misunderstanding. `pkg delete -f` is to avoid pkg suite messed up your whole system deleting big deal of your  collection in the name of dependencies tree. With `pkg check -d` you can then always check if and which dependencies are broken and if you need or don't to rebuild those ports or delete those ports if not needed or again live up with those programs without the not needed dependencies.

I know, you need that smart mind to do that, think about the real usability of your system, avoid to think, like pkg(8) seems to do, that if you do not have gnome-meta installed all gnome software need to be deleted, and this attitude doesn't seems to suite your attitude.

Ps: sorry for no formatting then I'm on my beloved iPhone.


----------



## Hanky-panky (Dec 17, 2016)

Someone here pointed to poudriere(8) ans synth as alternatives to pkg(8) or even portmaster(8). I read something about those programs ans find not suitable for my simple needs to build my system with heavy personalized collection of ports for my needs.

Those software simply builds locale repositories, not needed if you always work over very fast intranet and internet connections, so totally and completely out of the scope of this thread.

PS: I know they also call pkg and even portmaster to build repositories and install packages, then it is still an added layer of complexity and a waste of resource for many connected users like me.


----------



## marino (Dec 17, 2016)

You're still talking gibberish.
A) Nothing is an alternative to pkg(8).  Pkg is required, full stop.
B) you're saying you want to build EVERYTHING from source, but you can't assemble a repository because it's "too much"?  You've done 99.5% of the work already.  It's nonsense.
C) it's even possible to install built packages directly (no respository) using `pkg add -F` or synth command

The bottom line is that your mistaken is wrong in many areas, you're making decisions based on these mistakes, and the worst part is that you're arguing with authority --- convinced you are correct -- against people that know better.

Nobody really cares what you decide to do ultimately, but it would be nice if this thread achieved that you could recognize the things you don't understand (even if you continue not to understand them).


----------



## gkontos (Dec 17, 2016)

Please stop feeding the troll!


----------



## Hanky-panky (Dec 17, 2016)

marino@ said:


> You're still talking gibberish.
> B) you're saying you want to build EVERYTHING from source, but you can't assemble a repository because it's "too much"?  You've done 99.5% of the work already.  It's nonsense.


We are hijacking the original thread, not my fault, then I want to clarify.

Why should I need a local repository when packages become old soon and there are always new ports to build? A waste of disk space, considering I never ever have to reinstall my packages considering all my systems works as expected all the time.

If i do choose FreeBSD for some of my stuff it is becouse OS is very reliable so it simply works without too many hassles.


----------



## gpatrick (Dec 17, 2016)

You have another thread complaining about `pkg` so you're merely trolling.  Without any attention the troll will leave.


----------



## Hanky-panky (Dec 18, 2016)

gpatrick said:


> You have another thread complaining about `pkg` so you're merely trolling.  Without any attention the troll will leave.


Hey Genius, both this `pkg` threads were opened by me...


----------



## protocelt (Dec 18, 2016)

It's obvious this thread is not headed in a positive direction. Per the forums rules, disagreement in discussion is allowed as long as it's respectful to all parties involved, which in this thread, seems not to be the case.

Thread closed to further discussion.


----------

