Not seeing a Scroll to Top Button? Go to our FAQ page for more info. Personal Notebook: июня 2016

среда, 15 июня 2016 г.

[macOS] Превращаем Bash скрипт в macOS *.app программу


В маке программы устроенны очень интересным образом, все программы это своебразные пакеты с набором файлов в том, числе и с самой программой. Вы можете сами убедиться в этом, нажав на программу правой кнопкой мыши выбрав -> Show Package Contents.

Внутри вы скорей всего увидите вот такую структуру "Contents->( Resources, MacOS, _Signature)"
Тут все понятно, Resources - это ресурсы программы. иконка программы, какие то граффические картинки, иконки файлов связанных с данной программой и т.д., в MacOS находиться сама программа, ее исполнительный файл, _Signature - это цифровая подпись программы и ее разработчика, файлы в Contents это файлы которые необходимы системе для определения версии программы и самой программе.

Для того, чтобы иметь возможность запускать программы (Например, какие то линуксовые программы установленные через MacPorts или Brew), нам нужен сам скрипт ему нужно дать права на исполнения:

sudo chmod +x ваш_скрипт.sh

После этого убирает расширение у вашего скрипта, чтобы получился стандартный файл

Создаем папку с именем вашего приложения например: Приложение , а внутри создаем стандартную структуру описанную выше

Приложение -> Contents -> MacOS и в папку MacOS кидаем наш скрипт, самое главное имя скрипту нужно дать такое же как имя вашего приложения! 

И последнее, что нужно сделать. Вашей папке с вашим приложением нужно добавить расширение *.app
После этого вы можете запустить вашу программу и она должна заработать.

По ковырявшись в интернете я нашел скрипт который может все сделать автотически!

Скрипт можно найти тут: transform your bash 2 app!