Feedly

2013-04-17-114337_1920x1054_scrotPo ogłoszeniu przez Google zamknięcia usługi Readera tłumy szukały alternatyw, część wybrała właśnie Feedly, ja też. Oczywiście nie o tym miałem pisać bo chciałem tylko wspomnieć, że właśnie tak powinna wyglądać aplikacja/usługa a rozciągnięcie tekstów na prawie cały ekran które dzisiaj mnie zaskoczyło spełniło mnie totalnie. Jak ja mogłem tyle czasu wytrzymać z brzydkim Readerem 🙂

Bieganie czas zacząć

Ruuuun :)
Ruuuun 🙂

Idzie wiosna, tak przynajmniej głoszą w prognozach pogody więc można by już zacząć w pełni sezon biegowy. Taki prawdziwy, minimum 5 razy w tygodniu (o ile nie będzie opadów deszczu :)) bo póki co przez zimę trochę biegałem ale nie było to nic systematycznego a jednak przez święta i lenistwo nabrało się znowu kilogramów, no i kondycja pewnie też podupadła.

Tak więc po ostatnich śniegach wybyłem dziś na pierwszy bieg, krótki bo niecałe 5km (nie ma się co forsować po świętach na start) i o ile pogoda dopiszę planuję już biegać codziennie. Oby się udało, bez kontuzji abym w następną zimę mógł się pochwalić statystykami, lepszymi niż ostatnio. Trzymajcie za mnie kciuki 🙂

Backup systemu

Trochę się zastanawiałem jak i czym wykonywać backup mojego vpsa (bo w domu wykorzystuję inne narzędzia) i w sumie postawiłem na rzecz najprostszą. Spakowanie wszystkiego i pobranie. Opcji innych masa, mniej lub bardziej wydajnych i z ciekawymi funkcjami ale zważywszy na moje potrzeby (w zasadzie to zgrać sobie tylko pliki konfiguracyjne ku pamięci) wybrałem właśnie najprostszą metodę. Jedno polecenie pakowania i pobranie pliku w zasadzie załatwia sprawę ale co by troszkę sobie ułatwić życie w czeluściach internetu znalazłem fajny skrypt naszego rodaka który dodaje kilka bajerów.

Całość opiera się na pliku z podanym miejscem które chcemy zarchiwizować oraz co można pominąć:

/
--exclude=/backup/*.tgz*
--exclude=/proc/*
--exclude=/sys/*
--exclude=/tmp/*
--one-file-system

oraz samym skryptem:

#!/bin/bash
#
# Author: Martin Matusiak <numerodix@gmail.com>
# Licensed under the GNU Public License, version 3.

backup_dir=/backup
num_backups=1

verbose="$@"
lists=$backup_dir/*.lst
ext=tgz
date_params="%Y-%m-%d-%H%M"
nice_val="nice -n20"

# colors
wh="e[1;37m"
pl="e[m"
ye="e[1;33m"
cy="e[1;36m"
re="e[1;31m"

if [[ "$verbose" && "$verbose" != "-v" ]]; then
	echo "Usage:  $0 [-v]"
	exit 1
fi

if [ ! -d $backup_dir ]; then
	echo -e "${re}Backup dir $backup_dir does not exist.${pl}"; exit 1
fi

for list in $(ls $lists); do
	name=$(basename $list .lst)
	file_root=$backup_dir/$name.$(date +$date_params)

	stdout="1> /dev/null"
	stderr="2> $file_root.$ext.err"
	if [ "$verbose" ]; then
		stdout=""
	fi

	cmd="cat $list | $nice_val xargs tar zlcfv 
		$file_root.$ext $stderr | tee $file_root.$ext.log $stdout"

	trap 'echo -e "${re}Received exit signal${pl}"; exit 1' INT TERM

	echo " * Running `$name` job..."
	if [ "$verbose" ]; then echo -e ${ye}$cmd${pl}; fi
	echo -en $cy; bash -c "$cmd" ; echo -en $pl
	status_code=$?

	if [ $status_code -gt 0 ]; then
		# Dump error log
		echo -en $re ; cat $file_root.$ext.err
		echo -en $pl ; echo "Tar exit code: $status_code"
	else
		# Kill error file
		rm $file_root.$ext.err
	fi

	# Evict old backups we don't want to keep
	num=$num_backups
	for evict in $(ls -t $backup_dir/$name.*.$ext); do
		if [ $num -le 0 ]; then
			rm -f "$evict"
		else
			num=$(($num-1))
		fi
	done

	# Report number of files in backup
	echo -n "$(wc -l < $file_root.$ext.log) files"
	echo ", $(ls -l $file_root.$ext | awk '{ print $5 }') bytes"

done

i to tyle, prościej się chyba nie da a i objaśnienia raczej nie potrzebne, wystarczy sobie zmodyfikować wedle potrzeb 🙂

Nie kasowanie boot messages

Ku pamięci.

Nie wiedzieć czemu ktoś kiedyś wpadł na pomysł aby informacje podawane podczas włączania systemu na samym końcu wyczyścić, co by tty1 ładnie i czysto wypluwało tylko zachętę do zalogowania. Generalnie gdy system działa to nic złego, gorzej gdy gdzieś mignie nam FAIL i nie wiemy przy czym. Rozwiązanie? w /etc/inittab zmieniamy

1:2345:respawn:/sbin/getty 38400 tty1

na

1:2345:respawn:/sbin/getty --noclear 38400 tty1

i to tyle, a panu który wymyślił ukrywanie informacji już podziękujemy 🙂

NC+ raczej podziękuję

Szumne i długie połączenie N i Cyfry+ u wielu wywoływało pewnie spore oczekiwania. Wyszło jak zwykle, drogo i nieciekawie.

ncplusOferta programowa na prawdę ciekawa, ale w najdroższym pakiecie za 199 zł. Cena maksymalnie zaporowa bo chyba włodarze NC+ zapomnieli jakie są zarobki w naszym kraju. Już teraz płacę 99 zł za pakiet z hbo i canal+ (bo ja głównie tylko je oglądam, lubię filmy) ale 199 zł chyba nigdy nie zapłacę żeby mieć kilka kanałów więcej które mnie interesują. Całą resztę włączam raczej sporadycznie albo i wcale.

Jest też podobno specjalna oferta dla migrujących, póki co staram się wysłać zgłoszenie i poczekam na telefon, aż jestem ciekaw cóż to ciekawego mi zaproponują. Prawdopodobnie jednak, tego się spodziewam, nic sensownego mi nie zaoferują a jako, że akurat na dniach kończy mi się umowa z Cyfrą+ to porządnie przeanalizuję ofertę Polsatu. Chyba pora zakupić jakiś najtańszy pakiet i dać sobie spokój z filmami w telewizorze.

Aktualizacja Owncloud 5 – problemy

Dwa małe problemy z aktualizacją Owncloud do najnowszej wersji, tj. 5.

Po pierwsze po udanej aktualizacji plików u niektórych osób (w tym i u mnie) strona zatrzymuję się na informacji “owncloud is in maintance mode”, przypadków na których błąd występuje podanych jest kilka (różne wersje os, przeglądarek) a rozwiązaniem jest zmiana w owncloud/config/config.php

'maintenance' => true,

na

'maintenance' => false,

restart apache czy co tam macie i ponowne otwarcie w przeglądarce.

Jeżeli z kolei na stronie administracyjnej wypluwa błąd o braku locale=en_US.UTF8 mimo iż jest w systemie to cóż, wielkość liter ma znaczenie a najwyraźniej o tym zapomnieli (w moim przypadku prawidłowo brzmi en_US.utf8). W owncloud/lib/util.php w linijce 614 dodajemy poprawną wersję:

$result = setlocale(LC_ALL, 'en_US.UTF-8', 'en_US.UTF8','en_US.utf8');

SFI, Stallman, Kraków

Dzięki uprzejmości kolegi (nocleg w Krakowie, dzięki Adam :)) udało mi się odwiedzić SFI, a w zasadzie tylko przemowę Richarda Stallmana. Na wcześniejszych edycjach nie byłem więc przedstawię tylko moje subiektywne spostrzeżenia.

Otóż pojawiliśmy się na styk o wyznaczonej godzinie i w zasadzie prawie cała sala była już pełna (chyba nic dziwnego) i zaczęła się przemowa. Tutaj chyba tematy podobne na wszystkich konferencjach z Richardem Stallmanem (tak myślę) czyli FSF, zły MS, Apple, Coca Cola, Facebook, Android itp. Nie zabrakło również wzmianki o kościele Emacsa. Całość ciekawie przedstawiona, z żartami i nawet jeżeli ktoś z tezami się nie zgadza, albo niekoniecznie w całości to z pewnością słuchając nic nie stracił.

Niestety pojawiły się wpadki organizacyjne które na prawdę mnie zdziwiły i rozśmieszyły. Zepsuty mikrofon “przenośny” – zero reakcji, trzeba było korzystać z “mównicy”. Prośba o klimatyzację, tudzież otwarcie okien została skwitowana tekstem “jest zima”. Dwa pytania od publiczności z braku czasu (nie wiem co ich tak goniło, Stallman zaproponował więc spotkanie w jakimkolwiek miejscu na większą ilość pytań niestety już tam nie poszliśmy). Przerwanie aukcji z powodu przebicia kwoty 200 zł no i znakomita wpadka językowa na pożegnanie, “można wychodzić oba wyjściami” (czy coś w ten deseń :)).

Generalnie ten punkt imprezy oceniam na plus pomimo wpadek, na innych nie byłem więc nie wspomnę 🙂

Zmian ciąg dalszy

Ostatnio padło na odnowienie strony domowej, teraz padło na blog i portfolio. Zmiany były już prowadzone od kilku dni, zacząłem nawet przed wyjazdem ale dopiero dzisiaj blog wszedł nowsze szaty.

Dużo do pisania nie ma, naszło mnie na jaśniejsze klimaty ale nadal w odcieniach szarości. Ciągle coś poprawiam i dodaję jak mi przyjdzie do głowy więc pewnie nie jest to efekt ostateczny. Wszelkie sugestie mile widziane jak i błędy gdyby się pojawiły bo nie zdążyłem ich przetestować na różnych platformach 🙂

Aktualizacja:

zarówno strona główna, blog, portfolio powinny działać “mniej więcej” normalnie na różnych wersjach ie (tyle ile mi się udało), w portfolio dorobiłem slider screenów tak więc wersja bez js wygląda jak wyżej a z js tak:

2013-03-13-205202_1920x1080_scrot