Generation LOST Time to get lost

4Июл/110

Как показывает опыт, проще за 20 минут поднять с нуля виртуалку с Ubuntu-ой, чем пытаться настроить Windows для веб-разработки (хотя и такое возможно). Многоядерные процессоры с виртуализацией и дешевая оперативная память здесь очень даже к месту.

28Мар/110

Привет, UTC+8

Стрелки стрелками, но отмена перехода на зимнее время таит в себе еще один нюанс: теперь пояса в России сдвигаются. Если раньше Красноярск был в UTC+7 (с поправкой на DST, когда надо), то теперь он окопался в UTC+8.

И по всем правилам, Windows должна получить соответвующее исправление через Windows Update, а всякие эти ваши Линуксы обновить пакет tzdata. Если до октября никто не не обновится, то придется руками в настройках системы выставлять UTC+8 и снимать галку с перевода стрелок.

Как видно, пояс поменяли, а время не изменилось. А вот переводить сами стрелки на час вперед-назад в компьютерах не надо. Если время синхронизировано с интернетом, то оно переведется обратно. Поэтому менять надо только пояс.

В Линуксах есть файлик типа /usr/share/zoneinfo/Asia/Krasnoyarsk, где в бинарной форме записаны все переводы стрелок на 500 лет вперед. В Дебиане руками его не поправишь, но наверняка можно какой-то программой. Можно, но не нужно. Уверен, что за полгода нужный патч протолкнут.

А пока радуемся жизни.

Связано с категорией: Linux, Как страшно жить Нет комментариев
21Мар/110

XFCE — если потратить полчаса на обживание — становится пригодной для жизни. И это рекорд среди всех других DE. Плюс она поддерживает апплеты с панелей Gnome. Так, что если Gnome 3 окажется УГ, то есть куда бежать.

Из того что не получилось:

  • нет настроек системного Proxy, как в Gnome. Конечно, переменная окружения спасает, но Chrome исключения берет из системных настроек, а тут их нет и он всюду пытается лезть через прокси. Кажется так
Связано с категорией: Linux Нет комментариев
22Фев/110

DOC / RTF / ODT / … -> HTML / PDF / DOC / ODT / RTF / …

Немного рабочих моментов и полезного кода. Может кому пригодиться.

Конвертируем все что угодно в что-то другое с помощью OpenOffice/LibreOffice. Понадобилось тут автоматизировать наконец это дело.

Первая рабочая версия. Дальше уже можно пилить по вкусу.

Принцип работы — uno. Первый раз слышу. Похоже на COM в Windows. Запускает OpenOffice в фоне и общается с ним по TCP.

# -*- coding: utf-8 -*-
#!/usr/bin/env python
# Copyright (C) 2011 DMZ <dmz@the-island.ru>
# Licensed under the GNU LGPL v2.1 - or any later version.

from ooutils import oo_properties as oop, OORunner
from optparse import OptionParser, OptionValueError
import sys
import re
import os

from unohelper import systemPathToFileUrl
from com.sun.star.beans import PropertyValue

# http://wiki.services.openoffice.org/wiki/Framework/Article/Filter/FilterList_OOo_3_0
CONVERT = {
    'html': 'HTML (StarWriter)',
    'xhtml': "XHTML Writer File",
    'rtf': "Rich Text Format",
    'doc': "MS Word 97",
    'odt': "StarOffice XML (Writer)",
    'pdf': "writer_pdf_Export",
}

def read_format(option, opt, value, parser):
    value = value.lower()
    if value not in CONVERT:
        formats = ', '.join(CONVERT.keys())
        raise OptionValueError(
            'Формат вывода не поддерживается. Доступные форматы: %s' % formats)
    setattr(parser.values, option.dest, CONVERT[value])

if __name__ == '__main__':
    parser = OptionParser()
    parser.add_option('-i', '--input', dest='input')
    parser.add_option('-o', '--output', dest='output')
    parser.add_option('-f', '--format', action='callback', type='string',
        callback=read_format, dest='format', default=CONVERT['html'])
    (options, args) = parser.parse_args()

    if not options.input:
        print >>sys.stderr, u"Укажите месторасположение входящего файла (-i)"
        sys.exit(1)

    if not options.output:
        print >>sys.stderr, u"Укажите месторасположение итогового файла (-o)"
        sys.exit(1)

    odir = os.path.dirname(options.output)
    if not os.path.isdir(odir):
        print >>sys.stderr, u"Путь для сохранения (%s) не существует" % odir
        sys.exit(1)

    if not os.path.isfile(options.input):
        print >>sys.stderr, u"%s: Указанный файл не существует" % options.input
        sys.exit(1)

    oor = OORunner()
    desktop = oor.connect()

    document = desktop.loadComponentFromURL(systemPathToFileUrl(options.input),
        "_blank", 0, oop(ReadOnly=True, Hidden=True))

    print u"Сохраняем документ в %s" % options.output

    document.storeToURL(systemPathToFileUrl(options.output),
        oop(Overwrite=True, FilterName=options.format))

    document.close(True)
    oor.shutdown()

ooutils можно взять тут и сохранить в отдельный файл (положить или в папку со скриптом или в питоновские пути)

Фикс для нахождения LibreOffice (amd64):

# Find OpenOffice.
_oopaths=(
        ('/usr/lib64/libreoffice/program', '/usr/lib64/libreoffice/program'),
     )

Пример: python o2o.py -i document.odt -o document.pdf -f pdf

5Ноя/100

До чего дошел прогресс

Хотите консоль рута в ваш новый любимый жидкокристаллический телевизор LG? Забирайте.

Связано с категорией: Linux, Upgrade Нет комментариев
13Окт/100

Если нечем заняться, то можно что-нибудь сломать, а потом целый день чинить
Народная мудрость

Пока на работе относительное затишье, перелез с Debian на Ubuntu (10.10, с пылу, с жару)

Хоть Debian был и testing, но он все равно какой-то уж очень стабильный, что на десктопе (даже рабочем) не сильно то и нужно. Вообще такое чередование Windows дома / Linux на работе здорово прочищает мозги по поводу привязанности к чему-то одному. А с непродуктивными привязанностями нужно бороться.

Связано с категорией: Linux Нет комментариев
9Авг/100

Access Point

2.6.32-5 + hostpad из testing + D-Link DWA-520 = точка доступа с WPA2

На USB поднять так ничего за этот год я и не смог. Инструкция по подъему на ath5k есть тут. Но с ядром и hostapd указанными выше не пришлось пересобирать модули. Только конфиг написать и настроить dhcpd

Связано с категорией: Linux Нет комментариев
21Июл/100

DockBarX

Мне нравится панель задач в Windows 7. С группировкой, возможностью оставить одни значки и pinning-ом. Захотелось раздобыть подобное и под Linux.

Возможно что-то такое уже есть и в KDE4, но после тормозов KDE4 на 2Gb оперативы я перелез на Gnome. Да и даже после того, как на работе выдали 4 гига я так там и остался и решать задачу пришлось в его окружении.

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

Еще слева есть замечательный синий график. Он показывает загрузку процессора (это уже стандартный гномовский). Но он умеет показывать iowait — самый неприятный вид загрузки процессора, единственный, который кладет систему до такого уровня, что она не реагирует ни на что. Обычно при интенсивном своппинге или работе с жетским диском. Сразу видно, что лучше убрать руки с клавиатуры и подождать, пока она очнется. Под windows сильно не хватает подобного, чтобы было на виду.

Связано с категорией: Linux Нет комментариев
16Июл/102

BluRay, XBMC, Linux

Совершенно упустил из виду, но с конца января появился более-менее приличный способ смотреть BluRay диски в Linux. Хотя возможность открывать m2ts файлы с незащищенных дисков появилась еще давно, диски с защитой просто так не поддавались.

В основе всего лежит программа makemkv. Которая по словам автора, распознает и спокойно обходит защиту всех дисков. Но самый смак в том, что для этого не надо копировать диск на винт, снимая защиту по пути. В программу встроен UPNP-сервер для потокового вещания сырого BD-потока.

В итоге

  • Запускаем makemkvcon
  • Ожидаем готовности
  • Запускаем какой-нибудь UPNP-клиент. Даже по сети. Правда, уже нужна гигабитка, так как поток на BD-диске достигает десятков Mbps
  • ???
  • ПРОФИТ!

А так как всеми любимый медиацентр XBMC несет в себе такой нам нужный UPNP-клиент, то почему бы им и не воспользоваться?

А чтобы каждый раз не запускать сервер ручками, один добрый человек написал под это дело xbmc-аддон, для запуска того самого сервера и старта воспроизведения фильма через встроенный UPNP-клиент.

И все закрутилось. И самое главное: в едином интерфейсе.

Диски с защитой действительно читаются.  Из последнего под рукой ничего не было (я теперь перед покупкой смотрю на зону на blu-ray.com и обхожу стороной защищенные диски), так что поставил на пробу «The Princess Bride» выпущенный еще весной 2009 года. И он спокойно проигрался без каких-то видимых тормозов.

Оффтопик про тормоза и железо.

В данный момент HTPC у меня состоит из Athlon X2 250 + nVidia GT240.

GT240 (на чипе GT215!) — это очень даже отличная карточка:

  • Стоит не дорого (по сравнению с другими карточками на этом чипе).
  • Под Linux-ом поддержка VDPAU на самом сильном уровне (лучше чем у ION)
  • А под виндой без проблем идут почти все игры в 1280x720
  • PhysX дополнительно к третьему пункту
  • Малые габариты
  • Есть даже с пассивным охлаждением (увы, в нашем городе не нашел)

VDPAU под Linux-ом в последних дровах допилена почти до идеального состояния. XBMC умеет VDPAU. В итоге, просмотр BluRay-диска на этой конфигурации съедает 15-20% на каждом ядре процессора и не-уверен-сколько графического процессора. В инфе есть какая-то строчка vcpu: 5%. Но я точно не знаю, что она означает.

Без VDPAU, просмотр 1080-рипа уже грузит процессор до 50-70%.

Конец оффтопика.

Что требуется, чтобы завести все это?

  • BD-ROM (хотя можно открывать и образы дисков)
  • Ядро не сильно старой версии, чтобы понимало файловую систему на BD-дисках
  • Скомпилировать makemkv
  • Установить аддон (скачать zip-файл и воспользоватся автоматическим инсталятором в XBMC)
  • Купить напитков или еды. Или ничего не покупать. Тут у каждого свои вкусы.

Какие проблемы могут ожидать на пути?

  • XBMC на amd64 до сих пор страдает мелкими глюками во третьестепенных вещах.
  • Например в том же UPNP-плеере. До версии ~30000 он похоже не работает
  • Так что ставим его из ppa:team-xbmc-svn/ppa
  • В текущем билде в него вложена 32-битная библиотека Питона, вместо нужной 64-битной.
  • Пришлось ставить старую версию, вытаскивать оттуда папку и Питоном, ставить новую версию и запихивать Питон обратно
  • Найти в конец треда версию аддона под новый XBMC
  • На i386, говорят, все работает как по маслу.
  • По умолчанию makemkv выбирает самый длинный тайтл на диске. На диске с «Шерлоком Холмсом» таковым, например, оказалась версия с комментариями режиссера. Это когда вы ничего не подозревая смотрите кино, и тут ВНЕЗАПНО, на экран выходит живой Гай Ричи и начинает махать руками, комментируя происходящее. Или показывать какое-нибудь документальное видео в окошечке.
  • Но всегда есть возможность выбрать нужный тайтл руками.
  • Нет поддержки меню. Хотя под Linux-ом даже DVD-меню так никто толком не поддерживает.
  • О BD-Live и речи нет
  • Бывают глюки с субтитрами.

А в целом, все работает отлично. С диска летит честный 1920x1080 без всякого пережатия. XBMC поддерживает DTS-HD, Dolbie TrueDigital уже давно. VC1 тоже не проблема абсолютно.

Но самое главное: чтение защищенных дисков, чего мой standalone-плеер делать не умеет (и это лечится только паяльником).

Жаль, что нормального (читай коммерческого) BD-плеера под Linux в ближайшее время ждать не приходится. Я бы и денег за него заплатил бы раз такое счастье. Тот же Power DVD стоит намного дешевле железного плеера.

Связано с категорией: BD, HTPC, Linux, Upgrade 2 Комментарии
18Июн/100

Пока Pixar продолжает штамповать шедевры — надо смотреть

Ну и по древней традиции имена релизов Debian именуются героями Toy Story. Так как один из первых мэйнтейнеров работал в Pixar

Вот это — Debian 5.0 Lenny:

А это Debian 6.0 Squeeze:

А Debian unstable Sid никогда не будет выпущен. Потому что он вечно unstable

Связано с категорией: Linux, Кино, чего-чего? Нет комментариев