niedziela, 12 marca 2017

Trinity Could not find mime type application/octet-stream

Ostatnio pod Trinity DE po zalogowaniu na początku wyskakiwał mi ten komunikat. Rozwiązaniem jest dodanie typu octet-stream w Centrum sterowania --> Składniki TDE --> Skojarzenia plików --> sekcja application o pustej wartości. Należy się wylogować i zalogować ponownie.

octet-stream w Centrum sterowania

wtorek, 31 stycznia 2017

Kubuntu 16.10 Chromium, Kmail, mailto links, http links

Okazało się, że nie wystarczy ustawić Chromium i Kmail jako domyślne aplikacje, ponieważ jak otwierałem link http w Kmail to otwierał mi się Firefox :-), a jak otwierałem link mailto w Chromium to otwierał mi się Claws-mail :-).

Aby naprawić działanie linków http należy w katalogu domowym  ~/.kde/share/config w pliku kdeglobals w sekcji   [General] wprowadzić wartość BrowserApplication[$e]=chromium. Po tej zmianie należy się wylogować i zalogować ponownie.

Aby naprawić działanie linków mailto w Chromium należy w terminalu wydać polecenie:

xdg-mime default KMail2.desktop x-scheme-handler/mailto

To wszystko.

czwartek, 29 września 2016

Window Maker nie działa wmweather

Od jakiegoś czasu nie działał mi aplet pogody na Window Maker. Okazało się że serwis pogodowy obsługujący aplet przestał działać. Znalazłem w sieci poprawione źródła programu : https://people.debian.org/~godisch/wmweather/

Aplet pogody po prawej stronie w doku

Pobieramy najnowszy plik: wmweather-2.4.6.tar.gz i standardowo go kompilujemy po rozpakowaniu:

cd ~/Pobrane/wmweather-2.4.6/src

./configure
make
sudo make install

Jeżeli w czasie kompilacji wyjdą niespełnione zależności to je zainstaluj. Programik instaluje się w /usr/local/bin.

Uruchamiamy go poleceniem w Window Maker (Run...):

/usr/local/bin/wmweather -s EPWR

Kod stacji METAR EPWR jest to moje miasto Wrocław, znajdź w sieci kod METAR swojej miejscowości.


niedziela, 4 września 2016

Emacs (Gnus) linki mailto

Emacs (Gnus) może być uruchomiony przy kliknięciu w przeglądarce na malito: link. Tworzymy skrypt o nazwie emacsmail o zawartości:

#!/bin/bash
emacsclient -c --eval "(browse-url-mail \"$@\")"

Nadajemy mu prawa wykonywania i umieszczamy w katalogu ~/bin

chmod +x emacsmail

mv emacsmail ~/bin

Teraz konfigurujemy nasze środowisko graficzne (np KDE) tak aby domyślnym naszym programem pocztowym był skrypt emacsmail.

Uruchamiamy Emacs, startujemy serwer: M-x (Alt+x) server-start, uruchamiamy Gnus, teraz linki mailto: w przeglądarce otwierają Gnus'a. Testowałem na Google Chrome i Vivaldi.

Trochę inaczej jest w Firefoksie, ustawiamy: Preferencje --> Aplikacje --> Mailto --> Użyj innej aplikacji i tu wskazujemy na emacsmail.

sobota, 3 września 2016

Gnus konfiguracja powiadomień, przeglądarki i automatycznego sprawdzania poczty

Znalazłem w sieci kilka ciekawych opcji konfiguracyjnych Gnus i chciałbym się z nimi podzielić. Wszystkie polecenia dodajemy do pliku .gnus w katalogu domowym.

Powiadomienia o nowej poczcie

Najpierw ze strony: https://www.thregr.org/~wavexx/software/gnus-desktop-notify.el/#download pobieramy plik gnus-desktop-notify-1.4.el, zmieniamy jego nazwę na gnus-desktop-notify.el i przenosimy do /usr/share/emacs/site-lisp/:

sudo mv gnus-desktop-notify.el /usr/share/emacs/site-lisp/

Teraz w ~/.gnus dodajemy takie polecenia:

(require 'gnus-desktop-notify)
(gnus-desktop-notify-mode)
(gnus-demon-add-scanmail)

Przeglądarka

Konfigurujemy przeglądarkę jaka ma się uruchamiać po kliknięciu na link, ja mam wybraną Vivaldi, wybierz sobie taką jaką używasz:

(setq gnus-button-url 'browse-url-generic
          browse-url-generic-program "vivaldi"
          browse-url-browser-function gnus-button-url)

Automatyczne sprawdzanie poczty (mam ustawione na co 10 minut):

(gnus-demon-add-handler 'gnus-demon-scan-news 10 t) ; this does a call to gnus-group-get-new-news
(gnus-demon-init)  ; this is redundant in No Gnus (e.g. Emacs23) since gnus-demon-add-handler does it for you

To wszystko.

środa, 24 sierpnia 2016

gDesklet GoodWeather nie działa

Podobnie jak aplet Clear Weather w Screenlets, także nie działał mi aplet gDesklet GoodWeather z powodu zmiany API w weather.com. Należy pobrać paczkę GoodWeather z: http://gdesklets.info/archive/#G i ją zainstalować w gDesklets.


Należy teraz w pliku: ~/.gdesklets/Sensors/GoodWeather/__init__.py wprowadzić takie źródło pogody:

 WEATHER_SOURCE = "http://wxdata.weather.com/weather/local/" \
                     "%(weather_code)s?cc=*&dayf=5&prod=xoap&" \
                     "par=1003832479&key=bb12936706a2d601"

Teraz aplet zacznie działać.

Screenlets nie działa Clear Weather

Od kilku miesięcy nie działał mi screenlet Clear Weather. Okazało się, że weather.com zmienił swoje API. Rozwiązanie przez przypadek znalazłem w sieci na stronie: https://ubuntu-mate.community/t/clearweather-desktop-screenlet-and-other-screenlets/813/5

Clear Weather po prawej stronie

Należy w pliku ClearWeatherScreelet.py w lokalizacji /usr/share/screenlets/screenlets-pack-all/ClearWeather zamienić dwa wystąpienia http://xoap.weather.com/weather/local na http://wxdata.weather.com/weather/local

A cały fragmęt tego pliku (ClearWeatherScreenlet.py) ma wyglądać tak:

try:
data = urlopen('http://wxdata.weather.com/weather/local/'+self.ZIP+'?cc=*&dayf=10&prod=xoap&par=1003666583&key=4128909340a9b2fc&unit='+unit + '&link=xoap',proxies=proxies).read()

dcstart = data.find('<loc ')
dcstop = data.find('</cc>')     ###### current conditions
data_current = data[dcstart:dcstop]
forecast.append(self.tokenizeCurrent(data_current))

for x in range(10):
dcstart = data.find('<day d=\"'+str(x))
dcstop = data.find('</day>',dcstart)   #####10-day forecast
day = data[dcstart:dcstop]
forecast.append(self.tokenizeForecast(day))
except (IOError, socket.error), e:
print "Error retrieving weather data", e
self.show_error((_("Error retrieving weather data"), e))

return forecast


def parseWeatherDataHourly(self):
if self.use_metric:
unit = 'm'
else:
unit = 's'

hforecast = []
try:

proxies = proxy.Proxy().get_proxy()
data = urlopen('http://wxdata.weather.com/weather/local/'+self.ZIP+'?cc=*&dayf=10&prod=xoap&par=1003666583&key=4128909340a9b2fc&unit='+unit+'&hbhf=12&link=xoap',proxies=proxies).read()
for x in range(8):
dcstart = data.find('<hour h=\"'+str(x))
dcstop = data.find('</hour>',dcstart)   ####hourly forecast
hour = data[dcstart:dcstop]
hforecast.append(self.tokenizeForecastHourly(hour))
except (IOError, socket.error), e:
print "Error retrieving weather data", e
self.show_error((_("Error retrieving weather data"), e))

return hforecast

Po zmianie aplet pogody zacznie znowu działać.