Lyssna på radio – via terminalen

15 02 2009

Terminalen lämpar sig väl för mycket, så varför inte även för att lyssna på radio?

Skrev ihop ett snabbt script för de kanaler jag personligen kan tänkas vara intresserad av. Förhoppningsvis är det inte alltför svårt att modifiera det till eget tycke.

#!/bin/sh

#Preferred player and options
PLAYER="mplayer -really-quiet" 

if [ -n "$1" ]; then
	DI_FM_GENRE="$1"
	$PLAYER http://www.di.fm/mp3/$DI_FM_GENRE.pls
fi

#CHANNELS
DI_PSY=http://www.di.fm/mp3/goapsy.pls
DI_HS=http://www.di.fm/mp3/hardstyle.pls
DI_HC=http://www.di.fm/mp3/hardcore.pls
DI_BREAKS=http://www.di.fm/mp3/breaks.pls
SKY_RAP=http://www.sky.fm/mp3/classicrap.pls
P1=mms://wm-live.sr.se/SR-P1-High
P2=mms://wm-live.sr.se/SR-P2-High
P3=mms://wm-live.sr.se/SR-P3-High
P4=mms://wm-live.sr.se/SR-Radiosporten-High
P3_DIN_GATA=mms://wm-live.sr.se/sr-dingata-high
P3_STREET=mms://wm-live.sr.se/SR-P3Street-High
FAVORITER=mmsh://lugna.str.mtgradio.dgcsystems.net/lugna/?MSWMExt=.asf
MEGAPOL=mms://live.alleredge.com/AE_MixMegapol_Mid
RADIOSEVEN=http://www.radioseven.se/128.pls
VOICE=mms://live.alleredge.com/AE_TheVoiceSE_Mid

echo -e "33[1m
0  -> Help33[0m"
echo '
1  -> di.fm | goa/psy
2  -> di.fm | hardstyle
3  -> di.fm | hardcore
4  -> di.fm | breaks
--------------------------
5  -> sky.fm | classic rap
--------------------------
6  -> SR | P1
7  -> SR | P2
8  -> SR | P3
9  -> SR | P4
--------------------------
10 -> SR | Din Gata
11 -> SR | Street
--------------------------
12 -> Lugna Favoriter
13 -> Mix Megapol
14 -> Radioseven
15 -> The Voice
---
What do you want to listen to today?'

read station
if [ "$station" = "1" ]; then
	$PLAYER "$DI_PSY"
elif [ "$station" = "2" ]; then
	$PLAYER "$DI_HS"
elif [ "$station" = "3" ]; then
	$PLAYER "$DI_HC"
elif [ "$station" = "4" ]; then
	$PLAYER "$DI_BREAKS"
elif [ "$station" = "5" ]; then
	$PLAYER "$SKY_RAP"
elif [ "$station" = "6" ]; then
	$PLAYER "$P1"
elif [ "$station" = "7" ]; then
	$PLAYER "$P2"
elif [ "$station" = "8" ]; then
	$PLAYER "$P3"
elif [ "$station" = "9" ]; then
	$PLAYER "$P4"
elif [ "$station" = "10" ]; then
	$PLAYER "$P3_DIN_GATA"
elif [ "$station" = "11" ]; then
	$PLAYER "$P3_STREET"
elif [ "$station" = "12" ]; then
	$PLAYER "$FAVORITER"
elif [ "$station" = "13" ]; then
	$PLAYER "$MEGAPOL"
elif [ "$station" = "14" ]; then
	$PLAYER "$RADIOSEVEN"
elif [ "$station" = "15" ]; then
	$PLAYER "$VOICE"
elif [ "$station" = "0" ]; then
	echo '
	Usage: Pick the station you want. 
	For di.fm, you can specify genre as an argument; radio <genre>

	Example: radio house'
else
	echo 'You suck.'
fi




Färglägg rtorrent

11 02 2009

Det finns många anledningar till att byta från t.ex Windows till Gnu/Linux.
Om vi ska tala enskilda applikationer så är rtorrent en av de största, givetvis i kombination med Gnu Screen.
Vissa tycker dock att det kan vara svårt att få någon överblick över aktiva/klara torrents, och det har också hörts klagomål över varför det inte finns stöd för färg i rtorrent, som det finns i de flesta ncurses-baserade program. Detta ska vi råda bot på nu.

Se till att ha svn installerat, vi ska bygga rtorrent och libtorrent från källkod och applicera en patch;
$ mkdir libtorrent && svn co svn://rakshasa.no/libtorrent/trunk
$ mkdir rtorrent && svn co svn://rakshasa.no/rtorrent/trunk
Vi börjar med att kompilera libtorrent:
$ cd libtorrent && ./autogen.sh && ./configure && make
# make install

Nu fortsätter vi med rtorrent, men först måste vi applicera patchen;
$ cd rtorrent
$ wget http://libtorrent.rakshasa.no/attachment/ticket/1382/rtorrent-0.8.4-SVN-canvas-fix.patch
$ patch -p1 < rtorrent-0.8.4-SVN-canvas-fix.patch
$ ./autogen.sh && ./configure && make
# make install

Efter lyckad patchning, kompilering och installation är det nu dags att lägga till färgerna i ~/.rtorrentrc, syntaxen ser ut så här:
set_done_fg_color = 2
set_done_bg_color = -1
set_active_fg_color = 1
set_active_bg_color = -1

Färgkoderna är som följer;
0 = Svart
1 = Röd
2 = Grön
3 = Gul
4 = Blå
5 = Lila
6 = Cyan
7 = Vit
Om värdet är -1 används standardfärgen för terminalen.

Slutresultatet kan se ut så här:

rtorrent1





Direkt kopiering av musik som spelas i MPD – via terminalen

9 02 2009

På den gamla onda tiden när jag fortfarande körde Windows använde jag ett halvbra plugin för att direkt kunna skicka den låt jag lyssnar på till t.ex min bärbara mp3spelare.

Nu använder jag då istället MPD, och när jag hör en bra låt jag vill ha med mig on-the-go tar det ett tag att leta sig genom mappstrukturen till rätt mapp och låt.
Givetvis går detta att lösa på ett mycket smidigare sätt:

mvmpd:
#!/bin/sh
TARGET=/mnt/mp3/MUSIC
MUSIC_DIR=/mnt/Music
MPD_PATH=$(mpc --format '[[%file%]]'|head -1)
cp -v "$MUSIC_DIR/$MPD_PATH" $TARGET





Utomhustemperatur – via terminalen.

8 02 2009

För att kunna bestämma sig för om det är möjligt att gå ut kan det vara bra att ha koll på rådande utomhustemperaturer. Det finns en hel del sådana tjänster tillgängliga på nätet, som till exempel smhi.

Dock är nackdelen att man då måste starta sin webbläsare och surfa in på lämplig sida och där klicka sig vidare till sin stad… vilket kan ta onödigt lång tid. Finns det då inget smidigare sätt att lösa detta på?

Hittade temperatur.nu, och att få ut intressant information verkade inte särskilt svårt.

#!/bin/sh
curl -s http://www.temperatur.nu/termo/stockholm/temp.txt

Detta är fullt tillräckligt för att visa temperaturen i stockholms centrum i formatet 1.1. Dock varken särskilt snyggt eller användbart; Vi har ingen möjlighet att skicka med argument till scriptet, vilket gör att vi måste ändra i det manuellt varje gång.

#!/bin/sh
if [ $# -eq 0 ]; then
echo "Usage: $0 "
exit 1
fi
if [ -n "$1" ]; then
PLACE="$1"
echo 'Temperatur i' $PLACE `curl -s http://www.temperatur.nu/termo/$PLACE/temp.txt` '°C'
else
echo 'fail'
fi

Om vi försöker köra scriptet utan argument möts vi nu av en fin hjälptext som berättar hur vi ska göra.
Om vi tänker oss att scriptet ligger i $HOME/bin/temp kör vi det alltså så här;

temp stockholm
Temperatur i stockholm 1.2 °C








Designa en webbplats som denna med WordPress.com
Kom igång