Так уж получилось, что в последнее время основной операционной системой является Windows. Всё-бы хорошо, но меня удручал факт отсутствия нормальной программы для поиска дубликатов изображений в моей, достаточно солидной, коллекции.
Несмотря на то, что DigiKam уже портирован под Windows, в составе KDE for Windows, использование его было не целесообразным из-за монструозности и немного некорректной работы, сводившей в целом на нет все плюсы.
К моему великому счастью, на просторах бескрайних интернетов, я обнаружил замечательную программку, это – Awesome PhotoFinder. Программа до примитива проста и понятна, абсолютна бесплатна, не имеет встроенной рекламы или прочей бодяги, не требует регистрации.
На странице загрузки Awesome Duplicate Photo Finder доступны две версии: с инсталлятором и портативная. За портативной версией скрывается единственный исполняемый файл и ничего более!
Краткая инструкция по применению
Скаченный архив распаковываем (я качал портативную версию). Запускаем программу.
Организация процесса очень проста:
Итого, с помощью кнопки добавления папок добавляем в список папки в которых нужно произвести поиск дубликатов изображений. После нажимаем “Start Search” и ждём некоторое время. В результате получим это:
Перемещаясь по списку найденных дубликатов и сравнивая свойства файлов, можно достаточно легко найти дубликаты и произвести качественную чистку коллекции изображений от лишнего хлама.
На этом всё. Не забудьте про пункт “Settings” в главном меню. Он открывает окно настроек типов файлов, по которым будет произведён поиск дубликатов. А это BMP, JPG, PNG и GIF.
Продолжим подготовку пакета портативной версии XAMPP для демонстрационного проекта с минимальными требованиями в функционале сервера, но с высокими требованиями в скорости запуска и работы даже с обыкновенной флэшки.
Для запуска XAMPP с флэшки, просто скопируйте директорию xampp в её корень. Благодаря куче мелких файлов, эта процедура может занять относительно значительное время. Если вы не планируете запуск XAMPP с флэшки, вы можете просто упаковать директорию xampp любым архиватором, а после распаковать её на конечном ПК в корень любого диска (именно в корень, что бы получилось что-то вроде E:\xampp.
Удобство флэшки заключается в том, что ничего копировать на ПК клиента не придётся. Всё что нам понадобится, так это вставить флэшку в USB порт, открыть xampp-control.exe, запустить Apache и кликнуть по созданному вчера ярлыку. Запуск сервера и открытие страницы демонстрационного проекта у меня происходит практически мгновенно.
Однако, мне ещё хочется настроить php и ещё больше урезать дистрибутив, он должен быть по настоящему – компактен.
Открою файл xampp\php\php.ini и немного его поковыряю. Обратите внимание на то, что в нём, строки начинающееся точки с запятой – это комментарии.
В секции Dynamic Extensions оставьте только необходимые вам расширения php. Так-же, можно рекурсивно удалить ненужные dll из директории xampp\php\ext\.
Если мы не используем zendOptimizer удаляем его директорию из папки php. В файле php.ini если на него есть ссылки, тоже вычистим. Удалим мелкие, ненужные для проекта файлы, вроде install.txt, license.txt, news.txt, readme-redist-bins.txt, snapshot.txt, xdebug.txt, pws-php5cgi.reg, pws-php5isapi.reg, php.ini-development и т.д. и т.п.. и папку dev.
Если вы не используете в проекте PEAR, сносим всё содержимое папки PEAR. Также, рекурсивно можно удалить из директории php связанные каталоги: data, DB, docs, tests, Text, www и файлы: pear.bat, peardev.bat, pear-update.bat.
Теперь осталось настроить отправку почты. Откроем файл php.ini и найдём секцию [mail function].
Строки:
SMTP = localhost
smtp_port = 25
должны быть закомментированными:
; SMTP = localhost
; smtp_port = 25
Строку
sendmail_path = "\"\xampp\sendmail\sendmail.exe\" -t"
обязательно раскомментируйте.
Перейдём в папку: xampp\sendmail\ и откроем файл sendmail.ini. Вы должны подправить его. Ниже я выложу простой пример, с использованием сервиса mail.ru как smtp сервера)
[sendmail]
default_domain=mail.ru
smtp_ssl=auto
hostname=mail.ru
smtp_server=smtp.mail.ru
smtp_port=25
auth_username=mymail@mail.ru
auth_password=mypassword
error_logfile=error.log
debug_logfile=debug.log
Здесь auth_username это ваш логин, а auth_password ваш пароль к почте mail.ru.
Всё просто. И для того что-бы ваш аккаунт на mail.ru не ушёл кому не надо, не забудьте удалить папку xampp после демонстрации проекта или ещё лучше – заведите тестовый специальный аккаунт для данных целей.
Кстати, я собрал урезанный xampp в одну папочку, заархивировал и залил сюда. Кому надо, можете скачивать.
Да и эт, почти забыл. Директорию “xampp\src\” тоже можно удалить, там сырцы к управляющим средствам xampp и ещё папки anonymous, contrib, install, и security. Подчистите конфиги только потом.
Не так давно появилась задача – продемонстрировать небольшой php-проект на машине заказчика при условии, что на ней не имеется ни сервера, ни php, ну и конечно установка данного ПО является крайне нежелательным.
Для данных целей я выбрал XAMPP. Подробнее о нём можно прочитать в Википедии, на понятном русском. Там-же можно найти ссылки на хорошие статьи, которые рассказывают про установку и настройку XAMPP. Например вот эти, годные ссылки:
- Установка XAMPP 1.7.4 на Windows 7/XP
- Установка и настройка виртуального сервера (WAMP – Windows, Apache, MySQL, PHP) на примере XAMPP
- Установка и настройка сервера XAMPP на Windows
Загрузить XAMPP для Windows можно здесь. Передвигаемся к секции (цифры могут отличаться по давности поста, что и понятно) XAMPP for Windows 1.7.4, 26.1.2011. Ниже её видим ссылку вроде 7zip, кликаем по ней и загружаем. Дистрибутивчик объёмный, если заметили, то упакованный в zip он весит больше 100 Mb. Получается, что мне нужно ещё определиться с требованиями. А требования просты: сервер должен быть быстро и без лишних телодвижений упакован или скопирован на флэшку (он должен мало весить), также просто и легко и что важно – быстро, он должен быть распакован на ПК заказчика вместе с моим проектом, он должен быть запущен и !, что самое важно, он должен показать мой проект, написанный на html + php + javascript + python. Рассказ о включении Python в проект я опущу на потом, так как это очень объёмная тема.
Диструбутив по ссылке упакован 7zip, оттого его объём не велик, дождёмся загрузки и распакуем его в корень любого диска. Обратите внимание на то, что дистрибутив должен быть распакован именно в корень диска C:\, D:\ или там E:\ (на ваше усмотрение). Также, это значит то что после распаковки у нас должен появиться каталог, вида: D:\xampp\.
Давайте замеряем его объём и получим что-то вроде 500 Mb занятого пространства. В принципе, это не так уж много, но… ммм… это всё мелкие файлы и как результат о быстром копировании туда или сюда, или даже просто о запуске проекта с флэшки мы можем однозначно забыть. Итого нам нужно элементарно урезать дистрибутив и оставить только самое необходимое.
Стоит заметить тот факт, что помимо XAMPP существуют другие аналогичные проекты “серверов для флэшки”. Однако я привык к XAMPP, так как мне проще удалять с него ненужное, чем добавлять в более компактное то что мне необходимо. И конечно голый факт: на написание этого топика у меня ушло в 5 раз больше времени, чем на приведение XAMPP в нужную мне кондицию
Итак, режем (заходим в папку xampp и удаляем из неё директории):
- FileZillaFTP (FTP сервер);
- MercuryMail (почтовый сервер);
- phpMyAdmin + mysql
Я лично тоже снёс эти две папки, так как в проекте не используется база данных mysql, да и для администрирования mysql предпочитаю использовать MySQL Workbench; - perl
В проекте нет частей написанных на perl; - tomcat (Java)
- webalizer (статистика)
- Подчистим корневую директорию, удалив файлы: catalina_start.bat, catalina_stop.bat, filezilla_setup.bat, filezilla_start.bat, filezilla_stop.bat, mercury_start.bat, mercury_stop.bat, mysql_start.bat, mysql_stop.bat, readme_de.txt и setup_xampp.bat.
Если мы сейчас посмотрим размер директории XAMPP, то обнаружим факт того, что её размер уже составляет менее 100mb. Это конечно многовато. Сейчас пробежимся по внутренним директориям, подчистим их и настроим конфигурационные файлы. Кстати, для работы с конфигурационными файлами я использую Notepad++ – который распространяется под открытой лицензией и который совершенно бесплатен. Десятки плагинов написанных добровольцами превращают его фактически в легковесную IDE в которой можно с лёгкость работать не только с конфигурационными файлами в различных форматах, но и править те-же php сценарии, html и css-файлы.
Начнём с директории apache. Зайдём в папку apache\conf\ и откроем файл httpd.conf. Возьмём на заметку, что строки начинающиеся с # – это комментарии.
В строку ServerRoot "/xampp/apache" никаких комментариев вносить не будем.
Строку Listen 80 лучше немного видоизменить, так как есть вероятность, что данный порт окажется занятым. По крайней мере у меня его занимает IIS. Итого данная строка у меня выглядит так:
Listen 8080
Под этой строкой или немного ниже, мы увидим кучку строк начинающихся с LoadModule. Это всё модули сервера Apache, которые расширяют его функционал. Все они с потребляют память и увеличивают скорость загрузки. Для меня очевидно то, что то, что я не использую, я должен отключить. Используя знак комментария я элементарно отключаю эти модули, держа в памяти “план”: php скрипты должны работать, а html странички с картинками выдаваться на ура!
SSL мне не нужен: #LoadModule ssl_module modules/mod_ssl.so
ЧПУ тоже: #LoadModule rewrite_module modules/mod_rewrite.so
Функции прокси. Зачем? Отключаем: #LoadModule proxy_module modules/mod_proxy.so
WebDav тоже: #LoadModule dav_lock_module modules/mod_dav_lock.so
Если cgi нет, тоже (php подключён как модуль): #LoadModule cgi_module modules/mod_cgi.so
Ну и хватит. Если вы отключили WebDav и cgi, из корневой директории можно также удалить папки cgi-bin и webdav.
Подправим строку ServerName localhost:80 в соответствии со строкой Listen 8080, получим:
ServerName localhost:8080
Далее, так как я отключил модуль cgi, я закомментировал строку:
#ScriptAlias /cgi-bin/ "/xampp/cgi-bin/"
И ниже, делаю так:
#<Directory "/xampp/cgi-bin">
# AllowOverride None
# Options None
# Order allow,deny
# Allow from all
#</Directory>
И вот я добрался до секции начинающейся со строки: # XAMPP specific settings. Некоторые строки, следующие далее, напомнят нам о удалённых в самом начале директориях. Закомментируем или удалим их. Я перечислю эти строки:
# Perl settings
Include "conf/extra/httpd-perl.conf"
# User home directories
Include "conf/extra/httpd-userdir.conf"
# Distributed authoring and versioning (WebDAV)
# Attention! WEB_DAV is a security risk without a new userspecific configuration for a secure authentifcation
# Include "conf/extra/httpd-dav.conf"
# Implements a proxy/gateway for Apache.
Include "conf/extra/httpd-proxy.conf"
# Secure (SSL/TLS) connections
Include "conf/extra/httpd-ssl.conf"
…
SSLSessionCache "shmcb:logs/ssl.scache(512000)"
SSLSessionCacheTimeout 300
</IfModule>
И это тоже:
# AJP13 Proxy
<IfModule mod_proxy.c>
<IfModule mod_proxy_ajp.c>
Include "conf/extra/httpd-ajp.conf"
</IfModule>
</IfModule>
Проект у меня один, по этой причине, данную строку я тоже удалил:
# Virtual hosts
Include "conf/extra/httpd-vhosts.conf"
Теперь, также, из дериктории apache\conf\ можно удалить папки: ssl.crl, ssl.crt, ssl.csr и ssl.key. А из папки extra можно удалить файлы: httpd-ajp.conf, httpd-dav.conf, httpd-perl.conf, httpd-perl-asp.conf, httpd-proxy.conf, httpd-ssl.conf, httpd-userdir.conf, httpd-vhosts.conf и startup.pl.
Откроем файл httpd-xampp.conf и удалим из него строки:
<Directory "/xampp/cgi-bin">
<FilesMatch "\.php$">
SetHandler cgi-script
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler None
</FilesMatch>
</Directory>
Alias /licenses "/xampp/licenses/"
<Directory "/xampp/licenses">
Options +Indexes
<IfModule autoindex_color_module>
DirectoryIndexTextColor "#000000"
DirectoryIndexBGColor "#f8e8a0"
DirectoryIndexLinkColor "#bb3902"
DirectoryIndexVLinkColor "#bb3902"
DirectoryIndexALinkColor "#bb3902"
</IfModule>
</Directory>
Alias /phpmyadmin "/xampp/phpMyAdmin/"
<Directory "/xampp/phpMyAdmin">
AllowOverride AuthConfig
</Directory>
Alias /webalizer "/xampp/webalizer/"
<Directory "/xampp/webalizer">
<IfModule php5_module>
<Files "webalizer.php">
php_admin_flag safe_mode off
</Files>
</IfModule>
AllowOverride AuthConfig
</Directory>
Больше я пока заморачиваться не стал и поплыл дальше. В папке apache я снёс директорию include и lib, там ничего полезного для демо-проекта нет.
Теперь в директории xampp найдём папку licenses, ознакомимся с её содержимым и тоже снесём.
Давайте ещё раз заглянем в файл httpd.conf. Из строки <Directory "/xampp/htdocs"> можно понять, что корневой, рабочей директорией веб-сервера является попка xampp/htdocs. Заглянем в неё. Кучка файлов. Запустим сервер. Запустить его можно запуском файла xampp-control.exe. Появится аккуратное окошко которое можно свернуть в трей. Нас интересует строка Apache и кнопка следующая за ней: start.
Нажмём на эту кнопочку. Наш сервер должен успешно заустится, о чем будет свидетельствовать статус зелёного цвета между элементами:
Далее, для удобства, в корневой директории xampp создадим ярлык следующего содержания:
Готово:
Запустим и увидим:
Отлично! XAMPP работает. Осталось удалить всё остальное ненужное из того, что мы видим и поместить в директорию файлы своего проекта. Делаем!
Заходим в папку xampp\htdocs\ и удаляем из неё все файлы. Помещаем в неё файлы своего проекта. Любуемсо!
На этом пока всё.
Что имеем?
Имеем дистрибутив переносного Apache-сервера, с поддержкой базового функционала и php, объёмом в 90 мегабайт в развёрнутом виде + проект. В сжатом 7zip виде он занял всего
Что осталось?
Осталось настроить php. Если вы не используете Zend Framework и PEAR, то наш пакет можно ужать ещё больше. Это я опишу в следующем топике. Там-же попробую ещё больше ужать Апач.
О чём стоит помнить?
Стоит помнить о том, что закрывая xampp-control.exe кнопкой закрытия окна, мы сворачиваем его в трей
и он продолжает работать. Закрывайте его кнопкой Exit на панели управления, той что сразу под кнопкой Help…!
Expression Encoder 4
21.01.2011
Загрузим его с сайта производителя. Нам нужна бесплатная версия.
Она имеет небольшие ограничения, которые компенсируются удобством. Нужно помнить о:
- Нельзя снять более 10 минут
- Экспорт производится только в Windows Media формате
Первое можно победить программами которые склеивают видео. Второе декодерами, которых хватает. Хотя если вы пользуетесь операционной системой Windows, этот факт не должен быть актуальным.
Установим загруженный продукт. За запуск утилиты делающей запись с экрана отвечает симпатичный значок. В результате запуска появится такое-же симпатичное окошко, с кнопочками. Красная кнопочка включит запись.
Помимо кнопочки записи с экрана видим кнопочку, которая включает захват звука (микрофончик) и с веб-камеры.
Нажав кнопку записи, программа позволяет выделить регион экрана. Это значит, захват видео идёт не со всего экрана, а только с определённого его участка.
Выделим необходимый участок и ещё раз нажмём кнопку записи ниже, ту что с красной точкой. Всё, запись пошла. Для остановки записи, нужно нажать на кнопку Stop (там, где изображён квадрат). Кнопка с треугольником позволяет спрятать это окно в системный трей.
По завершении процедуры записи окно функций немного изменится.
Там появится запись на сделанную нами запись. Выделим её и нажмём кнопку ниже “Send to Encoder”. Откроется монструозное приложение в котором можно производить разнообразные манипуляции с полученным видео. Огорчает то, что всё на английском.
Хотя можем возрадоваться, нам понадобится только одна, большая кнопка в низу программы:
Это кнопка “Encode” которая декодирует наше видео в удобоваримый формат, для Free версии это только wmv (Windows Media Video).
Собственно, ниже изображена сама процедура декодирования.
Все выходные файлы мы найдём в папке
“Мои документы\Expression\Expression Encoder\Output”. Например: ScreenCapture_21.01.2011 17.44.22.wmv
В папке “Мои документы\Expression\Expression Encoder\Screen Capture Output\”
лежат сами снимки, в формате .xesc который воспроизводит Windows Media Player на том компьютере где стоит Expression Encoder. Их после процедуры декодирования можно смело удалять.
Полученный результат, ScreenCapture_21.01.2011 17.44.22.wmv, я без всяких проблем залил на Ютюб. Любуемся.
KDE 4.5.4 в Windows – вах! вах! и всё такое…
12.01.2011
Кто ещё не в курсе, пусть знает, что тихонько стал доступен KDE 4.5.4 для Windows, и его уже сейчас можно установить.
Об нюансах установки читаем здесь (здесь на русском).
У кого будут проблемы после установки, проверьте что вы создали переменную KDEROOT = месту куда мы поставили KDE (напр. C:\KDE4)
и добавили пути %KDEROOT%\bin и %KDEROOT%\lib в PATH.
Кстати, информация об этом была в руководстве по установке на сайте KDE TechBase, но сейчас её там нет (см. ссылки выше). Я по началу обрадовался, но в последствии понял, что без этого большая часть приложений нормально работать отказывается.
Всё, дальше можно не читать. Сча я буду рассказывать чего заработало, а чего нет. Забросаю вас скриншотами и съем ваш трафик. И в итоге упаду без сознания в приступе восторга. Приступим.
А зачем мне этот KDE?
Ведь для Винды и так есть куча программ?
Так-то оно так, но там нет, например – DigiKam. Лучше всех других, аналогичных программ он тем, что предоставляет уникальные возможности по поиску и сортировке изображений. И честно, ставил KDE только ради него.
DigiKam меня откровенно порадовал, работает шустро, правильно и так как надо (в прошлых версиях с этим были небольшие проблемы).
Проблем не возникло ни при работе с метками:
Ни при поиске:
Ни при нечётком поиске, самая важная, главная для меня, фишка DigiKam)!
Давайте об этом немного подробнее!
- Откроем вкладку нечёткого поиска, дождёмся обновления контрольных строк всех изображений. Предупреждаю, это процедура долгая если изображений много (идём варить чай):
- Ну и поищем, дубликаты. Выберите расположение в котором будет произведён поиск дубликатов, нажмите кнопку “Найти дубликаты” и подождите. Опять-же, в зависимости от количества изображений в указанном расположении, это может занять время. По окончанию процедуры поиска будет выдан список найденных дубликатов. Все они будут удобно сгруппированы.
Если в некоторых группах, см.выше, отсутствуют эскизы, не расстраивайтесь. Подождите немного, генерация эскизов идёт всем ходом.Уже через минуту, две, картинка изменится:
Теперь можно приступать к чистке файловой системы от дубликатов файлов. И не бойтесь закрыть программу, после повторного запуска, этот список будет на своём месте. Не закончив дорогую сердцу процедуру сегодня, вы сможете продолжить её завтра. - Поиск по образцу (пример при пороге в 50%, недурно):
- Поиск по наброску (особо доставляет):
Ну как? В какой программе вы это ещё видали? Всё вместе и совершенно бесплатно?
Из недостатков программы можно отметить только её любовь к оперативной памяти, хотя, какая современная программа её не любит? Эта, хоть потребляет её на нужные цели и это не может не радовать.
Замечание: Не торопитесь нагружать программы в KDE параллельными задачами, это вам не Linux. Не все процессы работают так слаженно и соответствующим откликом. Как – никак, а продукт ещё далёк от совершенства которое он проявляет в Linux и финала портирования. Вот:
И если немного подождать, вот:
Amarok
Культовый плеер KDE. Он запустился без лишних телодвижений.
Дал настроить место расположения музыкальной коллекции, но вот сканировать это расположение он не захотел.
Зашёл в коллекцию через “Файлы”, заглянул в папку группы 30 Seconds to Mars, выбрал альбомчик A Beautiful Lie, ну и щёлкнул по первой попавшейся.
Держите меня!!! Он заиграл! Не вывалившись, не отправив систему в пучины ада, тихонько подтянув тексты песни из интернета – порадовал меня! Пруф!
В общем, остались некоторые моменты, которые ещё не совсем корректно функционируют. Но соответственно, они просто требуют компиляции соответствующих библиотек и возможно (о ужос), пересборки Amarok. Но я ленивый. Того, что уже есть, хватает выше крыши и я буду надеяться, что в ближайшем времени разработчики порадуют меня ещё больше!
Кстати, Amarok как и в Линухе, можно свернуть в трей:
Игрушечки
В отличии от предыдущих версий, наконец-то все они заработали. Мне-то от этого не холодно не жарко, но дома есть те, кто будет очень и очень этому рад.
Итоги
В этом релизе ещё много полезных программ, игрушек, все они знакомы постоянным пользователям KDE. Большая часть из них вполне нормально функционируют. Я не буду рассказывать про все, так как полной работоспособности выше указанных программ лично для меня хватило, что бы не отправить этот релиз в топку, а оставить его на ПК.
Оболочку plasma запускать пока не пробовал. Dolphin отчего-то нормально работать упорно не захотел, если только с выспетком и большими тормозами.
А в целом, качайте, устанавливайте, я думаю – не пожалеете.
