Bouw je Raspberry Pi om tot RSS-machine

© PXimport

Bouw je Raspberry Pi om tot RSS-machine

Geplaatst: 24 juli 2014 - 06:00

Aangepast: 24 november 2022 - 11:01

Koen Vervloesem

Wil je altijd en overal op de hoogte blijven van de laatste nieuwtjes van je favoriete websites? We tonen je hoe je het programma Selfoss op je Raspberry Pi installeert, waarna het computertje de hele dag door de feeds van de aangegeven websites actualiseert.

01 Eigen rss-lezer

Rss-lezers heb je in verschillende vormen. Je kunt er een op je desktop-pc draaien, maar als je dan onderweg bent met je smartphone of op je terras zit met je tablet, heb je geen toegang tot de feeds die op je computer ingelezen zijn. Een alternatief vormen webgebaseerde rss-lezers, zoals het lang populaire Google Reader. Dit soort diensten kun je echter even goed op je eigen server draaien.

De Raspberry Pi, immers een heel zuinig apparaatje, is hiervoor ideaal (ook als printserver). We gaan ervan uit dat er al Raspbian op draait. Voor accessoires kun je hier terecht.

 

© PXimport

02 Selfoss

De bekendste rss-lezer om op je eigen server te installeren, is Tiny Tiny RSS. Ondanks de naam heeft de software enorm veel mogelijkheden. Helaas is het voor een Raspberry Pi net iets te zwaar als je heel wat feeds volgt. Bovendien moet je de configuratie heel wat tweaken om het op een respectabele snelheid te laten werken. Daarom kiezen we in deze op de Raspberry Pi gerichte workshop liever voor Selfoss. Dit programma heeft wat minder mogelijkheden, maar is heel licht en zal daardoor niet zo snel frustreren door lange laadtijden.

 

© PXimport

03 Webserver en php

Om Selfoss te gebruiken, moeten we eerst wat andere software installeren. Allereerst een webserver, want Selfoss is een webgebaseerde dienst. We installeren lighttpd, dit is een lichtgewicht webserver. We hebben ook PHP nodig (daarin is Selfoss geschreven), samen met enkele specifieke PHP-pakketjes. Dat alles kan in één keer met de volgende opdracht nadat je in een PuTTY-venster op je Raspberry Pi ingelogd bent: sudo apt-get install lighttpd php5 php5-cgi php5-cli php5-sqlite php5-gd. Bevestig de installatie met een druk op Y.

 

© PXimport

Wat zijn rss-feeds?

Als je vroeger een aantal favoriete websites had, moest je zelf elke dag die websites bezoeken en lezen wat er nieuw was. In 1997 ontwikkelde Dave Winer al een oplossing: RSS (Really Simple Syndication), een bestandsformaat dat samenvattingen bevat van nieuws. Blogs, maar ook fora en nieuwssites kregen al snel een rss-feed, de naam die zo'n bestand heeft. Je herkent een rss-feed op een website aan het oranje icoontje. Daaronder schuilt de url die je aan je rss-lezer doorgeeft.

Wat doet een rss-lezer?

De rss-feeds van je favoriete website voeg je aan een rss-lezer toe, een programma dat periodiek al die feeds downloadt en nieuwe toevoegingen toont. Zo krijg je per website in één venster te zien welk nieuws er is toegevoegd. Er bestaan afzonderlijke rss-lezers die je op je desktop draait, maar ook webdiensten die rss-feeds lezen. In Internet Explorer open je het menu Extra en dan Feeds zoeken om de rss-feeds op een website te bekijken.

 

© PXimport

04 Download

Op de Selfoss-site staat een groen downloadknopje. Kopieer de link erachter naar het klembord, open een PuTTY-venster naar je Raspberry Pi en typ wget, een spatie, en plak de link door in het PuTTY-venster te rechtsklikken. Druk op Enter waarna het zipbestand van Selfoss op je Raspberry Pi gedownload wordt. Pak het zipbestand uit met sudo unzip -d /var/www/selfoss selfoss-*.zip. Met sudo chown -R www-data:www-data /var/www/selfoss/ geven we de webserver toegang tot de directory.

 

© PXimport

05 Configureer lighttpd

Nu schakelen we nog twee modules voor de webserver in met de opdracht sudo lighttpd-enable-mod fastcgi fastcgi-php. Daarna moeten we nog een instelling van PHP aanpassen. Doe dat met de opdracht sudo nano /etc/php5/cgi/php.ini. Start de zoekfunctie met een druk op Ctrl+W, typ max_execution_time in en druk op Enter. Nano toont nu de juiste regel, daar verander je het getal naast het gelijkheidsteken naar 120. Druk op Ctrl+O om je wijziging op te slaan en Ctrl+X om Nano af te sluiten.

 

© PXimport

06 Configureer Selfoss

Ga daarna naar de map van Selfoss met de opdracht cd /var/www/selfoss/. In die map staat een configuratiebestand voor de webtoegang. Daar passen we iets in aan met de opdracht sudo nano .htaccess. Op een van de eerste regels van het bestand staat #RewriteBase /selfoss. Haal het hekje (#) aan het begin van de regel weg, sla op met Ctrl+O en sluit af met Ctrl+X. Daarna maken we het bestand met de instellingen voor Selfoss klaar door een standaardbestand te kopiëren: sudo cp defaults.ini config.ini. Open het met sudo nano config.ini om instellingen aan te passen.

 

© PXimport

07 Herschrijf urls

Selfoss is voor zijn werking afhankelijk van de mogelijkheid van de webserver om urls te herschrijven. Daarom moeten we nog het een en ander aanpassen in de configuratie van lighttpd. Op de wiki van Selfoss vind je instructies over de lange herschrijfregels. Voer de opdracht sudo nano /etc/lighttpd/lighttpd.conf uit, haal het hekje weg voor de regel met mod_rewrite onder de sectie server.modules en voeg op het einde van het bestand de code uit de wiki toe. Sla je wijzigingen op met Ctrl+O en sluit Nano af met Ctrl+X.

 

© PXimport

08 Automatisch updaten

Het enige dat we nu nog moeten doen is Selfoss automatisch elk uur de rss-feeds laten updaten. Dat kan met sudo nano /etc/cron.hourly/selfoss, waarna je de volgende tekst ingeeft: op de eerste regel #!/bin/bash, daarna /usr/bin/curl -s -S -m 3300 http://127.0.0.1/selfoss/update >>/tmp/selfoss_update.log 2>&1 en op de laatste regel exit 0. Sla op en sluit Nano af, waarna je het bestand uitvoerbaar maakt met sudo chmod +x /etc/cron.hourly/selfoss. Herstart daarna de webserver om voorgaande instellingen door te voeren met sudo service lighttpd restart.

 

© PXimport

09 Eerste gebruik

Surf nu in je browser naar http://IP/selfoss, waarbij IP het IP-adres van je Raspberry Pi is. Dat kan even duren en wellicht krijg je een timeoutmelding, maar dat is enkel de eerste keer omdat Selfoss allerlei zaken moet klaarzetten. Als alles goed gaat, krijg je daarna een webpagina te zien met de melding geen items gevonden en links een aantal menuonderdelen, waaronder markeer gelezen, nieuwste, TAGS en BRON. Het ziet er allemaal wat leeg uit, maar daar gaan we snel iets aan doen door feeds toe te voegen.

 

© PXimport

10 Feed toevoegen

Een feed toevoegen gaat eenvoudig door linksonder op het icoontje van de wolk met de pijl te klikken. Klik dan bovenaan op bron toevoegen. Geef de feed een titel en voeg (optioneel) enkele tags toe, gescheiden door een komma. Kies bij de soort bron voor RSS Feed en vul eronder de url van de feed in. Zodra alles ingevuld is, klik je onder de tekstvelden op opslaan. Overigens kun je bij het type bron ook kiezen voor een YouTube-kanaal, Twitter-gebruiker of Facebook-pagina.

 

© PXimport

11 Update

Selfoss laadt niet standaard de berichten uit een nieuwe feed die je toegevoegd hebt. Daarvoor moet je een update uitvoeren. We hebben onze Raspberry Pi in stap 7 zo geconfigureerd dat Selfoss elk uur zijn feeds updatet, maar je kunt dit updaten ook zelf forceren. Bezoek daarvoor de webpagina http://IP/selfoss/update (waarbij je in plaats van IP het IP-adres van je Raspberry Pi gebruikt). Krijg je de boodschap finished, ga dan terug naar de vorige pagina. Je krijgt dan alle nieuwe berichten in je feeds te zien.

 

© PXimport

12 Importeer feeds

Heb je in een andere feedreader een lijst met feeds die je in Selfoss wilt gebruiken, dan is dat perfect mogelijk. Exporteer eerst je lijst met feeds in je andere feedreader naar een opml-bestand (Outline Processor Markup Language). Klik dan in de interface van Selfoss onderaan op de wolk met de pijl en dan op of importeer opml bestand of google reader. Klik op de knop Bladeren en kies op je computer het opml-bestand. Druk daarna op Deliver my OPML!, waarna alle feeds die in het opml-bestand staan, toegevoegd worden aan Selfoss.

 

© PXimport

13 Navigeren

Links in de interface van Selfoss krijg je een balk te zien waarmee je door je feeds navigeert. Je kunt de nieuwste feeds opvragen, de ongelezen feeds of degene die je een ster gegeven hebt (een soort favorieten). Feeds zijn ook te filteren op tags. Als je aan elke feed een of meerdere tags toegekend hebt tijdens het toevoegen, kun je zo snel bijvoorbeeld enkel het nieuws lezen of enkel berichten over computers. Wanneer je één specifieke feed wilt bekijken, dan kan dat ook nog door onder BRON de gewenste feed te kiezen.

 

© PXimport

14 Lezen

Wil je een bericht lezen, klik dan op de titel van het bericht om de samenvatting ervan te bekijken. Klik op de ster om het bericht bij je favorieten te plaatsen (bijvoorbeeld als je het later wilt lezen) en op openen om het bericht op de originele website te openen. Daarnaast staan ook enkele sociale-mediaknopjes, waarmee je het bericht deelt op Google+, Twitter, Facebook, Delicious of het naar iemand mailt of het in Pocket of Readability opslaat om later te lezen.

 

© PXimport

15 Sneltoetsen

Met de muis door je feeds bladeren is niet altijd even handig als je er heel wat hebt. Gelukkig kent Selfoss heel wat sneltoetsen, die overigens erg lijken op die van Google Reader. Was je dus vroeger een verwoed gebruiker van Google Reader, dan zul je snel met Selfoss aan de slag kunnen. Zo selecteer en open je met de spatiebalk het volgende bericht, met S geef je het huidige bericht een ster of verwijder je die en met V open je de url van het bericht in een nieuw tabblad.

 

© PXimport

16 Zoeken

Heb je al wat meer feeds verzameld, dan volstaat het wellicht niet meer om op tags te filteren om even snel bij te zijn met specifiek nieuws. Gelukkig ondersteunt Selfoss ook een zoekfunctie. Klik linksboven op het vergrootglas, waarna er een zoekvenster verschijnt. Typ daarin je zoekterm en druk op Enter, waarna je enkel de berichten te zien krijgt waarin die zoekterm vermeld wordt. Deze kun je stuk voor stuk lezen en met markeer gelezen linksboven als gelezen markeren.

 

© PXimport

17 Beveiliging

Wil je niet dat iedereen op je thuisnetwerk je feeds bekijkt, open dan het configuratiebestand met de opdracht sudo nano /var/www/selfoss/config.ini. Vul daar achter username= een gebruikersnaam in. Achter password= komt niet je wachtwoord, maar een hash ervan. Surf daarvoor naar http://IP/selfoss/password/ met IP het IP-adres van je Raspberry Pi, geef een wachtwoord op en klik op generate password. Kopieer de lange tekenreeks, plak die achter password= in het configuratiebestand en sla het op. Vanaf nu vereist Selfoss dat je je aanmeldt.

 

© PXimport

18 Lezen

In het configuratiebestand staan nog wat interessante instellingen. Je homepage is standaard een pagina met de nieuwste berichten. Wil je liever de ongelezen berichten zien, verander dan met sudo nano /var/www/selfoss/config.ini de regel homepage=newest in homepage=unread. Krijg je liever je favorieten te zien, maak er dan homepage=starred van. Voeg je achter unread_order= de tekst asc toe, dan worden ongelezen berichten van oud naar nieuw getoond in plaats van andersom. Tot slot is auto_mark_as_read=1 handig: berichten die je leest worden dan automatisch als gelezen gemarkeerd.

 

© PXimport

19 Sociale-mediaknopjes

De kans is klein dat je alle sociale-mediaknopjes gebruikt die Selfoss standaard toont. De overbodige ballast is eenvoudig uit te schakelen. Ook daarvoor moet je in het configuratiebestand config.ini duiken. Standaard staat er een regel share=gtfprde in. Dat lijkt wat cryptisch, maar de opeenvolgende letters stellen gewoon alle getoonde sociale media voor: Google, Twitter, Facebook, Pocket, Readability, Delicious en e-mail. Als je bijvoorbeeld enkel e-mail, Facebook en Twitter wilt tonen, in die volgorde, maak er dan share=eft van.

 

© PXimport

Port forwarding

Wil je ook vanaf buiten je thuisnetwerk toegang hebben tot de rss-feeds op je Raspberry Pi, dan moet je port forwarding in je router instellen. Je laat dan een bepaalde poort op het IP-adres van je router doorverwijzen naar poort 80 van de webserver op je Raspberry Pi. Bekijk eens in de handleiding van je router hoe dat gaat. Vaak heet de functionaliteit port forwarding, LAN servers of iets dergelijks.

 

© PXimport

Ook van buitenaf

Nadat je port forwarding op je router ingesteld hebt, bezoek je van buiten je netwerk je Selfoss-website via de url http://IP:POORT/selfoss/, waarbij IP het externe IP-adres van je router is (te vinden door www.watismijnip.nl te bezoeken vanuit je thuisnetwerk) en POORT het poortnummer dat je in de instellingen bij port forwarding hebt ingesteld. Let op: Selfoss gebruikt geen SSL, dus heb je gevoelige zaken in je feeds staan, surf dan via een VPN.

Deel dit artikel
Voeg toe aan favorieten
ID.nl logo

ID.nl, onderdeel van Reshift BV, is in 2022 gestart en uitgegroeid tot de meest toonaangevende en complete consumentensite van Nederland. Het doel van ID.nl is om de consument te helpen met alle technologie die hoort bij het dagelijks leven: van smart-health-meters tot e-bikes, van warmtepompen tot zonnepanelen - en alles daar tussenin!

Duidelijk, betrouwbaar en onafhankelijk: ID.nl maakt moeilijke dingen makkelijk.

Contact

ID.nl

Nijverheidsweg 18

2031 CP Haarlem

info@id.nl

Telefoon: 023-5430000