summaryrefslogtreecommitdiff
path: root/content/articles/pacman.md
diff options
context:
space:
mode:
Diffstat (limited to 'content/articles/pacman.md')
-rw-r--r--content/articles/pacman.md96
1 files changed, 96 insertions, 0 deletions
diff --git a/content/articles/pacman.md b/content/articles/pacman.md
new file mode 100644
index 0000000..5a193d5
--- /dev/null
+++ b/content/articles/pacman.md
@@ -0,0 +1,96 @@
+{
+ "title": "pacman",
+ "subtitle": "Arch Linux package manager explained for everyday users",
+ "aliases": [
+ "/articles/pacman-essentials"
+ ]
+}
+
+#### Introduction
+
+The program `pacman` is the package manager of the [Arch Linux][1]
+distribution. It should be exclusively used to install, update and remove
+software on an Arch Linux system.
+
+New Arch Linux users should be able to manage the software on their system in
+most cases with an open terminal and this article.
+
+#### Full system update
+
+Use the following command to update all the software on an Arch Linux system.
+This includes the operating system aswell as applications:
+
+```
+sudo pacman -Syu
+```
+
+If this fails because of errors related to signing keys and GPG it can be fixed
+by running this command:
+
+```
+sudo pacman -Sy archlinux-keyring && sudo pacman -Su
+```
+
+This error can be avoided by updating the system regularly.
+
+#### Package search
+
+One can search for existing packages with this command:
+
+```
+pacman -Ss <keyword>
+```
+
+`<keyword>` should be replaced by keywords like `firefox`. Furthermore the
+package search on the [Arch Linux homepage][1] in the upper right corner can be
+used.
+
+The Arch Linux wiki contains also a long [list of applications][2] which is an
+excellent place to search for needed programs by category.
+
+#### Package installation
+
+Installing a package is simple:
+
+```
+sudo pacman -S <package>
+```
+
+`<package>` should be replaced by the lower case package name found with the
+package search (see above) like `firefox` or `gimp`.
+
+If this fails because the packages cannot be retrieved via the HTTP protocol
+the error can be fixed by updating the whole system first as described above.
+
+#### Package removal
+
+The recommended command to remove a package is:
+
+```
+sudo pacman -Rs <package>
+```
+
+While `R` selects removal `s` is the recursive option. This additionally
+removes packages which were needed for the selected package to work.
+
+The recursive option is smart enough to leave a dependency on the system if it
+is needed by another explicitly installed package.
+
+#### Further documentation
+
+This page is just a little cheat sheet especially targeted at new Arch Linux
+users. The following references point to the official documentation about
+pacman:
+
+- The manual page of pacman: `man pacman` (exit with `q`)
+- Arch Wiki: [pacman][3]
+- Arch Wiki: [pacman/Tips and tricks][4]
+
+They should be consulted to get further information and should be trusted more
+than this page if in conflict with its content.
+
+
+[1]: https://archlinux.org/
+[2]: https://wiki.archlinux.org/title/List_of_applications
+[3]: https://wiki.archlinux.org/title/Pacman
+[4]: https://wiki.archlinux.org/title/Pacman/Tips_and_tricks