110 lines
2.0 KiB
Bash
Executable File
110 lines
2.0 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
do_install() {
|
|
local GTKDIR GTK320DIR GTKVER INSTALL_DIR
|
|
INSTALL_DIR="$1"
|
|
GTKDIR="${INSTALL_DIR}/gtk-3.0"
|
|
GTK320DIR="${INSTALL_DIR}/gtk-3.20"
|
|
|
|
install -dm755 "${INSTALL_DIR}"
|
|
|
|
cd src
|
|
|
|
cp index.theme "${INSTALL_DIR}"
|
|
|
|
cp -rt "${INSTALL_DIR}" \
|
|
assets gtk-2.0 metacity-1 openbox-3 xfce-notify-4.0 xfwm4 unity
|
|
|
|
for _DIR in "${GTKDIR}" "${GTK320DIR}"
|
|
do
|
|
GTKVER="${_DIR##*/}"
|
|
|
|
mkdir -p "${_DIR}"
|
|
|
|
cp -t "${_DIR}" \
|
|
"${GTKVER}/gtk.css" \
|
|
"${GTKVER}/gtk-dark.css" \
|
|
"${GTKVER}/gtk.gresource" \
|
|
"${GTKVER}/thumbnail.png"
|
|
|
|
cd "${_DIR}"
|
|
ln -srf ../assets assets
|
|
cd -
|
|
done
|
|
}
|
|
|
|
|
|
output_changes_file_version_marker() {
|
|
|
|
line() {
|
|
dashes="$(printf '%0.s-' $(seq 1 13))"
|
|
echo "${dashes}>>>> $1 <<<<${dashes}"
|
|
}
|
|
|
|
tag_line="$(line $1)"
|
|
|
|
echo "-${tag_line}${tag_line}${tag_line}-"
|
|
}
|
|
|
|
|
|
update_changes_file() {
|
|
LAST_STABLE_RELEASE=$(git describe --abbrev=0 --tags $(git rev-list --tags --max-count=1))
|
|
LAST_MAJOR_MINOR="${LAST_STABLE_RELEASE%.*}"
|
|
|
|
LAST_MAJOR="${LAST_STABLE_RELEASE%%.*}"
|
|
LAST_MINOR="${LAST_MAJOR_MINOR#*.}"
|
|
LAST_PATCH="${LAST_STABLE_RELEASE##*.}"
|
|
|
|
case "${PWD##*/}" in
|
|
numix-gtk-theme)
|
|
NEXT_PATCH=$(($LAST_PATCH + 1))
|
|
|
|
NEXT_STABLE_RELEASE="${LAST_MAJOR_MINOR}.${NEXT_PATCH}"
|
|
;;
|
|
|
|
Numix-Frost)
|
|
LAST_MAJOR=$(($LAST_MAJOR + 1))
|
|
NEXT_STABLE_RELEASE="${LAST_MAJOR}.${LAST_MINOR}.${LAST_PATCH}"
|
|
LAST_PATCH=$(($LAST_PATCH - 1))
|
|
|
|
LAST_STABLE_RELEASE="${LAST_MAJOR}.${LAST_MINOR}.${LAST_PATCH}"
|
|
;;
|
|
|
|
*)
|
|
echo 'Unknown directory!' && exit 1
|
|
;;
|
|
esac
|
|
|
|
[[ -f CHANGES ]] && mv CHANGES CHANGES.old
|
|
|
|
output_changes_file_version_marker "${NEXT_STABLE_RELEASE}" > CHANGES
|
|
|
|
{ git log \
|
|
--pretty=format:"[%ai] %<(69,trunc) %s %><(15) %aN {%h}" \
|
|
--cherry-pick "${LAST_STABLE_RELEASE}...HEAD"; } >> CHANGES
|
|
|
|
|
|
[[ -f CHANGES.old ]] && echo "" >> CHANGES && cat CHANGES.old >> CHANGES && rm CHANGES.old
|
|
|
|
git add CHANGES
|
|
git commit -m 'RELEASE PREP :: Update CHANGES file.'
|
|
git push
|
|
}
|
|
|
|
|
|
|
|
case $1 in
|
|
changes)
|
|
update_changes_file
|
|
exit $?
|
|
;;
|
|
|
|
install)
|
|
do_install "$2"
|
|
;;
|
|
|
|
*)
|
|
exit 0
|
|
;;
|
|
esac
|