[arch-general] best practices for rebuilding packages
Squires, Eric
Eric.Squires at gtri.gatech.edu
Tue Dec 8 04:30:59 UTC 2015
I apparently messed up the date command in the script below. Here is an update
aurPkgs=$(pacman -Qm | cut -d ' ' -f 1)
for aurPkg in $aurPkgs; do
aurDte=$(pacman -Qi $aurPkg | grep "Install Date" | cut -d ':' -f 2-)
aurDte=$(date --date="$aurDte" "+%s")
depPkgs=$(pacman -Qi $aurPkg | grep "Depends On" | cut -d ':' -f 2-)
for depPkg in $depPkgs; do
depDte=$(pacman -Qi $depPkg | grep "Install Date" | cut -d ':' -f 2-)
depDte=$(date --date="$depDte" "+%s")
if [[ $aurDte -lt $depDte ]]; then
echo "update $aurPkg given $depPkg is more recent"
fi
done
done
Eric
________________________________________
From: arch-general <arch-general-bounces at archlinux.org> on behalf of Squires, Eric <Eric.Squires at gtri.gatech.edu>
Sent: Monday, December 7, 2015 11:17 PM
To: General Discussion about Arch Linux
Subject: Re: [arch-general] best practices for rebuilding packages
Here are a few ideas:
For checking if a dependency is newer, use this script:
aurPkgs=$(pacman -Qm | cut -d ' ' -f 1)
for aurPkg in $aurPkgs; do
aurDte=$(pacman -Qi $aurPkg | grep "Install Date" | cut -d ':' -f 2- | date '+%s')
depPkgs=$(pacman -Qi $aurPkg | grep "Depends On" | cut -d ':' -f 2-)
for depPkg in $depPkgs; do
depDte=$(pacman -Qi $depPkg | grep "Install Date" | cut -d ':' -f 2- | date '+%s')
if [[ $aurDte < $depDte ]]; then
echo "update $aurPkg given $depPkg is more recent"
fi
done
done
I keep all my aur git repos in a directory and execute the following to see if there is anything new. It cd's into any git repo and fetches, printing out any updates:
TEMP_OLDPWD=$OLDPWD
for d in $(dirname $(find -name "\.git")); do
cd $d
echo "fetching " $d
git fetch
cd $OLDPWD
done
OLDPWD=$TEMP_OLDPWD
To make custom changes to pkgbuilds, just create a branch in git (this assumes you are using aur4) and merge each time there is an update. The workflow would look something like this:
git checkout -b my_branch
git fetch
git merge master
# now do normal makepkg build/install step
Eric
________________________________________
From: arch-general <arch-general-bounces at archlinux.org> on behalf of Michał Zegan <webczat_200 at poczta.onet.pl>
Sent: Sunday, December 6, 2015 12:52 PM
To: General Discussion about Arch Linux
Subject: [arch-general] best practices for rebuilding packages
Hello.
If I have a package build from aur that depends on a library, and the
library is updated, and package from aur requires rebuild, is it
possible to somehow track and automate that?
In other cases maintaining such configurations may be the trouble as you
have to remember what aur packages depend on your library.
Another question: what about modifying aur/abs pkgbuilds, like I replace
the whole configure line because I want to do so, but to do such a
configuration for a new version of the package, I have to manually
modify any new pkgbuild I get to get the same result. How to make it nicer?
More information about the arch-general
mailing list