Software installation in Linux is difficult

Linux is for geeks only. Software installation in Linux is difficult. It is not for the faint-hearted. Let’s take, for example, installing a simple game of Hearts.

In Linux, you’ll have to download source code and have to compile it from source, and then you’ll run into dependency hell and have to track down all the individual dependencies yourself.

Here are some screenshots to show you just how difficult it is…









See? That was quite difficult, and I would not recommend that for the average user. People just want to click and go. They don’t want to have to run a lot of obscure commands just to play a game of Hearts.

It’s much easier in Windows. In Windows, all you have to do is search for the software you want, download it, click next-next-next-finish, and you’re done.

Let’s take a look at how much easier it is to install software in Windows…





































See how easy that was? These Linux geeks have to stop pretending that Linux is ready for the average user. Windows is ready to go out of the box, and it’s just more user-friendly.

124 comments

  1. I see much debate on which OS is better. I want to share my experience using ubuntu. I made the live cd easily. I installed ubuntu using the cds gui. The software gave my tv an invalid format error. I unistall and install a few times until I get the drivers right. I am using the OS daily for about two weeks. Thus far I cannot find my disk or usb drives. When I want to open a file, the OS tells me I do not have permission. I’m the only user. Running a file I either get no response, need permission, and/or not executable. Packages are never found after following Ubuntu’s help pages. I HATE typing gibberish to get the files I want. Nothing works with Linux-school, work, or games. I get errors that make absolutely no sense. How the am I suppose to know where these packages live? I’m not a repository index. Programs take so long to open I wonder if I clicked “open”. Firefox, home folder, software center, and others are at about 15-20 seconds on average just to highlight that icon, then five more seconds to open. The system isn’t feasible if you want to get anything accomplished quickly. Just to load a movie player it was passwords 2x’s, lines of command, questions to continue, accept, then find where the program went, then another password entry, finally after the popcorn had been eaten and a party of bored kids the player had an error, force quit, on to connecting another PC to run WMP for them. Click play on file in windows voila the movie played. I know this OS is probably awesome for people whom like to tinker. I don’t want to program anything. I just want to click, click, boom, done. GUI 100% is my dream. I don’t want to go back to oregon trail days looking at a terminal on dos/grub. Windows and MAC does not give me problems. I may not be on the top of the security list, but I don’t keep info I’d hate to share on the pc. I can’t tell you the last time I ran command on Mac or Windows. Linux every other minute,nothing but a hassle. Now that I have uninstalled linux my pc will not accept the Windows bootdisk. I wish I hadn’t listened about using Linux…”it’s free, it’s lightweight, no viruses, easy to use now for beginners”.
    My PC is 4GB of RAM 3GHZ Processor brand. I know it can handle a good OS.

    1. You are not the only user. There is another – root.

      Root is the all-powerful admin. Root owns all rights to important system files.

      However, root’s password is *your* password. You have all rights on root. Just give your password.

      1. I just downloaded and set up a linux fedora virtual box. I got no issues with it. Installed all kinds of stuff. So far I’ve been able to solve near all issues I’ve encountered from instructions found in a google search. Any program found under software is a no effort install.

  2. Hmmmm… I don’t know why this pathetic attempt of sarcasm was needed by the author of this article. Well I am a developer. I have only one question. Why don’t you try to install something not present in your repository. Like a build (or rpm or tar.gz or bla bla bla) made by any random person. It is obviously apparent that it is, indeed, Difficult to install software in Linux. I am not a supporter of windows, but I can “FREELY” say that windows gives its user the comfort Linux has never able to achieve till date. Why have dependencies? Why can’t you provide one single package with everything. Why is user expected to configure s/w after installing – which btw is an absolute pain in the a**. Take my words, Don’t waste your time making non-sense article like this. Instead, try to find the real cause of this “user-friendliness” if Linux and give your contribution – I think the code is “FREE”. I’ve wasted enough time of my life struggling with this unplanned s/w but today, after reading this kiddish article, I could not help my self wasting a few more minutes. Grow up guys.

    Pity…

    1. Thank you! I’ve used ubuntu/linux for 5 years and it is beyond a doubt, the most frustrating God awful pain in the ass to install the simplest of programs. The only thing worse is the arrogant, self righteous holier than thou Linux/Ubuntu “community” you must turn to for assistance. You ask what is I’m sure a remedial question and you will be reminded by someone just how little you know. Then your answer can only be decoded by someone with a computer programming degree anyway! Not that you would dare ask what the hell they were telling you to do? Not after the first verbal flogging.

  3. Thank you for that comment. I have been trying to find a book or some reference to help me in the installation of ubuntu/fedora/linux etc. I believe that if one could find a simple easy to read book then linux/ubuntu/fedora would seriously compete with windows. Apple seems to have no problem why then ubuntu/etc/ seems to.Or have a simple one line command so that self extract will work. I am sure there are many options out there then why not a forum or something for the new users.

  4. Yea if this seems easy to you..

    Installation of kdesvn ΒΆ
    This page describes installation from source. For installation of binary packages consult documentation for your system.

    Requirements

    At least kde 3.4 and not higher then 3.5.x for kdesvn 1.0.x, kde 4.1 for kdesvn 1.2.x or newer. Kde 4.0.x is NOT supported.
    subversion >= 1.2. Earlier version are not longer supported.
    cmake 2.4 (building from source)
    apr-devel, kdelibs-devel, subversion-devel and qt-devel (including uic tool) when building from source.
    SuSE 9.3

    SuSE 9.3 may find required stuff in Apache project ftp for SuSE.

    RedHat Enterprise / CentOS 4/5

    Try out kde-redhat and Rpmforge RPMs for kde 3.5 and subversion 1.4 for both systems.

    I don’t know why but RHEL/CentOS comes without cmake, so keep care installing it. You may find it for centos 5 on atrpms site. With this deps I had build packages for CentOS – them should work for RHEL, too.

    I don’t know if there is kde 4.1.x for CentOS or RHEL so I only tested it with kde 3.5 and kdesvn 1.0.x.

    Build instructions

    Note for failed linking
    =======================
    Seems that on some systems linking fails due missing references. You may
    solve it with
    . /etc/profile.d/qt.sh
    export QTLIB=${QTDIR}/lib QTINC=${QTDIR}/include
    before running cmake.
    On some systems cmake doesn’t detect that it is a threaded qt-version. So you should
    do
    export CXXFLAGS=”-DQT_THREAD_SUPPORT”
    before running cmake.
    (Or give it as parameter to cmake with -DCMAKE_CXX_FLAGS=”-DQT_THREAD_SUPPORT”)
    Prepare install
    ===============
    You require at least cmake 2.4, kde 4.2 and subversion 1.4. In source-tree-build are mostly unwanted, so
    make a subdir called “kdesvn-build” and change to it.
    Basic installation
    ==================
    Change to your builddirectory and call cmake with the path to kdesvn. E.g.,
    when your build-folder is “kdesvn-build” within source-tree, so change to it
    and type “cmake ../”.
    Now your system get checked if it is able compiling kdesvn and cmake generates
    the Makefiles.
    Important parameters to cmake:
    -DCMAKE_BUILD_TYPE=
    may current one of “Debug”, “Release”, “ReleaseWithDebInfo”
    or “MINSIZEREL”
    -DCMAKE_INSTALL_PREFIX=
    Default to “/usr/local”
    -DSUBVERSION_INSTALL_PATH=
    Where is subversion-lib installed. Default check in /usr and /usr/local
    -DCMAKE_CXX_FLAGS=
    Extra flags for the c++ compiler for your system required.
    -DLIB_SUFFIX=
    Mostly for 64bit systems, there suffix may be 64 so libs will installed
    in /usr/lib64 and not /usr/lib for instance.
    After calling cmake just type
    make
    and build begins. When more output is wanted call
    make VERBOSE=1
    After make type “make install” and install begins.
    You may install to a temporary-root with
    make install DESTDIR=
    If you want to uninstall kdesvn again type “make uninstall” from within the
    build directory.
    Extra cflags and linker flags
    =============================
    If you require extra flags for compiler and linker you may give them via environment variables
    “CXXFLAGS” (c++ compiler)
    “LDFLAGS” (for linker)
    “CFLAGS” (for c-compiler, not needed in kdesvn build)
    eg., it may usefull on 64bit systems “-m64” to CXXFLAGS and LDFLAGS.

    WINDOWS FTW

  5. At least with ubuntu I don’t get viruses and fu**ing toolbar and adware when I install a software. F*** windows! :D

  6. yeah, Linux is hard. i downloaded some .tar.bz file or whatever but can’t extract because I can’t find the unzipping program to extract the file and then run the setup program. guess I need to find a the *.exe version installer for Linux program.

  7. Now show me how to install Java, or Netbeans 8, or Nvidia graphics drivers. I just installed Ubuntu 14.04 and I need to read tutorials only to install Oracle JRE or JDK, I need to read tutorials to install Netbeans because I want the latest version and not the one that is in the software center. I need to read instructions to install Nvidia latest drivers. Most of them are 8 to 12 distinct commands.
    I come from MS-DOS in the early 90’s, since the Amstrad 512 I deal with computers, I’m not afraid of the command line. I do program software in C, Java, C# and I’m a semy-geek. Yet I find it difficult to install software in Ubuntu. It’s just like Windows 8 with its Windows Store and no easy setup executables. If you can find it in the store, nice, easy to install… if you don’t you’d need to be a Windows Guru to install it.

  8. This was super funny…

    Ubuntu Side…I’ve never seen an installation that easy on Ubuntu…I loved the counter intuitive command line installation processes in which I would rather just go without the program than have to research again what the fucking command line syntax was…Ubuntu probably makes sense if you were on the team of designers who developed it…

    Windows just sucks regardless…with it’s random bullshit…like I need to write an essay, oh the memory’s getting full, let me research what the fuck I can delete outta windows that taking all my space…oh the softwareDistribution folder where updates are saved and kept in even after they’re installed…but no site tells you to do that…I had fucking think of it myself look up how to access those folders…finally I have 2 GB on my HDD and I now know how to stop Window Update…and it’s Midnight…and I should have been much farther than just starting my essay…

  9. Let us define HARD…Difficult…there is a set task, and you realize it’s going to require mental or physical exertion or practice until you can succeed. Sports are hard, games are hard, etc…

    Linux is not HARD…it’s counter intuitive…if you know and understand it, it’s not too bad, but Linux users get this Superiority Complex like haha I get it and you don’t haha…

    Umm good for you I’ve never used it…

    Now as far as say skateboarding goes, you probably haven’t skateboarded before, like I mean hardcore street or ramps, but if I take you out skating…I don’t pride myself on how better I am than you…I’ll be there coaching you through it and helping you learn…

    Linux is like if we took you out to skate brought you far into some desolate skate spot…then we all jet away and ditch you…and you have to figure out where you are, which way is out, how a skateboard works and how unstable it is…you’ll most likely rather walk than have to learn to skate right now, you just want to get home…picking up the skateboard and walking is like me just saying Ahh fuck it I don’t need this program that bad…

  10. now 6 years later and how many upgrades ???

    and ubuntu still sucks. try installing a package not from ubuntu… makes windows look like a wide open friend of software producers.

    and now with zeitgeist you get all the key logging crap of android and windows and apple….

    when will software writers get off their pizza fattened backsides and write something that works???

    in the last 20 years there has been no evolution in software just a rehashing of tired and outdated work (sorry – the pictures are terribly pretty).

    come on young engineers have you no imagination and skills? or will this generation go down in history the same way their as their music. tired, rehashed and useless.

    1. An average user needs a small set of standard programs that follow least surprise principle. Linux opted for a zillion different programs doing essentially the same thing in a zillion distinctly different ways. Think of a Notepad program. I know two dozens of them. Do we really need all those Pluma/LeafPad/…?
      Now, try to set background color to white or black in each of them. It is easier to download a different Notepad, than change this basic setting.

      There was one great designer (Steve Jobs). He came up with a set of necessary user friendly programs and with a standard way to install them. No bloody `sudo long-meaningless –command-required=false`. Sadly,he died. He didn’t create a department to fulfill his role. Since then new iPhones are epic fails. New iPhones are nothing but the original ones plus unremovable bloat-ware to consume more memory and decrease battery life. Epic fail.

  11. love how this guy double posts webpages trying to make it look way harder than it is. and hearts is already ON windows… how about showing us installing something like java as a comparison , or adobe photoshop…or how about any freaking game in the top 300 or so list…. and once you do get it going lets see how the programs responds , lets see how the games look …
    I will say Linux is a more secure system and there are other perks as well. however , claiming it is user/newb friendly and using this mockery of an example is just plain ridiculous and misleading. you sir , I think , are a fan boy.

  12. oh…and to mr Killer… Linux can and DOES get viruses albeit much rarer numerically of course. as for windows , by itself unprotected , yes you will get got in you are a newb just like in anything else.

    1. Fun fact. Right after installing Linux you run many `sudo meaningless-command` suggested on Linux forums. Some of these commands will install malware. An average user (me included) don’t write down the list of executed commands. There is no way to check if a command is ligit. There is no Linux antivirus software.

      Here is one task Linux is good for. Run Live CD from CD-R and read only CD-ROM to browse suspicious links when you are looking for a certain file (say, plain text file) on the net. Copy-paste content and save it to Google Drive. Use it on Windows.

  13. I would not recommend Ubuntu for new users period, all you are doing is replacing one tyrannical drm infested OS for a completely free one. It is actually a bad example as most core linux users do not use Ubuntu, because it teaches nothing about actually learning about a free open source software. One thing I will admit installing software on Linux is not the same as installing on Windows os, this is because Linux fundemantally a different challange. It works on different levels, also on Linux software updates do not require your to reboot your os unlike Windows Update. Most things on Linux can even be set to silent installs in background without being bothered. Also depending on what Linux os you use, what UI and what apps you have installed can determine how you interact with and install things on your os. There over a million different Linux flavors in existence, surely there must be one that meets your needs. Microsoft’s own Azure cloud service runs on pure Linux that kind of gives you a hint about how big a deal Linux is.

    1. There is an INTERFACE and IMPLEMENTATIONs.
      PRINT is an interface
      Printer or print to file are implementations

      IMPLEMENTATIONS of Windows and Linux are different. But the INTERFACE should be the same.
      Imagine someone saying “diesel car is different from a gas car, so you have to steer the wheel using your ass”. You would think “what an idiot”. But Linux community says exactly the same. Then they lecturing you on “free Linux software” that DOESN’T INSTALL on the first place.

  14. I agree 100%. Linux makes everything difficult. I have wasted too many man-hours on sudo apt-get etc… just trying to get programs to install and work. Nobody cares about all of the lines of text that get output… oh…. big wow…

    Because 99% of the time it ends with “Error!”.

    Currently trying to install ubuntu and Rails… but the errors are crazy. Why doesn’t it just install rails with a commad like, er,, hmmm… “install rails”

    Don’t bother me with “I could not find this, I could not find that… I did not have permission to do this… oh, you cannot run this as superuser…” just install the frikking program already!

    1. Agreed. Concise and clear.

      Root cause is CLI pure interfaces. In GUI you can gray out “install button” and show tooltip “Please accept license to proceed”. Lazy developers + pure CLI ->

      > install rails –please=true –wtf-is-this-flag=42
      no permission
      >sudo su
      #install rails –please=true –wtf-is-this-flag=42
      cannot proceed: license not accepted

  15. Great Job. Now, install IntelliJ on Ubuntu. You download *.tar.gz and now what? Official site says “untar and install”. Well, thank you, but what does it mean? Open with Engrampa? Now you got a tar folder. Now what?

    Go to Askubuntu. https://askubuntu.com/questions/272314/setup-and-install-intellij-with-jdk
    accepted answer

    /* WTF is “get you started? I want to run program, not get started installing it */
    This should get you started:

    /*This is a script, see below */
    #!/bin/sh
    add-apt-repository ppa:webupd8team/java &&
    /*…*/
    /* URL is obsolete, you are doomed to FAIL*/
    wget -O /tmp/intellij.tar.gz http://download.jetbrains.com/idea/ideaIC-12.0.4.tar.gz

    Besides, this isn’t a terminal command. You have to create a bash file. It is a script, but you can’t execute it by clicking on it. FAIL. Type another idiotic `chmod FORGOT SYNTAX` command (waste few minutes Googling it). Still doesn’t work.
    “my_script.sh” does nothing. Nor does stupid “sudo my_script.sh”. Why stupid? Because an average wannabe Linux user fast realize that a command without sudo will not be executed. so just `sudo su` first, then `my_script.sh`. FAIL. Recall that you need to mess with stupid execute flag. Ah, I need to do `./my_script.sh` or s. Why? Probably because Linux was developed for BDSM community. Then why not `……/my_script.sh –run=true, –more-meaningless-flags=true, -f -c-k`? Sometimes Linux developers are more creative then others. By the way, you can’t ctrl-C, ctrl-V in terminal. Ctrl-C means “stop execution” (mnemonics “Ctop”). Breaking the “Least surprise principle”. So, how do you copy text in terminal? You will be surprised: right click on terminal and select “copy”. But why? Linux developed for BDSM community.

    You spend a day trying to install a program on bloody Linux, take fckitol and install Windows.
    For typical Linux mindset see GitHub. It consists of (1) User types long meaningless command (2) Git spits an error “there is a merging error, resolve it” (3) user manually copies files to repo because Git interface is user hostile.

    LINUX Community pure CLI interfaces are good for: (1) Vietnam war era (2) masochists

    Perfocards and pure CLIs belong to middle o

Leave a comment

Your email address will not be published. Required fields are marked *