From 5934d94f5d0841a05dafb145d9b08016ba0e0edc Mon Sep 17 00:00:00 2001 From: bryan Date: Tue, 3 Jan 2023 10:09:58 -0500 Subject: [PATCH 01/15] Redundant return --- installJRMC | 1 - 1 file changed, 1 deletion(-) diff --git a/installJRMC b/installJRMC index ec33fea..bf1c2f1 100755 --- a/installJRMC +++ b/installJRMC @@ -108,7 +108,6 @@ askOk() { declare response read -r -p "$* [y/N]: " response [[ "${response,,}" =~ ^(yes|y)$ ]] - return } From eee5a37ab2bcb68e4fad4f6ccef1fae2bb84cc41 Mon Sep 17 00:00:00 2001 From: bryan Date: Tue, 3 Jan 2023 10:21:27 -0500 Subject: [PATCH 02/15] Use case for ID checks --- installJRMC | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/installJRMC b/installJRMC index bf1c2f1..bca6418 100755 --- a/installJRMC +++ b/installJRMC @@ -379,8 +379,14 @@ setMCVersion() { if [[ "$MCVERSION_SOURCE" == "user input" ]]; then # Append explicit package version when user provides --mcversion - [[ "$ID" =~ ^(fedora|centos|suse)$ ]] && MCPKG+="-$MCVERSION" - [[ "$ID" =~ ^(debian|ubuntu)$ ]] && MCPKG+="=$MCVERSION" + case "$ID" in + fedora|centos|suse) + MCPKG+="-$MCVERSION" + ;; + debian|ubuntu) + MCPKG+="=$MCVERSION" + ;; + esac fi echo "Using MC version $MCVERSION determined by $MCVERSION_SOURCE." [[ "$MCVERSION_SOURCE" == "user input" ]] || echo "To override, use --mcversion." From db8f561a61204ab6024327b8ad6b8e42ae519e11 Mon Sep 17 00:00:00 2001 From: bryan Date: Fri, 6 Jan 2023 16:12:09 -0500 Subject: [PATCH 03/15] Early arch work --- installJRMC | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/installJRMC b/installJRMC index 4870c85..536abbc 100755 --- a/installJRMC +++ b/installJRMC @@ -836,8 +836,8 @@ installMesa() { installMCARCH() { debug "Running: ${FUNCNAME[0]}" echo "Arch install under construction" - [[ ! -d "$OUTPUTDIR/PKGBUILD/" ]] && mkdir -p "$OUTPUTDIR/PKGBUILD" - cat <<-EOF > "$OUTPUTDIR/PKGBUILD/mediacenter.pkgbuild" + [[ ! -d "$OUTPUTDIR/PKGBUILD/" ]] && mkdir -p "$OUTPUTDIR/mediacenter.pkgbuild" + cat <<-EOF > "$OUTPUTDIR/PKGBUILD/PKGBUILD" pkgname=mediacenter$MVERSION pkgver=$MCVERSION pkgrel=1 @@ -862,6 +862,16 @@ installMCARCH() { install -Dm644 "License.txt" "\$pkgdir/usr/share/licenses/\$pkgname/COPYING" } EOF + + pushd "$OUTPUTDIR/PKGBUILD" || return + makepkg \ + --syncdeps \ + --clean \ + --cleanbuild \ + --force \ + --install \ + -p "mediacenter.pkgbuild" + popd "$OUTPUTDIR/PKGBUILD" || return } From 652a872d950adae306df2923e97a24f52021eabb Mon Sep 17 00:00:00 2001 From: bryan Date: Fri, 6 Jan 2023 16:24:42 -0500 Subject: [PATCH 04/15] Disable builds on Arch --- installJRMC | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/installJRMC b/installJRMC index 536abbc..8480c58 100755 --- a/installJRMC +++ b/installJRMC @@ -253,9 +253,9 @@ init() { debug "Detected host platform: $ID $VERSION_ID" - # normalize ID + # normalize ID and set distro-specific vars case "$ID" in - arch|debian) + debian) ;; centos|fedora) if hash dnf &>/dev/null; then @@ -276,6 +276,9 @@ init() { raspbian) ID="debian" ;; + arch) + BUILD_SWITCH=0 # TODO could be refactored + ;; *) echo "Autodetecting distro, this may be unreliable and --compat may also be required" if hash dnf &>/dev/null; then From a243550902da6b435bc453524d083887e47d35b5 Mon Sep 17 00:00:00 2001 From: bryan Date: Fri, 6 Jan 2023 16:25:58 -0500 Subject: [PATCH 05/15] Fix derp --- installJRMC | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/installJRMC b/installJRMC index 8480c58..0bdfdbd 100755 --- a/installJRMC +++ b/installJRMC @@ -839,8 +839,8 @@ installMesa() { installMCARCH() { debug "Running: ${FUNCNAME[0]}" echo "Arch install under construction" - [[ ! -d "$OUTPUTDIR/PKGBUILD/" ]] && mkdir -p "$OUTPUTDIR/mediacenter.pkgbuild" - cat <<-EOF > "$OUTPUTDIR/PKGBUILD/PKGBUILD" + [[ ! -d "$OUTPUTDIR/PKGBUILD/" ]] && mkdir -p "$OUTPUTDIR/PKGBUILD" + cat <<-EOF > "$OUTPUTDIR/PKGBUILD/mediacenter.pkgbuild" pkgname=mediacenter$MVERSION pkgver=$MCVERSION pkgrel=1 From 2309b4b1d5297bf04e56e5e085f624f16f909d97 Mon Sep 17 00:00:00 2001 From: bryan Date: Fri, 6 Jan 2023 16:26:44 -0500 Subject: [PATCH 06/15] Fix pushd --- installJRMC | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/installJRMC b/installJRMC index 0bdfdbd..97c5c70 100755 --- a/installJRMC +++ b/installJRMC @@ -874,7 +874,7 @@ installMCARCH() { --force \ --install \ -p "mediacenter.pkgbuild" - popd "$OUTPUTDIR/PKGBUILD" || return + popd || return } From fec7e8036195bdb3643638c3ab0f922029eae8b3 Mon Sep 17 00:00:00 2001 From: bryan Date: Fri, 6 Jan 2023 16:35:57 -0500 Subject: [PATCH 07/15] Arch work --- installJRMC | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/installJRMC b/installJRMC index 97c5c70..1011317 100755 --- a/installJRMC +++ b/installJRMC @@ -867,13 +867,18 @@ installMCARCH() { EOF pushd "$OUTPUTDIR/PKGBUILD" || return - makepkg \ - --syncdeps \ - --clean \ - --cleanbuild \ - --force \ - --install \ - -p "mediacenter.pkgbuild" + makepkg_cmd="makepkg + --syncdeps + --clean + --cleanbuild + --force + --install + -p mediacenter.pkgbuild" + if ! exec ${makepkg_cmd}; then + if [[ $? -eq 10 ]]; then + su nobody exec "${makepkg_cmd}" # TODO, for testing in root VM + fi + fi popd || return } From 1b3bf6ae67f21fdaf447bf922300b10b131983e5 Mon Sep 17 00:00:00 2001 From: bryan Date: Fri, 6 Jan 2023 16:37:23 -0500 Subject: [PATCH 08/15] Arch work --- installJRMC | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/installJRMC b/installJRMC index 1011317..de980ba 100755 --- a/installJRMC +++ b/installJRMC @@ -875,7 +875,9 @@ installMCARCH() { --install -p mediacenter.pkgbuild" if ! exec ${makepkg_cmd}; then - if [[ $? -eq 10 ]]; then + output=$? + echo $output + if [[ $output -eq 10 ]]; then su nobody exec "${makepkg_cmd}" # TODO, for testing in root VM fi fi From 4788957cc9f8406bdf432ae8c6771ef32ec0ef73 Mon Sep 17 00:00:00 2001 From: bryan Date: Fri, 6 Jan 2023 16:38:20 -0500 Subject: [PATCH 09/15] Arch work --- installJRMC | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/installJRMC b/installJRMC index de980ba..f7d5b31 100755 --- a/installJRMC +++ b/installJRMC @@ -874,13 +874,9 @@ installMCARCH() { --force --install -p mediacenter.pkgbuild" - if ! exec ${makepkg_cmd}; then - output=$? - echo $output - if [[ $output -eq 10 ]]; then - su nobody exec "${makepkg_cmd}" # TODO, for testing in root VM - fi - fi + #if ! exec ${makepkg_cmd}; then + su nobody exec "${makepkg_cmd}" # TODO, for testing in root VM + #fi popd || return } From 4b964aec5270f9bf978f1de80e2626c9217917a8 Mon Sep 17 00:00:00 2001 From: bryan Date: Fri, 6 Jan 2023 16:39:51 -0500 Subject: [PATCH 10/15] Arch work --- installJRMC | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/installJRMC b/installJRMC index f7d5b31..7a22ced 100755 --- a/installJRMC +++ b/installJRMC @@ -875,7 +875,7 @@ installMCARCH() { --install -p mediacenter.pkgbuild" #if ! exec ${makepkg_cmd}; then - su nobody exec "${makepkg_cmd}" # TODO, for testing in root VM + su bryan exec "${makepkg_cmd}" # TODO, for testing in root VM #fi popd || return } From 6aefd2bd49a238985e500541103b7fa3c7cb21b1 Mon Sep 17 00:00:00 2001 From: bryan Date: Fri, 6 Jan 2023 17:09:17 -0500 Subject: [PATCH 11/15] Arch work --- installJRMC | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/installJRMC b/installJRMC index 7a22ced..b4ab2bb 100755 --- a/installJRMC +++ b/installJRMC @@ -839,7 +839,7 @@ installMesa() { installMCARCH() { debug "Running: ${FUNCNAME[0]}" echo "Arch install under construction" - [[ ! -d "$OUTPUTDIR/PKGBUILD/" ]] && mkdir -p "$OUTPUTDIR/PKGBUILD" + [[ -d "$OUTPUTDIR/PKGBUILD" ]] || mkdir -p "$OUTPUTDIR/PKGBUILD" cat <<-EOF > "$OUTPUTDIR/PKGBUILD/mediacenter.pkgbuild" pkgname=mediacenter$MVERSION pkgver=$MCVERSION @@ -1721,6 +1721,8 @@ main() { fi fi + debug "BUILD_SWITCH: $BUILD_SWITCH" + if (( BUILD_SWITCH )); then installPackage "wget" acquireDeb From ac920e9a9cb269506cc32bda59d23645dfa8d478 Mon Sep 17 00:00:00 2001 From: bryan Date: Fri, 6 Jan 2023 17:18:05 -0500 Subject: [PATCH 12/15] Arch work --- installJRMC | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/installJRMC b/installJRMC index b4ab2bb..0c54012 100755 --- a/installJRMC +++ b/installJRMC @@ -255,7 +255,7 @@ init() { # normalize ID and set distro-specific vars case "$ID" in - debian) + debian|arch) ;; centos|fedora) if hash dnf &>/dev/null; then @@ -276,9 +276,6 @@ init() { raspbian) ID="debian" ;; - arch) - BUILD_SWITCH=0 # TODO could be refactored - ;; *) echo "Autodetecting distro, this may be unreliable and --compat may also be required" if hash dnf &>/dev/null; then @@ -1721,9 +1718,7 @@ main() { fi fi - debug "BUILD_SWITCH: $BUILD_SWITCH" - - if (( BUILD_SWITCH )); then + if (( BUILD_SWITCH )) && [[ $ID != "arch" ]]; then installPackage "wget" acquireDeb if [[ "$TARGET" =~ (centos|fedora|suse) ]]; then From 7067625a9f7c13b5359870d522430f320ad4ab1e Mon Sep 17 00:00:00 2001 From: bryan Date: Fri, 6 Jan 2023 17:36:55 -0500 Subject: [PATCH 13/15] Arch work --- installJRMC | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/installJRMC b/installJRMC index 0c54012..8befce6 100755 --- a/installJRMC +++ b/installJRMC @@ -872,7 +872,10 @@ installMCARCH() { --install -p mediacenter.pkgbuild" #if ! exec ${makepkg_cmd}; then - su bryan exec "${makepkg_cmd}" # TODO, for testing in root VM + if ! exec "${makepkg_cmd}"; then + echo "makepkg failed" + exit + fi #fi popd || return } From 9ba279265c9847cb98dff89677b82eed079efc0b Mon Sep 17 00:00:00 2001 From: bryan Date: Fri, 6 Jan 2023 17:38:34 -0500 Subject: [PATCH 14/15] Arch work --- installJRMC | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/installJRMC b/installJRMC index 8befce6..0022963 100755 --- a/installJRMC +++ b/installJRMC @@ -863,7 +863,7 @@ installMCARCH() { } EOF - pushd "$OUTPUTDIR/PKGBUILD" || return + pushd "$OUTPUTDIR/PKGBUILD" &>/dev/null || return makepkg_cmd="makepkg --syncdeps --clean @@ -877,7 +877,7 @@ installMCARCH() { exit fi #fi - popd || return + popd &>/dev/null || return } From 3cc0f9176699548d89504b17603d88a53d247ee6 Mon Sep 17 00:00:00 2001 From: bryan Date: Fri, 6 Jan 2023 17:41:37 -0500 Subject: [PATCH 15/15] Fix derps --- installJRMC | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/installJRMC b/installJRMC index 0022963..b6302cb 100755 --- a/installJRMC +++ b/installJRMC @@ -871,12 +871,12 @@ installMCARCH() { --force --install -p mediacenter.pkgbuild" - #if ! exec ${makepkg_cmd}; then - if ! exec "${makepkg_cmd}"; then + + if ! eval "${makepkg_cmd}"; then echo "makepkg failed" exit fi - #fi + popd &>/dev/null || return } @@ -1682,8 +1682,8 @@ main() { if ! grep ^deb /etc/apt/sources.list|grep -q universe; then echo "Adding universe repository" declare add_universe_cmd="sudo add-apt-repository -y universe" - #debug "$add_universe_cmd" || add_universe_cmd+=" &>/dev/null" - if ! exec "$add_universe_cmd"; then + debug "$add_universe_cmd" || add_universe_cmd+=" &>/dev/null" + if ! eval "$add_universe_cmd"; then err "Adding universe repository failed" fi fi