Reply
Thread Tools
Posts: 1 | Thanked: 0 times | Joined on Mar 2012
#1
Recently i install facebook for my N9 through "terminal", however, i found there are two facebook apps after i installed. Can someone told me how to uninstall that apps. Thanks.
 
cddiede's Avatar
Posts: 1,034 | Thanked: 784 times | Joined on Dec 2007 @ Annapolis, MD
#2
As root in the terminal, type:

dpkg -l | grep -i facebook

See what names come back. One will be the pre-installed app, and the other will correspond with the one you manually loaded.

They will have different names since they would not both install if they had the same name.

It's likely the the one with a lower version number is the one you side loaded since the official FB app recieved an update recently, but I'm just guessing since I don't know what you installed or where you got it from.

Either way, take note of the name of the offending package and type:

dpkg -r <type offending facebook package name here>
 
Posts: 479 | Thanked: 1,284 times | Joined on Jan 2012 @ Enschede, The Netherlands
#3
Be careful with really uninstalling facebook. I tried twice, and it messes up package management really good. So good, that when installing something afterwards just about every package gets wiped, including browser, mail, call-UI, ... Needless to say I had to reflash.

As much as I want to get rid of those packages, I don't try anymore but merely hide the icons in the launcher.
 
Posts: 986 | Thanked: 1,526 times | Joined on Jul 2010
#4
Originally Posted by Fuzzillogic View Post
Be careful with really uninstalling facebook. I tried twice, and it messes up package management really good. So good, that when installing something afterwards just about every package gets wiped, including browser, mail, call-UI, ... Needless to say I had to reflash.

As much as I want to get rid of those packages, I don't try anymore but merely hide the icons in the launcher.
removing facebook removes mp-harmattan-005-pr, which is the meta-package that most of harmattan rests upon. it is FINE to remove this, if you know what youre doing; just dont autoremove all the necessary packages, instead mark them as manually installed.

i routinely remove all these packages:
wxapp apnews realgolf2011 gof2 nfsshift
angrybirdsfreemagic
mp-harmattan-005-pr
facebook twitter twitter-qml

and use apt-cache depends to mark the dependencies as manually installed.
__________________
~ teleshoes ~
 

The Following User Says Thank You to wolke For This Useful Post:
Posts: 479 | Thanked: 1,284 times | Joined on Jan 2012 @ Enschede, The Netherlands
#5
Originally Posted by wolke View Post
removing facebook removes mp-harmattan-005-pr, which is the meta-package that most of harmattan rests upon. it is FINE to remove this, if you know what youre doing; just dont autoremove all the necessary packages, instead mark them as manually installed.

and use apt-cache depends to mark the dependencies as manually installed.
Aha, now we're getting somewhere.

Code:
~ $ apt-cache rdepends facebook
facebook
Reverse Depends:
  mp-harmattan-001-pr
  mp-harmattan-001-pr

~ $ apt-cache depends mp-harmattan-001-pr | grep -i facebook
  Depends: account-plugin-facebook
  Depends: webupload-service-facebook
  Depends: facebook
  Depends: signon-facebookplugin
  Depends: l10n-app-facebookshare
  Depends: l10n-app-facebook
I now know why things went so wrong The mp-harmattan-001-pr shouldn't be removed, that's clear. But how to achieve this? Can packages be uninstalled without triggering the reverse dependencies?

As you can see, I'm quite new to Linux/package management. Could you give us a pointer on how to proceed?
 
Posts: 986 | Thanked: 1,526 times | Joined on Jul 2010
#6
unfortunately, no, theres no way to remove a package without removing the things that depend upon it.

HOWEVER, i can and do remove mp-harmattan-001-pr. what you get then, is a billion packages that "were automatically installed and can be removed". those packages should NOT be removed

if youre willing to risk a reflash, run this script. i run this script myself, and it works perfectly for me.

the way this script works
1) the complex first line just installs a bunch of packages you already have installed; these are packages that depend on mp-harmattan-001-pr. this line should simply output a lot of 'marked manually installed, already latest versions'
2) then it removes mp-harmattan-001-pr, which does *nothing*
3) then it removes facebook, this time without removing any dependencies.


Code:
#install mp-harmattan deps, fastest way to mark-manual
apt-cache depends mp-harmattan-005-pr | \
  sed 's/Depends: //' | \
  xargs apt-get install

#remove mp-harmattan
apt-get remove mp-harmattan-001-pr

#remove anything else you like
apt-get remove facebook
__________________
~ teleshoes ~

Last edited by wolke; 2012-04-01 at 16:04.
 
Posts: 986 | Thanked: 1,526 times | Joined on Jul 2010
#7
this is true regardless of which mp-harmattan-***-pr package you have installed; theyre all just meta-packages with very few differences. {that is to say, mp-harmattan-001-pr is just like mp-harmattan-005-pr}
__________________
~ teleshoes ~
 
Posts: 479 | Thanked: 1,284 times | Joined on Jan 2012 @ Enschede, The Netherlands
#8
Hm, looks rather... elaborated. And I guess it might interfere with updates later on. While I'm not afraid to reflash the device when things go wrong, I'd rather avoid it.

I've tried this:

Code:
~ # dpkg --no-act --ignore-depends=mp-harmattan-001-pr -r facebook
(Reading database ... 51426 files and directories currently installed.)
Would remove or purge facebook ...
This gives no errors, no warnings.. However, I'm rather hesitant to run it without the "--no-act" for obvious reasons. I've tried running it in QEMU, but there facebook is no reverse dependency of mp-harmattan-001-pr And to try it on Nokia's Remote Device Access is a bit rude, as it seems the test device isn't cleared between sessions.

Anyway, could anybody make an educated guess what will happen with the --ignore-depends option? (Or have the balls and simply try it )
 
Posts: 986 | Thanked: 1,526 times | Joined on Jul 2010
#9
Originally Posted by Fuzzillogic View Post
Hm, looks rather... elaborated. And I guess it might interfere with updates later on. While I'm not afraid to reflash the device when things go wrong, I'd rather avoid it.

I've tried this:

Code:
~ # dpkg --no-act --ignore-depends=mp-harmattan-001-pr -r facebook
(Reading database ... 51426 files and directories currently installed.)
Would remove or purge facebook ...
This gives no errors, no warnings.. However, I'm rather hesitant to run it without the "--no-act" for obvious reasons. I've tried running it in QEMU, but there facebook is no reverse dependency of mp-harmattan-001-pr And to try it on Nokia's Remote Device Access is a bit rude, as it seems the test device isn't cleared between sessions.

Anyway, could anybody make an educated guess what will happen with the --ignore-depends option? (Or have the balls and simply try it )
PLEASE dont do that. it will break apt-get, and youll need to run 'apt-get -f install' to reinstall the removed packages. take note; deb packages have their installation dependencies inside them. you have to recompile the packages without the dependencies in order for dpkg/apt to do what its supposed to. in this case, it would mean removing the dependency on facebook from mp-harmattan-001-pr, which is a quite involved process and not worth undertaking.

what i wrote above are three simple commands that will accomplish PRECISELY what you want, without breaking upgrades, and without removing ANY packages that do anything useful whatsoever.

removing mp-harmattan-001-pr, sounds scary, but it doesnt DO anything. try it, if youre not afraid of a {small} chance of needing to reflash.
__________________
~ teleshoes ~
 
Posts: 986 | Thanked: 1,526 times | Joined on Jul 2010
#10
Originally Posted by Fuzzillogic View Post
Anyway, could anybody make an educated guess what will happen with the --ignore-depends option? (Or have the balls and simply try it )
to answer this question more directly, --ignore-depends will allow you the dpkg command to succeed whereas normally it would fail. it does not alter package state; it does not record that you would prefer a package not to be installed.

the only alternative to doing this is to create a dummy facebook package that fulfills the dependency without doing anything, and then mark the version as 'fixed' so it wont receive upgrades.

really, my solution is a lot less involved than you might think.
__________________
~ teleshoes ~
 
Reply

Thread Tools

 
Forum Jump


All times are GMT. The time now is 17:52.