Показаны сообщения с ярлыком ubuntu. Показать все сообщения
Показаны сообщения с ярлыком ubuntu. Показать все сообщения

2015-11-24

Python3.5 + PyQt5 - The Hard Way

Сегодня мы, в продолжение предыдущей статьи, установим библиотеку PyQt5 для собранного из исходников Python3.5. Для версии Python3, идущей в репозитории дистрибутива есть простой путь, и в общем случае лучше придерживаться его - он проще и дает аналогичный результат.


sudo apt-get install python3-pyqt5 pyqt5-dev-tools

Маководам тоже повезло, им также хватит одной строки (если стоит Homebrew, а куда ж без него?):


brew install pyqt5

Тех же, кто не ищет легких путей или кому нужна именно собственноручно собранная версия, милости прошу к прочтению.

Итак, поехали. Для начала, скачиваем подходящий установщик Qt5, мне нужен был для Linux x64, запускаем и устанавливаем, можно в каталог по умолчанию ~/Qt.

Качаем и распаковываем свежие версии PyQt5 и sip отсюда: http://sourceforge.net/projects/pyqt/files/. Помним, что мы установили python в локальный каталог ~/local. В каталоге с распакованным sip конфигурируем и устанавливаем:


python3 configure.py -d ~/local/lib/python3.5/site-packages/
make
make install

Для успешной сборки GUI модулей PyQt5 (типа PyQt5.QtWidgets) пришлось установить пакетик с исходниками mesa:


sudo apt-get install libgl1-mesa-dev

Теперь в каталоге с распакованным PyQt5 конфигурируем и устанавливаем:


python3 configure.py --destdir ~/local/lib/python3.5/site-packages/\
 --qmake ~/Qt/5.5/gcc_64/bin/qmake --disable QtPositioning
make
make install

Почему здесь фигурирует "--disable QtPositioning"? Потому что иначе не собирается, выбрасывая сообщение "qgeolocation.h: No such file or directory". Да и шут с ним. Вот собственно и всё, можно начинать писать код.


from PyQt5.QtWidgets import QApplication, QWidget
app = QApplication([])
w = QWidget()
w.resize(300, 200)
w.move(400, 400)
w.setWindowTitle('PyQt5 installed')
w.show()

Получите, распишитесь.

2013-08-04

Встречайте BibleTools

После довольно долгого времени я наконец собрался воплотить свой давний замысел. А именно: набирая текст в GEdit, через сочетание клавиш разворачивать библейские ссылки типа "Ин.3:16" в полный текст. Вообще планы по развитию утилиты большие, но то, ради чего всё затевалось, уже можно использовать. Прогресс будет описываться на этой странице, и возможно, пока вы читаете этот пост, версия уже обновилась :) В составе синодальный перевод и консольная утилита, которую можно использовать так:

$ bibletools --link "Ин.3:16-18"

Далее. Чтобы прикрутить к GEdit, нужно активировать плагин "Внешние инструменты", и добавить свой. Основные пути:

Edit > Preferences > Plugins > External Tools
Tools > Manage External Tools

Добавленный инструмент может выглядеть примерно так:


Пишем текст в редакторе, выделяем ссылку, жмём Alt+1 и получаем текст Писания. Пока это всё, жду заинтересованных откликов!

P.S. А интересен ли вам вот такой функционал?

2013-04-28

Нафаршированный ffmpeg : готовый deb-пакет и немного записи

Примерно год назад я писал о том, как установить ffmpeg со всевозможными кодеками в Ubuntu 12.04. Это работает и в 13.04, без изменений. Но, так как я люблю моих читателей, и предполагаю, что им лень собирать это самостоятельно, предлагаю скачать уже собранный под 32-битную версию Ubuntu 13.04 пакет.
Вот ссылка.

P.S. Прошу прощения, установленный пакет у меня не заработал на машине, где предварительно я не установил всю ту кучу библиотек, нужную для сборки. Так что лучше из исходников собирать.

P.S. Кстати, а вы знали, что с помощью ffmpeg можно записывать то, что слушаете, к примеру в интернете? Например, с Яндекс.Музыки. Я раньше писал о том, как это сделать, так вот что касается pavucontrol - обязательно, а вместо заморочек с audacity можно сделать так:

ffmpeg -f alsa -ac 2 -i pulse -acodec libmp3lame -aq 4 file.mp3

Это даст нам файл mp3 с переменным битрейтом 140-185 (-aq 4). О том, какие битрейты можно выставить, прочтите здесь. Самое сложное - вовремя включить и выключить запись. Я пробовал записывать подряд, и потом разбить трек на части с помощью mp3splt по секунде тишины, но 1) возникают артефакты в месте разрыва и 2) иногда в композициях бывает тишина, так надо. Вобщем, пока думаю, как бы это автоматизировать, а вы присоединяйтесь!

2013-02-28

Использование Git


Использовать систему контроля версий GIT очень просто. Для начала вот краткий инструктаж. Устанавливаем git:
sudo apt-get install git

Перемещаемся в корневой каталог проекта и инициализируем проект:
cd ~/Projects/myProjectName
git init

Для хостинга проекта я использую Bitbucket. Зарегистрируйтесь на сайте и получите
имя пользователя, допустим, это myBBname. Теперь нужно создать проект, думаю, разберётесь. Пусть он называется myProjectName. Добавим запись о нём, назовём запись REPONAME:
git remote add REPONAME https://myBBname@bitbucket.org/myBBname/myProjectName.git

Добавляем файл(ы) в репозатарий
git add *.php

Когда закончим добавлять новые/изменённые файлы/каталоги, подтверждаем и указываем комментарий:
git commit -m "Пояснение к коммиту"

Теперь можно залить изменённые данные на сервер; используем запись REPONAME, основная ветка:
git push -u REPONAME master

BitBucket запросит пароль аккаунта для myBBname. Если всё было сделано правильно, то файлы зальются на сервер, а в вашем аккаунте появится информация о пределанных операциях.

Через несколько push-ей у вас повится зуд в пальцах от того, что каждый раз нужно вводить пароль. Нужно это как-то поправить. Решение - в использовании SSH и ключей. Запустим утилиту `ssh-keygen`:
ssh-keygen

Она будет предлагать варианты действий, ключевым из которых будет имя создаваемого
файла ключа (как правило, это `~/.ssh/id_rsa.pub`) и passphrase. Придумайте что-нибудь сами.
Теперь у нас есть файл ключа, закинем его в аккаунт Bitbucket (с учетом названия вашего аккаунта): https://bitbucket.org/account/user/myBBname/ssh-keys/

Там всё просто: Add Key, даём ему понятное название, в текстовое поле вносим содержимое файла ключа, сохраняем.
Добавим новую запись о проекте, через которую будем осуществлять доступ к серверу, в варианте для SSH (назовём её SSHREPONAME):
git remote add SSHREPONAME ssh://git@bitbucket.org/myBBname/myProjectName.git

Отлично. Теперь сделаем так, чтобы наш пароль был ассоциирован с ssh-ключом. Запустим `ssh-agent` для оболочки:
ssh-agent bash
ssh-add

У нас спросят ту самую passphrase, которую мы вводили, когда генерировали файл-ключ с помощью `ssh-keygen`.
Теперь, отправляя файлы на сервер, можно использовать ssh-запись, и будет использован ключ, а не пароль.
git push -u SSHREPONAME master

В завершении скажу, что можно использовать плагин Git в Sublime Text 2,
особенно если создать проект ровно в том-же каталоге, где и создан репозитарий git. И это очень удобно.

2012-11-14

mount без пароля

Задача: написать скрипт, который будет монтировать папку с удаленного win-сервера, и, после копирования файлов на локальную машину, отмонтировать её.
Казалось бы, ничего сложного, mount решает:

sudo apt-get install cifs-utils
sudo mount -t cifs //192.168.0.1/Folder /home/kawaikunee/Folder -o username=User,password=Pass,rw,file_mode=0777,dir_mode=0777
cp -a -n /home/kawaikunee/Folder/*.pdf /home/kawaikunee/Doc/PDFs/
sudo umount /home/kawaikunee/Folder

Да вот только одна проблема: скрипт должен работать автономно. И пароль sudo ему знать совсем не обязательно.

Решение: добавить пользователю, от чьего имени запускается скрипт, права на беспарольное использование sudo mount и sudo umount. Для этого внесём изменения в файл /etc/sudoers

sudo gedit /etc/sudoers

Добавим в него строчку:

kawaikunee linux = NOPASSWD: /bin/mount,/bin/umount

где первые два слова - имя пользователя и имя компьютера (они обычно представлены в приглашении терминала по умолчанию).

Задача решена. Скрипт использует sudo, но пароль у него не спрашивают.
P.S. Что-то мне подсказывает, что так можно и другие подобные задачи решить :)

2012-05-30

Ubuntu 12.04 + Adobe Air

В репозитариях Ubuntu 12.04 больше нет пакета adobeair. Не поддерживает Adobe нашу братию. Но рабочий air всё ещё есть, и для некоторых софтин он нужен. Специально для вас выкладываю в dropbox:
Adobe AIR 2.6 for Linux

2012-05-28

GVim: открываем все файлы в одном окне

Что такое GVim: немного обGUIфицированная версия Vim. Что, впрочем, не мешает использовать ее без GUI-фич, просто мне шрифты показались там глаже.
По умолчанию GVim каждый файл открывает в отдельном окне, что не есть гуд. Даже Gedit открывает их во вкладках одного окна (если не глючит). Немного почитав доки, накидал вот такой скрипт:

#!/bin/bash
GVIM_COUNT=`ps -A | grep gvim | wc -l`
if [ $GVIM_COUNT -gt 0 ]; then
/usr/bin/gvim --remote-silent "$1"
else
/usr/bin/gvim "$1"
fi

Сохранил его в домашнюю папку:
/home/kawaikunee/bin/g_vim.sh
и сделал исполняемым:
chmod +x /home/kawaikunee/bin/g_vim.sh

Скрипт ищет запущенный инстанс GVim, если его нет - то открывает файл в обычном режиме в GVim, если есть - открывает его с параметром --remote-silent, в уже существующем окне. Если запустить с этим параметром сразу, то будет сначала открыт GVim, затем в нем создан пустой документ, а потом добавлен редактируемый файл. Итого - ненужный "Безымянный документ". Поэтому сначала проверим - есть открытое окно или нет.
Дальше откроем файл с правами администратора:
sudo gedit /usr/share/applications/gvim.desktop

Находим строку "Exec=gvim" и изменяем слово gvim на полный путь к своему скрипту:
Exec=/home/kawaikunee/bin/g_vim.sh %F

Сохраняем, проверяем. Теперь, открывая файлы с помощью GVim из Nautilus, все они будут в одном окне.
P.S. Естественно, у вас должен быть установлен vim-gnome.

2012-05-10

Ubuntu: открыть файл любым приложением. Борьба со стандартным (не)функционалом.


А ещё в Ubuntu последних версий есть такая засада: нельзя произвольно открыть файл из файлового менеджера Nautilus нестандартным приложением. Например, мне хотелось, чтобы скрипты открывались в GVim, причем не каждый в отдельном окне, а все в одном, но в разных буферах. Для этого я написал bash-скрипт, сделал его исполняемым, и собрался было открывать файлы им... А вот шиш вам. Выбирай только из списка стандартных, установленных как положено приложений, которые, по мнению дистрибутива, подходят содержимому открываемого файла. Куда ты катишься, Ubuntu...
Ну да ладно. Хоть и через Китай, но это можно сделать. Поможет нам nautilus-actions, который мы установим:
sudo apt-get install nautilus-actions
А дальше всё просто. Запускаем и создаём правило.




В принципе, этого достаточно. Но настроек и фильтров масса, сами разберётесь.

2012-04-13

Установка IE8 в Ubuntu

Для это я использовал банальный playonlinux, в репозитариях есть, устанавливаем. Но, после установки в нем IE8, этот самый IE8 не запускается. После некоторых раздумий над открытым файлом ~/.PlayOnLinux/shortcuts/Internet Explorer 8
заменил это

на это

и ослик запустился. Напартачили в POL.

2012-04-05

MySql Workbench в Ubuntu 12.04

MySql Workbench пришел на смену предыдущим инструментам с графическим интерфейсом от  производителя. Скачать можно здесь. Однако, при установке на Ubuntu 12.04 ругается на отсутствие пакета libzip1, которого нет в репозитариях, а есть libzip2, но это его не устраивает. Решается сия заморочка следующим образом: устанавливаем libzip1 из пакетов предыдущего дистрибутива. Вот ссылка на скачивание файла:
https://answers.launchpad.net/ubuntu/oneiric/i386/libzip1/0.9.3-1

P.S. Как было верно замечено товарищем Alex, программа есть в репозитариях официального релиза. Устанавливать можно из репозатария:
sudo apt-get install mysql-workbench

2012-04-01

Установка "нафаршированного" ffmpeg в Ubuntu


sudo apt-get build-dep ffmpeg
sudo apt-get install libopencore-amrnb-dev libopencore-amrwb-dev libopenjpeg-dev \
libx264-dev libxvidcore-dev libx264-dev libopenjpeg-dev   libasound2-dev \
libdc1394-22-dev libgsm1-dev libimlib2-dev libraw1394-dev libsdl1.2-dev \
libschroedinger-dev libspeex-dev libtheora-dev libvorbis-dev libx11-dev \
libxext-dev libxvmc-dev quilt texi2html zlib1g-dev libfaad-dev libdirac-dev \
libfaac-dev libmp3lame-dev frei0r-plugins-dev libdirac-dev libfaac-dev
git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg-$(date +"%m-%d-%y")
cd ffmpeg-$(date +"%m-%d-%y")
./configure --enable-gpl --enable-version3 --enable-nonfree --enable-postproc \
--enable-x11grab --enable-gray --enable-small --enable-runtime-cpudetect \
--enable-hardcoded-tables --enable-memalign-hack --enable-bzlib --enable-frei0r \
--enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libdc1394 \
--enable-libfaac --enable-libgsm --enable-libopenjpeg --enable-libschroedinger \
--enable-libspeex --enable-libtheora --enable-libvorbis --enable-libvpx \
--enable-libx264 --enable-libxvid --enable-zlib --enable-pic --enable-sram \
--enable-libmp3lame \
--enable-extra-warnings
make
sudo make install
Примечание: в LinuxMint 15 XFCE x64 потребовалось включить репозитарии с исходниками (по умолчанию выключены) и установить libjack-dev отдельно отсюда

2012-02-29

Ubuntu 12.04 - как-то все расплывчато...

Установил для пробы Ubuntu 12.04 LTS, не релиз, но уже близко. С помощью утилиты dconf-tools поставил сглаживание шрифтов на максимум, но все равно они были не такими четкими, как в предыдущей версии. Хотел было откатиться назад, но тут пришло в голову проверить настройки видеокарты. Обычно я туда никогда не лезу, но вот... Стоило поменять вот это


на это


то есть Auto на 60 Hz, как все стало просто прекрасно. Не так и сложно для карт Nvidia.
Надеюсь, кому-то поможет.

2012-02-21

Ubuntu и стандартные каталоги

По умолчанию в Ubuntu присутствуют несколько стандартных каталогов - Музыка, Изображения, Видео, Документы, Рабочий стол. При смене языка ОС предлагает переименовывать их. Вобщем, может возникнуть некоторая путаница, и захочется поправить самостоятельно системные пути к этим папкам. Они находятся в файле в домашнем каталоге. Правим:
gedit ~/.config/user-dirs.dirs
Получаем нечто такое:

XDG_DESKTOP_DIR="$HOME/Desktop"
XDG_DOWNLOAD_DIR="$HOME/Downloads"
XDG_TEMPLATES_DIR="$HOME/Templates"
XDG_PUBLICSHARE_DIR="$HOME/Public"
XDG_DOCUMENTS_DIR="$HOME/Documents"
XDG_MUSIC_DIR="$HOME/Music"
XDG_PICTURES_DIR="$HOME/Pictures"
XDG_VIDEOS_DIR="$HOME/Video"

Правим, как нам угодно. Красота.

Ubuntu 11.10 и parcellite - нет значка в трее

Так как трей уже не тот, приходится производить некоторые акробатические этюды. Итак, в консоли пишем да запускаем установку нужных пакетов:
sudo apt-get install parcellite dconf-tools
Это понятно, ставим parcellite и утилиту правки реестра конфигурации.
Жмем Alt-F2 и набираем dconf-editor. Там лезем в ветку desktop-unity-panel, там единственный параметр systray-whitelist, который определяет, каким приложениям можно в трей залезать. Добавляем туда нашего героя, т.е. дописываем в хвост
, 'parcellite'
жмем, Enter, перелогиниваемся, запускаем Parcellite - вот он, голубчик.

2011-05-26

Привести дела в порядок ))

Именно эту задачу предлагает решить Getting Things GNOME - что-ж, планировать свои дела в нем действительно удобно. Он похож на Tomboy, только написан на Python+GTK, и позволяет создавать записи о задачах и подзадачах, распределять мероприятия по датам, задавая длительность. Отличный хелп в комплекте.
sudo apt-get install gtg
А вот о том, чтобы держать актуальным этот список в нескольких местах одновременно - разработчик позаботился явно недостаточно. Присутствует плагин для синхронизации с RTM (Remember The Milk), но стабильности ему точно недостает. Поэтому решаем этот вопрос самостоятельно. А именно - используя Dropbox.
Вы все еще не пользуетесь этим замечательным сервисом? Тогда мы идем к вам добро пожаловать на сайт разработчика и проникаться по просветления. Ubuntu One все еще далек от юзабельности (было несколько неприятных моментов). Dropbox же ни разу не подвел.
Итак, все, что нужно - это сделать пару символьных ссылок.
На одном компе, например, так:
ln -s ~/.local/share/gtg/ ~/Dropbox/gtg
А на остальных так:
mkdir ~/Dropbox/gtg
ln -s ~/Dropbox/gtg/ ~/.local/share/gtg

Только один момент: не включать GTG до того, как Dropbox синхронизирует файлы.
И все дела ^_^

Менеджер буфера обмена Parcellite

Очень удобная штука. Позволяет хранить множество версий содержимого буфера обмена. Например, скопировав текст, вставил его, и потом забил буфер другими данными. А потом понадобился этот текст. Снова искать, где он есть, и копировать?
Нет, конечно. Просто устанавливаю Parcellite (на текущий момент версии 0.9.3-1) и радуюсь туче ячеек буфера обмена.
sudo apt-get install parcellite

2011-05-16

DeaDBeeF

Вышел финальный релиз аудиоплеера DeaDBeeF 0.5.0 - аналог Foobar2000 в Windows.
Как пишет разработчик - "... after 2 betas, 1 rc and 6 months of development :)"
Устанавливаем:
sudo add-apt-repository ppa:alexey-smirnov/deadbeef
sudo apt-get update
sudo apt-get install deadbeef

Новые плагины, нововведения и вообще молодец товарищ Алексей Яковенко. Подробнее об этом написано здесь.

P.S. Для LinuxMint: чтобы репозитарий заработал, необходимо поправить имя дистрибутива. В 11 версии оно будет 'katya', а значит в файле
/etc/apt/sources.list.d/alexey-smirnov-deadbeef-katya.list
нужно заменить слово katya на natty (для 11.04). В итоге там будет так:
deb http://ppa.launchpad.net/alexey-smirnov/deadbeef/ubuntu natty main
deb-src http://ppa.launchpad.net/alexey-smirnov/deadbeef/ubuntu natty main

2011-04-11

Библейская программа

О программе

Возможности: просмотр текстов, поиск, как обычный так и путем выделения слова и нажатия кнопки с буквой "f". Получения списка параллельных мест при клике мышью на номер стиха в основном окне. Получение текста главы по клику мышью на название книги в поле результатов поиска. Сохранение книги, главы и фразы поиска текущего сеанса.

Установка

Скачайте deb-пакет (версия 0.3.2). Версия 0.3.3 - здесь.

Текущая версия для Ubuntu11.04 - 0.3.3. В нее включены Синодальный перевод с апокрифами и перевод короля Иакова без апокрифов. Внесены незначительные, но все-же изменения.

P.S. от 6 мая 2012 г. В Ubuntu 12.04, и вообще в Unity - ругается при установке, в меню не появляется, запускается из консоли, но всё-же работает. Приношу извинения, что не развиваю.

2011-02-22

Еще немного об оформлении

Почти два месяца ничего не писал в блог. Некогда и нечего было. Недавно увидел пример оформления, который мне понравился, и продолжая предыдущий пост, добавлю кое-что.
Во-первых, это nautilus-elementary. Добавляем источник пакетов в /etc/apt/sources.list:
deb http://ppa.launchpad.net/am-monkeyd/nautilus-elementary-ppa/ubuntu lucid main
и обновляем nautilus
Чрезвычайно настраиваемая тема - Orta:
http://skiesofazel.deviantart.com/art/Orta-184118297
И красивая рамка окошек для Emerald:
http://gnome-look.org/content/show.php/eLeKaJota?content=137640
С учетом предыдущего поста, получилось вот так: