196 γραμμές
14 KiB
Markdown
196 γραμμές
14 KiB
Markdown
|
+++
|
|||
|
title = 'Παραμετροποιώντας τον slrn'
|
|||
|
date = '1999-03-01T00:00:00Z'
|
|||
|
description = ''
|
|||
|
author = 'Κώστας Κωτσοκάλης(mailto:C.Kotsokalis@ece.ntua.gr)'
|
|||
|
issue = ['Magaz 14']
|
|||
|
issue_weight = 2
|
|||
|
+++
|
|||
|
|
|||
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
*Εισαγωγικά: Ο slrn είναι ένας news (usenet) reader. \'Αλλοι news readers που ενδεχομένως έχετε υπόψη και χρησιμοποιείτε είναι το γνωστό module του Netscape
|
|||
|
Communicator, ο knews, ο krn του KDE, ο tin, ο nn, ο News Peruser και άλλοι. Ο slrn ανήκει στον κατηγορία των text-based news readers, δηλαδή μπορείτε να τον
|
|||
|
χρησιμοποιείτε στην κονσόλα ή σε κάποιο xterm. Παρ\'όλο που αυτό εκ πρώτης όψεως είναι απωθητικό στον σημερινό everything-should-be-graphical κόσμο των
|
|||
|
υπολογιστών, στην πραγματικότητα ο slrn είναι εξαιρετικά εργονομικός και χρησιμοποιεί menus τα οποία δεν θα πρέπει να δυσκολέψουν κανέναν. Ο slrn είναι η
|
|||
|
συνήθως η επιλογή των linux users που θέλουν έναν ελαφρύ σε απαιτήσεις news reader, με όλη τη λειτουργικότητα που μπορεί να απαιτεί κανείς αλλά χωρίς τα
|
|||
|
\`\`bells and whistles\'\' των περισσότερων γραφικών news readers. Είναι προφανές πως κάποιοι δεν θα θέλουν να αφήσουν τον γραφικό news reader τους, όμως μια
|
|||
|
δοκιμή νομίζω πως θα τους πείσει ότι ο slrn είναι όλα όσα χρειάζονται.*
|
|||
|
|
|||
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|||
|
|
|||
|
**1. Κάτι ακόμα\...**
|
|||
|
--------------------------------------------
|
|||
|
|
|||
|
**2. Λειτουργία offline**
|
|||
|
------------------------------------------------
|
|||
|
|
|||
|
**3. Πολλαπλοί servers**
|
|||
|
-----------------------------------------------
|
|||
|
|
|||
|
**4. Κλείνοντας**
|
|||
|
----------------------------------------
|
|||
|
|
|||
|
|
|||
|
### [1. Κάτι ακόμα\...]{#s1}
|
|||
|
|
|||
|
Στο άρθρο αυτό πρόκειται να μιλήσουμε για το πώς θα κάνουμε τον slrn να υποστηρίζει offline reading \-- πράγμα αναγκαίο με τα εξωφρενικά τιμολόγια του (π)ΟΤΕ
|
|||
|
\-- και επιπλέον πως θα υποστηρίζει πολλαπλούς news servers. Ακόμα θα δώσουμε κάποια hints για την πιο αποδοτική χρήση του και μερικά configuration directives.
|
|||
|
|
|||
|
Για να χρησιμοποιήσετε τον slrn κατ\'αυτόν τον τρόπο θα πρέπει να πάρετε και να κάνετε compile τον slrn καθώς και μια αναγκαία βιβλιοθήκη, την slang. Αυτά
|
|||
|
έρχονται μαζί με τα περισσότερα distributions, αλλά στη RedHat τουλάχιστον που χρησιμοποιώ εγώ λείπουν αναγκαία πράγματα, ενώ οι εκδόσεις του slrn και της slang
|
|||
|
που περιέχονται είναι σχετικά παλιές.
|
|||
|
|
|||
|
Τον πηγαίο κώδικα για αυτά τα δύο θα βρείτε στα:
|
|||
|
|
|||
|
1. <ftp://space.mit.edu/pub/davis/slang/slang1.2.2.tar.gz> ή <ftp://ftp.ntua.gr/pub/lang/slang/slang/slang1.2.2.tar.gz>
|
|||
|
2. <ftp://space.mit.edu/pub/davis/slrn/slrn0.9.5.4.tar.gz> ή <ftp://ftp.ntua.gr/pub/lang/slang/slrn/slrn0.9.5.4.tar.gz>
|
|||
|
|
|||
|
|
|||
|
### [2. Λειτουργία offline]{#s2}
|
|||
|
|
|||
|
Για να διαβάσετε τα newsgroups που σας ενδιαφέρουν offline, πρέπει να εγκαταστήσετε και το slrnpull που συνοδεύει τον slrn (τα sources του βρίσκονται στο ίδιο
|
|||
|
αρχείο με αυτά του slrn). Αφού κάνετε compile και εγκαταστήσετε την slang, τον slrn και το slrnpull (οδηγίες για αυτά θα βρείτε στα READMEs, INSTALLs κλπ που
|
|||
|
συνοδεύουν τον πηγαίο κώδικα), πρέπει να κάνετε τα παρακάτω.
|
|||
|
|
|||
|
Έστω ότι έχετε ένα μόνο news server από τον οποίο διαβάζετε άρθρα. Τότε, φτιάχνετε τον κατάλογο /var/spool/slrnpull και μέσα σε αυτόν φτιάχνετε ένα αρχείο με
|
|||
|
όνομα slrnpull.conf με την παρακάτω μορφή:
|
|||
|
|
|||
|
# default: katebase ews 2000 articles apo ton news server, krathse
|
|||
|
# ta 30 meres prin to expire.
|
|||
|
default 2000 30
|
|||
|
|
|||
|
# newsgroup entries
|
|||
|
newsgroup1
|
|||
|
newsgroup2
|
|||
|
newsgroup3
|
|||
|
|
|||
|
\...όπου αντί για newsgroup\[1,2,3\] βάζετε τα ονόματα των newsgroups που σας ενδιαφέρουν, π.χ. comp.os.linux.kernel, comp.lang.c, soc.culture.greek,
|
|||
|
comp.unix.programmer κ.ο.κ. Στη συνέχεια φτιάχνετε στο home directory σας ένα αρχείο με το όνομα .slrnrc στο οποίο βάζετε τις εξής επιλογές:
|
|||
|
|
|||
|
set spool_inn_root "/var/spool/slrnpull"
|
|||
|
set spool_root "/var/spool/slrnpull/news"
|
|||
|
set spool_nov_root "/var/spool/slrnpull/news"
|
|||
|
set use_slrnpull 1
|
|||
|
set read_active 1
|
|||
|
set server_object "spool"
|
|||
|
|
|||
|
Αυτά δεν είναι τα μόνα options που μπορείτε να βάλετε στο .slrnrc σας, υπάρχουν πάρα πολλά ακόμα που ρυθμίζουν την συμπεριφορά του slrn σχεδόν όσο εσείς θέλετε.
|
|||
|
Στη συνέχεια του άρθρου θα δώσουμε κάποια τέτοια options που ο υπογράφων έχει βρει χρήσιμα.
|
|||
|
|
|||
|
Αν έχετε κάνει τα παραπάνω, τρέξτε
|
|||
|
|
|||
|
slrnpull -d /var/spool/slrnpull -h {news_server}
|
|||
|
|
|||
|
, όπου {news\_server} το hostname του news server σας. Τότε θα έρθουν για πρώτη φορά όλα τα άρθρα που περιλαμβάνονται στα newsgroups που ορίσατε στο
|
|||
|
slrnpull.conf, ενώ από εκεί και πέρα κάθε φορά που θα δίνετε την παραπάνω εντολή θα έρχονται μόνο τα καινούργια άρθρα. Μην ξεχνάτε που και που να τρέχετε την
|
|||
|
εντολή ` slrnpull -d /var/spool/slrnpull --expire` που αναλαμβάνει να σβήσει τα άρθρα που είναι παλαιότερα από τον αριθμό των ημερών
|
|||
|
που έχετε ορίσει στο slrnpull.conf. Αφού τρέξετε το slrnpull, δώστε \`\`slrn -create\'\' και μετά \`\`slrn -C\'\' και θαυμάστε τα αποτελέσματα.
|
|||
|
|
|||
|
Προτείνουμε να διαβάσετε και λίγο παρακάτω πριν τρέξετε τον slrn, για να δείτε τι άλλες επιλογές μπορείτε να βάλετε στο .slrnrc και επομένως να τον
|
|||
|
χρησιμοποιήσετε από τον αρχή με όλη του τη λειτουργικότητα.
|
|||
|
|
|||
|
|
|||
|
### [3. Πολλαπλοί servers]{#s3}
|
|||
|
|
|||
|
Για να διαβάζετε από πολλούς news servers πρέπει να κάνετε τα εξής:
|
|||
|
|
|||
|
1. Αντί για ένα μόνο directory κάτω από το /var/spool φτιάχνετε ένα για κάθε news server. Έτσι θα πρέπει να έχετε τα directories /var/spool/newsserver1,
|
|||
|
/var/spool/newsserver2, κλπ, όπου αντί για newsserver1, newsserver2 μπορείτε να βάλετε τα ονόματα που θέλετε.
|
|||
|
2. Σε κάθε ένα από αυτά τα directories φτιάχνετε ένα slrnpull.conf αρχείο όπως πιο πάνω, με τα groups που θέλετε κάθε φορά και ανάλογα με τον news server στον
|
|||
|
οποίο αντιστοιχεί το configuration file.
|
|||
|
3. Φτιάχνετε περισσότερα από ένα .slrnrc αρχεία στο home direstory σας, π.χ. .slrnrc.ns1, .slrnrc.ns2, κλπ, οπού και πάλι αντί για ns1, ns2,\... μπορείτε να
|
|||
|
έχετε όποιο όνομα επιθυμείτε (για μνημονικούς λόγους). Σε κάθε ένα από αυτά αλλάζετε μόνο τα spool\_inn\_root, spool\_root και spool\_nov\_root ανάλογα με
|
|||
|
τον news server στον οποίο αντιστοιχεί το configuration file. Επίσης φτιάχνετε κενά αρχεία με ονόματα .jnewsrc.ns1, .jnewsrc.ns2, κοκ.
|
|||
|
4. Εάν επιθυμείτε και για λόγους ταχύτητας φτιάχνετε aliases όπως τα παρακάτω:
|
|||
|
1. `alias sp "slrnpull -d /var/spool/newsserver1 -h news_server1_hostname; slrnpull -d /var/spool/newsserver2 -h news_server2_hostname"`
|
|||
|
(προφανώς βάζετε ένα entry για κάθε news server, οπότε δίνοντας απλά \`\`sp\'\' έρχονται τα νέα άρθρα από όλους τους news servers σας\... Εναλλακτικά
|
|||
|
μπορείτε να φτιάξετε και κάποιο script για αυτή τη δουλειά).
|
|||
|
2. `alias ns1 "cd $HOME; \cp .slrnrc.ns1 .slrnrc; \cp .jnewsrc.ns1 .jnewsrc; slrn -C; \cp .jnewsrc .jnewsrc.ns1"`
|
|||
|
3. `alias ns2 "cd $HOME; \cp .slrnrc.ns2 .slrnrc; \cp .jnewsrc.ns2 .jnewsrc; slrn -C; \cp .jnewsrc .jnewsrc.ns2"`
|
|||
|
4. `alias ns3 "cd $HOME; \cp .slrnrc.ns3 .slrnrc; \cp .jnewsrc.ns3 .jnewsrc; slrn -C; \cp .jnewsrc .jnewsrc.ns3"`
|
|||
|
|
|||
|
Στη συνέχεια, δίνοντας τα παραπάνω aliases, έχετε κάτι σαν \`\`έναν slrn για κάθε news server\'\'.
|
|||
|
|
|||
|
|
|||
|
### [4. Κλείνοντας]{#s4}
|
|||
|
|
|||
|
Έχοντας κάνει τα παραπάνω θα πρέπει να έχετε τον slrn παραμετροποιημένο για offline reading και πολλαπλούς news servers. Ακόμα όμως και αν δεν σας ενδιαφέρουν
|
|||
|
αυτά τα δύο (leased line? direct internet connection?), μπορείτε να χρησιμοποιήσετε τον slrn για να διαβάζετε news. Απλά φτιάχτε ένα .slrnrc file και τρέξτε
|
|||
|
slrn.
|
|||
|
|
|||
|
Έτσι ή αλλιώς, θα χρειαστείτε κάποια επιπλέον configuration options στο .slrnrc σας. Κάποια τέτοια είναι τα παρακάτω:
|
|||
|
|
|||
|
# Oi parakatw tesseris grammes einai gia na orisete to onoma sas kai na
|
|||
|
# mhn fainetai san root@localhost.localdomain
|
|||
|
hostname "ece.ntua.gr"
|
|||
|
set username "C.Kotsokalis"
|
|||
|
set replyto "C.Kotsokalis@ece.ntua.gr"
|
|||
|
set realname "Constantinos A. Kotsokalis"
|
|||
|
|
|||
|
# O xairetismos sta follow-ups
|
|||
|
set followup "On %d, %r wrote:"
|
|||
|
|
|||
|
# Oi browsers pou tha anoigoun analoga me to pws trexete
|
|||
|
# ton slrn. Gia ta deite ta URLs pou periexontai se ena
|
|||
|
# article, patate ``U'' (kefalaio).
|
|||
|
set Xbrowser "netscape -remote 'openURL(%s)' &"
|
|||
|
set non_Xbrowser "lynx %s"
|
|||
|
|
|||
|
# Apo poy erxeste...
|
|||
|
set organization "National Technical University of Athens"
|
|||
|
|
|||
|
# Opws prin, gia offline reading. An den to xrhsimopoieite,
|
|||
|
# oi epomenes 6 grammes mporoun na fygoun apo edw.
|
|||
|
set spool_inn_root "/var/spool/slrnpull"
|
|||
|
set spool_root "/var/spool/slrnpull/news"
|
|||
|
set spool_nov_root "/var/spool/slrnpull/news"
|
|||
|
set use_slrnpull 1
|
|||
|
set read_active 1
|
|||
|
set server_object "spool"
|
|||
|
|
|||
|
# MIME & swsta charsets
|
|||
|
set use_mime 1
|
|||
|
set mime_charset "iso-8859-7"
|
|||
|
|
|||
|
# Gia na epitrepei na stelnete articles me grammes pou exoun
|
|||
|
# perissoteres apo 80 sthles
|
|||
|
set reject_long_lines 2
|
|||
|
|
|||
|
# Gia na mhn baraei synexeia to bell alla na kanei flash
|
|||
|
set beep 2
|
|||
|
|
|||
|
# Gia na deixnei belos anti gia mpara
|
|||
|
set display_cursor_bar 0
|
|||
|
|
|||
|
# Gia na mhn sas rwtaei gia OTI pate na kanete
|
|||
|
set confirm_actions 0
|
|||
|
|
|||
|
# Sorting method: Prwta kanei to threading twn articles,
|
|||
|
# kai meta ta ta3inomei me bash thn hmeromhnia apostolhs,
|
|||
|
# to pio palio paei prwto sth lista.
|
|||
|
set sorting_method 11
|
|||
|
|
|||
|
# Gia na mhn rwtaei posa arthra na ferei, an o ari8mos tous
|
|||
|
# 3epernaei to noumero pou orizete edw. An orisete otidhpote
|
|||
|
# ektos apo 0, estw X, kai ta nea ar8ra se kapoio group einai
|
|||
|
# perissotera apo X, tha sas rwthsei posa na ferei (me default
|
|||
|
# X). Bazontas 0 fernei ola ta nea ar8ra, osa kai an einai.
|
|||
|
set query_read_group_cutoff 0
|
|||
|
|
|||
|
# Automath xrhsh tou metamail otan xreiazetai, prepei
|
|||
|
# na to exete egkatasthsei.
|
|||
|
set use_metamail 1
|
|||
|
|
|||
|
# An diabazete news ws root, prepei na balete thn parakatw
|
|||
|
# grammh gia na trexei to metamail swsta.
|
|||
|
set metamail_command "metamail -r"
|
|||
|
|
|||
|
Υπάρχουν ακόμα πάρα πολλά options που μπορείτε να χρησιμοποιήσετε, και θα τα βρείτε στα sample files που συνοδεύουν τον slrn. Για παράδειγμα, μπορείτε να
|
|||
|
ορίσετε ότι χρώματα θέλετε, όπως επίσης και τον τρόπο με τον οποίο ο slrn κάνει scoring στα άρθρα που διαβάζει. Το scoring είναι μια μέθοδος για να
|
|||
|
κατηγοριοποιεί τα άρθρα ανάλογα με τη σημασία τους, και με βάση διάφορα κριτήρια που εσείς ορίζετε. Πρόκειται για ένα από τα πιο δυνατά σημεία του slrn, το
|
|||
|
οποίο όμως είναι κάπως πιο προχωρημένο. Όταν με το καλό εντρυφήσετε στα υπόλοιπα, ρίχτε του μια ματιά.
|
|||
|
|
|||
|
Καλή ανάγνωση!!!
|
|||
|
|