2016-10-13 15:18:55 +02:00
|
|
|
#!/bin/sh
|
|
|
|
|
|
|
|
## Create lists of system- and TeX Live packages.
|
|
|
|
|
|
|
|
## Variables
|
2018-06-26 10:19:27 +02:00
|
|
|
PKG_ROOT="$HOME/.package-lists"
|
2016-10-13 15:18:55 +02:00
|
|
|
mkdir -p "$PKG_ROOT"
|
|
|
|
|
2019-09-27 20:57:39 +02:00
|
|
|
GREEN='\033[0;32m\033[1m'
|
|
|
|
YELLOW='\033[0;33m\033[1m'
|
|
|
|
BOLD='\033[0m\033[1m'
|
|
|
|
NORMAL='\033[0m'
|
|
|
|
section() {
|
|
|
|
echo -e "$GREEN==> $@$NORMAL"
|
|
|
|
}
|
|
|
|
message() {
|
|
|
|
echo -e "$YELLOW:: $@$NORMAL"
|
|
|
|
}
|
|
|
|
status() {
|
|
|
|
local title=$1
|
|
|
|
local body=$2
|
|
|
|
|
|
|
|
[ -z "$body" ] && return
|
|
|
|
message "$title"
|
|
|
|
echo "$body"
|
|
|
|
}
|
|
|
|
|
2016-10-13 15:18:55 +02:00
|
|
|
## Arch Linux
|
|
|
|
if command -v pacman >/dev/null 2>&1; then
|
2016-10-14 06:17:18 +02:00
|
|
|
pacman -Qneq | LC_ALL=C sort >"$PKG_ROOT/arch-official"
|
|
|
|
pacman -Qmeq | LC_ALL=C sort >"$PKG_ROOT/arch-aur"
|
2016-10-13 15:18:55 +02:00
|
|
|
fi
|
|
|
|
|
|
|
|
## TeXlive
|
2018-06-18 22:14:47 +02:00
|
|
|
if ! command -v guix >/dev/null 2>&1; then
|
|
|
|
if command -v tlmgr >/dev/null 2>&1; then
|
|
|
|
tlctl l >"$PKG_ROOT/texlive"
|
|
|
|
fi
|
2018-02-08 18:07:32 +01:00
|
|
|
fi
|
2018-03-28 08:52:50 +02:00
|
|
|
|
|
|
|
## Guix
|
|
|
|
if command -v guix >/dev/null 2>&1; then
|
2019-09-27 20:57:39 +02:00
|
|
|
section "Listing Guix default profile"
|
2019-07-06 18:11:35 +02:00
|
|
|
guile --no-auto-compile -s ~/.config/guix/profile-to-manifest.scm ~/.guix-profile >"$PKG_ROOT/guix-manifest.scm"
|
2019-09-25 12:20:30 +02:00
|
|
|
for i in ~/.guix-extra-profiles/*; do
|
|
|
|
profile=$i/$(basename "$i")
|
2019-09-27 20:57:39 +02:00
|
|
|
section "Listing Guix profile" $(basename "$i")
|
2019-09-25 12:20:30 +02:00
|
|
|
if [ -d "$profile" ]; then
|
|
|
|
guile --no-auto-compile -s ~/.config/guix/profile-to-manifest.scm "$profile" >"$PKG_ROOT/guix-$(basename "$i")-manifest.scm"
|
|
|
|
fi
|
|
|
|
unset profile
|
|
|
|
done
|
2018-03-28 08:52:50 +02:00
|
|
|
fi
|
2018-06-26 10:31:50 +02:00
|
|
|
|
2019-09-27 20:57:39 +02:00
|
|
|
status "Unpushed files:" "$(git -C "$PKG_ROOT" diff --cached --name-only .)"
|
|
|
|
status "Unstaged files:" "$(git -C "$PKG_ROOT" diff --name-only .)"
|