config() { NEW="$1" OLD="$(dirname "$NEW")/$(basename "$NEW" .new)" if [ ! -r "$OLD" ]; then mv "$NEW" "$OLD" elif [ "$(cat "$OLD" | md5sum)" = "$(cat "$NEW" | md5sum)" ]; then rm "$NEW" fi } preserve_perms() { NEW="$1" OLD="$(dirname $NEW)/$(basename $NEW .new)" if [ -e $OLD ]; then cp -a $OLD ${NEW}.incoming cat $NEW > ${NEW}.incoming mv ${NEW}.incoming $NEW fi config $NEW } config etc/forgejo/app.ini.new config etc/forgejo/app.ini.mariadb.new preserve_perms etc/rc.d/rc.forgejo.new