So I was setting up an Xcode project the other day, and I added the SwiftLint step to the Build Phases. When I ran the build, I was getting the following warning:
SwiftLint not installed, download from https://github.com/realm/SwiftLint
This warning was strange because I installed the SwiftLint on my machine, and it was working without any issues when I ran it from the Terminal.
As it turns out, on the M1 Macs, the SwiftLint is installed in the /opt/homebrew/bin/
, not in /usr/local/bin/
as it used to be. Because of this, the SwiftLint is not added to the PATH
and is therefore not available for the Xcode.
To fix this issue, we can manually specify where the SwiftLint is, right in the Build Phase step:
alias swiftlint="/opt/homebrew/bin/swiftlint"
if swiftlint >/dev/null; then
swiftlint
else
echo "warning: SwiftLint not installed, download from https://github.com/realm/SwiftLint"
fi
In the script above, we create an alias for the SwiftLint executable, located in the homebrew folder, and later use it to lint the code.
That's it. Now, the warning should be gone, and SwiftLint should verify the code during the build process.
Comments
Anything interesting to share? Write a comment.