{"id":194,"date":"2021-01-04T21:58:00","date_gmt":"2021-01-05T02:58:00","guid":{"rendered":"http:\/\/sycured.127.0.0.1.sslip.io\/?p=194"},"modified":"2024-01-13T19:54:52","modified_gmt":"2024-01-14T00:54:52","slug":"install-saltstack-macos-big-sur","status":"publish","type":"post","link":"http:\/\/10.42.0.68:8080\/blog\/install-saltstack-macos-big-sur","title":{"rendered":"Install SaltStack on macOS Big Sur"},"content":{"rendered":"\n

Installing SaltStack on macOS is a pain.<\/p>\n\n\n\n

I tried the easy way but failed due to a big problem.<\/p>\n\n\n\n

This is the solution<\/p>\n\n\n\n\n\n\n\n

The pain<\/h2>\n\n\n\n

Homebrew is a pain because they don’t package correctly SaltStack, and finally, we need to find the right way to fix it.<\/p>\n\n\n\n

Never install using:<\/strong><\/p>\n\n\n\n

brew install salt<\/code><\/pre>\n\n\n\n

The fix<\/h2>\n\n\n\n

Salt isn’t compatible with the actual (default) Python from Homebrew.<\/p>\n\n\n\n

Install Python<\/h3>\n\n\n\n

We need Python 3.7, so we install it using the bottled version:<\/p>\n\n\n\n

brew install --force-bottle \"python@3.7\"<\/code><\/pre>\n\n\n\n

Install SaltStack<\/h3>\n\n\n\n

Finally, we install SaltStack using a fork of the formula which forces “Python 3.7” (the right version):<\/p>\n\n\n\n

brew install cdalvaro\/tap\/salt<\/code><\/pre>\n\n\n\n

We first installed python@3.7 with the bottle to avoid a loss of time due to the compilation of Python 3.7.<\/p>\n\n\n\n

It’s done, and you’ve finally a functional SaltStack.<\/p>\n\n\n\n

Bonus<\/h2>\n\n\n\n

If you want to obtain clean states, you can be interested in salt-lint: A command-line utility that checks for best practices in Salt\u2026<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"

Installing SaltStack on macOS is a pain. I tried the easy way but failed due to a big problem. This is the solution<\/p>\n","protected":false},"author":1,"featured_media":107,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"saved_in_kubio":false,"footnotes":""},"categories":[28],"tags":[30],"_links":{"self":[{"href":"http:\/\/10.42.0.68:8080\/wp-json\/wp\/v2\/posts\/194"}],"collection":[{"href":"http:\/\/10.42.0.68:8080\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/10.42.0.68:8080\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/10.42.0.68:8080\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/10.42.0.68:8080\/wp-json\/wp\/v2\/comments?post=194"}],"version-history":[{"count":1,"href":"http:\/\/10.42.0.68:8080\/wp-json\/wp\/v2\/posts\/194\/revisions"}],"predecessor-version":[{"id":195,"href":"http:\/\/10.42.0.68:8080\/wp-json\/wp\/v2\/posts\/194\/revisions\/195"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/10.42.0.68:8080\/wp-json\/wp\/v2\/media\/107"}],"wp:attachment":[{"href":"http:\/\/10.42.0.68:8080\/wp-json\/wp\/v2\/media?parent=194"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/10.42.0.68:8080\/wp-json\/wp\/v2\/categories?post=194"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/10.42.0.68:8080\/wp-json\/wp\/v2\/tags?post=194"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}