DEV Community

Cover image for Installing AUR packages
nabbisen
nabbisen

Posted on • Updated on

Installing AUR packages

Summary

Arch Linux is one of the most popular Linux distributions.
It's supported by AUR, "A"rch Linux "U"ser "R"epository, which is a very big community of Arch users and developers, and hosts a large number of packages.
We can make our environment more convenient or more powerful by making good use of them.

This is also the case about Linux distributions based on Arch Linux such as Manjaro and Artix.


Reference: AUR User Guidelines' Statement

The beginning is:

The Arch User Repository (AUR) is a community-driven repository for Arch users. It contains package descriptions (PKGBUILDs) that allow you to compile a package from source with makepkg and then install it via pacman. The AUR was created to organize and share new packages from the community and to help expedite popular packages' inclusion into the community repository. This document explains how users can access and utilize the AUR.

A good number of new packages that enter the official repositories start in the AUR. In the AUR, users are able to contribute their own package builds (PKGBUILD and related files). The AUR community has the ability to vote for packages in the AUR. If a package becomes popular enough — provided it has a compatible license and good packaging technique — it may be entered into the community repository (directly accessible by pacman or abs).

And it's followed by:

Warning: AUR packages are user produced content. Any use of the provided files is at your own risk.


Well, I recommend to Manjaro users searching in Manjaro Package Manager before using AUR.
If there is some solution in the more reliable place, why wouldn't you visit there first?
And if there isn't any there, then think another way:

✿✿✿

How To Use

A Brief Account

Get "Git Clone URL", git clone it, makepkg -si it, and it's done.

Step 1: Get "Git Clone URL"

Visit AUR: https://aur.archlinux.org/ and search a package:

Go to the package page:

Get "Git Clone URL":

Confirm "Licence", "Popularity", "Last Updated", "Dependencies" and so on as needed:

Step 2: Build The Package And Install It

git clone [the package], cd [the package], makepkg -si, and it's done!

This is an example of a package called qperf.
* Note: qperf is a tool to measure network bandwidth and latency between nodes.

The 1st half step:



$ # git clone [the package]
$ git clone https://aur.archlinux.org/qperf.git


Enter fullscreen mode Exit fullscreen mode

The 2nd half step:



$ # cd [the package]
$ cd qperf
$ makepkg -si


Enter fullscreen mode Exit fullscreen mode

Finished 😁

A Side Topic

Actually, around installing qperf, however, there were not a single troubles on the way...

After all, I completed installing the package 😃

Top comments (21)

Collapse
 
alvanrahimli profile image
Alvan Rahimli

Thank you veery much. Damn I love Arch <3 <3

Collapse
 
nabbisen profile image
nabbisen

Hello, Alvan. Thank you for your cheering commenting 😉

Collapse
 
danieltso profile image
DanielTso74

its 2022 and it still works great. AWESOME!! thank you.

Collapse
 
nabbisen profile image
nabbisen

Ha ha, yeah, 4 years ago and now. I am really surprised.
Many thanks to Arch Linux project and community for their efforts, stability and advancement.

Collapse
 
nabbisen profile image
nabbisen • Edited

Thank you very much, tux0r!
I have never heard of Artix.
It seems interesting especially to build an Arch server!

Although I don't have a strong opinion about systemd (because of shallow understanding), I remember I enjoyed using OpenRC when I used Alpine Linux.

By the way, I found the Debian fork Devuan without systemd as well as Artix when I studied Artix some time ago.
You and the web world are my big teachers : )

Collapse
 
ajinkyax profile image
Ajinkya Borade • Edited

I recently shifted to Linux. Manjaro Gnome.

When I did git clone and tried to install aur repo. I Get following error:

wluma-1.2.1.tar.gz ... FAILED (unknown public key 011FDC52DA839335)
==> ERROR: One or more PGP signatures could not be verified!

Enter fullscreen mode Exit fullscreen mode

gpg --generate-key

I have below keys, not sure how to use them

> ls -la ~/.gnupg
total 32
drwx------  5 ajinkya ajinkya 4096 Nov 10 09:02 .
drwx------ 37 ajinkya ajinkya 4096 Nov 10 09:00 ..
drwx------  2 ajinkya ajinkya 4096 Nov  9 21:50 crls.d
drwx------  2 ajinkya ajinkya 4096 Nov  9 22:26 openpgp-revocs.d
drwx------  2 ajinkya ajinkya 4096 Nov  9 22:26 private-keys-v1.d
-rw-r--r--  1 ajinkya ajinkya 1981 Nov  9 22:26 pubring.kbx
-rw-------  1 ajinkya ajinkya   32 Nov  8 15:13 pubring.kbx~
-rw-------  1 ajinkya ajinkya 1280 Nov  9 22:26 trustdb.gpg

Enter fullscreen mode Exit fullscreen mode

So I did this

gpg --keyserver pool.sks-keyservers.net --recv-keys 011FDC52DA839335   
Enter fullscreen mode Exit fullscreen mode

Now i get below error:

meson.build:1:0: ERROR: Unable to detect linker for compiler "cc -Wl,--version -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -D_FORTIFY_SOURCE=2"
stdout: 
stderr: cc: error: unrecognized command line option '-fno-plt'


A full log can be found at /home/ajinkya/aur/wluma/src/wluma-1.2.1/build/meson-logs/meson-log.txt
==> ERROR: A failure occurred in build().
    Aborting...

Enter fullscreen mode Exit fullscreen mode
Collapse
 
nabbisen profile image
nabbisen • Edited

Ajinkya,
Hello. Thank you for your comments.
Well, although I know little about your errors, your problem seems to have been already not because of gpg.
How about this approach? I'm happy if this could be some of your help:
stackoverflow.com/questions/465047...

Collapse
 
billyang profile image
彦绪 杨 • Edited

Thank you very much for you Post!!
But when i at step2 ,I got an error
ERROR: Running makepkg as root is not allowed as it can cause permanent,
catastrophic damage to your system.
so i create a new user to use makepkg
but i got another error
==> ERROR: Cannot find the fakeroot binary.

I'm not an English speaker, so the words I write may be difficult to understand. I'm very sorry about that

Collapse
 
nabbisen profile image
nabbisen • Edited

Hello, @billyang
Thank you for your comments :)

ERROR: Running makepkg as root is not allowed as it can cause permanent,
catastrophic damage to your system.

I wonder if you used sudo. It is not recommended.
If you did as superuser, just type "makepkg ..." instead. (Well, starting with $ means "do as a user".)

ERROR: Cannot find the fakeroot binary.

This may be another issue.
It seems a part of base-devel lacks.
It is possibly solved by installing fakerook (and other core packages if required):

$ sudo pacman -S base-devel
:: There are 26 members in group base-devel:
:: Repository system
   1) autoconf  2) automake  3) binutils  4) bison  5) esysusers  6) etmpfiles  7) fakeroot
   8) file  9) findutils  10) flex  11) gawk  12) gcc  13) gettext  14) grep  15) groff
   16) gzip  17) libtool  18) m4  19) make  20) pacman  21) patch  22) pkgconf  23) sed
   24) sudo  25) texinfo  26) which

Enter a selection (default=all): 7
Enter fullscreen mode Exit fullscreen mode
 
nabbisen profile image
nabbisen • Edited

Hi, tux0r!
Thank you about the detail.

I have studied about systemd, SysVinit and upstart for a couple of days.
And I understood your saying, at least a part of it:

how many problems it makes to have a monolithic can-do-all software running as PID 1

What I understand is that it is a trade off between speed and stability.
And I seemed to understand why, in my past experiment, Ubuntu executed something faster than Alpine Linux or OpenBSD.

My mother said that I would be a horrible teacher. I'm a cynic.

To be frank, I couldn't find what to say, because I definitely know about you by far less than your mother 🤣

Collapse
 
mothy profile image
Tim Bryan • Edited

Thanks for this!

I've been distro hopping and found myself back on Manjaro and couldn't for the life of me remember how to do this! My brain was stuck on dpkg for some reason 😑

Could you elaborate on the -si argument(s) on what it does and why it's needed? 🙂

Collapse
 
nabbisen profile image
nabbisen

Hi Tim. Thank you for your commenting 🙂 Sorry for my late reply.

Haha. My case is similiar to yours: Manjaro -> Debian ->Artix (Arch-based). I have recently got familiar with pacman commands after all.

Could you elaborate on the -si argument(s) on what it does and why it's needed? 🙂

  • -s is shorthand for --syncdeps that means "To build the package and install needed dependencies".
  • -i is for --install.

-si means to build the package and then install it.
When what you want is just to build the package and not to install it, makepkg -s is useful.
When you have finished building the package, all you have to do is executing makepkg -i to install it.

The documentations might help you: wiki.archlinux.org/index.php/Makepkg .

Collapse
 
mothy profile image
Tim Bryan

Hi Heddi

Thank you so much for taking the time to craft a really insightful and friendly response! :)

This makes tones more sense to me know - for some reason I was looking up "-si" as if it was one argument and not two arguments together 🙃

Thread Thread
 
nabbisen profile image
nabbisen

Hi, Tim. You're welcome.
I'm happy if it helped you in some way 😊

Collapse
 
33nano profile image
Manyong'oments

Not bad, yay is definitely the way to go

Collapse
 
nabbisen profile image
nabbisen

PKN
Thank you so much for your encouraging messages. Yes😄

Collapse
 
melroy89 profile image
Melroy van den Berg

Nice! Let's go Void Linux!.. Ow wait ;P

 
nabbisen profile image
nabbisen • Edited

Sorry for a wrong expression.
I tried to mean "dozens of minutes ago" using "some time ago" 😅
It's true I haven't known Artix since you taught me.