Pacman: Difference between revisions

From wikinotes
 
(12 intermediate revisions by the same user not shown)
Line 48: Line 48:
</blockquote><!-- Notes -->
</blockquote><!-- Notes -->


= Mirrorlist =
= Pacman Tools =
<blockquote>
<blockquote>
You can automatically determine the fastest servers and sort them by quickest.<br>
== Misc ==
I wrote a bashscript <code>pacman-mirrorlist</code> to do this for me.
<source lang="bash">
sudo pacman -S pacman-contrib
 
# generate mirrorlist for all CA/US mirrors
awk '/^## Canada$/{f=1; next}f==0{next}/^$/{exit}{print substr($0, 1);}' /etc/pacman.d/mirrorlist.pacnew | sed 's/^#//' | sudo tee /etc/pacman.d/mirrorlist.tmp
awk '/^## United States$/{f=1; next}f==0{next}/^$/{exit}{print substr($0, 1);}' /etc/pacman.d/mirrorlist.pacnew | sed 's/^#//' | sudo tee -a /etc/pacman.d/mirrorlist.tmp
 
rankmirrors -n 10 /etc/pacman.d/mirrorlist.tmp | sudo tee /etc/pacman.d/mirrorlist
</source>
</blockquote><!-- Mirrorlist -->
 
= Tips/Tricks =
<blockquote>
<blockquote>
== Holding/Pinning/Locking Packages ==
{|
<blockquote>
|-
Packages can be set to be ignored in <code>/etc/pacman.conf</code>.
| [[pacman-contrib]] || user scripts for managing pacman repos
 
|-
<source lang="ini">
|}
IgnorePkg = salt zfs-linux spl-linux
</blockquote><!-- Misc -->
</source>
</blockquote><!-- pinning packages -->


== Downloading old Packages ==
== Local Caching ==
<blockquote>
=== Archlinux ===
<blockquote>
<blockquote>
Find the package you'd like to downgrade to here <code>https://archive.archlinux.org/packages/</code>.
{|
 
|-
Ex:
| [[pacman pacredir]] || share pacman downloaded packages over local network
<syntaxhighlight lang="bash">
|-
firefox https://archive.archlinux.org/packages  ## find url to package
| [[pacman pacserve]] || share pacman downloaded packages over local network
 
|-
pacman -U \
| [[pacman aurutils]] || scripts for working with aur, sharing over local network
    https://archive.archlinux.org/packages/l/linux/linux-4.15.3-2-x86_64.pkg.tar.xz \
|-
    https://archive.archlinux.org/packages/l/linux-headers-4.15.3-2-x86_64.pkg.tar.xz
|}
</syntaxhighlight>
</blockquote><!-- Local Caching -->
 
</blockquote><!-- Pacman Tools -->
{{ WARNING |
Occasionally, you might need to install something to satisfy a current AUR package.
But installing the core package will break the existing AUR package dependencies.
 
You have 2x options:
 
<source lang="bash">
pacaur -S zfs-linux spl-linux -U https://...  https://..
</source>
}}
</blockquote><!-- Archlinux -->
 
=== Archlinux-Arm ===
<blockquote>
<source lang="bash">
# find cpu arch
uname -a
 
# download package for your arch
http://tardis.tiny-vps.com/aarm/packages/f/firefox/firefox-79.0.1-aarch64.tar.xz
 
# install
pacman -U firefox-79.0.1-aarch64.tar.xz
</source>
</blockquote><!-- Archlinux-Arm -->
</blockquote><!-- Downloading old packages -->
</blockquote><!-- tips/tricks -->
 
= Troubleshooting =
<blockquote>
== Load metadata for package error ==
<blockquote>
The pacman database is corrupt. Simply delete the package's file, and re-install using force.
 
<source lang="bash">
sudo rm -rf /var/lib/pacman/local/man-pages-*
sudo pacman -S --force man-pages
</source>
</blockquote><!-- load metadata for package -->
</blockquote><!-- troubleshooting -->

Latest revision as of 21:19, 4 November 2023

Archlinux's package manager.
You may also be insterested in arch ABS.

Documentation

archwiki pacman https://wiki.archlinux.org/index.php/Pacman
archwiki PKGBUILD https://wiki.archlinux.org/title/PKGBUILD
archwiki mirrors https://wiki.archlinux.org/index.php/Mirrors
latest mirrorlist https://archlinux.org/mirrorlist/?ip_version=4

Locations

/etc/pacman.conf configure which repos to pull from (core, extra, communnity, multilib)
/etc/pacman.d/mirrorlist configure which sources to pull from (waterloo, queensu etc)
/var/cache/pacman/pkg currently installed programs. Can use these archives to rollback to older versions of program.
/var/log/pacman.log history of pacman operations
/var/lib/pacman/db.lck pacman lockfile

Notes

pacman usage
pacman configuration
pacman packages
pacman troubleshooting

Pacman Tools

Misc

pacman-contrib user scripts for managing pacman repos

Local Caching

pacman pacredir share pacman downloaded packages over local network
pacman pacserve share pacman downloaded packages over local network
pacman aurutils scripts for working with aur, sharing over local network