Saturday, October 16, 2010

Arch Linux vs Ubuntu

I have a very .. vivid love and hate relationship with Ubuntu.  Many times I love how easy Ubuntu is.. other times when it tries to bypass me and make up its own mind on how to do things for the sake of ease of use..... it does provide some strong incentive to throw my laptop out the window for the sheer amusement of seeing it being destroyed and shatter in 1000 little pieces.  Sadly, it would involve destroying my laptop as well.  :(
That being said.. I wanted to write my attempt at an unbiased comparison between Ubuntu and Arch.



Ubuntu:

Pros:
  • It is designed to be stupidly easy to use.  One of its strong selling point is that it just finds all your hardware, sets up your networking, and allows you to easily configure your operating system through a nice pretty and shiny brown...uhmm.. purple interface.
  • It seems that when someone says "Linux Support" these days it means Ubuntu more then any other distribution.  Fedora coming in a close second.  The ability to install .deb file makes it very easy to obtain and install certain software.  Goolge chrome for instance is not available for Linux Arch.  The Open Source version, chromium though is.  There are many packages that you'd have to write a PKGBUILD in arch in order to get it working under arch, or simple compile from source.
  • A huge community of support.. in theory
  • Theoretically the ability to buy a dell computer with Ubuntu would also provide you a phone number to call for technical support.
  • A large collection of software is available via apt-get/ aptitude
Cons:
  • Its designed to be easy to use.  So if you try to do something advanced.. you end up fighting the operating system.  Ubuntu Server works a bit better then the desktop edition for this.  Network Manager turns into an abomination from hell.  Disabling certain services like pulseaudio in favor of Alsa for example is a pain.
  • KDE support is minimal and is very much an after thought.  If you want to use KDE I would stay away from Ubuntu and Kubuntu.
  • If you run KDE or Gnome you're running the Ubuntu version of the window manager, not the upstream version.
  • Community support is probably one of the largest in the Linux world, the problem is that because much of the audience is very new to Linux you get a lot of bad advice.  Many of the solutions involve the GUI rather the giving you the proper way of fixing it.  Many solutions for KDE/ XFCE under Ubuntu based distributions turn into apt-get install ubuntu-package in order to fix a KDE/XFCE problem.  This is getting a bit better and it is very annoying to have to install 10, 50, or 100mb of dependency to fix a very simple annoyance.
  • If you want to stay away from the GUI for the most part and setup your OS via the CLI, Ubuntu makes it particularly difficult (granted this isn't an issue to most non-me users)
  • In my opinion a con:  6 month release cycle.  Updates are fairly slow to get to the end user unless you're running the alpha/beta.
SideNote:
As a side note.  I haven't given true debian a fair attempt in a while.  But the last time I tried it they made installing proprietary closed source software painful.  Things like sun's jdk, nvidia drivers, mp3 support was more complicated then I wanted it be.  I didn't like spending that much time setting something as rudimentary as java support.  Base on the very cursory look I gave debian recently, it seems to have added Sun's JDK into the repos, so debian might be worth a closer look if Arch isn't your cup of tea.

Arch Linux:

Pros:
  • Very clean, polished, simple distribution.  Everything is configured via the command line initially.  There are gui wrapper tools available, but for the most the CLI is the way to go.
  • Optimized for modern architecture.  I believe Ubuntu is compiled for i386 or above.
  • Rolling release.  Everything is release as it comes out.  Author makes an announcement for a new version of his software, it gets test, compiled, and packaged usually within a few days of release.
  • Creating your own package is incredibly simple in arch.  After working with both .deb and .rpm packages, I find aur packages simplicity so beautiful.  Everything is transparent and you know what is being done by the package.
  • Fairly well documented wikis / forums.  Not as large as the Ubuntu community or as good as the gentoo wiki used to be, but the content is usually better the the Ubuntu forums and less noise to filter through.
Cons:
  • Lack of packages.  Pacman the main package manager does not have nearly as many packages available as Ubuntu's repos does.  Some packages cannot be installed under Arch because no source is release, or the binary are provided as a.deb and built against different/older version then what arch comes with.
  • No easy rollback ability.  If the newer package breaks something, its not a simple task to rollback a package.  There is no support for installing older versions.  I don't believe that apt-get has this ability either though there are a few exceptions where the issue is solved using virtualpackages + multiple packages.
  •  
    Rant:


    I have a strong bias against gnome these days.  I find that creating features that are not accessible via the GUI is silly.  Then telling the user that in order to fix or enable this feature you need to run gconf2 and change some obscure flag to some even more obscure hexadecimal number is not a proper design.  Choosing "sensible" defaults and leaving everything out I find condescending if not insulting.  One of the bigger selling points of Linux is about choice.  You have the freedom to customize your environment, choices are not forced upon you.  *cough* mac, windows *cough*.  Actually, even windows provides more versatility to the end user then gnome in some regards.  If nothing else, the registry is better documented then gconf.
    Now.. to be fair.. Ubuntu inherits a lot of the work that Debian does.  Ubuntu is horrible at committing back upstream, but you tend to have a ton of packages supported.  So when trying to get closed source programs like skype to install, or chrome.  odds are that there is a version already packaged and available as a .deb for your architecture.

    References:

    Many of the views expressed here are my own personal opinion, experiences.  Feel free to try both distributions and any other and find your favorite one.

    1 comment:

    1. well arch has a easy rollback ability,,if you knew how to do it.https://wiki.archlinux.org/index.php/Downgrading_Packages

      ReplyDelete