Every freaking time I use ubuntu servers I struggle with getting the right dependencies for various packages. There are several extra commands you need to issue before ubuntu will even install them and then you need to go back through and delete the dependencies that don't apply to you.
Why do all the RPM distos have nice dependency solves, but ubuntu remains so foobar?
I am curious, which package manager are you using? I use apt or apt-get from the cli and unless the installation gets interrupted for some reason have never had a problem with a dependency. if you are using one of the flavors with desktop I always install and use ubuntu's software center, so I install it separately because i do not use unity.
I have tried using synaptic and found it to be, well, umm, not to my liking. I have been using ubuntu server since 10.04 and really have only had to fix depency issues like twice in 7 years, and that was because of a failure to execute properly on the systems part not apt-get.
I am using apt and apt get. I am on ubuntu 16.04 LTS server, and its a shit show.
I try installing chrome from a .deb package and it fails because I need about 30 different graphical dependencies.
Which I don't actually want or need because chrome can now run in headless mode. I tried the same install in bare bones arch install and what do you know, chrome magically doesn't require any sort of dependencies what so ever.
You're using .deb archives incorrectly then. By default dpkg doesn't do dependency checking and requires the user to manually install dependencies. (Even though it includes a list of dependencies)
Something only apt solves.
To list deps of a .deb package you can use the following command to get the info
dpkg -I package.deb
or to generate a list with versions, this short piece of python code
dpkg -I package.deb | python -c "
import sys, re;
# Split keys and values into pairs (zipped together later)
t=re.split(
r'\n(?= ?[\w]+:)|:',
sys.stdin.read()
);
# Newline separate each dependency
print '\n'.join([
# Trim each dependency value
i.strip() for i in {
# Build assoc array from package metadata
key.strip(): value.strip()
for key, value in zip(t[::2], t[1::2])
}['Depends'].split(',')
])
"
Hi again, I am really sorry you have such trouble with Ubuntu, Like I said earlier I have been using it for years and rarely have had an issue, but when using dpkg as the installer as others have said, it is not the same as apt or apt-get.
Chrome is not an ubuntu maintained package of course but there is a repo for it that will allow you to use apt to install it instead of using dpkg, which I am going to assume you downloaded the .deb from chrome and then ran dpkg -i, the following link has a number of ways to deal with chrome.
I tend to google any package that is not in the ubuntu deb multiverse to see where the repo is, I only use dpkg if i really really have to, meaning there is no other way to install the program.
The key terms i use to google are "ubuntu 16.04 install package/programnamehere" which is what i googled to find the above link with a number of answers to get you going with chrome.
Having never used arch I can not compare the 2, but I certainly would say if you find arch a more robust and complete system for you then just stay with that, why add frustration into your life if you can't seem to get Ubuntu to do what you want?
I am a linux novice, meaning i do not code, I have never compiled a kernel, I can compile a program if there are step by step instructions and if those instructions do not work, I can not usually figure out how to fix it. I even try my best to avoid iptables and ufw or firewall programs simply because i have serious trouble figuring out how to get them to allow something in, most of the time i end up locked out my bloody os and have to reset iptables to get back in. Thank god for "iptables -F", if that did not exist I would really have had to reinstall my os's on vm's so many times its rediculous.
I am just kind of rambling here because your pain with ubuntu is not singular, lots of people have problems with it, I have problems with it. Here is a fun little thing, since @wendell seems to use fedora for of his tutorials, I have just downloaded and installed my first fedora server ever, Oh boy, I have never used dnf, or rpm's, I put 2 nics on the vm, but only the first one is allowed through the auto generated firewall rules which are iptables but run with firewalld, I have no idea why my second nic is just dead, it shows up in ifconfig and is properly configured but just dead, in ubuntu when I have 2 nics on a machine it just works, so go figure.
Since I watch all of @wendell 's stuff and have learned quite a lot, I now run pfsense with vpn's because of his video's, I am now going to learn everything I can about fedora and see if I can get to the same level of proficiency with it that I have with ubuntu, meaning i can install and figure out how to make everything work just like I am able to do with ubuntu.
I did not even know this, i always see the suggested packages but never knew i could just install them all or turn that off, thanks for the info.
Thanks, i have cockpit up and looked through it, what a nice interface for a headless server, is there an addon to allow package management through cockpit?
Thanks for the tip on bonding, i will do that now.
Yeah, about that... Docker. I know, I know- it's not a real solution to dependency issues; however, it does solve a great many problems quite easily. For now.
it's almost trendy to bash Ubuntu these days. don't get me wrong, i've been frustrated with the lacck of attention Canonical gives their desktop users. but after the first 15,000 threads i've seen on Reddit and elsewhere, it becomes super cringey to read people who are either not ready for Linux decry how complicated it is, or people who have """""outgrown"""""" it moaning about how """""inferior""""" it is.
what's the context here? is this a work environment in which you're forced to use it? in which case fair enough, it sucks to use something that sucks. or is this an environment outside of work where you're 50000% free not to use it but are using it?
if A: i'm sorry you're having the experience of Windows 10 users everywhere. if you're ever in the area, i'll paypal you money for a beer. if B: why are you using it???? was it just "i thought it would be simple cause noob distro lol"? if so, clearly you've achieved GNUvana and are now too woke for Ubuntu, congrats.
but serious question, why bother with a distro you obviously hate?
Furthermore, why do I have to issue commands to get options for dependencies. Why not simply offer the base dependencies and then offer up the recommended dependencies rather than trying to install all the recommended dependencies at once?