summaryrefslogtreecommitdiff
path: root/config-pacman.PKGBUILD.sh
diff options
context:
space:
mode:
Diffstat (limited to 'config-pacman.PKGBUILD.sh')
-rw-r--r--config-pacman.PKGBUILD.sh39
1 files changed, 39 insertions, 0 deletions
diff --git a/config-pacman.PKGBUILD.sh b/config-pacman.PKGBUILD.sh
new file mode 100644
index 0000000..a1d543b
--- /dev/null
+++ b/config-pacman.PKGBUILD.sh
@@ -0,0 +1,39 @@
+pkgver=1
+pkgrel=1
+arch=(any)
+install=${BUILDFILE#${PWD}/}
+
+pkgname=config-pacman
+
+package() {
+cd "$pkgdir"
+
+install -Dm644 /dev/stdin etc/pacman.d/repo-pcr.conf <<EOF
+[pcr]
+Include = /etc/pacman.d/mirrorlist
+EOF
+
+install -Dm644 /dev/stdin etc/pacman.d/repo-config.conf <<EOF
+[config]
+Server = https://config.parabola.nu/repo
+EOF
+
+}
+
+trim() {
+ while [[ -z "$(sed -n '$p' < etc/pacman.conf)" ]]; do
+ sed -i '$/^$/d' etc/pacman.conf
+ done
+}
+
+post_install() {
+ if ! grep -Fxq 'Include = /etc/pacman.d/*.conf' etc/pacman.conf; then
+ trim
+ printf '%s\n' '' 'Include = /etc/pacman.d/*.conf' >> etc/pacman.conf
+ fi
+}
+
+pre_remove() {
+ sed -i '/^Include = \/etc\/pacman\.d\/*\.conf$/d' etc/pacman.conf
+ trim
+}