Kivy - это кроссплатформенный фреймворк создания графического интерфейса для приложений написанных на языке программирования Python 2.7.x. Поддерживает следующие платформы - Linux, Windows, OS X, Android и iOS. Мультитач также поддерживается.
Для сборки пакета для Android я использовал вот этот мануал - http://kivy.org/docs/guide/packaging-android.html.
В процессе сборки необходимо указать разрешения для приложения. Список разрешений можно подсмотреть здесь - http://developer.android.com/reference/android/Manifest.permission.html
вторник, 10 декабря 2013 г.
воскресенье, 20 октября 2013 г.
Python: С чего начать?
Быть системным администратором достаточно просто, когда есть набор инструментов и средств, которые помогают тебе в работе.
Хотя набор этот и весьма индивидуальная вещь, но общие принципы проявляются везде. И одним из таких принципов является наличие какого-либо скриптового языка программирования в твоём арсенале. Не будем останавливаться на причинах и следствиях, я выбрал для себя Python.
Прочитав пару десятков статей и опробовав несколько языков пришёл к выводу, что это моё.
Самая большая проблема после выбора, была в том, что начался тяжелый этап вхождения. Что почитать, в чём программировать, с кем посоветоваться. Пройдя сам через все эти вопросы хочу поделиться своим опытом.
Как правило, самым сложным на первоначальном этапе изучения оказывается создание среды в которой можно программировать, пробовать куски кода. Некий инструментарий для старта.
Определившись с инструментами остались сущие пустяки, освоить язык. На самом деле это очень просто. Я учился по следующим книгам:
Вторую книгу стоит прочитать тем, кто задаётся вопросом использования Python в системном администрировании. Рассматривается довольно много специфических вопросов, что поможет столкнуть мысли в нужном направлении.
Возможности из третьего пункта хорошо описываются в вышеприведённых книгах.
Из всего пантеона документации для Python на начальном этапе самые нужные это - Library Reference и Tutorial. Возможно ещё может заинтересовать Languge Reference.
Лично я следовал принципу - основное берём у Лутца, уточнения в официальной документации.
Таким образом я смог преодолеть порог на вход в язык. Осталось лишь развивать навыки и умения.
Хотя набор этот и весьма индивидуальная вещь, но общие принципы проявляются везде. И одним из таких принципов является наличие какого-либо скриптового языка программирования в твоём арсенале. Не будем останавливаться на причинах и следствиях, я выбрал для себя Python.
Прочитав пару десятков статей и опробовав несколько языков пришёл к выводу, что это моё.
Самая большая проблема после выбора, была в том, что начался тяжелый этап вхождения. Что почитать, в чём программировать, с кем посоветоваться. Пройдя сам через все эти вопросы хочу поделиться своим опытом.
Как правило, самым сложным на первоначальном этапе изучения оказывается создание среды в которой можно программировать, пробовать куски кода. Некий инструментарий для старта.
- Debian GNU/Linux последней версии. Именно так! Это не максимализм и не фанатичное пропагандирование дистрибутива. Там есть всё. Необходимые инструменты, документация, разные версии самого Python, множество модулей для разных задач, документация. И отсутствие проблем с установкой и совмещением всего этого зоопарка. Плюс дополнительные инструменты для работы с системами контроля версий, библиотеками для построение графического интерфейса и многое, многое другое. Некоторый минус несколько устаревшие версии ПО, но в данном конкретном случает этот минус не настолько важен, чтоб перекрыть все получаемые преимущества. Пользуюсь сам и рекомендую всем.
- WinPython - для использующих Windows XP и выше это просто спасение. На самом деле все компоненты входящие в этот набор программ можно скачать по отдельности и весьма мощно продвинуться в собственных глазах при их интеграции. Но для изучения Python полезность этих знаний не так уж велика. Поэтому просто ставим WinPython и пользуемся. Всё необходимое есть. В наличии сборки под 32 и 64 бита, 2 и 3 версии Python. Пакет направлен на решение научных задач, но этого особо не заметно. И для решения общих задач использовать можно не менее успешно.
- Python 2.x.x - да, я рекомендую к освоению и использованию именно Python версии 2. Почему? Всё просто, под эту версию есть всё. Документация, книги, модули, программы. Ветка поддерживается и активно. Переход с неё на версию 3 не так уж и затруднителен. Перевод сценариев со 2 на 3 версию вызывает несколько проблем, но именно об этих проблемах я предлагаю подумать в тот момент когда вы станете продавать свой код .
- IPython - интерактивная консоль. В дистрибутиве с официальной версией Python поставляется консоль, не самая плохая. Но IPython реально облегчает и упрощает многие моменты как работы, так и обучения языку.
- Spyder - IDE (среда разработки). В общем-то если вы начинаете и озаботились средой разработки, в которой хотите видеть подсветку кода, подсказки, документацию по ходу написания кода, консоль с результатами запуска скрипта. Она подойдёт, не знаю как уж для серьёзной разработки, но для моего начального уровня вполне достаточно. Поддерживает систему контроля версий mercurial.
- TortoiseHg - графический интерфейс для системы контроля версий mercurial. В самом начале она не особо и нужна, но как только появится чуть более сложный скрипт, строк на 100, вы оцените.
Определившись с инструментами остались сущие пустяки, освоить язык. На самом деле это очень просто. Я учился по следующим книгам:
- Марк Лутц - Изучаем Python.
- Ноа Гифт и Джереми М. Джонс - Python в системном администрировании UNIX и Linux.
- Функции help() и dir() в консоли IPython или Python.
- Официальная документация на сайте Python.
Вторую книгу стоит прочитать тем, кто задаётся вопросом использования Python в системном администрировании. Рассматривается довольно много специфических вопросов, что поможет столкнуть мысли в нужном направлении.
Возможности из третьего пункта хорошо описываются в вышеприведённых книгах.
Из всего пантеона документации для Python на начальном этапе самые нужные это - Library Reference и Tutorial. Возможно ещё может заинтересовать Languge Reference.
Лично я следовал принципу - основное берём у Лутца, уточнения в официальной документации.
Таким образом я смог преодолеть порог на вход в язык. Осталось лишь развивать навыки и умения.
пятница, 18 октября 2013 г.
Debian: Системные группы безопасности.
В любом дистрибутиве и в Debian в частности существуют системные группы пользователей управляющие правами доступа к системе.
В самом Debian мануал с описанием этих групп находится здесь -
Приведу парочку, на мой взгляд, самых интересных:
Группы имеющие одноимённого связанного пользователя.
Группы не имеющие связанного с ними пользователя:
В самом Debian мануал с описанием этих групп находится здесь -
/usr/share/doc/base-passwd/users-and-groups.html
Приведу парочку, на мой взгляд, самых интересных:
Группы имеющие одноимённого связанного пользователя.
- root
- Группа суперпользователя.
Сюда лучше кроме root никого не добавлять. Для работы с его правами есть sudo. - daemon
- Пользователи этой группу демоны (сервисы), которым нужен некий уровень доступа к системе.
- Но вообще рекомендуется пускать каждого демона под своей группой и пользователем.
- games
- Группа дающая возможность сохранять играм рейтинг, чтоб разные пользователи системы могли помериться "длинной пароля".
- Группа для доступа к почте в /var/mail.
- messagebus
- От имени этого пользователя работает dbus.
- adm
- Группа с правами чтения логов в /var/log.
- dialout
- Доступ к последовательным портам для использования модемов.
- dip
- Пользователи этой группы могут пользоваться такой штукой как "Диалап".
- cdrom
- Группа для доступа к CD-ROM.
- plugdev
- Члены этой группы могут автоматически монтировать флешки, cd-диски и прочее.
- lpadmin
- Позволяет управлять принтерами, добавлять, удалять и прочее.
- scanner
- Пользователи этой группы могут использовать сканеры.
Подписаться на:
Сообщения (Atom)