Return to

Where do you install software in linux?


Bad news: different software has different methods of installing, and not all make it easy to choose where or how to install.

I always have a ~/Source directory where I clone projects and build them. Generally you see that well-structured projects have a separate make install target, so you can compile the software as a regular user and then run make install as root to install.

Typically /usr/local is the default install prefix. It is common for software to refer to the PREFIX environment variable for configuration and installation, so you can create your own local prefix (such as ~ or ~/.local, something you have write access to) and add it to your PATH, then when compiling/installing software set PREFIX to your local prefix in the environment. As @risk mentioned, configure scripts commonly take --prefix with an argument as an option, too.

Sometimes you may have to manually edit a Makefile or install the compiled binaries by hand where you want them to go, but that’s a relatively rare occurrence.


I have run into this recently too since I am trying to use kubuntu. Running manjaro (or any arch based distro I guess) spoiled me in that regard, most stuff is already in the repos and the rest is in the AUR. I don’t think I have ever needed to install anything from somewhere else on manjaro.


I think there are plenty of things that are not old.
Like, say Java. Sure, there is OpenJDK, but that´s not Oracles JDK (witch comes with additional stuff that´s not open source and thus is not in the official Ubuntu repository). For instance JavaFX if you use that for UI´s, it´s not gonna work with OpenJDK/JRE.


I think oracle have java rpms. A lot of closed software does, however they tend to target a few platforms. Centos/rhel, and Debian for example.

@sceps the copr repos are hosted by fedora, there kind of like Ubuntu ppa’s there is built in support for them in dnf


I download all of my source code (Git and self-made) into ~/src and install everything into ~/bin. I also download precompiled binaries into ~/bin, then add ~/bin to my PATH. If something needs to be used by anybody else (which is rare) then I either copy or link them to /bin.

Typing man hier in the terminal will give you more insight, almost too much insight…


Looks like some directory structure in /home plus adding to PATH might work best. Thanks for the ideas.

What made you try kubuntu after manjaro? I’m trying fedora instead of ubuntu right now because I wanted more recent kernels for new hardware but wanted to stick to the most major distros for better support from packages. But it looks like arch repos are more populated than fedora… hmm might have to try manjaro or others.

It’s nice how easy it is to add copr repos with dnf, but it’s confusing how fragmented the repos are in fedora. rpmfusion, sphere?, copr, others, with unclear instructions on how to add many of them. And then outdated packages. eg. no veracrypt in official repos, but there’s some repo called “sphere” that has it… but a few versions behind the latest. And would I want to install encryption software from a non-official repo?


I wanted something that is a little less aggressive on the updates because I thought that might help with a workstation system. But honestly I am already thinking of moving back… I can stop updates on manjaro too, so … that might be my route.

If you go arch based, try the current manjaro KDE version, 17.1.something. That is my favorite distro so far. I have been running the 18 beta with XFCE and it isn’t unstable or anything but it does tend to “curt-cobain” something every now and then on updates. The nice thing about manjaro is that it has it’s own repos, so when Arch says “yup, e-sports ready!” they take another look.


Well you are kind of asking for it :smiley:

I’ve gotten used to Gnome2/MATE. Is that ‘spin’ any good? I wasn’t planning on distro shopping, but the idea of more available packages might tempt me to try.

Though, the point of this thread remains. With github/personal projects, there’s no getting around it.


Quite a while since I played around with MATE but never on manjaro so I can’t help you there really. I just love all the stuff KDE comes with, favorite example is KSysGuard which makes any other graph based hardware monitoring application look like a joke.


KSysGuard is appealing. I stuck with Gnome since it was lighter on resources than KDE years ago. Is that still true?


Gnome2 / MATE, yes. Gnome3, I would guess is a tie.
What hardware are we talking about?


Yeah that’s why I stuck with Gnome2/MATE. Hardware used to be old, but even with my new system, I don’t feel like “wasting” resources on DE/decorations.


That’s the beauty of Linux, you can choose whatever you like, even if it’s no DE at all :wink:

Also, I should add. It’s worth trying out other DEs every now and then. Especially KDE has a lot of configuration and I would guess that you can bring down performance impact by quite a bit by getting rid of some of the stuff.


I never checked the impact on performance, my system is super snappy and does have more than enough resources.
But you can tune down the visuals for sure. :wink:


I tried Manjaro MATE live. It’s cool how it works out of the box, looks modern, and gives the option to use nonfree software/drivers even before booting.

On the other hand, what kind of sadist made pacman? I’m thinking it was a developer who thought the relatively intuitive apt and dnf don’t get enough appreciation…

AUR is cool in that all kinds of github projects can be installed through a package manager, but it’s a double-edged sword: it’s unclear which package should be installed when there are multiple. Also, pacman often failed to install dependencies when installing from AUR.

Overall I get the impression Manjaro is more modern and featured, but somehow it felt more breakable than Ubuntu or Fedora. They say “install just once”, but I realized it isn’t mentioned how many times it needs to be reinstalled…


Any rolling release is more prone to break, that is just the nature of it. I completely agree with you on pacman, I just used pamac which is the default GUI packet manager on the XFCE version. It handles AUR stuff just fine too.

Right now I am running kubuntu 18.04 as a daily system and it is way less terrible than the last time I looked at an ubuntu of any kind. Main difference is that you have to look around to get all the stuff installed that you’re used to when you come from something like manjaro. Gimp is still version 2.8 as an example. So you have to run it as a snap. Etcher isn’t available at all so I have that as an appimage… But it is manageable.


I had been running and updating the same installation of Ubuntu for more than a decade. Sure it got cruddy, but hey it worked. :smiley:

Trying Fedora now since it at least has more recent kernels to go with new hardware. And yeah, it gets annoying when the Ubuntu repos have old versions of software, especially on LTS releases.

I just checked and Fedora 28 repos don’t have Etcher either (though deb and rpm repos are available). And Fedora’s repo is also on Gimp v2.8.22

I haven’t come across a perfect distro yet.


A little update:

I contacted the /scx/gnubiff copr repo maintainer and they built gnubiff for F28. Works now.

psensor is available in the RPM Sphere repo (as are many other packages such as an outdated version of Veracrypt…). The repo can be installed with the rpmsphere-release package.

I guess it’s safer to download and verify Veracrypt directly from the maintainers anyways.

Finding repos/packages and installing the rest in ~/src and ~/bin should keep the system reasonably organized.

Now to figure out how to use dkms for automatically recompiling custom kernel modules.


Yes and for Ubuntu there has been a ppa for oracle java.
But i´m not sure if that particular ppa is still maintained or not.


Yeah thats a littlebit of a downside with Ubuntu basiclly.
Certain software packages are a couple of versions behind to,
what you would find on an Arch based distro.
But aside from that Ubuntu 18.04 looks to be pretty good and stable sofar.
The only real issue that i have heard about is related to Nvidia gpu drivers.
It seems to be recommended to skip the 3.90 driver that gets popped up,
in the driver manager by default.
and use the recommended ppa to pull in a newer driver 3.96 or so.