LinuxQuestions.org
View the Most Wanted LQ Wiki articles.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices

Reply
 
Search this Thread
Old 03-16-2014, 07:27 AM   #1
ruario
Senior Member
 
Registered: Jan 2011
Location: Oslo, Norway
Distribution: Slackware
Posts: 1,896

Rep: Reputation: 952Reputation: 952Reputation: 952Reputation: 952Reputation: 952Reputation: 952Reputation: 952Reputation: 952
Dependency management (not strictly Slackware related)


This is not strictly Slackware related but I know it will raise a wry smile from a few of you.

I just received an email from a friend who is new to Linux and has started with Ubuntu. His mail begins as follows:

Quote:
ok, so, apparently, it's easier to remove IE from Windows then cups from Linux:
Followed by output from his terminal on attempting to remove libcups2. Now I don't know why he wants to remove cups but that is not really the point. The output looked interesting, so I decided to fire up VirtualBox with Ubuntu 13.10 and try it myself.

Here is what I get (and yes it is pretty much the same as what he saw):

Code:
ruario@ruario-VirtualBox:~$ sudo apt-get remove libcups2
[sudo] password for ruario: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  docbook-xml fonts-droid gir1.2-ibus-1.0 gir1.2-javascriptcoregtk-3.0 hud
  libgles2-mesa libgtk-3-common libjavascriptcoregtk-3.0-0 librarian0
  libreoffice-common python-apport python-aptdaemon python-keyring
  python-launchpadlib python-lazr.restfulclient python-lazr.uri python-oauth
  python-problem-report python-simplejson python-wadllib python3-apport
  python3-distupgrade python3-software-properties python3-update-manager
  rarian-compat sgml-data software-properties-common
  ubuntu-release-upgrader-core update-manager-core usb-creator-common
Suggested packages:
  docbook docbook-dsssl docbook-xsl docbook-defguide libreoffice-style-crystal
  libreoffice-style-hicontrast libreoffice-style-oxygen
  libreoffice-style-tango python-gdata python-keyczar python-kde4
  python-testresources python3-launchpadlib perlsgml w3-recs opensp
  libxml2-utils
Recommended packages:
  python-secretstorage libjs-jquery
The following packages will be REMOVED:
  account-plugin-aim account-plugin-facebook account-plugin-flickr
  account-plugin-google account-plugin-jabber account-plugin-salut
  account-plugin-twitter account-plugin-windows-live account-plugin-yahoo
  activity-log-manager activity-log-manager-control-center aisleriot
  apport-gtk apturl bamfdaemon baobab bluez-cups brasero brasero-cdrkit compiz
  compiz-gnome cups cups-browsed cups-bsd cups-client cups-daemon cups-filters
  cups-pk-helper cups-ppdc deja-dup deja-dup-backend-gvfs
  deja-dup-backend-ubuntuone empathy eog evince evolution-data-server
  evolution-data-server-goa file-roller firefox friends-facebook
  friends-twitter gcr gedit ghostscript ghostscript-x gir1.2-appindicator3-0.1
  gir1.2-gdata-0.0 gir1.2-gnomebluetooth-1.0 gir1.2-goa-1.0 gir1.2-gtk-3.0
  gir1.2-peas-1.0 gir1.2-rb-3.0 gir1.2-totem-1.0 gir1.2-vte-2.90
  gir1.2-webkit-3.0 gir1.2-wnck-3.0 gkbd-capplet gnome-bluetooth
  gnome-calculator gnome-contacts gnome-control-center
  gnome-control-center-datetime gnome-control-center-signon
  gnome-control-center-unity gnome-disk-utility gnome-font-viewer
  gnome-icon-theme gnome-icon-theme-symbolic gnome-keyring gnome-mahjongg
  gnome-mines gnome-orca gnome-power-manager gnome-screensaver
  gnome-screenshot gnome-session gnome-session-bin gnome-session-canberra
  gnome-settings-daemon gnome-sudoku gnome-system-log gnome-system-monitor
  gnome-terminal gnome-user-guide gnome-user-share gnomine
  gstreamer1.0-clutter gtk2-engines-murrine gtk3-engines-unico gucharmap
  gvfs-backends hplip humanity-icon-theme ibus ibus-gtk ibus-gtk3 ibus-pinyin
  ibus-table indicator-application indicator-appmenu indicator-bluetooth
  indicator-keyboard indicator-printers indicator-session indicator-sync
  landscape-client-ui-install language-selector-gnome libaccount-plugin-1.0-0
  libaccount-plugin-generic-oauth libaccount-plugin-google libappindicator3-1
  libbrasero-media3-1 libcanberra-gtk-module libcanberra-gtk0
  libcanberra-gtk3-0 libcanberra-gtk3-module libcheese-gtk23 libcheese7
  libclutter-1.0-0 libclutter-gst-2.0-0 libclutter-gtk-1.0-0 libcups2
  libcupscgi1 libcupsfilters1 libcupsimage2 libcupsmime1 libcupsppdc1
  libevdocument3-4 libevview3-3 libfolks-eds25 libfreerdp-plugins-standard
  libgail-3-0 libgail-common libgail18 libgcr-3-1 libgcr-ui-3-1 libgdata13
  libgnome-bluetooth11 libgnome-control-center1 libgnome-desktop-3-7
  libgnomekbd8 libgoa-1.0-0 libgrip0 libgs9 libgtk-3-0 libgtk-3-bin
  libgtk2-perl libgtk2.0-0 libgtk2.0-bin libgtkmm-3.0-1 libgtksourceview-3.0-1
  libgucharmap-2-90-7 libgweather-3-3 libido3-0.1-0 libindicator3-7
  libmetacity-private0a libnautilus-extension1a libnm-gtk0 libpeas-1.0-0
  libreoffice-base-core libreoffice-calc libreoffice-core libreoffice-draw
  libreoffice-gnome libreoffice-gtk libreoffice-help-en-us libreoffice-impress
  libreoffice-math libreoffice-ogltrans libreoffice-pdfimport
  libreoffice-presentation-minimizer libreoffice-writer librhythmbox-core7
  libsane-hpaio libspectre1 libtimezonemap1 libtotem0 libufe-xidgetter0
  libunity-core-6.0-8 libunity-gtk2-parser0 libunity-gtk3-parser0
  libunity-misc4 libunity-webapps0 libvte-2.90-9 libwebkitgtk-3.0-0
  libwnck-3-0 libwnck22 libyelp0 light-themes lightdm-remote-session-freerdp
  lightdm-remote-session-uccsconfigure mcp-account-manager-uoa modemmanager
  mousetweaks nautilus nautilus-sendto nautilus-sendto-empathy nautilus-share
  network-manager-gnome network-manager-pptp-gnome notify-osd onboard
  onboard-data oneconf overlay-scrollbar overlay-scrollbar-gtk2
  overlay-scrollbar-gtk3 policykit-1-gnome printer-driver-c2esp
  printer-driver-foo2zjs printer-driver-gutenprint printer-driver-hpcups
  printer-driver-pnm2ppa printer-driver-postscript-hp printer-driver-ptouch
  printer-driver-sag-gdi printer-driver-splix python-aptdaemon.gtk3widgets
  python-cups python-gnomekeyring python-gtk2 python-notify
  python-ubuntu-sso-client python-ubuntuone-client
  python-ubuntuone-control-panel python-ubuntuone-storageprotocol
  python3-aptdaemon.gtk3widgets python3-pyatspi python3-uno remmina
  remmina-plugin-rdp remmina-plugin-vnc rhythmbox rhythmbox-mozilla
  rhythmbox-plugin-cdrecorder rhythmbox-plugin-magnatune
  rhythmbox-plugin-zeitgeist rhythmbox-plugins rhythmbox-ubuntuone seahorse
  sessioninstaller shotwell simple-scan software-center
  software-properties-gtk ssh-askpass-gnome system-config-printer-common
  system-config-printer-gnome system-config-printer-udev telepathy-indicator
  thunderbird thunderbird-gnome-support totem totem-mozilla totem-plugins
  transmission-gtk ubuntu-artwork ubuntu-desktop ubuntu-docs ubuntu-mono
  ubuntu-release-upgrader-gtk ubuntu-sso-client ubuntu-sso-client-qt
  ubuntuone-client ubuntuone-control-panel ubuntuone-control-panel-qt unity
  unity-asset-pool unity-greeter unity-gtk2-module unity-gtk3-module
  unity-lens-applications unity-lens-photos unity-scope-calculator
  unity-scope-gdrive unity-scope-manpages unity-services unity-webapps-common
  unity-webapps-service update-manager update-notifier usb-creator-gtk vino
  webaccounts-extension-common xdg-user-dirs-gtk xdiagnose xul-ext-unity
  xul-ext-webaccounts xul-ext-websites-integration yelp zeitgeist
  zeitgeist-datahub zenity
The following NEW packages will be installed:
  docbook-xml fonts-droid libgles2-mesa librarian0 python-apport
  python-keyring python-launchpadlib python-lazr.restfulclient python-lazr.uri
  python-oauth python-problem-report python-simplejson python-wadllib
  rarian-compat sgml-data
The following packages will be upgraded:
  gir1.2-ibus-1.0 gir1.2-javascriptcoregtk-3.0 hud libgtk-3-common
  libjavascriptcoregtk-3.0-0 libreoffice-common python-aptdaemon
  python3-apport python3-distupgrade python3-software-properties
  python3-update-manager software-properties-common
  ubuntu-release-upgrader-core update-manager-core usb-creator-common
15 upgraded, 15 newly installed, 293 to remove and 197 not upgraded.
Need to get 33,7 MB of archives.
After this operation, 704 MB disk space will be freed.
Do you want to continue [Y/n]?
Now of course I am aware that most of those packages are linked to libcups2 directly or indirectly and would indeed break but I have a hard time believing that the best option is to actually remove them all. Consider a user who clicks yes without fully thinking through or understanding the consequences. They will be left with a broken system and the need to reinstall (and hence re-download) almost 300 packages. Compare with a Slackware user who also attempts to remove a key lib due to similar lack of understanding. Again the system would break but the user need only add back that one lib they just removed to restore full functionality.

Sometimes over automation can lead you into a tight spot.
 
Old 03-16-2014, 07:29 AM   #2
moisespedro
Senior Member
 
Registered: Nov 2013
Location: Brazil
Distribution: Slackware
Posts: 1,070

Rep: Reputation: 125Reputation: 125
That is why I avoid apt distros, back when I used Debian/Ubuntu I couldn't try to remove anything without apt trying to remove the whole GNOME DE.
 
Old 03-16-2014, 07:35 AM   #3
solarfields
Member
 
Registered: Feb 2006
Location: Outer Shpongolia
Distribution: Slackware
Posts: 483

Rep: Reputation: 126Reputation: 126
what the hell
 
Old 03-16-2014, 07:39 AM   #4
gengisdave
Member
 
Registered: Dec 2013
Location: Turin, Italy
Distribution: slackware
Posts: 287

Rep: Reputation: 59
it remembers me a monthy python sketch; a friend of mine had a similar problem, every packages wanted to install dutch language for openoffice and removing dutch language, was removing all openoffice and part of system libs

isn't there a way to _not_ remove "dependent" packages, keeping upgrading and install new ones? i'm not into apt-get; or use dpkg? but i don't know if it still exists on ubuntu
 
Old 03-16-2014, 07:48 AM   #5
ruario
Senior Member
 
Registered: Jan 2011
Location: Oslo, Norway
Distribution: Slackware
Posts: 1,896

Original Poster
Rep: Reputation: 952Reputation: 952Reputation: 952Reputation: 952Reputation: 952Reputation: 952Reputation: 952Reputation: 952
Quote:
Originally Posted by gengisdave View Post
isn't there a way to _not_ remove "dependent" packages, keeping upgrading and install new ones? i'm not into apt-get; or use dpkg? but i don't know if it still exists on ubuntu
Sure but it would not be known to a newbie. In this particular case you could have done this:


Code:
sudo dpkg -r --ignore-depends=libcups2 libcups2
Your system will still be somewhat broken but it will be a lot faster to fix!
 
Old 03-16-2014, 07:59 AM   #6
gengisdave
Member
 
Registered: Dec 2013
Location: Turin, Italy
Distribution: slackware
Posts: 287

Rep: Reputation: 59
totally right, it's not easy; i started with redhat and got crazy with rpm system and i switched to slackware (still can't remember how and when, i only remember kde2)
 
Old 03-16-2014, 09:33 AM   #7
enorbet
Member
 
Registered: Jun 2003
Location: Virginia
Distribution: Slackware 14 is Main OpSys on Main PC, 2ndary are OpenSuSe 13 and SolydK
Posts: 725

Rep: Reputation: 333Reputation: 333Reputation: 333Reputation: 333
Actually I think this points up an important dividing line. What the system depends on isn't necessarily what we depend on. There is no need to actually remove a fundamental program or set of libraries. If you don't need them, don't run them, and they will consume nothing but a little hard drive space. Isn't this an underlying part of Slackware Philosophy, the part that recommends Full Install, making dependencies all but a non-issue?
 
1 members found this post helpful.
Old 03-16-2014, 09:40 AM   #8
JWJones
Member
 
Registered: Jun 2009
Location: Cascadia
Distribution: Slackware, LinuxBBQ, OpenBSD, Mac OSX
Posts: 723

Rep: Reputation: 187Reputation: 187
And some wonder why us crazy Slackers don't care for dependency management!
 
Old 03-16-2014, 09:48 AM   #9
moisespedro
Senior Member
 
Registered: Nov 2013
Location: Brazil
Distribution: Slackware
Posts: 1,070

Rep: Reputation: 125Reputation: 125
Quote:
Originally Posted by JWJones View Post
And some wonder why us crazy Slackers don't care for dependency management!

To me it is one of its best Slackware "features"
 
2 members found this post helpful.
Old 03-16-2014, 10:14 AM   #10
gengisdave
Member
 
Registered: Dec 2013
Location: Turin, Italy
Distribution: slackware
Posts: 287

Rep: Reputation: 59
not completely true, when i have dependencies lack, program doesn't start blaming some library missing, so i install/compile what i'm missing and launch it again, this works even for version bump;

to feel safe, i have a little script that asks every binary/library for dependencies and output me what is missing, i think i don't need anymore

http://www.linuxquestions.org/questi...encies-794133/
 
4 members found this post helpful.
Old 03-16-2014, 12:29 PM   #11
hitest
Senior Member
 
Registered: Mar 2004
Location: Prince Rupert, B.C., Canada
Distribution: Slackware, OpenBSD
Posts: 4,249

Rep: Reputation: 574Reputation: 574Reputation: 574Reputation: 574Reputation: 574Reputation: 574
Quote:
Originally Posted by moisespedro View Post
To me it is one of its best Slackware "features"
Agreed. The lack of dependency resolution in Slackware is a strength, not a deficit.
 
1 members found this post helpful.
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Looking for slackware with dependency resolution in package management rng Slackware 26 03-12-2012 06:48 AM
slackware package management dependency support rng Linux - General 3 01-09-2012 05:56 AM
Installed dependency not found - scons related Jongi Linux - Software 2 02-28-2007 03:38 PM
libexif-gtk-0.3.3 dependency related error? resaguk Linux - Software 1 09-07-2004 08:49 AM


All times are GMT -5. The time now is 07:11 PM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration