pátek 27. února 2015

Nefungující akcelerace grafiky Intel

I když by měla fungovat, tak nefunguje.

Na Debianu skončí glxinfo chybou:
name of display: :0.0
libGL error: unable to load driver: i965_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: i965
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast
X Error of failed request:  GLXBadContext
  Major opcode of failed request:  156 (GLX)
  Minor opcode of failed request:  6 (X_GLXIsDirect)
  Serial number of failed request:  53
  Current serial number in output stream:  52


Kterou odstraníme překopírováním (nebo vytvořením symbolického odkazu na potřebnou knihovnu).

Soubor nalezneme v /usr/lib/i386-linux-gnu/dri a nakopírujeme do (neexistujícího) /usr/lib/dri. Pak vše začne bez problému fungovat.

středa 14. ledna 2015

Jak opravit nefunkční zvuk ve Skype 4.3 v Linuxu Mint (64-bit)

Pokud používáte Skype 4.3 v 64bitové distribuci Linuxu Mint a nefunguje vám zvuk, je potřeba doinstalovat 32bitovou knihovnu PulseAudia, např. pomocí následujícího příklazu:

sudo apt-get install libpulse0:i386

Zdroj:  http://www.dedoimedo.com/computers/linux-skype-4-3-no-sound.html

neděle 11. ledna 2015

Jak v Linuxu změnit kódování souboru z Windows 1250 na UTF-8 a obráceně


Změna kódování z Windows 1250 na UTF-8:
iconv -f WINDOWS-1250 -t utf-8 puvodni_soubor.txt > zkonvertovany_soubor.txt

Změna kódování z UTF-8 na Windows 1250:
iconv -f utf-8 -t WINDOWS-1250 puvodni_soubor.txt > zkonvertovany_soubor.txt

Výpis možných kódování:
iconv -l 

sobota 10. ledna 2015

Eduroam a Linux na UHK



Parametry pro nastavení přístupu k bezdrátové síti Eduroam na UHK v Linuxu (snímek je z distrubuce Linux Mint, ale podobná dialogová okna jsou i v Ubuntu, Fedoře a ostatních distribucích).



středa 31. prosince 2014

Prohození tlačítek myši v Linuxu

Jednoduchý příkaz, který nastaví tlačítka myši pro leváky (prohodí levé a pravé tlačítko):

xmodmap -e "pointer = 3 2 1"

Můžeme si také vytvořit skript, který při každém spuštění tlačítka prohodí (pokud je aktuální nastavení pro praváky, změní ho na nastavení pro leváky a naopak):

#!/bin/bash

current=$(xmodmap -pp | head -5 | tail -1 | awk '{print $2}');

if [ "$current" -eq "1" ]
then
        xmodmap -e "pointer = 3 2 1";
else
        xmodmap -e "pointer = 1 2 3";
fi

Zdroj: http://crunchbang.org/forums/viewtopic.php?id=1760

středa 24. prosince 2014

Ruby a filtrování HTML

Vstupní HTML stránka s opakováním bloků typu

...
 <div class="views-field-field-dne-value">
                <span class="field-content">13.5.2014</span>
  </div>
 
  <div class="views-field-title">
                <span class="field-content">Efektivní využití ERP v podnikových procesech</span>
  </div>
 
  <div class="views-field-body">
                <div class="field-content">Seznam.cz - kdo z nás by ho neznal, na našem letním setkání - dne 11.6 vystoupí se svým příspěvkem&nbsp;<strong>Efektivní využití ERP v podnikových procesech&nbsp;</strong>pan&nbsp;<strong>Milan Smutný, finanční ředitel Seznam.cz. </strong><strong>Více informací <a href="http://cafin.cz/sites/default/files/1413-cafin-letni-setkani-05_final.pdf">zde.</a></strong></div>
  </div>
.....


Tyto části se v HTML souboru opakují a je třeba je získat a upravit. Za pomoci Ruby nějak takto:

#!/usr/bin/ruby

require 'rubygems'
require 'nokogiri'  

#snadné získání položek pomocí Nokogiri
page = Nokogiri::HTML(open("index.html"))  
$poledatum=page.css("div[class='views-field-field-dne-value'] span")
$polenazev=page.css("div[class='views-field-title'] span")
$poletext=page.css("div[class='views-field-body'] div")

#kontrolní délky načtených polí
#puts $poledatum.length
#puts $polenazev.length
#puts $poletext.length

#hlavní program - rozsekání do souborů
$i=0
while $i<$poledatum.length do
 $vystup=''

#pěkný příklad načtení bloku textu do proměnné
 $vystup += <<STRING
<html>
<head>
<title>Název</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>   
STRING

#přepis načtených položek do vlastních značek
 $vystup+= "<div class=\"datum\">"+$poledatum[$i].text+"</div>\n"
 $vystup+= "<div class=\"nazev\">"+$polenazev[$i].text+"</div>\n"

#nutný zápis textové položky v HTML formátu do pomoc. souboru
 File.open("000.html",'w') {
     |file| file.write($poletext[$i])
 } 

#načtení zapsaného souboru, pozor odstranit konce řádků
 $output=File.read("000.html").gsub(/\n/," ")

#zápis textu a ukončení HTML souboru
 $vystup+= "<div class=\"text\">"+$output+"</div>\n"

 $vystup += <<STRING
</body>   
</html>
STRING

#fyzický zápis do souboru a další opakování cyklu
 File.open("#{$i}.html",'w') {
     |file| file.write($vystup)
 }
   
 $i+=1
end

Tento skript vezme soubor index.html a vytvoří z něj hromadu HTML souborů obsahujících upravné informace, které pak lze např. za pomocí pluginu HTML Import 2 naimportovat do WordPressu.