Слава нації
#StandWithUkraine

Роман Теличко

Блог з програмування, оптимізації та адміністрування систем

PostgreSQL. Список всех дат между двумя датами

// 6 Квітня, 2012 | 926 переглядів

Узнаём timestamp от интересуещей даты

SELECT
    extract( 'epoch' from '2012-02-01'::timestamp without time zone  )::integer

(это будет 1325455200)

Используем generate_series()

SELECT
    *
FROM
    (
        SELECT
            date_trunc( 
                'day', 
                    to_timestamp( 
                        generate_series( 1325455200, 1333691315, 80000 ) 
                        ) 
                    )::date AS d
    ) AS s
GROUP BY 
    s.d
ORDER BY
    s.d ASC

В результате получим что-то такое:

2012-01-02
2012-01-03
2012-01-04
2012-01-05
...

PHP 5.4 в Ubuntu 12.04

// 12 Березня, 2012 | 1184 переглядів

Добавляем репозиторий ppa:ondrej/php5

sudo add-apt-repository ppa:ondrej/php5

Обновляемся и ставим php 5.4 (если ещё нет)

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install php5

RAR→JPEG или прячем архив внутри картинки

// 12 Березня, 2012 | 2083 переглядів

Спрятать файлы внутри JPEG-изображения довольно просто.
Берём архив rar/zip (к примеру something.rar) и картинку в которую мы хотим вложить какие-то данные (например someimage.jpg).

Теперь просто выпоняем комманду:

cat someimage.jpg something.rar > result.jpg

Вуаля! Наш архив something.rar теперь спрятан в картинке result.jpg.

Для извлечения необходимо просто переименовать result.jpg в result.rar и открыть любимым архиватором.

Gource. Визуальное отображение коммитов в Git/Mercurial/Bazaar/SVN репозитории

// 1 Березня, 2012 | 1417 переглядів

Официальный линк на Google.Code тут.

Ставится это чудо просто:

sudo apt-get install gource

Переходите в корневую папку проекта и выполняете (пример для SVN):

svn log -r 1:HEAD --xml --verbose --quiet > my-project.xml

А потом запускаете gource.
Покажу на примере своих настроек:

gource -1440x800 --seconds-per-day 0.25 --auto-skip-seconds 1 --font-size 18 --title "My-project.NET" --colour-images --hide dirnames,files,filenames,mouse,progress my-project.xml

И смотрите видео.

Также это можно сохранить как mp4.
Для этого добавляем к команде выше -o my-project.ppm и после чего выполняем следующее.
Добавляем поддержку Medibuntu (т.к. нам нужен ffmpeg c поддержкой libx264)

sudo wget https://www.medibuntu.org/sources.list.d/$(lsb_release -cs).list --output-document=/etc/apt/sources.list.d/medibuntu.list && sudo apt-get -q update && sudo apt-get --yes -q --allow-unauthenticated install medibuntu-keyring
sudo apt-get install ffmpeg libavcodec-extra-53

Собственно, конверт:

ffmpeg -y -r 60 -f image2pipe -vcodec ppm -i my-project.ppm -vcodec libx264 -preset ultrafast -crf 1 -threads 0 -bf 0 my-project.mp4

Если ещё нет ffmpeg, то устанавливаем

sudo apt-get install ffmpeg

Ubuntu. Установка предпочитаемых приложений с помощью update-alternatives

// 21 Лютого, 2012 | 376 переглядів

sudo update-alternatives --all

Или выборочно, к примеру для gnome-www-browser:

sudo update-alternatives --config gnome-www-browser

Ubuntu. Ускорение системы

// 21 Лютого, 2012 | 448 переглядів

  • Установите preload
    sudo apt-get install preload
  • Сведите к минимуму использование swap’a
    Откройте

    sudo vi /etc/sysctl.conf

    Добавьте/измените параметр

    vm.swappiness = 10

    и перезагрузитесь

  • Измените обработку DNSов
    Откройте

    sudo vi /etc/nsswitch.conf

    Исправьте строчку

    hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4

    на такою

    hosts:    files dns
  • Отключите IPv6
    sudo vi /etc/default/grub

    Измените параметр GRUB_CMDLINE_LINUX_DEFAULT на такой

    GRUB_CMDLINE_LINUX_DEFAULT=”ipv6.disable=1 quiet splash”

    После чего выполните

    sudo update-grub

Ubuntu. Показать все программы запускаемые при старте системы

// 21 Лютого, 2012 | 373 переглядів

Делается всё просто

cd /etc/xdg/autostart/ 
sudo sed --in-place 's/NoDisplay=true/NoDisplay=false/g' *.desktop

Ubuntu. Отключить возможность гостевого входа

// 21 Лютого, 2012 | 125 переглядів

Открываете файл конфига LightDM

sudo vi /etc/lightdm/lightdm.conf

Устанавливаете значение

allow-guest = false

Ubuntu. Лог-менеджер активности пользователя для Unity

// 21 Лютого, 2012 | 208 переглядів

Ставится так

sudo add-apt-repository ppa:zeitgeist/ppa
sudo apt-get update && sudo apt-get upgrade
sudo apt-get install activity-log-manager

Ubuntu. Развернуть Unity Dash на весь экран

// 21 Лютого, 2012 | 559 переглядів

gsettings set com.canonical.Unity form-factor Netbook