diff --git a/src/lib/build/build.sh b/src/lib/build/build.sh index 8e9a3bb..9bd1e5d 100644 --- a/src/lib/build/build.sh +++ b/src/lib/build/build.sh @@ -337,7 +337,12 @@ pkgctl_build() { # fail if an existing package specifies --repo if [[ -n "${repo}" ]] && [[ -n ${pkgrepo} ]]; then - die 'Using --repo for packages that exist in official repositories is disallowed' + # allow unstable to use --repo + if [[ ${pkgrepo} == *unstable ]]; then + repo=${pkgrepo} + else + die 'Using --repo for packages that exist in official repositories is disallowed' + fi fi # assign auto-detected target repository diff --git a/src/lib/release.sh b/src/lib/release.sh index 700b2b0..acb3b54 100644 --- a/src/lib/release.sh +++ b/src/lib/release.sh @@ -141,7 +141,12 @@ pkgctl_release() { # fail if an existing package specifies --repo if [[ -n "${repo}" ]] && [[ -n ${REPO} ]]; then - die 'Using --repo for packages that exist in official repositories is disallowed' + # allow unstable to use --repo + if [[ ${REPO} == *unstable ]]; then + repo=${REPO} + else + die 'Using --repo for packages that exist in official repositories is disallowed' + fi fi # fail if a new package does not specify --repo