Мы используем Makefile думая, что нет альтернатив, что это стандарт и всё такое.
Но make это не запускалка команд, а система сборки. Мы фактически используем его не по назначению.
И на самом деле альтернатива есть! Некоторое время назад я открыл для себя прекрасный инструмент - just. Он решает все проблемы make.
just - это не система сборки как make, это именно исполнитель команд!
Больше никаких Phony Targets и табуляций, привет нормальный синтаксис и передача аргументов!!! 😎
⭐️Что умеет just:
✅ Автодокументирование команд
Не нужно делать отдельную команду с докой, просто добавь комментарий
# команда сборки
build:
...
$ just --list
Available recipes:
build # команда сборки
Команда с именем default запускается по умолчанию если не указано другое, так что я обычно делаю так:
default:
just --list
Теперь просто выполняем just и получаем доку из текущего файла.
✅ Удобная работа с переменными окружения
# загрузить из .env
set dotenv-load
# глобальная переменная
export PYTHONPATH := "./src"
# переменная для команды
test $TESTUNG="true":
pytest
✅ Передача аргументов
build target:
@echo 'Build {{target}}...'
команда запуска
$ just build dev
# Build dev...
✅ Выбор интерпретатора прямо в команде
Пример с инлайн-скриптом на python:
system:
#!/usr/bin/env python3
import platform
print(platform.system())
Эта же функция позволит выполнить скрипт как одну команду вместо перезапуска шела для каждой строки
foo:
#!/usr/bin/env sh
for file in ls .; do
echo $file
done
✅ Выполнение команды в определенной директории. Можно указать как релятивный путь так и абсолютный
[working-directory: 'backend']
build:
docker compose build
Также можно задать рабочую директорию глобально
Там еще много интересного:
- поддержка функций
- автокомплиты и интеграции
- экспрешены
- алиасы команд
- группировка команд
- альтернативы команды под разные ОС
- импорт других just-файлов
- цветной вывод
- ... и другие штуковины!
Так что вперёд - ➡️ читать доку!
Репозиторий: ➡️https://github.com/casey/just
Статья: ➡️https://www.chicks.net/reference/file_formats/just/
ЗЫ. Кажется, на Makefile я уже не вернусь)
#tools
It is 'Telegram Thursday' and I want to recommend you interesting channels.
Today there is a fresh channel, focusing on the Scottish aspect of European culture:
https://t.me/beautiful_scotland
Have a look and follow this channel! It has lots of original content.
#Scottish#TelegramThursday
@EuropeanTribalism
#Ethiopia aid worker tells of daily struggle to find water in land littered with cow skulls
A #Scottish aid worker who recently visited Ethiopia has told of the harrowing daily struggles people face there to get safe water. Ben Wilson of the Scottish Catholic International Aid Fund (#SCIAF), who visited the #African nation last June, told of landscapes devastated by drought and littered with the skulls of dead cattle.
It comes as the charity’s annual Wee Box appeal this Easter focuses on water, with Scots urged to give generously to fund taps and wells in some of the world’s poorest nations. SCIAF is also urging Keir Starmer to reverse his controversial move to slash international aid to 0.3 per cent of national income - the lowest level since 1999 - in order to boost defence spending.
Ben told the Sunday Mail: “Water poverty is still such a huge problem around the world, with hundreds of millions of people.........
https://www.dailyrecord.co.uk/news/scottish-news/ethiopia-aid-worker-tells-daily-36969445
Shovel Dance Collective — The Shovel Dance (American Dreams Records, 2024)
#country#avantfolk#irish#scottish#english#England#Ireland#Scotland#United_Kingdom
Shovel Dance — второй альбом лондонского коллектива Shovel Dance Collective, который занимается изучением и переосмыслением народных традиций Англии, Ирландии и Шотландии. Группа работает без единого лидера, подчеркивая таким образом дух коллективного творчества, присущий фольклорной культуре. В состав входят девять участников, которые в работе над альбомом использовали 25 инструментов, а вокальные партии исполнялись восемью из них.
Альбом опирается на музыкальные источники, датируемые XVII веком и более ранними периодами, органично соединяя их с современными влияниями. Так, в музыке коллектива угадываются отсылки ко многим артистам XX века: Скотту Уокеру, начавшему карьеру как поп-исполнитель в 60-х, но позже экспериментировавшему со звуком и формой; Swans, экспериментальному постпанк-коллективу из Нью-Йорка; Ширли Коллинз, британской фолк-певице и исследовательнице народной музыки; Берту Ллойду, исполнителю и собирателю английских народных песен. Эти цитаты подчёркивают стремление Shovel Dance Collective навести мосты между традиционной музыкой и современными звуковыми решениями, чтобы отразить актуальность фольклора не только через тексты, но и через звучание.
Альбом открывается композицией Abbots Bromley Horn Dance — переосмыслением музыки к древнему английскому праздничному танцу, традиционно исполняемому с оленьими рогами и минимальным аккомпанементом. Группа превращает его в сложное инструментальное произведение, достигающее крещендо, прежде чем перейти к песне The Worms Crept Out времен Первой мировой войны, посвященной размышлениям о смерти.
На протяжении всего альбома музыканты исследуют, как фольклор может отражать социальные и исторические проблемы, актуальные как в прошлом, так и в настоящем. Например, в треке The Four Loom Weaver это проявляется через рассказ о людях, потерявших работу во времена промышленной революции. Хоть с тех пор минуло много лет и мы давно живем в постиндустриальную эпоху, люди продолжают терять работу. Музыканты верят, что старые народные песни могут стать источником утешения и помочь справиться с несовершенствами жизни.
🔗AppleMusic | Spotify | YouTube | Deezer | TIDAL | Napster | Amazon | Bandcamp | Telegram