Решил автоматизировать процесс получения виндосборок без отрыва от производства. Осиливать заново написание батников желания не было никакого, поэтому решил установить wine и потыкать, взлетит или нет: sudo zypper in -l --no-recommends wine
Svin-kun астоятельно не рекомендовал мне связываться с 64-разрядным вайном, посему (не должно быть профиля вайна: ls ~ | grep wine
) создадим 32-разрядный префикс по умолчанию WINEARCH=win32 winecfg
Переходим в хранилище питонопотрохов и устанавливаем необходимые пакеты. Кое-какие вещи обновились с момента последней проверки (в разрабатываемом wxPython2.9 уже что-то поломали), перекачаем:
wget http://www.python.org/ftp/python/2.7.3/python-2.7.3.msi && wine msiexec /i python-2.7.3.msi
wine wxPython2.8-win32-unicode-2.8.12.1-py27.exe
wget https://sourceforge.net/projects/pywin32/files/pywin32/Build%20218/pywin32-218.win32-py2.7.exe && wine pywin32-218.win32-py2.7.exe
Содержимое архива pyinstaller-2.0.zip вбрасываем в ~/.wine/drive_c/Python27/Lib/site-packages
py2exe можно не устанавливать, потому что оно не работает, вылетая с ошибко The following modules appear to be missing ['Carbon', 'Carbon.Files', '_scproxy']
Содержимо http://upx.sourceforge.net/download/upx308w.zip помещаем ~/.wine/drive_c/Python27 оскольку я не нашёл адекватных способов сделать его видимым. До этого я догадался не сразу, а после ручного применения (при котором на exeшнике поперхнулось с дикой ошибкой) билд не запустился вне вайна :) Нужно будет ещё потестировать, чтобы делать окончательные выводы.
Сборка запускается из каталога с исходниками однострочником wine ~/.wine/drive_c/Python27/python.exe ~/.wine/drive_c/Python27/Lib/site-packages/pyinstaller-2.0/pyinstaller.py wx-randorator.spec а досуге планирую запилить какой-нибудь костыль на баше для полной автоматизации. Интерфейсы на тикле в дефолтном вайне распирает здоровенными шрифтами. Баг в стабильной версии по информаци Svin-kun-а не подтверждается.
Перед переходом к хвалебным одам напишу, что разукрасить различный вывод утилит git можно, добавив ~/.gitconfig секци [color] с параметро ui = true
Шаблон для списка изменений можно выцедить по команд git log --pretty="format:* %s" v0.2.1..HEAD | grep -v "^Merge " | sort
за которую спасибо Дедфуду. Не забываем указывать свою предыдущую версию ;)
Реализовано два запроса пользователей: добавлена возможность вывода истинного значения RSD и добавления границ интервала к выхлопу, всё опционально, первое включено по умолчанию. Второй пункт не совместим с текущей реализацией подгона RSD, не осилил. К первому пункту дополнительно приложилось разделение выхлопа на помещаемый в буфер обмена (значения) и только отображаемый (ошибки и RSD на данный момент). Сделал простенькие тесты для отлавливания любимых уже хотя бы раз закрытых багов, чтобы не добавлять и не чинить их по много раз :) Для реализации второго реквеста добавил возможность добавлять в виджеты ввода информации комбобоксы, для первого — увеличил долю класса словаря в обмене данными. Право слово, он мне кажется просто созданным для этой задачи, жаль, я поленился осиливать это изначально. Переработана логика работы с иконкой, функционал проверки платформы запуска был перемещён в ядро. Начал добавлять кое-какой информационный выхлоп stdout. Как всегда, выловлено и прибито несколько багов.
Гитхаб в качестве новогоднего подарка решил убрать возможность создания загрузок, посему решил переехать частично на SorceForge. Освещу пару нюансов: при создании проекта, для него автоматически создаётся сайт с адресами вида projectname.sourceforge.net и projectname.sf.net, внешний вид дефолтного сайта внушает страх и трепет, но вместо него можно сделать переадресацию на любой другой. Главное, не забыть вписать свой адрес, но и это поправимо :) Для доступа к ftp у меня попросили пароль, на чём я подвис, поскольку заламывался через OpenID, и, емнип, пароль мне не выдавался… это тоже исправимо. Теперь у рандоратора есть крутой короткий адрес и новые загрузки для портативной шиндошс-версии. Силам Svin-kun-а приложение было протестировано под Вистой и Семёркой.