Archive for the ‘GNU/Linux’ Category

qtspotify på Nokia N900 som deb-package

måndag, december 28th, 2009

Jag har äntligen lyckats bygga och paketera qtspotify! Qtspotify är alltså en grafisk frontend till despotify skriven i cpp och Qt.

Det var verkligen inte enkelt, men det gick till slut. Stegen liknar mycket de som jag gick igenom i går för att installera despotify, man måste dock ha exakt rätt version av despotify för att qtspotify skall kompilera, revision 439. Jag återger stegen här igen för den som vill bygga själv, den som inte vill kan helt enkelt ladda ned .deb-filen som det länkas till längst ned:

#Libogg
wget http://downloads.xiph.org/releases/ogg/libogg-1.1.4.tar.gz
tar xfv libogg-1.1.4.tar.gz
cd libogg-1.1.4
./configure --prefix=/usr
make
fakeroot make install
ldconfig
cd ..

#Libvorbis
wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.2.3.tar.gz
tar xfv libvorbis-1.2.3.tar.gz
cd libvorbis-1.2.3
./configure --prefix=/usr
make
fakeroot make install
ldconfig
cd ..

#Openssl
wget https://www.openssl.org/source/openssl-0.9.8l.tar.gz
tar xfv openssl-0.9.8l.tar.gz
cd openssl-0.9.8l
./config --prefix=/usr
make
fakeroot make install
ldconfig
cd ..

#Install other requirements from SDK repo
fakeroot apt-get install zlib1g-dev libtool libgstreamer0.10-dev

#Get despotify
svn co https://despotify.svn.sourceforge.net/svnroot/despotify despotify --revision 439

#Build despotify
cd despotify/src
make
fakeroot make install
cd ../../

#Build qt
wget http://qt.gitorious.org/qt/x11-maemo/archive-tarball/4.6-fremantle
mv 4.6-fremantle qt-x11-maemo.tar.gz
tar xfv qt-x11-maemo.tar.gz
cd qt-x11-maemo
./configure --prefix=/usr -opengl es2 -maemo5
o
yes
make
fakeroot make install
ldconfig
cd ..

#Build qtspotify
git clone git://gitorious.org/qt-labs/qtspotify.git
cd qtspotify
qmake
make

Ok, för er som inte orkar vänta längre kommer här ett färdigt .deb-paket. Jag beskriver inte stegen för att paketera här eftersom jag inte kan detta ordentlig själv ännu.

Först dessa varningens ord: det här är mitt första paket, jag tar inget ansvar för om detta pajjar din telefon. Ok?  Två av programbiblioteken i paketet har konflikter på telefonen redan: libQtCore och libQtGui, vi kommer skriva över dessa med kommandot nedan, men gör det inte om du är rädd för att få en trasig telefon. Med detta sagt kan jag ju dock säga att jag lyssnar på musik just nu på min lur. I paket finns förutom qtspotify också despotify, despotify-simple, despotify-gateway, libdespotify, libQtCore och libQtGui.En annan grej också: qtspotify har inget off-lineläge, så den furbrukar ordentligt med datatrafik, se till att ha en ordentlig dataplan innan du kör igång. Du behöver även ett premiumkonto för spotify, skaffa det också!

http://mickenordin.se/files/qtspotify-0.1-armel.deb

Ladda hem paketet till din telefon, öppna xterm och kör kommandot medan. Du måste ha root-access på telefonen förstås. Navigera till den här sidan med telefonen och installera rootsh: http://maemo.org/downloads/product/Maemo5/rootsh/ sedan kör du kommandot sudo gainroot därefter är du klar att installera paketet.

sudo dpkg -i --force-overwrite qtspotify-0.1-armel.deb

Have fun!

Se även

Läs även andra bloggar om , , , ,

Despotify på Nokia N900

lördag, december 26th, 2009

Något som verkligen saknas på min nya Nokia N900 är Spotify. Självklart kommer man då att tänka på despotify, den fria spotifyklienten. Så här gör man för att korskompilera den för Maemo 5:

Börja med att installera Maemo SDK:

wget http://repository.maemo.org/stable/fremantle/maemo-sdk-install-wizard_5.0.py

sudo ./maemo-sdk-install-wizard_5.0.py

Följ instruktionerna på skärmen, det fixar du nog utan vidare instruktioner, om inte kan du läsa mer här.

När installationen är klar kan du starta SDK:n med:

/scratchbox/login

Byt sedan target till armel genom kommandot:

sb-menu

Där väljer du alternativet "Select" och sedan "FREEMANTEL_ARMEL"

Lägg den här patchen i din hemkatalog i SDK:n och döp den till patch1.patch, nano finns att tillgå som textredigerare i SDK:n:

nano patch1.patch

Här är patchen:

Index: src/lib/gstreamer.c
===================================================================
--- src/lib/gstreamer.c    (revision 437)
+++ src/lib/gstreamer.c    (arbetskopia)
@@ -239,17 +239,26 @@
     return 0;
 }
 
+void g_idle_add_x(GSourceFunc function, gpointer data) 
+{ 
+    gst_PRIVATE *priv = (gst_PRIVATE *) data; 

+    GSource *src = g_idle_source_new(); 
+    g_source_set_callback(src, function, data,NULL); 
+    g_source_attach(src, g_main_loop_get_context(priv->loop)); 
+} 
+
 int gstreamer_pause (AUDIOCTX * actx)
 {
     DSFYDEBUG ("%s\n", __FUNCTION__);
-    g_idle_add (pause_cb, actx->driverprivate);
+    g_idle_add_x(pause_cb, actx->driverprivate);
     return 0;
 }
 
 int gstreamer_resume (AUDIOCTX * actx)
 {
     DSFYDEBUG ("%s\n", __FUNCTION__);
-    g_idle_add (resume_cb, actx->driverprivate);
+    g_idle_add_x (resume_cb, actx->driverprivate);
     return 0;
 }
 
@@ -275,7 +284,7 @@
 
     DSFYDEBUG ("%s\n", __FUNCTION__);
 
-    g_idle_add (stop_cb, priv);
+    g_idle_add_x(stop_cb, priv);
     actx->driverprivate = NULL;
 
     return 0;
Index: src/Makefile.local.mk.dist
===================================================================
--- src/Makefile.local.mk.dist    (revision 437)
+++ src/Makefile.local.mk.dist    (arbetskopia)
@@ -7,14 +7,14 @@
 ## Enable additional clients.
 CLIENT_DESPOTIFY = 1
 CLIENT_GATEWAY   = 1
-# CLIENT_MAEMIFY   = 1
+CLIENT_MAEMIFY   = 1
 
 ## Enable Nokia Maemo4 specific code in maemify client.
 ## At least LINUX_BACKEND = gstreamer seems to work with this.
 # MAEMO4 = 1
 
 ## Install prefix
-# INSTALL_PREFIX = /usr
+INSTALL_PREFIX = /usr
 
 ## Specify ncurses include path explicitly. (should contain curses.h)
 # NCURSES_INCLUDE = /usr/local/include/ncursesw
@@ -29,7 +29,7 @@
 # CFLAGS += -DDEBUG_PACKETS
 
 ## Adjust linking flags
-# LDFLAGS += -L/usr/local/lib
+LDFLAGS += -static
 
 ## If you're on Mac OS X and have installed libvorbisfile
 ## via 'port install ..', try uncommenting these lines

Sedan gör du bara så här:
#Libogg
wget http://downloads.xiph.org/releases/ogg/libogg-1.1.4.tar.gz
tar xfv libogg-1.1.4.tar.gz
cd libogg-1.1.4
./configure --prefix=/usr
make
fakeroot make install
ldconfig
cd ..

#Libvorbis
wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.2.3.tar.gz
tar xfv libvorbis-1.2.3.tar.gz
cd libvorbis-1.2.3
./configure --prefix=/usr
make
fakeroot make install
ldconfig
cd ..

#Install other requirements from SDK repo
fakeroot apt-get install zlib1g-dev libtool libgstreamer0.10-dev

#Get despotify
svn co https://despotify.svn.sourceforge.net/svnroot/despotify despotify --revision 437

#Patch despotify
cd despotify/
patch -p0 < ../../patch1.patch
cd src/

#Build despotify
make
fakeroot make install

När du är klar med dessa steg kan du kopiera /usr/bin/despotify, /usr/bin/despotify-simple, /usr/bin/despotify-gateway och /usr/bin/maemify från SDK:n till motsvarande plats på telefonen.

Se även

Läs även andra bloggar om , , , ,

Nokia N900 på g

lördag, november 28th, 2009

För ca 8 veckor sedan förbeställde jag en Nokia N900 i tron att den skulle komma någon vecka senare. Anledningen till att jag valde den telefonen framför en androidlur (en iPhone var givetvis aldrig ett alternativ) är att den kör en variant av debian som heter Maemo. Meamo verkar betydligt bättre än android på grund av att den använder vanliga deb-filer för att installera program (vilket borde betyda att man kan köra arm-kompilerade program från debians förråd på telefonen) och dessutom skall vara lätt att få rootåtkomst på. Olyckligtvis blev telefonen kraftigt försenad, men nu verkar den i alla fall vara på g, i går fick jag det här mejlet från Nokia:

Bästa Nokia Online Shop-kund,

Vi kan härmed bekräfta att Nokia N900 kommer börja levereras före jul exklusivt till Nokia Online Shop-kunder som lagt en förbeställning (begränsad volym). Första leveransen beräknas skickas under vecka 50 i den ordning som förbeställningarna är lagda. Räkna med 1-5 dagars leveranstid baserat på ert val av leverans (standard/express). För att ordern ska kunna genomföras, vänligen säkerställ att ni har täckning på ert konto. 

Notera att Nokia N900 för tillfället levereras med mjukvara version 1.0, vilket kan påverka kompabiliteten med vissa Hutchinson 3G SIM (mobiloperatör 3). Vi rekommenderar alla kunder som beställer Nokia N900 från Nokia Online Shop att uppdatera till kommande mjukvaru-uppdatering 1.1 som beräknas finnas tillgänglig för nedladdning i slutet av december. Uppdateringen ger Nokia N900 full kompabilitet med alla operatörers SIM-kort på den svenska markanden samt en del andra nya funktioner. Så snart mjukvaru-uppdatering 1.1 finns tillgänglig för nedladdning kommer en länk till denna att publiceras på produktsidan för Nokia N900.

Om ni har valt att avbeställa er produkt så har ni fortfarande chansen att bli en av de första att få Nokia N900, genom att lägga en ny beställning på www.nokia.se/shop. Vid frågor gällande er beställning eller om du vill avbeställa produkten så ta kontakt med vårt telesales-team på 077-662 22 22 (mån-fre 9-17).

Bästa Hälsningar,
Nokia Online Sales Team Sverige

Microblogg för servern

lördag, november 28th, 2009

 

Lite roligt vardagspyssel kommer här.

Jag har just fixat ett litet backupscript för mina databaser, jag kom på att det vore kul om servern kunde skicka mig en dent på identi.ca för att berätta för mig hur det gått med backupen. Jag skapade alltså ett konto för servern och sedan lade jag in koden i backupscriptet. Så här blev det:

#!/bin/bash
if $( mysqldump  --all-databases --user=username --password=password > /home/micke/backup/daily_database_backup_temp.sql ); then
   mv /home/micke/backup/daily_database_backup_temp.sql /home/micke/backup/daily_database_backup.sql && curl -u username:password -d status="@micke Backup of all databases was successful at `date`" http://identi.ca/api/statuses/update.xml &> /dev/null;
else
   curl -u username:password -d status="@micke Backup of all databases failed at `date`" http://identi.ca/api/statuses/update.xml &> /dev/null;

I if-satsen kollar scriptet om det gick bra att göra backupen, i så fall flyttas den temporära filen över den gamla backupen och om det gick bra i sin tur så skickar servern en dent till mig. Om backupen inte gick bra får jag i stället meddelande om det. Får jag inget meddelande alls vet jag att det blev problem med att flytta den temporära filen över den gamla backupen.

Uppdaterade instruktioner för att installera despotify i Ubuntu

torsdag, oktober 15th, 2009

 Om man skall tro Google Analytics, så är despotify det mest intressanta jag skrivit om på min blogg. Av den anledningen tänkte jag passa att publicera uppdaterade instruktioner för hur man gör för att installera i Ubuntu. Det är inte så svårt som man kanske skulle kunna tro. Först behövs en terminal, den hittar du i menyn:  "Program" → "Tillbehör" → "Terminal". Kopiera sedan och klistra in  kommandona, ett efter ett.

Först installerar vi alla beroenden och subversion:

sudo apt-get install libssl-dev zlib1g-dev libvorbis-dev libtool libncursesw5-dev libgstreamer-plugins-base0.10-0 libgstreamer0.10-dev checkinstall subversion

Uppdatering: Det verkar som om despotify teamet  plockat bort gstreamer och pulseaudio som backends för ljudet, det betyder att ni måste använda libao för att kunna kompilera. Jag antar att det också betyder att ni inte längre måste installera libgstreamer-plugins-base0.10-0 libgstreamer0.10-dev. libao-dev måste ni dock installera:

sudo apt-get install libao-dev

Nu bör även build-essential och allt annat vi behöver för att bygga ha följt med. Sedan hämtar vi källkoden:

svn co https://despotify.svn.sourceforge.net/svnroot/despotify despotify

När det är klart ställer vi oss i rätt katalog och kompilerar:

cd despotify/src/ && make

När vi kompilerat koden kör vi en liten specialare:

sudo checkinstall --pkgname=despotify --pkglicense=BSD

Detta kommando skapar en  .deb-fil som den sedan installerar. Tryck bara "enter" på frågan om du skall fortsätta. Nu kan du starta despotify genom att köra:

despotify #ncursesklienten

despotify-simple #den enklare klienten som jag gillar bäst

despotify-gateway #gatewayen som du kan använda för att bygga egna applikationer

Detta installationsförfarande betyder förövrigt att du kan avinstallera programmet som vilket vanligt program somhelst genom synaptic, apt-get eller dpkg, t.ex genom:

sudo dpkg -r despotify

Klart!

Notera att du måste ha Spotify Premium för att Despotify ska funka.

Se även:

Läs även andra bloggar om , ,

Ubuntu Global Jam

söndag, september 27th, 2009

 

Den andra till fjärde oktober är det dags för Ubuntu Global Jam. Det kommer uppmärksammas även i Sverige, i första hand då i Linköping den tredje oktober. Klockan tolv börjar det hela vid Institutionen för Fysik, Kemi och Biologi vid Linköpings universitet. Medtag oömma kläder, ett glatt humör och gärna en laptop.  Enligt uppgift kommer det mesta att handla om Bug Triage.

Jag själv kommer nog tyvärr inte kunna komma, men jag föreslår att den som är i närheten av Linköping dyker upp, inte minst för att träffa det svenska Ubuntu LoCots nya TeamLeader och TeamContact

Läs även andra bloggar om , , , , , , , ,

FSCONS

onsdag, augusti 5th, 2009

Dear Mikael,

I’m delighted to inform you that the Programme Committee of the Free Society Conference and Nordic Summit 2009 has decided to accept your proposal with the title "Cultural Transmission from an Archaeological Perspective".

Så stod det i ett mejl från Jonas Öberg och FSCONS-gänget som jag fick härom veckan. Tanken är alltså att jag skall hålla ett föredrag på ämnet "Cultural Transmission from an Archaeological Perspective " på FSCONS som går av stapeln 13-15 november. Så här såg min abstract ut:

Human beings have been copying and reusing culture and technology for approximately 2.6 million years. Access to new cultural advancements have been crucial for all human societies during all of prehistory.

With this presentation I want to give an archaeological perspective on today’s issues of free software, free culture, patents and copyright. I am going to give examples on how humans have copied and reused culture and technology through out all of prehistory with concrete archaeological examples, mainly from the stone age. I am also going to show examples of how people have been trying to limit access to ideas and technology for others.

The presentation will focus on these questions:

 What does the possibility to copy culture and technology mean for human societies and how does people profit from limiting the access to these cultural traits and technologies for others? 

Does culture have an intrinsic wish to be copied? Does culture in fact want to be free? 

Hoppas att nån vill lyssna bara, jag vet aldrig om kombinationen tekniknörd-stenåldersnörd funkar eller om folk bara blir dubbelt uttråkade :) .

 

Se även 

Läs även andra bloggar om , ,

Ladda ner alla torrent-filer från TPB

lördag, juli 4th, 2009

I dag blir det ingen guide, utan mer en fråga. Efter att ha läst det här började jag fundera. Hur gör man för att ladda hem alla torrent-filer från TPB? Om man hade en lista över alla URL:er, skulle det vara trivialt. Hur får man då en lista över alla URL:er till alla torrent-filer på TPB? Min första tanke var att hämta alla länkar som man får via länken "Bläddra bland torrenter" på TPB. Jag skrev då ett skript som hämtar alla sådana länkar:

#!/bin/bash
it=100
while [[ $it -lt 700 ]]; do
 
i=0
    while [[ $i -lt 100  ]] ; do
      xmlstarlet sel --net --html -T -t -m "//*[local-name()='a']" -o 'NAME: ' -v "translate(. , '&#10;', ' ')" -n -o 'LINK: ' -v @href -n -n \
      "http://thepiratebay.org/browse/$it/$i/3" | grep torrent | grep -v phpAdsNew | sed -e 's|LINK: /|http://thepiratebay.org/|g' \
      -e 's|LINK: http://|http://|g' | grep ".TPB.torrent" >> tpb.links
      let "i=i+1"
      sleep 1s
  done
  let "it=it+100"
done

Tyvärr verkar inte detta funka, det verkar som om TPB har lagt upp en begränsning som gör att man bara får hämta 100 sidor med 30 länkar vardera från varje kategori (därav begränsningarna i while-looparna i skriptet), det innebär i praktiken att jag bara får 17970 länkar totalt tillbaka från skriptet. Bry er för övrigt inte så mycket om själva skriptet, det är ett ful-hack med massa cruft, eftersom jag bara ville kolla lite snabbt hur man kan göra.

Så finns det någon som är bättre än mig på TPB som vet hur man kan göra får att få tag på fler resultat? Svara gärna i kommentarerna om ni kommer på nått.

Se även:

Läs även andra bloggar om , ,

Despotify utan premiumkonto

fredag, juli 3rd, 2009

Via en trådubuntu-se.org  (tack för tipset DMZ och tack Rasmus för att du tipsade mig!) fick jag reda på att det finns en revision av despotify som funkar utan premiumkonto: revision 291. Så här gör du för att köra, öppna en terminal och kör:

svn checkout --revision 291 https://despotify.svn.sourceforge.net/svnroot/despotify despotify

Därefter måste du göra en liten ändring i koden:

cd despotify/
nano src/lib/session.c

Leta efter session->client_revision = 44764; (sök genom att trycka ctrl+w) och ändra så att det i stället står:  session->client_revision = 99999;

Spara genom att tryck ctrl+x och välj "j". Nu kan du kompilera och köra:

make
sudo make install

Därefter kan du starta despotify i terminalen genom att skriva:

simple användarnamn lösenord

Klart!

 

Om du inte vill skriva ditt lösenord synligt i terminalen tipsar Konservburk om en skalfunktion i tråden på Ubuntu-se, lägg bara koden:

despotify(){ simple "${1:-$(read -p "user: " user; printf "$user")}" "${2:-$(stty -echo; read -p "pass: " pass; stty echo; printf "$pass")}"; }
 

i ~/.bash_aliases:

nano .bash_aliases

Klistra in med ctrl-shift-v och spara genom att trycka ctrl+x och svara "j" sedan kan du starta despotify genom att ange "despotify" i terminalen.

Information om beroenden med mera finns på : http://despotify.se/

Se även:

Läs även andra bloggar om , ,

Sätt upp en proxyserver åt iranierna

tisdag, juni 16th, 2009

Iranska myndigheter stänger ned internet för sina medborgare (HADOPI on steroids). Så här kan du göra för att hjälpa till, sätt upp en proxyserver som de kan använda för att komma förbi portvakterna:

I Ubuntu:

sudo apt-get install squid

I CentOS/RedHat:

yum install squid

Sedan måste du redigera squid.conf (som root, dvs med sudo före i Ubuntu):

nano -w /etc/squid/squid.conf

Leta reda på raden “http_access deny all” och ändra till “http_access allow TRUSTED”. Lägg sedan till detta före http_access-raden:

acl TRUSTED src 62.60.128.0/17 62.193.0.0/19 62.220.96.0/19 77.36.128.0/17 77.77.64.0/18 77.104.64.0/18 77.237.64.0/19 77.237.160.0/19 77.245.224.0/20 78.38.0.0/15 78.109.192.0/20 78.110.112.0/20 78.111.0.0/20 78.154.32.0/19 78.157.32.0/19 78.158.160.0/19 79.127.0.0/17 79.132.192.0/19 79.170.144.0/21 79.175.128.0/18 80.66.176.0/20 80.69.240.0/20 80.71.112.0/20 80.75.0.0/20 80.191.0.0/16 80.242.0.0/20 80.253.128.0/20 80.253.144.0/20 81.12.0.0/17 81.28.32.0/20 81.28.48.0/20 81.31.160.0/20 81.31.176.0/20 81.90.144.0/20 81.91.128.0/20 81.91.144.0/20 82.99.192.0/18 82.115.0.0/19 83.147.192.0/18 84.47.192.0/18 84.241.0.0/18 85.9.64.0/18 85.15.0.0/18 85.133.128.0/17 85.185.0.0/16 85.198.0.0/18 86.109.32.0/19 87.107.0.0/16 87.247.160.0/19 87.248.128.0/19 89.144.128.0/18 89.165.0.0/17 89.221.80.0/20 89.235.64.0/18 91.98.0.0/15 91.184.64.0/19 91.186.192.0/19 91.206.122.0/23 91.208.165.0/24 91.209.242.0/24 91.212.16.0/24 91.212.19.0/24 91.212.252.0/24 92.42.48.0/21 92.50.0.0/18 92.61.176.0/20 92.62.176.0/20 92.242.192.0/19 93.110.0.0/16 93.190.24.0/21 94.74.128.0/18 94.101.128.0/20 94.101.176.0/20 94.101.240.0/20 94.139.160.0/19 94.182.0.0/15 94.184.0.0/17 94.232.168.0/21 94.241.128.0/18 95.38.0.0/16 95.80.128.0/18 95.81.64.0/18 95.82.0.0/18 95.82.64.0/18 95.130.56.0/21 95.130.240.0/21 188.34.0.0/16 188.93.64.0/21 188.121.96.0/19 188.121.128.0/19 188.136.128.0/17 188.158.0.0/15 193.189.122.0/23 194.225.0.0/16 195.146.32.0/19 212.16.64.0/19 212.33.192.0/19 212.50.224.0/19 212.80.0.0/19 212.95.128.0/19 212.120.192.0/19 213.176.0.0/19 213.176.32.0/19 213.176.64.0/18 213.195.0.0/18 213.207.192.0/18 213.217.32.0/19 213.233.160.0/19 217.11.16.0/20 217.24.144.0/20 217.25.48.0/20 217.64.144.0/20 217.66.192.0/20 217.66.208.0/20 217.146.208.0/20 217.172.96.0/19 217.174.16.0/20 217.218.0.0/15

Det öppnar proxien, men bara för iranska ip-ranger. Du kan stänga av loggning genom att lägga till dessa rader:

access_log none
cache_store_log none

Avkommentera eller skriv in denna rad, så att inte användare som kommer in via squid kan köra saker via localhost:

http_access deny to_localhost

Spara sedan och stäng genom att trycka ctrl+x och välj j och enter. Starta sedan om servern.

I Ubuntu:

sudo /etc/init.d/squid restart

I CentOS/Redhat, kör detta som root:

service squid start

Obs! Glöm inte att öppna port 3128 i din brandvägg/router så att det går att komma åt proxyn utifrån! Du kan också ställa in vilken port proxyn ska lyssna på genom variabeln http_port i /etc/squid/squid.conf.

När du är klar kan du skicka ett mejl med adressen till: me@austinheap.com eller gr88proxies@googlegroups.com. Skicka inte adressen öppet på Twitter. Mer info och länkar för Windows finns här: http://www.piratpartiet.se/proxy

Guiden baserad på denna engelska guide: http://blog.austinheap.com/2009/06/15/how-to-setup-a-proxy-for-iran-citizens/ och är inte vältestad. Hittar du fel, säg gärna till i kommentarerna. OBS! Gör inte det här om du har en massa viktiga grejer på din dator/server, eller kör kritiska tjänster på den.

Uppdatering: Här finns en färdig konfigurationsfil för squid som tar ett helhetsgrepp på säkerheten och öppnar icke-standardportar i stället för 3128: dev.austinheap.com/iran/squid-iran-ideal.txt Kör gärna på den. Kom ihåg att öppna de portar som anges i filen.

Läs även andra bloggar om , ,