When downloading a release asset over HTTP the executable bit is lost, so checking '-x' would always fail. Check existence instead and chmod unconditionally. Update the error message to cover the three common install paths.