|
|
# --- SDE-COPYRIGHT-NOTE-BEGIN --- # This copyright note is auto-generated by ./scripts/Create-CopyPatch. # # Filename: lib/sde-package/new.in # Copyright (C) 2006 - 2008 The OpenSDE Project # # More information can be found in the files COPYING and README. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; version 2 of the License. A copy of the # GNU General Public License can be found in the file COPYING. # --- SDE-COPYRIGHT-NOTE-END ---
package_new() { local method= if [ "$1" = "-fm" ]; then method="freshmeat" shift elif [ "$1" = "-deb" ];then shift cd $SDEROOT exec python ./lib/sde-package/new-debian.py "$@" fi # new package new_package="$1"; shift if [ "$new_package" != "${new_package//\//}" ]; then new_repository="${new_package%/*}" new_package="${new_package##*/}"
if [ ! -d "${new_repository}" ]; then # uhm, it doesn't exist yet if [ "$new_repository" = "${new_repository//\//}" ]; then # uh, just a repo name new_repository="$SDEROOT/package/$new_repository" elif [ -d "$SDEROOT/${new_repository%/*}" ]; then # SDEROOT relative new_repository="$SDEROOT/$new_repository" else # not even $SDEROOT relative echo_abort 1 "package_new() can't handle repository '$new_repository'." fi fi else new_repository=$( package_autodetect_repo ) echo_warning "assuming requested repository as '${new_repository:-wip}'." new_repository="$SDEROOT/package/${new_repository:-wip}" fi
if [ -d "${new_repository%/*}" ]; then # normalize new_repository=$( cd ${new_repository%/*}; pwd -P )/${new_repository##*/} else echo_abort 1 "repository ${new_repository} doesn't have a valid parent folder." fi
# on this tree, and at package/ [ "${new_repository%/*}" = "$SDEROOT/package" ] || echo_abort 1 "invalid repository location. (${new_repository%/*})"
if [ ! -d "$new_repository" ]; then echo_warning "New repository created. (${new_repository#$SDEROOT/package/})" fi cd "$SDEROOT" case "${method}" in freshmeat) fm_name=${1:-$new_package} /bin/bash ./lib/sde-package/new-freshmeat.sh ${new_repository#$SDEROOT/package/}/$new_package "$fm_name" ;; *) /bin/sh ./lib/sde-package/new.sh ${new_repository#$SDEROOT/package/}/$new_package "$@" ;; esac if [ -e package/*/$new_package/$new_package.desc ];then echo -n "Updating chksum $new_package... " if ./bin/sde pkg up $new_package &> /dev/null;then echo "ok" else echo "failed" fi fi }
|