Category Archives: свободен софтуер

Too many folders too little time

от Йордан Радунчев
лиценз CC BY

Напоследък все повече затъвам в Microsoft среда и се налага да се оправям със всякакви казуси в нея. Последно се наложи да намеря лесен начин да се даде достъп на група потребители в Exchange до дърво от папки в мейлбокс. Проблема е, когато имате добре развита структура от папки и подпапки в един мейлбокс - абсурдно е да цъкате на всяка една папка и да давате достъп до нея потребител по потребител. Майкрософт са проявили здрав разум и са имплементирали Exchange Management Shell - среда, в която можете да автоматизирате със скрипт такива задачки (и която поразително наподобява bash, дори заимства негови функции и команди - защо ли?).

И така, имате си един мейлбокс с подобна струкутра в него:

  \RootFolder
                \SubFolder1.0
                               \SubFolder1.1
                                               \SubFolder1.1.1
                               \SubFolder1.2
                \SubFolder2.0

Като дълбочината и разклонеността на дървото е без значение. Задачата е да дадем достъп на група потребители до всички папки под RootFolder (или под SubFolder1.0, или под SubFolder1.1 - принципа е същия). След кратко ровене из Нета от няколко парчета код се получи следния скрипт:

$mbox="Shared.Mailbox"
$usrs=( "User.Name1", "User.Name2", "User.NameN")

ForEach($fldr in (Get-MailboxFolderStatistics $mbox | Where { $_.FolderPath.Contains("RootFolder") -eq $true })) {  
    $fldrname = $mbox + ":" + $fldr.FolderPath.Replace("/","\");

    #Remove existing permissions
    ForEach($itm in (Get-MailboxFolderPermission $fldrname | select User,AccessRights)) {
        if (($itm.User -notlike "Default") -and ($itm.User -notlike "Anonymous")) {
        Remove-MailboxFolderPermission $fldrname -User $itm.User -confirm: $false
        }
    }

    #Add new permissions
    ForEach ($usr in $usrs){
        Add-MailboxFolderPermission $fldrname -User $usr -AccessRights NonEditingAuthor
  }
}

Некои съображения... Понеже използвам Add-MailboxFolderPermission, а той не променя вече съществуващи права за достъп на потребител, а само добавя нови такива, се налага първо да изчистя всички права за достъп до папката - защото ако се опитам да дам достъп на потребител, който вече има достъп до папката, то Add-MailboxFodlerermission ще се възмути и ще изплюе грешка... Което не е фатално, скрипта ще продължи нататък със следващия потребител от списъка usrs, но ще изглежда грозно на екрана хехехе. Пък и в конкретния случай, за който ми трябваше, този подход ме устройва, защото освен да се даде достъп до папките на някои потребители, се налага и да се премахне достъпа до тях на други потребители - та с един куршум отстрелях два заека (кажете после, че не ме мързи). Ще ви подскажа обаче, че за промяна на права за достъп се използва Set-MailboxFolderPermission - ако ви трябва друг подход, оправяйте се :) За параметрите на Add-MailboxFolderPermission и компания питайте Гугъл и Майкрософт.

2520

от Ясен Праматаров
лиценз CC BY

WordPress 3.6 е свежо обновление, признавам. Интересни стъпки, може би най-вече с визуалните промени. Не мога още да свикна с новия изглед Twenty Thirteen, макар че на много други блогъри ще им потекат лигите. Най-интересно ми е продължаващото развитие с различните формати на публикациите. Далеч e от гъвкавостта в Drupal, но пък май нарочно ги правят така. Още не свиквам – твърде ненастройваеми ми стоят.

Dual head setup с Linux

от Йордан Радунчев
лиценз CC BY

Dual head setup е работна станция (десктоп, лаптоп) с включени към нея два екрана. Идеята е да се увеличи площта на работния плот, като така стане възможно да имате отворени повече приложения И да ги следите едновременно, защото прозорците им не се припокриват.

Dual Head Setup

Когато говорим за десктоп, трябва да е ясно, че се нуждаете от видеокарта, която има два изхода, или специален сплитер. Този вариант не е предмет на тази статия.

Друго приложение на този сетъп е при изнасяне на презентации с лаптоп - мултимедийния проектор играе ролята на втори дисплей, на който може да прехвърлите слайдовете за публиката, докато на основния дисплей на лаптопа сте отворили бележките си.

Как се прави това под Линукс? Лесно. Повечето мейнстрийм графични среди за Линукс ви предлагат инструменти с които да направите необходимите настройки. Обикновено след като включите външен дисплей към извода на лаптопа си, в аплета за настройка на дисплея се появяват и двата - вградения и външния - и имате възможност да ги управлявате от там.

Обаче аз искам да ви покажа как да го направите от командния ред - защото може, а и защото може да попаднете в ситуация, когато лесния вариант не е под ръка.

Използва се xrandr - приложение разработвано и поддържано от freedesktop.org, базирано на RandR X протокола. Много накратко казано това е протокол за откриване, конфигуриране и прочие на дисплеи. xrandr е част от стандартния Xorg пакет, така че се намира на всяка машина с инсталиран X.

Нашия сценарий е прост - презентатор с линукс лаптоп и мултимедиен проектор. Първата стъпка е да включите проектора към VGA извода на лаптопа. След това да прегледате как го намира Xorg:

09:14:40 yradunchev:~ $ xrandr -q   
Screen 0: minimum 320 x 200, current 1024 x 600, maximum 4096 x 4096   
  LVDS1 connected 1024x600+0+0 (normal left inverted right x axis y axis) 195mm x 113mm   
     1024x600       60.0*+   
     800x600        60.3     56.2     
     640x480        59.9     
  VGA1 connected (normal left inverted right x axis y axis)   
     1440x900       59.9 +   75.0     
     1280x1024      75.0     60.0      
     1280x960       60.0      
     1152x864       75.0      
     1024x768       75.1     70.1     60.0      
     832x624        74.6      
     800x600        72.2     75.0     60.3     56.2      
     640x480        72.8     75.0     66.7     60.0      
     720x400        70.1      
09:14:43 yradunchev:~ $     

Както виждате, xrandr -q ще покаже всички дисплеи, които открива, както и всички възможни режими на работа, които те предлагат. LVDS1 e основния, вградения дисплей на лаптопа, а VGA1, логично, е проектора включен към VGA изхода на лаптопа. За да го използвате, издавате следната команда към xrandr:

09:34:50 yradunchev:~ $ xrandr --output VGA1 --mode 1440x900 --right-of LVDS1

Това ще "добави" екрана на проектора към десктопа ви, в дясно от основния - това значи, че ако мръднете в с мишката надясно от дясната граница на основния екран на лаптопа, ще се озовете на екрана на проектора. Можете просто да завлачвате прозорци от основния екран надясно, за да ги видите на проектора. Когато пожелаете да изключите сигнала към проектора:

10:20:10 yradunchev:~ $ xrandr --output VGA1 --off

И шоуто приключва. Из Интернет можете да намерите шел скриптове, които можете да закачите за някоя клавишна комбинация или функционален/мултимедиен бутон на лаптопа си, и с тяхна помощ да включвате и изключвате външния екран в различни комбинации с основния. Тук няма да давам такъв, това ще ви е за домашно. :)

Колко далеч мога да стигна… в офиса?

от Йордан Радунчев
лиценз CC BY

Работата в офис, на бюро, не бива да бъде причина и/или оправдание да лишите тялото си от движение, като го държите закотвено в стола по 8-9 часа всеки ден. Така нанасяте сериозни щети на здравето си в дългосрочен план. Доказано е, че дори да посещавате фитнес два пъти седмично, тази епизодична активност не може да компенсира ежедневното обездвижване за времето прекарано в офиса. Несериозно е да се мисли, че два-три часа фитнес могат да неутрализират ефекта на 30-40 часа седмично почти пълно обездвижване от кръста надолу. Проблема е много по-сериозен от колкото хората осъзнават. Прекарването на дълги, непрекъснати периоди в седнало положение води до изменения в начина по който функционира организма ви, и то не само на чисто физическо ниво, но и на хормонално, химическо, психологическо. Не си помагаме и в извън работно време - обикновено социалната активност се изчерпва отново със седене - на кафе, на вечеря навън, на кино, на театър, на спортно мероприятие. Или просто пред телевизора у дома. Седим. Замислете се колко време точно прекарвате в седнало положение. Стреснахте ли се? За щастие има начини да обърнем нещата.

Преди година, след като прочетох няколко доста стряскащи статии по въпроса, взех решение и го приведох в изпълнение - да работя в офиса изправен, а не на стол. Една година по-късно, тридесет килограма по-лек, много по-енергичен и като цяло много по-активен физически, мога убедено да твърдя, че това беше едно от най-добрите решения в живота ми. От тези решения, които действително променят живота на човек напълно. Хората около мен, могат да го потвърдят. Всичките ми близки и познати са буквално изумени от това, което виждат. Някои дори са твърдо убедени, че такава рязка промяна не е нормална и аз чисто и просто съм болен от някаква сериозна болест, която крия. Сериозно има такива, не се шегувам. Истината обаче е, че никога не съм се чувствал по-добре и по-жизнен.

И пълен с планове за бъдещето. Един от тях е проект, свързан със здравето и физическата активност в офисна среда. Нали знаете, че апетита идва с яденето.

На много места в Интернет можете да прочетете за хора, които са инсталирали пътечки за бягане до или направо под бюрото си, за да могат да се "разхождат", докато изпълняват задълженията си. Дори има фирми за офис мебели, които предлагат специално конструирани за целта бюра. Искам да проверя на практика дали това работи така добре, както се твърди.

Поставил съм си за цел да сваля теглото си до нормите за ръста ми. Имам още около десетина килограма за отмятане и мисля да ги разкарам, докато работя. За целта искам да се сдобия с ето това чудо - Магнитна бягаща пътека Actuell. Ще го монтирам под бюрото си. Цената, както се вижда е грубо 300 лева. Мисля да финансирам този проект чрез набиране на средства през Интернет - тоест каня ви да се включите. В края на тази статия ще посоча банкова сметка, ако ви е интересно дали е възможно да се реализира такава инсталация в офис, ще има ли ефект от нея и колко голям ще е той, можете до края на месеца да преведете по нея каквато сума намерите за добре. Набирането на средства ще приключи на 28 юни 2013. Ако сумата надхвърли 300 лева, остатъка ще внеса като дарение за SOS Детски селища. Ако не се съберат поне две трети от сумата (200лв) всичко събрано ще отиде за SOS Детски Селища и проекта се отлага за неопределено време.

Ако събера достатъчно средства, за да стартирам експеримента, ще ви уведомявам ежедневно на специално вдигнат за целта сайт как се развиват нещата - тегло за деня, приблизителен енергоразход (по видове физ. активност), приблизителен енергоприход, изминати километри в офиса, средна скорост и прочие, и прочие. И заедно ще следим колко време ще отнеме смъкването на въпросните десет килограма. Може някой да се вдъхнови и да последва примера ми. Ето и сметката, по която можете да превеждате пари:

Банка ДСК
IBAN: BG86STSA93000021054623
BIC: STSABGSF
Титуляр: Йордан Радунчев

В основанието за плащането можете да отбележите разрешавате ли да публикувам името ви като спонсор на сайта на проекта :) - просто напишете ДА, ако сте съгласни. Можете да посочите и имейл адрес за връзка. Имейла, както и размера на сумата, няма да се публикуват никъде.

Logitech Wireless Presenter R400 и Linux

от Йордан Радунчев
лиценз CC BY

За нуждите на офиса купихме Logitech Wireless Presenter R400 - прекрасна джаджа за презентации, която позволява на презентатора да се разхожда свободно пред публиката и да прелиства слайдове отдалеч. Върши страхотна работа с PowerPoint, а съм чувал, че работи и с Evince под Linux. По същество това си е "орязана" клавиатура (като такава я вижда и Линукс), само с четирите клавиша, които трябват за една презентация.

Logitech Wireless Presenter R400

Имаме бутони напред и назад, бутон за стартиране на презентацията и бутон за изключване на картината (бланк). Има и лазерна показалка. Тъй като си падам по всякакви джаджи, изобщо няма да скрия, че много ми хареса нещото. И естествено реших, че няма начин да не го използвам за презентациите си, понеже, нали, съм един безспорно световно известен и навсякъде канен лектор... И ето тук Logitech ме саботираха. Ако ме следвате някъде по социалките, може и да си спомняте, че преди време си търсех инструмент за презентации. Изискванията ми бяха да работи под Линус, естествено, и слайдовете да се изготвят на markdown. След доста проби, се спрях на Preston. Като допълнителна екстра, за която не се бях замислял първоначално, тук ще посоча и факта, че презентацията се случва в web сървър, тоест аудиторията, ако разполага с лаптопи, таблети и прочие, и ако на мястото на събитието има локална мрежа, може да се закачи с браузъра си за презентацията на адреса на моя лаптоп и да я следи както на сцената, така и директно на екрана на устройството пред себе си. Удобно, спор няма.

Обаче. На Logitech джаджата не може да управлява презентацията на Preston, защото тя е отворена в браузъра ми, и прелистването на слайдовете става със стрелките, докато R400, бидейки направен да работи с PowerPoint на Майкрософт, изпраща към лаптопа ми PageUp и PageDown, а те нищо не говорят на браузъра и съответно той изобщо не реагира на тях. Лошо, а? Не съвсем. Понеже използваме по-добрата операционна система, нищо не ни пречи да "препрограмираме" бутоните на джаджата и да я научим да си говори с Preston (или който и да е друг софтуер за презентиране всъщност). Лесно е.

Като първа стъпка ни трябват scan code-вете, които генерира устройството. Трябва да го подслушаме. Първо го намираме на коя "честота" си говори с лаптопа използвайки stat:

yradunchev:~ $ stat -t /dev/input/by-id/usb-Logitech_USB_Receiver-event-kbd --printf "%N\n"
/dev/input/by-id/usb-Logitech_USB_Receiver-event-kbd' ->../event13'

Сега ще го подслушаме, стартираме специалното разузнавателно средство:

yradunchev:~ $ sudo /lib/udev/keymap -i input/event13

И започваме да натискаме бутоните му:

scan code: 0x7003E key code: f5
scan code: 0x70029 key code: esc
scan code: 0x70037 key code: dot
scan code: 0x7004B key code: pageup
scan code: 0x7004E key code: pagedown

За всеки натиснат бутон виждаме неговия scan code и какво изпраща. Обърнете внимание, че виждаме 5 отговора, генерирани от 4 бутона. Сещате ли се? Бутона за старт генерира два кода - един за старт (f5) и един за стоп (esc). После имаме бутона, който "гаси" екрана - dot. И после двата бутона за напред (pageup) и назад (pagedown).

За да науча R400 да си говори с Preston и браузъра ми, създадох файла /etc/udev/logitech-r400 със следното съдържание:

0x7003E f11
0x70029 f11
0x70037 space
0x7004B left
0x7004E right

Това е моя "преводач". На бутона за стартиране съм задал два пъти F11 - така всяко натискане, ще кара браузъра да влиза и излиза от режим full screen. Просто в моя случай това е достатъчно. Бутона за "гасене" на екрана генерира интервал, просто защото нещо трябва да генерира, не че ми върши някаква работа. Важните бутони за мен са наляво и надясно - с тях сменям слайдовете. Ако вие използвате друг софтуер за презентация, който си има собствени шорткъти, просто заменете в този файл на съответните места с неговите. И Logitech Wireless Presenter R400 ще заработи за вас под Линукс, въпреки че официалния съпорт на Logitech твърди, че не може и толкоз.

За да накарам системата да използва моите клавиши с R400 винаги, създадох още един файл: /etc/udev/rules.d/logitech.rules

ENV{ID_VENDOR}=="Logitech*", ATTRS{idProduct}=="c52d", RUN+="keymap $name /etc/udev/logitech-r400"

И сега вече мога да изнасям презентациите си професионално, докато се разхождам важно напред-назад из аудиторията, като истински гуру :) А Logitech да имат много здраве от мен.

Животът е прекрасен ли?

от Йордан Радунчев
лиценз CC BY

В другите новини днес - за пръв път ми се случва да си тръгна от театрално представление в антракта. "Животът е прекрасен" в Народния. Отидох да го гледам, за да разбера защо Камен Донев беше награден за ролята на Подсекалников. Мислех да напиша нещо кратко за представлението... Но се оказа, че всичко се изчерпва с едно изречение: Едно си Камен знае, едно си играе.... Повече няма какво да се добави. И да, стана ми ясно защо са го наградили за тази роля. Защото ще бъде много срамно да го наградят за "Народното творчество", а той пък явно нещо по-различно не може да предложи. Тоест - от немай къде... В интерес на истината ВСИЧКИ останали в това представление играят по-добре от Камен Донев. Много по-добре. Много. Ако отидете да го гледате, насладете се на тяхната игра.

Това което ще видите е нов театрален жанр. Моноспектакъл с елементи на епични масовки. Имаме един Камен Донев, който играе типичната си игра в типичния си монохалтурен стил с приклякване и подмигване, имаме и маса талантливи актьори, които трябва да са фон на моноспектакъла му. Уви, не се е получило. Фона изпъква пред и над главната роля. Значително. Иначе талантливите актьори не се справят поддържащите си роли - не успяват да ги задържат на ниво поддържащи и изместват, направо изблъскват, главната роля от ролята ѝ на главна. Ама не мисля, че вината за това е тяхна. Те просто са добри и по-малко не могат... Както и Донев, той също повече не може. Или може? Ще се радвам да ме опровергае с някоя роля, в която да демонстрира нещо различно от образа на народния учител, който безспорно му се получава, но това не оправдава неговото пренасяне от пиеса в пиеса.

С това си лаишко писание тук съвсем не искам да кажа, че не си заслужава да отидете да го видите! Не. Отидете. Непременно. Заради Александър Морфов, който както винаги е изпипал всичко до съвършенство. Заради перфектната сценография на Тороманов. Рени Врангова е страхотна, Светлана Янчева е невероятна. Самата пиеса като текст, сюжет и образи е нещо, което не трябва да изпускате. Отидете непременно! Всички те заслужават аплодисменти. Но си остава загадка защо от всички тях, награден е именно и само Камен Донев...

Clone drive old fashion way

от Йордан Радунчев
лиценз CC BY

Понякога се налага да направим копие на твърд диск, карта памет, флашка - с архивна цел или защото се налага да извършим върху него някаква потенциално разрушителна операция, като например опит за възстановяване на изтрита информация. Примерно ако някой е опитал да я унижощи с отвертка... В подобна ситуация първото и най-важно нещо е да се направи точно копие на твърдия диск, абсолютно точно до последния бит, за да може да се възстанови в първоначално състояние, ако се наложи. Това е елементарна операция с dd, както всеки по-отворен Линукс потребител би ви обяснил:

dd if=/dev/sdb of=./sdb.img bs=64k

Тази команда ще прехвърли бит по бит, на блокове от по 64к, съдържанието на устройството /dev/sdb във файла sdb.img в текущата директория. Съответно преди да започнете тази операция, трябва да сте сигурни, че имате достатъчно свободно място в текущата директория, защото ако твърдия диск, който копирате е 100Gb, съответно и файла sdb.img ще бъде с големина 100Gb, тъй като представлява точно до последния бит копие на оригинала - включително празното и неизползвано пространство върху него.

Ако целта ви е да възстановите изтрита информация от оригиналния диск - това е начина да си направите архивно копие преди да започнете, защото така ще съхраните и онези части от диска, които са маркирани като свободни, но върху които вероятно са останали "изтритите" данни.

Ако обаче искате просто да си направите архивно копие на твърдия диск, картата с памет от фотоапарата или флашката - тогава най-добре да се оттървете от неизползваното място върху тях, за да можете да компресирате копието с gzip, като по този начин то ще стане значително по-малко от оригинала и няма да ви заема толкова много място. За да е ефективно компресирането, трябва да подготвите празното място на оригинала - най-добре като запишете нули навсякъде върху него - така ще улесните gzip при компресирането и ще го направите много по-ефективен.

dd if=/dev/zero of=/media/usb/dummyfile

С помощта на dd започвате да копирате нули от специалното устройство /dev/zero на Линукс, което има безкраен запас от нули, във файла dummyfile на оригиналния диск/карта/флашка монитран в /media/usb - dd ще "налива" нули в dummyfile, докато там не остане повече празно място и тогава ще "умре". Сега просто изтрийте dummyfile с rm. Това упражнение ни гарантира, че цялото неизползвано пространство съдържа 0 - и образно казано gzip всичките тези нули, ще ги компресира до една единствена 0, спестявайки ни много място. Следващата стъпка е:

dd if=/dev/sdb | gzip -c  > ./sdb.img.gz

Подаваме прочетеното от dd към gzip, който го компресира и излива във файл sdb.img.gz - компресирано точно копие на оригиналния диск.

След като имаме копие от диска, идва момента в който искаме да го възстановим. Просто използваме dd наобратно :)

dd if=./sdb.img of=/dev/sdb

...ако копието ни не е компресирано. Ако е компресирано:

gunzip -c ./sdb.img.gz | dd of=/dev/sdb

...и сме възстановили оригиналното съдържание на sdb...

Ако сте забелязали навсякъде използваме sdb, а не sdb1 - това е важно, защото искаме копие на целия диск, а не само на един дял от него. Ако използвате sdb1 ще направите копие на първия дял от диска, без информацията от boot сектора на устройството и без таблицата на дяловете му. Имайте го на ум.

TermFu (За Android) – справочник за дълги команди

от Владимир Колев
лиценз CC BY-NC-ND
Терминал

ic_launcherАко често използвате терминала или пък харесвате да комбинирате доста от нещата, които вършите в .sh скриптове предполагам, че това приложение от BulTux може да ви бъде доста полезно, особено ако като мен имате проблем със запомнянето на километричните низове от команди с параметри за извършване на задачи от рода на:

- конвертиране на изображения
- записване на екрана във видео формат
- споделяне на екрана чрез SSH
и т.н.

За приложението

TermFu е приложение за Android телефони (Android 2.2+), което ви позволява да преглеждате сайта commandlinefu.com за termfu_dialogразлични команди – от записване на екрана чрез ffmpeg или mencoder, през ssh и различни трикове за споделяне на екрана до следене на системата. На практика сайта предлага различни едно-редови команди, с които можете доста да улесните живота си. От друга страна запомнянето на тези дълги команди е определено непосилно (поне за мен е така), а посещаването на сайта през телефона е меко казано неудобно. Така се роди и идеята за TermFu – едно малко приложение, което по всяко време да ми е под ръка.

Какво предлага като функционалност

- Табът “Последни” (Latest) – предлага на потребителя последните команди, публикувани за последната седмица – избор на команда отваря диалог, в който се показва цялата команда, описание какво прави и позволява на потребителя да копира командата в буфера за споделяне (clipboard). Звездичката, която е на всеки ред, позволява да добавите командата в “Предпочитани”.

- Табът Популярни (Popular) – не се различава по функционалност от Latest, освен че предлага най-популярните команди за цялото време. Това са командите, които с времето са събрали най-много гласове.

termfu_search- Табът “Търсене” (Search) – както предполагате – позволява търсене в commandlinefu.com за въведена от вас ключова дума. Резултатите функционират както последните два таба.

- Предпочитани (Favorites) – показва записаните в базата данни на приложението команди от пторебителя (Записването става, чрез избор на звездата от предните три таба). Тук функционалността е малко по-различна. Контрола става чрез задържане на определен елемент, което активира меню с опции – “Преглед” и “Изтриване”, което предполагам е ясно какво правят.

 

 

Изтегляне

Приложението можете да изтеглите от Google Play Store:

Android app on Google Play

Да си наинстаграмим снимките…

от Йордан Радунчев
лиценз CC BY

Имате стари снимки, искате да изглеждат като онези страхотно модерни снимки, които всички правят с Instagram? Дообре... Imagemagick знае как.

Оригиналната снимка:

Оригиналната снимка...

Ghotam:

Ghotam

convert zkayra.jpg -set option:distort:viewport "%[fx:min(w,h)]x%[fx:min(w,h)]+%[fx:max((w-h)/2,0)]+%[fx:max((h-w)/2,0)]" -filter point -distort SRT 0 +repage -modulate 120,10,100 -fill '#222b6d' -colorize 20 -gamma 0.5 -contrast -contrast ghotam.jpg

Toaster:

Toaster

convert zkayra.jpg -set option:distort:viewport "%[fx:min(w,h)]x%[fx:min(w,h)]+%[fx:max((w-h)/2,0)]+%[fx:max((h-w)/2,0)]" -filter point -distort SRT 0 +repage -fill black -opaque '#330000' -modulate 150,80,100 -gamma 1.2 -contrast -contrast -gaussian-blur 0x1 toaster.jpg

Nashville:

Nashville

convert zkayra.jpg -set option:distort:viewport "%[fx:min(w,h)]x%[fx:min(w,h)]+%[fx:max((w-h)/2,0)]+%[fx:max((h-w)/2,0)]" -filter point -distort SRT 0 +repage -fill black -opaque '#222b6d' -fill white -opaque '#f7daae'-contrast -modulate 100,150,100 -auto-gamma nashville.jpg

Lomo:

Lomo

convert zkayra.jpg -set option:distort:viewport "%[fx:min(w,h)]x%[fx:min(w,h)]+%[fx:max((w-h)/2,0)]+%[fx:max((h-w)/2,0)]" -filter point -distort SRT 0 +repage -channel R -level 33% -channel G -level 33% lomo.jpg

Kelvin:

Kelvin

convert zkayra.jpg -set option:distort:viewport "%[fx:min(w,h)]x%[fx:min(w,h)]+%[fx:max((w-h)/2,0)]+%[fx:max((h-w)/2,0)]" -filter point -distort SRT 0 +repage -auto-gamma -modulate 120,50,100 -fill 'rgba(255,153,0,0.5)' kelvin.jpg

Толкова, за да придобиете представа на какво е способен Imagemagick... Прегледайте документацията, за да се запознаете с пълните му възможности, ако искате да шашнете Света с наистина откачени снимки.

Пропуснах OpenFest

от Ясен Праматаров
лиценз CC BY

Не успях да ида на OpenFest. Имах намерение, но вкъщи сме с леко болничка мама и всички – дечица и тати – се опитваме да помагаме. Не ми липсва пропускането на фестивала – от няколко години вече съм леко встрани от тия неща, по едно време и престанах да ходя. Радвам се, че хората, които продължиха и продължават да го организират, не губят ентусиазма. Аз не съм бил никога от централното ядро там, но покрай Сдружението за свободен софтуер имах досег и донякъде, доколкото можех, съм помагал косвено. Първият OpenFest беше точно на рождения ми ден и отидохме заедно с Краси, после цяла вечер бяхме с хората от екипа, с Krzysztof Zaraska от Prelude IDS и Harald Welte. Беше 2003-та. Сега погледнах – на сайта на OpenFest най-старото споменаване в историята на фестивала е 2006-та. Може би има нещо общо със смяната на хората, с промяната на екипа. Може би има личен момент, както имаше и личен момент в разтурянето на FSA-BG. Жалко, но все тая. Имам много добри приятелства и познанства от тия години и си ги ценя – макар и повечето хора да ги виждам “веднъж на високосна”.

Прекарах топлите пладнета на съботата и неделята в парка с децата. Игри, езерца, катерички, жълъди, въртележки и пързалки и разговори със Светко защо някои деца се държат лошо и как трябва сам да се справя, защото не е честно аз да се намесвам. Хубави дни. Краси е по-добре. Трябва да платим наема днес – като мине това, ще се успокоя, надявам се. Бях изнервен вчера и взех да се карам на децата – поуката е, че валидолът не е лошо нещо и митовете за опасности са пълна глупост и чист HealthScare.