| 1 | <html> | 
| 2 | <head> | 
| 3 | <title>joko's sample notes - 2003-01 - InventoryCleanupAndRefactoring</title> | 
| 4 | <link href="/horde/css.php?app=chora" rel="stylesheet" type="text/css" /> | 
| 5 | </head> | 
| 6 | <body> | 
| 7 |  | 
| 8 |  | 
| 9 | <pre> | 
| 10 |  | 
| 11 |  | 
| 12 | <hr/> | 
| 13 |  | 
| 14 | AIMS: | 
| 15 | - Convert this document into a data-structure and back. | 
| 16 | - Don't loose a bit of information. | 
| 17 | - Make possible to link to all resources available. | 
| 18 |  | 
| 19 | for working with it | 
| 20 | - global metadata | 
| 21 | - cvs-loginfo/commitinfo | 
| 22 | - ItemMetadata | 
| 23 | - ItemStatus (open, closed and stuff) | 
| 24 | - ItemAuthor | 
| 25 | - ItemType | 
| 26 | - ItemIdentifier | 
| 27 | - references/associations to/from | 
| 28 | - word metadata | 
| 29 | - link to target | 
| 30 | - show target as ... | 
| 31 | - overview of all gathered metadata (at the bottom) | 
| 32 |  | 
| 33 | for rendering it | 
| 34 | - render <target> at <locator> as <that-type> [in <this-mode>] [to this <othertarget>] | 
| 35 |  | 
| 36 | <hr/> | 
| 37 |  | 
| 38 | joko@netfrag.org - sample stack: | 
| 39 |  | 
| 40 | o [task by joko] introduced "dispatchmail" to add mail2news-functionality to "recieveMail" (collector@netfrag.org) | 
| 41 | x [task by joko] migrated joko_mail from "receiveMail" to "dispatchmail" | 
| 42 | x [bug from joko] what about mailing from the cli / mails sent from the system (e.g. via CVSSpam): | 
| 43 | mail is sent out coming from <username>@quepasa.netfrag.org | 
| 44 | --> how to configure just having <username>@netfrag.org right here??? | 
| 45 | x [resolved by jonen] CVSSpam: janosch@netfrag.org: | 
| 46 | x cd /etc/mail | 
| 47 | x nano sendmail.mc | 
| 48 | x add/replace line: MASQUERADE_AS(`netfrag.org') | 
| 49 | x make | 
| 50 | x /etc/init.d/sendmail reload | 
| 51 | o [bug from joko] "su root" is needed sometimes | 
| 52 | else PATH is not set correctly | 
| 53 | and maybe something other | 
| 54 | compiling fails always | 
| 55 | x [task by joko] these items already have been refactored into other Tasks, Notes and/or Bug Requests - this Note is just FYI. | 
| 56 | o [task by joko] dispatchmail - project work | 
| 57 | x README.pod -> README.html | 
| 58 | x link with "topics.html" properly | 
| 59 | x write something about data-/control-flow to README.pod | 
| 60 |  | 
| 61 | o look (in detail) at Cyrus Netnews | 
| 62 | [...] | 
| 63 | The IMAP server can export netnews newsgroups as IMAP mailboxes. | 
| 64 | [...] | 
| 65 | o collectnews, rmnews, syncnews | 
| 66 | x seems to make an external web-based newsreader unneccessary!!! | 
| 67 |  | 
| 68 | o tie together mail, news and html | 
| 69 | c write mini-howto | 
| 70 |  | 
| 71 | o link with erfrakon | 
| 72 |  | 
| 73 | o sieve? | 
| 74 |  | 
| 75 | o post some old mails to news.netfrag.org! | 
| 76 |  | 
| 77 | o what about "dev@netfrag.org"? | 
| 78 |  | 
| 79 | o nfo/perl/libs | 
| 80 | x ts | 
| 81 | x outlook2ldap | 
| 82 | x dispatchmail | 
| 83 | o get the essence (project- and development work - the whole workflow) out of it! write it down! in detail! | 
| 84 |  | 
| 85 | o netfrag.org-workflow: | 
| 86 | o technical questions to support@netfrag.org? | 
| 87 | o publish them via news! | 
| 88 | o queue them into / integrate with TUTOS somehow!!! | 
| 89 |  | 
| 90 | o new threads@news.netfrag.org: | 
| 91 | x ctlinnd newgroup nfo.support.queue | 
| 92 | x ctlinnd newgroup nfo.support.faq | 
| 93 |  | 
| 94 | x new account for janosch@news.netfrag.org | 
| 95 | x nano /etc/news/nnrp.access | 
| 96 | x added line: *:Read Post:janosch:janosch:* | 
| 97 |  | 
| 98 | o check out from cvs-repository: | 
| 99 | o joko/doc -> /home/joko/public_html/computing/overview/topics/ | 
| 100 | o leaded to (A, B and C): see <a href="../topics/home2web.html">home2web</a> | 
| 101 |  | 
| 102 | o added user@netfrag.org: | 
| 103 | x adduser: collector/col§$ | 
| 104 |  | 
| 105 | o about: some sample items occoured 2003-01-17 until 2003-01-26. | 
| 106 | what to do with that? | 
| 107 | o have all items stored in other applications conveniently. | 
| 108 | o be able to have items or references to them *archived* centrally | 
| 109 | o be able to access informations via *one* interface. | 
| 110 | actually *multiple* interfaces should be possible | 
| 111 | - the aim here is to get everything together (INTEGRATE!) (mnoGoSearch first! Torus::Archive later?) | 
| 112 |  | 
| 113 | o refactor topics: | 
| 114 | o make global-accessible@netfrag.org | 
| 115 | o introduce subtopics | 
| 116 | o sysadmin tasks | 
| 117 | o janosch's, jonen's and joko's tasks | 
| 118 |  | 
| 119 | o start project "admintools" @ nfo/perl/scripts - including | 
| 120 | o getip.pl | 
| 121 | o notify.pl | 
| 122 | x on uml-event: up/down/reboot | 
| 123 | o on news-post (dispatchmail: mail2news) | 
| 124 | o on cvs-checkout (done on interval with joko/doc - see above) | 
| 125 | o on build (build.pl) | 
| 126 | o some tools from dispatchmail | 
| 127 | o dispatchmail itself! | 
| 128 | o | 
| 129 |  | 
| 130 | o [idea] ;-)   for symbols (in general) | 
| 131 | - o = Open Task | 
| 132 | - x = Closed Task | 
| 133 | (- [<TopicName>] = name of topic - fixed/proposed) | 
| 134 | - [<TopicType> by|for <UserName>] = | 
| 135 | - type of topic - fixed/proposed | 
| 136 | - username who submitted this item / should this item be assigned to | 
| 137 | - this could become a language for describing the workflow | 
| 138 | - this proposal should be the shortcut-form in wiki-style: (e.g. make 'tiki-workflow' from that?) | 
| 139 | - more verbose (e.g. XML) - forms could/should become possible (e.g. 'WFML') (WorkFlow Markup|Modeling Language) | 
| 140 | - TODO: refactor this document after further commits to show off refactoring process through cvs-revisioning! | 
| 141 | o required for this: link to a page which shows the history of a document not as verbose as (e.g.) chora does | 
| 142 | - d = from 'tbd': to-be-discussed | 
| 143 | - c = cancelled | 
| 144 |  | 
| 145 | o [idea] ;-)   for symbols (in _this_ document here) (parser|engine behaviour modification) | 
| 146 | - R = from 'tbr': to-be-refactored | 
| 147 | - r = already refactored elsewhere | 
| 148 | - an "r" may also mean "reference" ;-) | 
| 149 | - make 'r-http://netfrag.org/to/another/reference/wrapped/via/http/' possible in documentation | 
| 150 | - also the shortcut form: [r:/to/another/reference/wrapped/via/http/] | 
| 151 | - this - and only this - should be the minimalst requried definition of a "reference" | 
| 152 | - an internet "link" - however needs some more metadata around it: an "url" and a "caption" - what about these? | 
| 153 | - either fetch them from archive-metadata of this reference ... | 
| 154 | - ... or use the name directly as caption and build the url against a known redirector handler which | 
| 155 | accesses the archive-metadata | 
| 156 |  | 
| 157 | o rename "thread" to "newsgroup" in all scripts! | 
| 158 |  | 
| 159 | o what about: | 
| 160 | Torus::Xyz - solution to reuse concepts of Apache 2 and Cyrus 2!!! (and OpenLDAP???) for building an open collaboration server? | 
| 161 |  | 
| 162 | o word-search: "identify" and "search" for | 
| 163 |  | 
| 164 | o establish global "logs/" - like at http://moose.qx.net/logs/ | 
| 165 |  | 
| 166 | o add redirecting page when someone wants to access | 
| 167 | o http://netfrag.org/~joko/phpChoPro/ or | 
| 168 | o http://netfrag.org/~joko/w2hfax/ | 
| 169 |  | 
| 170 | o update mail-dispatching-rules - aim: a more flat structure!!! | 
| 171 | o look at ilo.de/Inbox | 
| 172 | o marked message to Spam? Newsletters? | 
| 173 | x move: logs/cvs/quepasa.netfrag.org -> logs/netfrag.org | 
| 174 | x look at netfrag.org/Inbox | 
| 175 | x if subject matches "Cron <joko@quepasa>" set target "logs/netfrag.org/joko/cron" [push over cron] | 
| 176 | x mkdir Mail/SORTED/netfrag.org/joko | 
| 177 | x touch Mail/SORTED/netfrag.org/joko/cron | 
| 178 | x if subject matches "quepasa daily usenet report" at begin set target "logs/netfrag.org/system/applications" [push over inn] | 
| 179 | x if subject matches "[CVS" at begin set target "logs/netfrag.org/cvs" [push over CVSSpam] | 
| 180 | x if mail is from myself set target "me2myself" | 
| 181 | x moved some folders | 
| 182 | x move already existing file to folder | 
| 183 | x mv logs/netfrag.org/system logs/netfrag.org/system.tmp | 
| 184 | x mkdir logs/netfrag.org/system | 
| 185 | x mv logs/netfrag.org/system.tmp logs/netfrag.org/system/applications | 
| 186 | x mv netfrag.org/Status/h1.service.netfrag.org logs/netfrag.org/system/ | 
| 187 | x mv netfrag.org/Status/TWikiChanges logs/twiki.org/ChangeLog | 
| 188 | x mkdir logs/twiki.org | 
| 189 | x do changes in .dispatchmailrc  -  always - ;-) | 
| 190 | x mv netfrag.org/Status/quepasa.netfrag.org logs/netfrag.org/system/ | 
| 191 | x blocked email-partition   *partition*! - email-partition(!) -> WordFinder | 
| 192 | x mkdir ../FILTERED | 
| 193 | x mv netfrag.org/Status/Spam ../FILTERED | 
| 194 | x mv netfrag.org/Status/Test misc/ | 
| 195 | x mv netfrag.org/Status/Postmaster\ Routing misc/Postmaster | 
| 196 | x rmdir netfrag.org/Status/ | 
| 197 | x look at netfrag.org/Inbox - again | 
| 198 |  | 
| 199 |  | 
| 200 | o look at quepasa.netfrag.org/Inbox | 
| 201 | o [Multisync-users] | 
| 202 | o [Kroupware] | 
| 203 | x tested the rules from above | 
| 204 | x echo This is a testmail. Please ignore it. | mail -s "[CVS hello]" joko | 
| 205 | o move old mails to MailHistory | 
| 206 |  | 
| 207 | o write parser and engine to handle above declaration: Mail::Audit::Dispatch::Interface::Script | 
| 208 | o add "X-"-field (X-Dispatched-By: dispatchmail-0.06 - http://netfrag.org/~joko/computing/dispatchmail/) | 
| 209 |  | 
| 210 | o release mail from above from joko - introduce another email-address | 
| 211 | - e.g. work@netfrag.org, event@netfrag.org or tracker@netfrag.org (like collector@netfrag.org) | 
| 212 |  | 
| 213 | o Multisync & SyncML | 
| 214 | o post something to mailing-list...!? | 
| 215 |  | 
| 216 | o the '.cvslink'-mechanism: | 
| 217 | o type: ln -s /home/joko/public_html/_web/_cvs.php . | 
| 218 |  | 
| 219 | o LinkContainer | 
| 220 | - insert via drag & drop | 
| 221 | - shows links hierarchically | 
| 222 |  | 
| 223 | o (Self)Info - mails to yourself | 
| 224 | o convert all "(Self)Info" mails to | 
| 225 | news-messages - use "formail" and ...? | 
| 226 |  | 
| 227 | o h1.service.netfrag.org | 
| 228 | o base os-upgrade: suse X -> debian 3.0 | 
| 229 |  | 
| 230 | o dispatchmail | 
| 231 | o are Mail-Headers already added? | 
| 232 |  | 
| 233 | o workflow (PostThisLink) | 
| 234 | o drag link from done google-search ... | 
| 235 | o ... to container (at the current Task) | 
| 236 | o a news-post is created automagically | 
| 237 | o use this: | 
| 238 | [smtp-header-fields] | 
| 239 | From: expanded email-address resolved from Name|Nickname in Addressbook (via LDAP!) | 
| 240 | Subject: googled for "<search-request>" | 
| 241 | [body] | 
| 242 | o include into mime-part if not already included | 
| 243 | o fetch from web on demand | 
| 244 |  | 
| 245 | o ssl/tls for inn? | 
| 246 |  | 
| 247 | o dispatchmail | 
| 248 | o re-link as sub-/module-project under Torus::Content::Gateway (mail2news, mail2fax) | 
| 249 | o -> Torus::Content - a content delivery engine | 
| 250 | o -> additional idea: Torus::Content::Gateway is "just" the API to "Torus::Item::Router" in this case | 
| 251 | o 'Torus::Content::Gateway' would then route 'Torus::Item::RFC822'-objects using 'Torus::Item::Router' | 
| 252 | o look at sieve - jonen posted to nfo.links.computing: [r:Message-ID: <b0ppj7$7gv$1@quepasa.netfrag.org>] | 
| 253 | o re-link as sub-/module-project under Torus::Virtual (mail2folder, mail2mail) | 
| 254 | o here it acts as a dispatcher from incoming mails - TARGET gets resolved via ldap-resolvement | 
| 255 | o make possible: MAIL-IN -> mail2mail (via ldap-query) -> mail2fax|mail2news | 
| 256 | o mail2news | 
| 257 | x the "via-fetchmail"-solution | 
| 258 | x su collector | 
| 259 | x cd ~ | 
| 260 | x chmod og-rwx .fetchmailrc | 
| 261 |  | 
| 262 | o finally: do actually establish 'Torus' at 'nfo/perl/libs' | 
| 263 |  | 
| 264 | o pod: checkout how to make references which expand to html-urls | 
| 265 | o does pod handle this or do we need external link-expansion for this task? | 
| 266 | o how to make references to news-messages? | 
| 267 | e.g.: | 
| 268 | o Message-ID: <b0ppj7$7gv$1@quepasa.netfrag.org> | 
| 269 | o news://news.netfrag.org/nfo.links.computing | 
| 270 | o proposal(s) for "news2http" (Torus::Content::Gateway/Torus::Item::???): | 
| 271 | o http://news.netfrag.org/id=b0ppj7$7gv$1@quepasa.netfrag.org | 
| 272 | o http://news.netfrag.org/nfo.links.computing/subject=FilteringMailWithSieve of wiki | 
| 273 | o http://news.netfrag.org/nfo.links.computing/id=b0ppj7$7gv$1@quepasa.netfrag.org | 
| 274 |  | 
| 275 | o what about the '.nws'-files on ms? (for news-messages) | 
| 276 |  | 
| 277 | o display-mode: everything strictly hierarchical to get maximum overview!!! | 
| 278 |  | 
| 279 | x Inventory: cleaned up local and master code repositories | 
| 280 |  | 
| 281 | o add "last-updated" to "README.html" | 
| 282 |  | 
| 283 | o search.netfrag.org | 
| 284 |  | 
| 285 | o tool for the "DoThis", "DoHere", "DoAll" - series | 
| 286 | o FaxThis (joko/ToolBox/Windows/FaxThis) | 
| 287 | o tool "WinSync": (WinSync All) | 
| 288 | x RsyncHere | 
| 289 | o Contacts2Ldap | 
| 290 |  | 
| 291 | o statistics-page: | 
| 292 | o for cvs.netfrag.org: cvs-statistics (activeness, ...), sloccount | 
| 293 |  | 
| 294 | x home2web | 
| 295 | x finally - added complete /home/joko/ to cvs-repository in order to get a revisioned ".dispatchmailrc" | 
| 296 | x ~/.bashrc - added line: export CVSROOT=/var/lib/cvs | 
| 297 | x relogin: logout/login | 
| 298 | x cd ~ | 
| 299 | x joko@quepasa:~$ cvs checkout -d . joko     (Fri Jan 24 00:43:18 CET 2003) | 
| 300 | x cvs add TODO | 
| 301 | x cvs add .bashrc .cronrc-hourly .forward | 
| 302 | x added /home/joko/virtual/joko_mail | 
| 303 | [as joko] | 
| 304 | x cvs add virtual | 
| 305 | x chmod g+w virtual/CVS/* | 
| 306 | [as joko_mail | 
| 307 | o shortcut for (e.g.): cvs commit  -m "initial check-in" .bashrc .cronrc-hourly .forward | 
| 308 | o cvsadd <abc> <def> | 
| 309 | o add /home/root (and maybe include there some other things "lying around") | 
| 310 |  | 
| 311 | o alternative to all that Cyrus-stuff: just use the very "normal" imapd together with kerberos | 
| 312 |  | 
| 313 | o make screenshots of log-output of dispatchmail when it's ready | 
| 314 |  | 
| 315 | o base logging of 'dispatchmail' on DesignPattern::Object::Logger | 
| 316 |  | 
| 317 | o dispatchmail-mail2folder: add feature to create folders recursively | 
| 318 |  | 
| 319 | x archive mails | 
| 320 | x su joko_mail | 
| 321 | x cd ~ | 
| 322 | x mv ilo.de/Inbox ~/MailHistory/ARCHIVED/ilo.de/2002-05-30\ -\ 2003-01-24 | 
| 323 | x mkdir ~/MailHistory/ARCHIVED/netfrag.org/2003-01 | 
| 324 | x mv netfrag.org/Info ~/MailHistory/ARCHIVED/netfrag.org/2003-01/ | 
| 325 | x changed rule which formerly targeted to 'netfrag.org/Info' into 'me2myself' | 
| 326 | x mv netfrag.org/Inbox ~/MailHistory/ARCHIVED/netfrag.org/2003-01/ | 
| 327 | x mkdir ~/MailHistory/ARCHIVED/netfrag.org/2003-01/Status | 
| 328 | x mv netfrag.org/Status/cashew.netfrag.org ~/MailHistory/ARCHIVED/netfrag.org/2003-01/Status/ | 
| 329 | x mv netfrag.org/Status/h1.service.netfrag.org ~/MailHistory/ARCHIVED/netfrag.org/2003-01/Status/ | 
| 330 | x mv Sent ~/MailHistory/ARCHIVED/Sent/Sent_2002-11-13_-_2003-01-24 | 
| 331 |  | 
| 332 |  | 
| 333 | o investigate LDAP-entry "mailForwardingAddress" | 
| 334 |  | 
| 335 | o establish "Mini-HowTo" | 
| 336 |  | 
| 337 | o search (allover): /^.*\.netfrag\.org/  => find all hostnames to register | 
| 338 | (they are scattered around in to-be-installed (web-)applications) | 
| 339 |  | 
| 340 | o Mail::Audit::Dispatch::Lookup (csv-file, ::NetLDAP, => Data::Storage::Handler::Xyz => Data::Map) | 
| 341 |  | 
| 342 | x switched mailing completely in outlook | 
| 343 | o Evolution! | 
| 344 | x now talking to 'wu-imapd' via ssl, too! - thanks to jonen! | 
| 345 | Jan 24 04:55:17 quepasa imapd[11508]: connect from 217.231.123.57 | 
| 346 | Jan 24 04:55:17 quepasa imapd[11508]: imaps SSL service init from 217.231.123.57 | 
| 347 | Jan 24 04:55:18 quepasa imapd[11508]: Login user=joko_mail host=pD9E77B39.dip.t-dialin.net [217.231.123.57] | 
| 348 | x now my outlook sends via 'mail.netfrag.org' using 'TLS' - thanks to jonen! | 
| 349 | Jan 24 04:53:09 quepasa sm-mta[11499]: STARTTLS=server, relay=pD9E77B39.dip.t-dialin.net [217.231.123.57], version=TLSv1/SSLv3, verify=NO, cipher=RC4-MD5, bits=128/128 | 
| 350 | Jan 24 04:53:10 quepasa sm-mta[11499]: h0O3r91D011499: from=<andreas.motl@ilo.de>, size=435, class=0, nrcpts=1, msgid=<008c01c2c35c$5701d2a0$240aa8c0@grasshopper>, proto=ESMTP, daemon=MTA, relay=pD9E77B39.dip.t-dialin.net [217.231.123.57] | 
| 351 |  | 
| 352 | o use <a href="http://imapfilter.hellug.gr">IMAPFilter</a>!!! | 
| 353 |  | 
| 354 | o refactor old TODOs using 'home2web' | 
| 355 |  | 
| 356 | o webgate (like dispatchmail) | 
| 357 |  | 
| 358 | o zeit anhalten! (alle grauen mƤnner umbringen!) | 
| 359 |  | 
| 360 | o add to cvs: | 
| 361 | o /home/service/ | 
| 362 | o /home/service/virtual/collector | 
| 363 | o /home/service/virtual/tracker | 
| 364 | o /home/service/virtual/fetcher | 
| 365 | o /home/service/virtual/archiver | 
| 366 |  | 
| 367 | o use 'wCron' to automagically do a 'cvs commit -m "+ updated/added content" joko/doc' | 
| 368 | x mkdir -p C:\Programme\WCron | 
| 369 | x unzip -j "C:\home\amo\develop\netfrag.org\rabit\wCron\releases\WCron-0.62-pre.zip" -d C:\Programme\WCron | 
| 370 | o win2000: change/check permissions: right-click/Properties/Security Settings/Read, Execute = enabled | 
| 371 | x run it | 
| 372 | x add task | 
| 373 | x implement shortcut-script: joko/Scripts/shortcuts/cvs_commit_joko-doc.bat | 
| 374 | x add lines: | 
| 375 | x cd C:\home\amo\develop\netfrag.org\joko | 
| 376 | x cvs commit -m "+ updated/added content" doc | 
| 377 |  | 
| 378 |  | 
| 379 | o on Windows it's called "QuickLaunch" .... | 
| 380 |  | 
| 381 | o plugins for nautilus/gnome/kde: | 
| 382 | show arbitrary data-structures (from anywhere): here we may get the drag & drop - functionality "on-the-fly" | 
| 383 |  | 
| 384 | o new user "gateway": | 
| 385 | x adduser --home /home/service/virtual/gateway gateway  (pass: gw%R%) | 
| 386 | x mkdir /var/lib/cvs/gateway | 
| 387 | x chown -R gateway.gateway /var/lib/cvs/gateway | 
| 388 | x su gateway | 
| 389 | x cvs -d /var/lib/cvs checkout -d ~ gateway | 
| 390 |  | 
| 391 | x error on quepasa: | 
| 392 | Jan 24 19:00:09 quepasa sm-mta[17960]: STARTTLS=server, relay=pD9E77B39.dip.t-dialin.net [217.231.123.57], version=TLSv1/SSLv3, verify=NO, cipher=RC4-MD5, bits=128/128 | 
| 393 | Jan 24 19:00:09 quepasa sm-mta[17960]: h0OI081D017960: ruleset=check_rcpt, arg1=<janosch@ultrajan.de>, relay=pD9E77B39.dip.t-dialin.net [217.231.123.57], reject=550 5.7.1 <janosch@ultrajan.de>... Relaying denied. Proper authentication required. | 
| 394 | x add to /etc/mail/default-auth-info | 
| 395 | sendmail | 
| 396 | sendmail | 
| 397 | sendmailpwd | 
| 398 | quepasa.netfrag.org | 
| 399 | x /etc/init.d/sendmail restart | 
| 400 |  | 
| 401 | o Torus::Publish::Research::Web | 
| 402 | o googling for something automagically opens a new task | 
| 403 | o all links directly or indirectly coming out of this are sorted below this task | 
| 404 | o the user can end this task on demand: timetracking is done automagically as well | 
| 405 |  | 
| 406 | o register tutos.netfrag.org | 
| 407 |  | 
| 408 | o qpopper with tls, sasl and kerberos5? | 
| 409 |  | 
| 410 | o off realtime! the only thing that happens at realtime is MailMiltering. | 
| 411 | x cvs checkout of joko/doc is done via cron | 
| 412 | x mail2news-dispatching is now done via cron (would be possible "in realtime" via '.forward'ing the mail *directly* to dispatchmail) | 
| 413 |  | 
| 414 | o ctlinnd newgroup nfo.csm (Collaborative System Management) | 
| 415 |  | 
| 416 | o make possible: | 
| 417 | o after "cvs update" make question: "Found new items in "" while scanning. Should i add them to the repository?" | 
| 418 | o drag & drop arbitrary items out of outlook (.msg, .nws, etc.) - search for them while scanning the fs and sync them | 
| 419 | against *original* source. (e.g. 'Message-ID: <b0s5v9$j7d$1@quepasa.netfrag.org>') | 
| 420 |  | 
| 421 | x CVSSpam -> nfo.log.cvs | 
| 422 | x su root | 
| 423 | x cd /etc/mail | 
| 424 | x nano virtusertable | 
| 425 | x add line: | 
| 426 | x cvs-log@netfrag.org             gateway | 
| 427 | x make virtusertable | 
| 428 | x su gateway | 
| 429 | x cd ~ | 
| 430 | x nano .dispatchmailrc | 
| 431 | x add lines: | 
| 432 | $self->copy('Newsgate', 'nfo.log.cvs') | 
| 433 | if $to =~ m/cvs-log/; | 
| 434 | x exit   (to logout) | 
| 435 | x cvs update CVSROOT/loginfo | 
| 436 | x add to CVSROOT/loginfo (to the end of the line starting with '^nfo '): | 
| 437 | --to cvs-log@netfrag.org | 
| 438 | x cvs commit -m "+ added new notification target: 'cvs-log@netfrag.org'" CVSROOT/loginfo | 
| 439 | x tested with some mini-howto | 
| 440 | x removed '--to joko@netfrag.org --to jonen@netfrag.org --to bareface@netfrag.org --to janosch@netfrag.org ' | 
| 441 | from CVSROOT/loginfo for module 'nfo' | 
| 442 | x announce this | 
| 443 | x added to '/etc/news/nnrp.access': | 
| 444 | *:Read Post:bareface:bareface:* | 
| 445 | x /etc/init.d/inn reload | 
| 446 |  | 
| 447 | x add 'gateways'-repository to chora | 
| 448 | x nano /data/www/doc/horde/chora/config/cvsroots.php | 
| 449 | x add lines: | 
| 450 | # 2003-01-24, joko | 
| 451 | $cvsroots['gateway'] = array( | 
| 452 | 'name' => 'gateway', | 
| 453 | 'location' => '/var/lib/cvs/gateway', | 
| 454 | 'title' => "$titlePrefix gateway's CVS Repository", | 
| 455 | 'cvsusers' => $cvsusers, | 
| 456 | ); | 
| 457 |  | 
| 458 | x configured Apache for serving news.netfrag.org | 
| 459 | x cleaned up /data/www/virtual/netfrag/conf/httpd.conf | 
| 460 | x ./test.conf | 
| 461 | x comments | 
| 462 | x /etc/init.d/apache reload | 
| 463 | x test: http://news.netfrag.org/ | 
| 464 |  | 
| 465 | o new module for cvs-repository? | 
| 466 | o nfo/layouts/fs/skel/data2 | 
| 467 | o checkout to /data on quepasa.netfrag.org | 
| 468 | x done: | 
| 469 | x su root | 
| 470 | x cd /var/lib/cvs | 
| 471 | x mkdir -p nfo/layouts/fs/skel/data | 
| 472 | x mkdir -p nfo/layouts/fs/skel/data2 | 
| 473 | x mkdir -p nfo/hosts/quepasa.netfrag.org/data | 
| 474 | x cvs -d /var/lib/cvs checkout -d /data nfo/hosts/quepasa.netfrag.org/data | 
| 475 | x *mungle everything and commit!*  look at the repository! | 
| 476 | x add special group with access to this repository: 'rootsrc' | 
| 477 | x groupadd rootsrc | 
| 478 | x usermod -G src,staff,rootsrc joko | 
| 479 | x usermod -G src,staff,rootsrc jonen | 
| 480 | x usermod -G rootsrc root | 
| 481 | x change permissions | 
| 482 | x cd /var/lib/cvs/nfo/ | 
| 483 | x chown -R .rootsrc hosts | 
| 484 | x chmod -R g+w hosts | 
| 485 |  | 
| 486 |  | 
| 487 | x add to system-conf-repository: | 
| 488 | x /etc/mail | 
| 489 | x php: cvs-redirect | 
| 490 | x | 
| 491 |  | 
| 492 | o extend WCron | 
| 493 | x show (per-task) if it's currently running or not: provide buttons to (start, stop, pause, resume or cancel a task...) | 
| 494 | x use as a frontend for administering nfo/libs/perl/ - backend - tasks(???) | 
| 495 |  | 
| 496 | x install Horde/Troll | 
| 497 | x install troll | 
| 498 | x cd /home/service/download | 
| 499 | x mkdir horde | 
| 500 | x cd horde | 
| 501 | x wget ftp://ftp.horde.org/pub/troll/troll-0.0.2.tar.gz | 
| 502 | x tar -xzf troll-0.0.2.tar.gz --directory=/data/www/doc/horde/ | 
| 503 | x configure horde | 
| 504 | x cd /data/www/doc/horde/ | 
| 505 | x nano config/registry.php | 
| 506 | x add lines: | 
| 507 | $this->applications['troll'] = array( | 
| 508 | 'fileroot' => dirname(__FILE__) . '/../troll', | 
| 509 | 'webroot' => $this->applications['horde']['webroot'] . '/troll', | 
| 510 | 'icon' => $this->applications['horde']['webroot'] . '/troll/graphics/troll.gif', | 
| 511 | 'name' => _("News"), | 
| 512 | 'allow_guests' => true, | 
| 513 | 'show' => true | 
| 514 | ); | 
| 515 | x configure Troll | 
| 516 | x cd troll/config | 
| 517 | x conf.php | 
| 518 | x cp conf.php.dist conf.php | 
| 519 | x nano conf.php | 
| 520 | x edit: | 
| 521 | x $conf['news']['server'] = 'news.netfrag.org'; | 
| 522 | x $conf['news']['mailserver'] = 'mail.netfrag.org'; | 
| 523 | x servers.php | 
| 524 | x cp servers.php.dist servers.php | 
| 525 | x add: | 
| 526 | $servers['netfrag.org'] = array( | 
| 527 | 'name' => 'news.netfrag.org', | 
| 528 | 'server' => 'news.netfrag.org', | 
| 529 | 'port' => 119, | 
| 530 | ); | 
| 531 | x prefs.php | 
| 532 | x cp prefs.php.dist prefs.php | 
| 533 | x html.php | 
| 534 | x cp html.php.dist html.php | 
| 535 | x permissions | 
| 536 | x chmod o+r *.php | 
| 537 |  | 
| 538 |  | 
| 539 | x test: http://netfrag.org/horde/ | 
| 540 | o another (more bright) skin for horde@netfrag.org!!! | 
| 541 |  | 
| 542 | o Warum nicht überall Horde? Sondern TUTOS? | 
| 543 | o Horde ist sehr breit angelegt, dafür fehlt es jedoch an vielen Stellen noch ein wenig im Detail. | 
| 544 | o mittlerweile: mit Hermes & Co.? nochmal ansehen! | 
| 545 |  | 
| 546 | o just do automated operations (like cvs commit) only if system is idle | 
| 547 |  | 
| 548 | o automagically redirect http://netfrag.org/horde/ to https://netfrag.org/horde/ | 
| 549 | o with an Apache - rewrite-rule? | 
| 550 |  | 
| 551 | x how to map TUTOS-groups to newsgroups? | 
| 552 | x ctlinnd newgroup nfo.tutos.sysadmin | 
| 553 | x add dispatching for sysadmin@netfrag.org | 
| 554 | x add to /home/service/virtual/gateway/.dispatchmailrc | 
| 555 | $self->copy('Newsgate', 'nfo.tutos.sysadmin') if $to =~ m/sysadmin/; | 
| 556 | x add to /etc/mail/virtusertable: | 
| 557 | # --- news.netfrag.org - joko, 2003-01-24 | 
| 558 | sysadmin@netfrag.org            gateway | 
| 559 | make virtusertable! | 
| 560 | x write welcome-mail | 
| 561 | root@quepasa:~$ mail sysadmin@netfrag.org | 
| 562 | Subject: Welcome to the sysadmin-newsgroup at netfrag.org! | 
| 563 | Have fun! | 
| 564 | greets, joko. | 
| 565 |  | 
| 566 | . | 
| 567 | Cc: | 
| 568 | x test: do "refresh newsgroups" at your favourite news-reader | 
| 569 | x this has been refactored to: <a href="http://news.netfrag.org/nfo.tutos.sysadmin/id/b0shbj$l9s$1@quepasa.netfrag.org">[news:id=b0shbj$l9s$1@quepasa.netfrag.org]</a> | 
| 570 | x HEADERS: | 
| 571 | x Message-ID: <b0shbj$l9s$1@quepasa.netfrag.org> | 
| 572 | x Subject: Re: Welcome to the sysadmin-newsgroup at netfrag.org! | 
| 573 | o newsgate | 
| 574 | o http://news.netfrag.org/nfo.tutos.sysadmin/id/b0shbj$l9s$1@quepasa.netfrag.org | 
| 575 | o http://news.netfrag.org/nfo.tutos.sysadmin/subject/Re: Welcome to the sysadmin-newsgroup at netfrag.org! | 
| 576 |  | 
| 577 | o Erkenntnis aus UML (Kernel 2.4): schwierig mit gleichzeitigem Zugriff | 
| 578 |  | 
| 579 | o gave up trying to get Troll running | 
| 580 |  | 
| 581 | x setup alternatives to Horde for public access | 
| 582 | o viewcvs | 
| 583 | x apt-get install libapache-mod-python | 
| 584 |  | 
| 585 | o WebNewsViewer | 
| 586 |  | 
| 587 | o release the user from having to send email-messages to actually post urls with content (e.g. "FirstPage") | 
| 588 |  | 
| 589 | o parse .url-files! | 
| 590 |  | 
| 591 | o have newsgroup-structure backed in ldap-container (ou) somehow (Data::Map!) | 
| 592 |  | 
| 593 | x new email-addresses@netfrag.org: | 
| 594 | x sysadmin@netfrag.org | 
| 595 | x faq@netfrag.org | 
| 596 |  | 
| 597 | x --rework|*reworked*-- apache-layout - check into repository as something root is responsible for! | 
| 598 |  | 
| 599 | x --setup|*setting up*-- newsportal (by Florian Amrhein) | 
| 600 | x url: http://florian-amrhein.de/newsportal/ | 
| 601 | x cd /home/service/download | 
| 602 | x mkdir newsportal | 
| 603 | x cd newsportal | 
| 604 | x wget http://florian-amrhein.de/newsportal/download/newsportal-0.24.tar.gz | 
| 605 | x mkdir -p /data/www/virtual/netfrag/sites/news/apps/newsportal/ | 
| 606 | x tar -xzf newsportal-0.24.tar.gz --directory=/data/www/global/apps/newsportal/ | 
| 607 | x add to /data/www/virtual/netfrag/conf/applications.conf | 
| 608 | Alias /webnews/ /data/www/global/apps/newsportal/ | 
| 609 | x configure in /data/www/global/apps/newsportal/config.inc | 
| 610 | // newsserver setup | 
| 611 | $server="news.netfrag.org"; | 
| 612 | $server_auth_user="webnews"; | 
| 613 | $server_auth_pass="web123"; | 
| 614 | x add to /etc/news/nnrp.access: | 
| 615 | # 2003-01-26, joko | 
| 616 | *:Read Post:webnews:web123:* | 
| 617 | x modify groups.txt | 
| 618 | <nfo.* - add all groups here> | 
| 619 | o TODO: AUTOUPDATE here! | 
| 620 | x add to the index-page: | 
| 621 | xR set INSERTION="<link href="/horde/css.php?app=chora" rel="stylesheet" type="text/css" />" | 
| 622 | x grep -rin "<head" * | 
| 623 | doc/readme-deutsch.html:4:</head> | 
| 624 | doc/faq.html:4:</head> | 
| 625 | doc/history.txt:234:- fehlender </head> Tag ergaenzt | 
| 626 | doc/readme-english.html:4:</head> | 
| 627 | doc/history.txt~:233:- fehlender </head> Tag ergaenzt | 
| 628 | extras/frames/thread_frameset.php:10:</head> | 
| 629 | head.inc:5:</head> | 
| 630 | x cvs add head.inc | 
| 631 | x cvs commit -m "+ initial commit" head.inc | 
| 632 | x <modify head.inc> | 
| 633 | x nano head.inc | 
| 634 | x <jump to line 5> STRG+W + T: 5 | 
| 635 | xR <insert INSERTION> | 
| 636 | xR <insert [ENTER]> | 
| 637 | x <save file> STRG+O + [ENTER] | 
| 638 | x test: <hit reload on <a href="http://www.netfrag.org/webnews/">http://www.netfrag.org/webnews/</a>> | 
| 639 | o TODO: RefactorThisHtmlRef to WebNews | 
| 640 | o view message in some MimeViewer or HtmlViewer (Horde?) | 
| 641 | o -> use a MessageViewer with MimeCapabilities and HtmlCapabilities | 
| 642 | x Why newsportal and no other? | 
| 643 | x directly connects to nntp-daemon | 
| 644 | x has local spool (o TODO: purge regularly?) | 
| 645 | x highly customizable | 
| 646 | x added custom css-stylesheet and changed something at content-rendering-level without any problems | 
| 647 | x visit cvs.netfrag.org to look at the changes made to the newsportal codebase: | 
| 648 | x -> <a href="http://cvs.netfrag.org/nfo/hosts/quepasa.netfrag.org/data/www/global/apps/newsportal/">newsportal at cvs.netfrag.org</a> | 
| 649 | o TODO: RefactorThisLink | 
| 650 | x it's just easy! | 
| 651 | x setup dispatchrequest for http://news.netfrag.org | 
| 652 | x cd /data/www/virtual/netfrag/sites/news/ | 
| 653 | x create symlink | 
| 654 | x ./.symlinkrc | 
| 655 | x copy over from webcvs | 
| 656 | x cp ../webcvs/index.php . | 
| 657 | x mkdir .dispatch | 
| 658 | x cd .dispatch | 
| 659 | x cp ../webcvs/.dispatch/config.php . | 
| 660 | x cp ../webcvs/.dispatch/index.php . | 
| 661 | x cvs add ... | 
| 662 | x cvs commit ... | 
| 663 | x added|*adding* dispatcher at http://news.netfrag.org | 
| 664 | x used and mungled DispatchRequest(->cvs, ->doc, ->search)  for this purpose | 
| 665 | o IdeaFor ParseDoc: expand: cvs=JumpToCvs, doc=JumpToDoc, search=SearchFor | 
| 666 | x examples for the JumpToCvs mechanism are shown on <a href="http://netfrag.org/~joko/computing/overview/topics/>computing/overview/topics</a> | 
| 667 | x tested http://cvs.netfrag.org/ - still working... | 
| 668 | o AddedFeatures to DispatchRequest: | 
| 669 | x JumpToNewsgroup: http://news.netfrag.org/nfo.tutos.sysadmin/ | 
| 670 | e.g. ->http://netfrag.org/webnews/thread.php?group=nfo.links.computing | 
| 671 | o JumpToThread: NotYetImplemented! DoWeReallyNeedThis? | 
| 672 | o JumpToArticle: http://news.netfrag.org/nfo.sysadmin.tutos/id/b0shbj$l9s$1@quepasa.netfrag.org | 
| 673 | x JumpToArticle: http://news.netfrag.org/nfo.links.computing/id/44 | 
| 674 | e.g. ->http://netfrag.org/webnews/article.php?id=44&group=nfo.links.computing | 
| 675 |  | 
| 676 | x NfoWeb | 
| 677 | o add WikiPages: | 
| 678 | o Overview | 
| 679 | o News | 
| 680 | o news.netfrag.org | 
| 681 | o Users | 
| 682 | o Development | 
| 683 | o Projects | 
| 684 | o cvs.netfrag.org | 
| 685 | o Documentation | 
| 686 | o Topics | 
| 687 | o MiniHowto | 
| 688 | o Download | 
| 689 | (o Search) | 
| 690 | o modify HomePage | 
| 691 | o change Projects to Overview | 
| 692 |  | 
| 693 | o yakka & pod | 
| 694 | o convert pod to tavi | 
| 695 | o perl first (pod2tavi) | 
| 696 | o php afterwards (pod2tavi-php) | 
| 697 | o then refactor to a YakkaPlugin (an "input-filter"?) ('yakka-filter-pod'?) | 
| 698 | o address "files" outside the normal/configured default YakkaRepository | 
| 699 | o introduce: "ExplicitAddressingOfArbitraryTargets" | 
| 700 | o via HttpHeader (GET/POST) (HtmlUrlArgument, HtmlFormField) | 
| 701 | o introduce "YakkaContainers": aim: group a bunch of targets/items together as a kind of "MetaRepository" | 
| 702 |  | 
| 703 | o viewcvs & yakka | 
| 704 | o a filesystem-adapter for yakka's storage-handler-system | 
| 705 | o show "view in yakka" if document-type eq 'tavi|tavi,v|pod' | 
| 706 |  | 
| 707 | o IconForNetfrag.Org? | 
| 708 | o fav.ico? | 
| 709 |  | 
| 710 | x --*installed*|install-- viewcvs | 
| 711 | x apt-get install viewcvs | 
| 712 | x configured: | 
| 713 | x /var/lib/cvs | 
| 714 | x email-address (new): cvs-admin@netfrag.org  ->  dev@netfrag.org | 
| 715 | x no forbidden modules (do this via unix permissions!) | 
| 716 | x allow tarball generation? yes! | 
| 717 | x Hint: add "Alias /viewcvs/ /usr/share/viewcvs/" to /etc/apache/conf/httpd.conf for online documents and icons | 
| 718 | x added to '/data/www/virtual/netfrag/conf/applications.conf' in our case | 
| 719 | x added '<link href="/horde/css.php?app=chora" rel="stylesheet" type="text/css" />' to '/etc/viewcvs/templates/header.ezt' | 
| 720 |  | 
| 721 | o rendering *proposals* for TaviWorkflow | 
| 722 | o Linking|Referencing (WikiWords, PureExplicitLinkExtrapolation, NamedLinks) | 
| 723 | o Coloring | 
| 724 | o [o=red, x=green, R=red, r=green] | 
| 725 |  | 
| 726 | o *shortcut*: TestApache to run 'apachectl configtest' (WikiForSystemAdministration) | 
| 727 |  | 
| 728 | x web-based newsreader? twig! | 
| 729 | x apt-get install twig | 
| 730 |  | 
| 731 | o shutdown horde (for now: "pause") | 
| 732 |  | 
| 733 | o viewcvs & apache-mod-python? | 
| 734 |  | 
| 735 | o home2web, .home2webrc | 
| 736 | o what? | 
| 737 | --before: buildhtml --source=pod|tavi | 
| 738 | --after: say "ready" | 
| 739 | o hmmm... | 
| 740 | o buildhtml: automate various SubTasks | 
| 741 | o synccvs (->cvs.nfo.perl.scripts.shortcuts.synccvs.pl) | 
| 742 | o buildhtml (->makedoc) (->cvs.nfo.perl.scripts.shortcuts.synccvs.pl) | 
| 743 |  | 
| 744 | x added root of quepasa to cvs | 
| 745 | x su root | 
| 746 | x cd /var/lib/cvs/nfo/hosts/quepasa.netfrag.org | 
| 747 | x mkdir root | 
| 748 | x chown -R .rootsrc root/ | 
| 749 | x chmod -R g+w root/ | 
| 750 | x cd /tmp | 
| 751 | x cvs -d /var/lib/cvs checkout -d / nfo/hosts/quepasa.netfrag.org/root | 
| 752 | x start with /etc | 
| 753 | x cd /etc | 
| 754 | x cvs add etc | 
| 755 | x cvs add viewcvs | 
| 756 | x cd viewcvs | 
| 757 | x cvs add .... | 
| 758 | x cvs commit -m "+ initial commit" | 
| 759 |  | 
| 760 | x How to get a single file from cvs for download: (e.g.) | 
| 761 | wget http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/*checkout*/viewcvs/viewcvs/templates/header.ezt?rev=1.2 | 
| 762 |  | 
| 763 | x cvsgraph still missing: apt-get install cvsgraph | 
| 764 |  | 
| 765 | x chora -> viewcvs | 
| 766 | o change logo at /usr/share/viewcvs/images | 
| 767 | x removed from template | 
| 768 | x cvsview-query.cgi didn't work yet! | 
| 769 | x error was: | 
| 770 | x tail -f /data/www/virtual/netfrag/log/error_log | 
| 771 | Traceback (most recent call last): | 
| 772 | File "/usr/lib/cgi-bin/viewcvs-query.cgi", line 50, in ? | 
| 773 | import query | 
| 774 | File "/usr/lib/python2.1/viewcvs/query.py", line 42, in ? | 
| 775 | import cvsdb | 
| 776 | File "/usr/lib/python2.1/viewcvs/cvsdb.py", line 34, in ? | 
| 777 | import dbi | 
| 778 | File "/usr/lib/python2.1/viewcvs/dbi.py", line 17, in ? | 
| 779 | import MySQLdb | 
| 780 | ImportError: No module named MySQLdb | 
| 781 | [Sat Jan 25 11:16:55 2003] [error] [client 217.231.127.85] Premature end of script headers: /usr/lib/cgi-bin/viewcvs-query.cgi | 
| 782 | x solution is: | 
| 783 | x apt-get install python-mysqldb | 
| 784 | x use mysql; | 
| 785 | x insert into db values ('localhost', 'ViewCVS', 'viewcvs', 'Y','Y','Y','Y','Y','Y','N','Y','Y','Y'); | 
| 786 | x insert into db values ('%', 'ViewCVS', 'viewcvs', 'Y','Y','Y','Y','Y','Y','N','Y','Y','Y'); | 
| 787 | x insert into user (host, user, password) values ('localhost', 'viewcvs', password('viewcvs')); | 
| 788 | x flush privileges; | 
| 789 | x cd /usr/lib/viewcvs | 
| 790 | x ./make-database | 
| 791 | x | 
| 792 | o mail to author of viewcvs | 
| 793 |  | 
| 794 |  | 
| 795 | o docu about uml and filesystem-layer running on gharb for MiniHowTo? | 
| 796 |  | 
| 797 | o search.php?wiki=1&cvs=1&index=1 | 
| 798 |  | 
| 799 | x get mnoGoSearch running | 
| 800 | e apt-get install mnoGoSearch | 
| 801 | e apt-get install mnogosearch-common mnogosearch-doc mnogosearch-pgsql mnogosearch-php | 
| 802 | x apt-get install mnogosearch-common mnogosearch-php | 
| 803 | x don't overwrite configuration files | 
| 804 | x use 'crc-multi' | 
| 805 | x use 'postgres' | 
| 806 | x use 'mnogosearch' | 
| 807 | x apt-get install postgresql | 
| 808 | x use 'Enter default encoding (SQL_ASCII):' | 
| 809 | Success. You can now start the database server using: | 
| 810 |  | 
| 811 | /usr/lib/postgresql/bin/postmaster -D /var/lib/postgres/data | 
| 812 | or | 
| 813 | /usr/lib/postgresql/bin/pg_ctl -D /var/lib/postgres/data -l logfile start | 
| 814 |  | 
| 815 | PostgreSQL database now installed. | 
| 816 | Use /usr/bin/createdb to create a specific database and | 
| 817 | /usr/bin/createuser to enable other users to connect to a | 
| 818 | PostgreSQL database. | 
| 819 |  | 
| 820 | In the first instance, these commands must be run by the | 
| 821 | user 'postgres'. | 
| 822 |  | 
| 823 | Restarting PostgreSQL database: postmaster | 
| 824 | No /usr/lib/postgresql/bin/postmaster found running; none killed. | 
| 825 | Starting PostgreSQL postmaster. | 
| 826 | postmaster successfully started | 
| 827 | . | 
| 828 | Enabling the PL procedural language in all PostgreSQL databases... | 
| 829 | plpgsql added to template1 | 
| 830 | x apt-get install postgresql-dev | 
| 831 | e apt-get install libpostgresql | 
| 832 | e apt-get install libpgtcl | 
| 833 | x apt-get install mnogosearch-pgsql mnogosearch-pgsql-dev | 
| 834 | x dpkg-reconfigure mnogosearch-common | 
| 835 | x su postgres | 
| 836 | x /usr/lib/postgresql/bin/createuser mnogosearch | 
| 837 | x /usr/lib/postgresql/bin/createdb mnogosearch | 
| 838 |  | 
| 839 | x changed to "mysql" in /etc/mnogosearch/indexer.conf and | 
| 840 | e deployed schemas at /usr/share/doc/mnogosearch-common/create/mysql/ | 
| 841 | x mysql -e "insert into user (host, user, password) values ('localhost', 'mnogosearch', password('mno123'));" mysql | 
| 842 | c mysql -e "insert into user (host, user, password) values ('%', 'mnogosearch', password('mno123'));" mysql | 
| 843 | x mysql -e "insert into db values ('localhost', 'mnogosearch', 'mnogosearch', 'Y','Y','Y','Y','Y','Y','N','Y','Y','Y');" mysql | 
| 844 | x mysql -e "create database mnogosearch;" | 
| 845 | x cd /usr/share/doc/mnogosearch-common/create/mysql/ | 
| 846 | x mysql mnogosearch < categories.txt | 
| 847 | x mysql mnogosearch < crc-multi.txt | 
| 848 | x deployed schemas at /usr/share/doc/mnogosearch-common/create/pgsql/ | 
| 849 | x psql -U mnogosearch mnogosearch < create.txt | 
| 850 |  | 
| 851 |  | 
| 852 |  | 
| 853 |  | 
| 854 |  | 
| 855 |  | 
| 856 |  | 
| 857 |  | 
| 858 | o it's not tavi nor tavi-workflow - it's: JustWrite? it's todo! (.todo -> .justdo -> .justwrite -> .done) | 
| 859 |  | 
| 860 | o ScanToWeb | 
| 861 |  | 
| 862 | o look at Mailman: http://www.list.org/features.html | 
| 863 |  | 
| 864 | o use cvsup!? | 
| 865 |  | 
| 866 | o alien.netfrag.org - (package-conversion)  --> alien.packages.netfrag.org | 
| 867 |  | 
| 868 | o chora2viewcvs - How to migrate from Horde/Chora to viewcvs. | 
| 869 |  | 
| 870 | o LinuxInCvs (linux2cvs) | 
| 871 |  | 
| 872 | o TestApacheConfig, StopApache, StartApache have to work without any running Apache - of course! | 
| 873 |  | 
| 874 | o through "viewcvs" we loose the ability to "publish" documents via former chora: | 
| 875 | viewcvs takes care to keep documents like they are in their original - so ".html"-files should be shown with text/plain | 
| 876 |  | 
| 877 | o re-integrate .cvslink/JumpToCvs with dispatchurl | 
| 878 |  | 
| 879 | o WikiWords in CvsCommitMessages? (via yakka?) | 
| 880 |  | 
| 881 | x http://cvs.netfrag.org/bareface/yakka/?tarball=1 | 
| 882 |  | 
| 883 | o [source:/link/to/source-code]   (most times a '.cvslink' - hmmm?) | 
| 884 | [source:<projectname>] | 
| 885 |  | 
| 886 | o HelpMe | 
| 887 |  | 
| 888 | o [snapshot:/link/to/snapshot] | 
| 889 | [snapshot:<projectname>] | 
| 890 |  | 
| 891 | o dispatchrequest - a multipurpose request dispatcher | 
| 892 | o integrate: | 
| 893 | x redirector at cvs.netfrag.org ... | 
| 894 | o ... and news.netfrag.org | 
| 895 | o JumpToCvs (.cvslink-mechanism) | 
| 896 | o how was it done? | 
| 897 | x cd /data/www/virtual/netfrag/sites/webcvs/.dispatch | 
| 898 | x ln -s /data/www/global/apps/dispatchrequest . | 
| 899 |  | 
| 900 |  | 
| 901 | o buildhtml -> makedoc | 
| 902 |  | 
| 903 | o TWIG & yakka? | 
| 904 |  | 
| 905 | o rename: dispatchmail -> dispatchmessage | 
| 906 |  | 
| 907 | c rename: dispatchrequest -> forwardrequest? | 
| 908 |  | 
| 909 | o readrc of bashrc|perlrc|xmlrc | 
| 910 |  | 
| 911 | x setup TWIG | 
| 912 | x cd /usr/share/doc/twig | 
| 913 | x cd /data/www/virtual/netfrag/conf/ | 
| 914 | x nano applications.conf | 
| 915 | x add line: Alias /twig/ /usr/share/twig/ | 
| 916 | x had to modify /etc/apache/conf/httpd.conf: | 
| 917 | x added: 'index.php3' | 
| 918 | <IfModule mod_dir.c> | 
| 919 | DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 | 
| 920 | </IfModule> | 
| 921 | x added: '.php3' | 
| 922 | AddType application/x-httpd-php .php .php3 | 
| 923 | x /etc/init.d/apache reload | 
| 924 | x cd /etc/twig | 
| 925 | x modify config.inc.php3 | 
| 926 | x cd /usr/share/twig/setup | 
| 927 | x mysql | 
| 928 | x use mysql | 
| 929 | x insert into user (host, user, password) values ('localhost', 'www-data', password('')); | 
| 930 | x insert into db values ('localhost', 'twig', 'www-data', 'Y','Y','Y','Y','Y','Y','N','Y','Y','Y'); | 
| 931 | x create database twig; | 
| 932 | x flush privileges; | 
| 933 | x database-schema | 
| 934 | x gunzip twig.table.mysql.gz | 
| 935 | x mysql twig < twig.table.mysql | 
| 936 |  | 
| 937 | x setup arbitrary packet and bind to csm-system (Collaborative Software Management) | 
| 938 | x pinstall twig | 
| 939 | x apt-get install twig | 
| 940 | x cd /etc | 
| 941 | x cvs add twig | 
| 942 | x cd twig | 
| 943 | x cvs add * | 
| 944 | x cvs add .htaccess | 
| 945 | x cvs commit -m "+ initial commit" | 
| 946 |  | 
| 947 |  | 
| 948 | o remove html from phpWiki: ('http://'!!!) (->https!!!) | 
| 949 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" | 
| 950 | "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | 
| 951 | <link rel="copyright" title="GNU General Public License" href="http://www.gnu.org/copyleft/gpl.html#SEC1" /> | 
| 952 | <link rel="author" title="The PhpWiki Programming Team" href="http://phpwiki.sourceforge.net/phpwiki/ThePhpWikiProgrammingTeam" /> | 
| 953 |  | 
| 954 | o force https for: (authentication purposes - anonymous is http!) | 
| 955 | o horde | 
| 956 | o tutos | 
| 957 |  | 
| 958 | x dpkg -x twig_2.7.5-4_all.deb tmp/ | 
| 959 |  | 
| 960 | o TWIG & OpenLDAP!? | 
| 961 |  | 
| 962 | x ApacheMasterLayoutRefactoring: quepasa.netfrag.org: | 
| 963 | x removed /data/www/doc to /data/www/global/apps | 
| 964 | x test: | 
| 965 | x cd /data/www/virtual | 
| 966 | x grep -ri "/data/www/doc" * | 
| 967 | x cd /data/www/global | 
| 968 | x grep -ri "/data/www/doc" * | 
| 969 | x apps/twiki/ | 
| 970 | x lib/TWiki.cfg | 
| 971 | x bin/.htaccess | 
| 972 | x conf/twiki-httpd | 
| 973 | ---> just change between 'global' and (e.g.) 'virtual/netfrag' for switching between scopes   ;-) | 
| 974 | ---> the container (folder)-structure at global and sub-virtual level must match almost exactly to make this possible!!!!! | 
| 975 | x conf/virtualdomains-httpd/ | 
| 976 | x doc/twiki/ | 
| 977 | x removed: /data/www/virtual/netfrag/pub to /data/www/virtual/netfrag/sites/public | 
| 978 | x cd virtual/netfrag/conf | 
| 979 | x grep -ri "/pub" * | 
| 980 | x modify httpd.conf and applications.conf | 
| 981 | x apachectl configtest | 
| 982 | Syntax error on line 345 of /etc/apache/httpd.conf: | 
| 983 | DocumentRoot must be a directory | 
| 984 | x disabled there completely | 
| 985 | x now in /data/www/global/conf/httpd.conf | 
| 986 | DocumentRoot /data/www/virtual/netfrag/sites/public | 
| 987 | x apachectl configtest | 
| 988 | fopen: No such file or directory | 
| 989 | apache: could not open document config file /data/www/conf/twiki-httpd.conf | 
| 990 | x mv /data/www/global/conf/twiki-httpd.conf /data/www/virtual/netfrag/conf/ | 
| 991 | x nano /data/www/virtual/netfrag/conf/applications.conf to match new path | 
| 992 | x apachectl configtest | 
| 993 | fopen: No such file or directory | 
| 994 | apache: could not open document config file /data/www/conf/tutos-httpd.conf | 
| 995 | x cd virtual/netfrag | 
| 996 | x grep -rin "www/conf" * | 
| 997 | x edit applications.conf:21 | 
| 998 | x was: Include /data/www/conf/tutos-httpd.conf | 
| 999 | x is: Include /data/www/global/conf/tutos-httpd.conf | 
| 1000 | x apachectl configtest | 
| 1001 | Warning: DocumentRoot [/data/www/virtual/netfrag/sites/webnews] does not exist | 
| 1002 | fopen: No such file or directory | 
| 1003 | apache: could not open document config file /data/www/conf/dynamic.conf | 
| 1004 | x grep -rin webnews * | 
| 1005 | x edit applications.conf:30 | 
| 1006 | x was: Alias /webnews/ /data/www/global/apps/newsportal/ | 
| 1007 | x is: Alias /webnews/ /data/www/global/apps/newsportal/ | 
| 1008 | x edit httpd.conf:74 | 
| 1009 | x was: DocumentRoot /data/www/virtual/netfrag/sites/webnews | 
| 1010 | x is: DocumentRoot /data/www/virtual/netfrag/sites/news | 
| 1011 | x cd global/conf | 
| 1012 | x grep -rin www/conf * | 
| 1013 | x STDOUT-PARSE: | 
| 1014 | httpd.conf:14:#Include /data/www/conf/httpd-php-perl.conf | 
| 1015 | httpd.conf:16:#Include /data/www/conf/virtualdomains-httpd.conf | 
| 1016 | httpd.conf:29:Include /data/www/conf/dynamic.conf | 
| 1017 | ->FILE-MODIFY: httpd.conf:29:Include /data/www/global/conf/dynamic.conf | 
| 1018 | x apachectl configtest | 
| 1019 | root@quepasa:/data/www/global/conf# apachectl configtest | 
| 1020 | configuring dynamic domain "golf5.de" | 
| 1021 | configuring dynamic domain "smartmen.de" | 
| 1022 | configuring dynamic domain "ballonflug.de" | 
| 1023 | Syntax OK | 
| 1024 | x /etc/init.d/apache restart | 
| 1025 | x testing "http://netfrag.org/" fails | 
| 1026 | x testing "http://netfrag.org/index.php" | 
| 1027 | x makes redirect to "http://netfrag.org/nfoweb/" but fails there | 
| 1028 | x tail -f tail -f /data/www/virtual/netfrag/log/error_log | 
| 1029 | [Sun Jan 26 15:32:04 2003] [error] [client 217.231.119.195] File does not exist: /data/www/virtual/netfrag/pub/ | 
| 1030 | [Sun Jan 26 15:33:02 2003] [error] [client 217.231.119.195] File does not exist: /data/www/virtual/netfrag/pub/ | 
| 1031 | [Sun Jan 26 16:37:37 2003] [error] [client 217.231.119.195] Symbolic link not allowed: /data/www/virtual/netfrag/sites/public/nfoweb/ | 
| 1032 | [Sun Jan 26 16:38:08 2003] [error] [client 217.231.119.195] Symbolic link not allowed: /data/www/virtual/netfrag/sites/public/nfoweb/ | 
| 1033 | [Sun Jan 26 16:40:10 2003] [error] [client 217.231.119.195] Symbolic link not allowed: /data/www/virtual/netfrag/sites/public/nfoweb/ | 
| 1034 |  | 
| 1035 |  | 
| 1036 | o register: | 
| 1037 | public.netfrag.org -> http://netfrag.org | 
| 1038 | secure.netfrag.org -> https://netfrag.org | 
| 1039 |  | 
| 1040 | o netfrag.org: DispatchRequest for http://netfrag.org/nfoweb/! | 
| 1041 | o netfrag.org: DispatchRequest for http://netfrag.org/rrr/! | 
| 1042 |  | 
| 1043 | o IntroduceMergePoint at http://netfrag.org/doc/ | 
| 1044 | o MiniHowto | 
| 1045 | o faqs (e.g. from news://news.netfrag.org/nfo.faq.users | 
| 1046 |  | 
| 1047 | o what about an "AUTOSAVE"-feature for UltraEdit when leaving the window or | 
| 1048 | o an AUTOCOMMIT on that very event (maybe integrated with a counter) | 
| 1049 |  | 
| 1050 | o write scripts to iterate recursively through directories under specified path ... | 
| 1051 | o ... and do some actions on each directory, e.g. | 
| 1052 | o execute some specified .dot-files (e.g. .pod2htmlrc, .symlinkrc, .makedocrc) | 
| 1053 |  | 
| 1054 | x CVSSpam in action: | 
| 1055 | 10146 ?        S      0:00 /usr/sbin/sshd | 
| 1056 | 10148 ?        S      0:00 /usr/sbin/sshd | 
| 1057 | 10149 ?        S      0:00 cvs server | 
| 1058 | 10150 ?        S      0:00 cvs server | 
| 1059 | 10151 ?        S      0:00 /bin/login | 
| 1060 | 10155 ?        S      0:00 /usr/bin/ruby -w /var/lib/cvs/CVSROOT/collect_diffs.rb --to joko@netfrag | 
| 1061 | 10158 ?        S      0:00 /usr/bin/ruby /var/lib/cvs/CVSROOT/cvsspam.rb /tmp/#cvs.loginfo.10149.10 | 
| 1062 |  | 
| 1063 | x as Chora'sStylesheet has come active (by accident) when viewing this file view web | 
| 1064 | we should include this as a fixed default making horde our default stylesheet delivery engine (for now) | 
| 1065 |  | 
| 1066 | o link-checker for netfrag.org | 
| 1067 |  | 
| 1068 | o dispatcher for style.netfrag.org redirecting to <link href="/horde/css.php?app=chora" rel="stylesheet" type="text/css" />? | 
| 1069 | o styleme.php | 
| 1070 | o brandme.php | 
| 1071 |  | 
| 1072 |  | 
| 1073 |  | 
| 1074 | o mini-howto: "HttpRedirect" | 
| 1075 |  | 
| 1076 | o how to refactor the MiniHowtos? | 
| 1077 | o into a wiki? wikis seem to miss offline/distributed capabilities! (for now) | 
| 1078 | x into pod | 
| 1079 | x build offline | 
| 1080 | o build online | 
| 1081 | o into DocBook? | 
| 1082 | o into tavi? (or "TaviWorkflow"?) | 
| 1083 | o but: LinkWithWikiAutomagically to get everything together | 
| 1084 | o look at the InterwikiMechanism | 
| 1085 | o look at the various WikiPluginArchitectures | 
| 1086 | o look at YakkaDev! | 
| 1087 |  | 
| 1088 | o a LinkageExample: RenderThis(html4|text|html3|pdf) with [[yakka]] and [[tavi-workflow]]! | 
| 1089 | o this could mean: | 
| 1090 | o use the declared formats as output filters for viewing target in other formats / styles | 
| 1091 |  | 
| 1092 | o proposal for hierarchical structure (and HomePage) of netfrag.org | 
| 1093 | ~overview -> SomeWiki -> Overview | 
| 1094 | ~projects (include some common text here) | 
| 1095 | ~users (include some common text here) | 
| 1096 | - Page: UserArea | 
| 1097 | - Page: ~users | 
| 1098 | ~projects -> SomeWiki-> Projects | 
| 1099 | ~users (include former page "User area" (now UserArea) automagically at the bottom here! (WikiInclude?)) | 
| 1100 | ~rabit (raBit's router - psl.no-ip.com) | 
| 1101 | ~natraj (sam's place - optix) | 
| 1102 | ~joko (joko's) | 
| 1103 | ~bareface (->yakka) | 
| 1104 |  | 
| 1105 | o MasterWorkflow: | 
| 1106 | -> TheThreeGoodThings | 
| 1107 | -> HaveIdea -> WriteDown (RefactorLater) -> WriteDownMore -> WriteDownAssociations -> WriteDownEvenMoreIfNotStoppedByExternalInfluences | 
| 1108 | -> RefactorIdeas -> Categorize -> AddNotes -> AddTasks | 
| 1109 | -> DoThings -> ReadTasks -> DoTasks | 
| 1110 | -> TheFourthBadThing: TimeTrackAllThis  ;-)  (it seems to be not so far away....) | 
| 1111 |  | 
| 1112 | o what do we need / what do we do? | 
| 1113 | --- researcher | 
| 1114 | o OnlineReading | 
| 1115 | (o SelectItemsForDownload)  <- want-to-have | 
| 1116 | (o DownloadItems)  <- want-to-have | 
| 1117 | --- researcher | 
| 1118 | o OfflineReading | 
| 1119 | x ClumsyOfflineReading  <- status-quo | 
| 1120 | (o NiceOfflineReading)  <- want-to-have | 
| 1121 | (o OfflineArchiving)  <- want-to-have | 
| 1122 | o OfflineEditing (text, html, pod, tavi) | 
| 1123 | o OnlinePublishing (<all - everything what has been rendered or archived offline>) | 
| 1124 | --- engine | 
| 1125 | o LiveDispatching (ContentEncoding, ContentConversion, EnvelopeEncapsulation, GatewayToXyz) | 
| 1126 | o OfflineRendering (html, text, pdf, chm) | 
| 1127 | --- reader | 
| 1128 | o OnlineReading (<everything that has been published>) | 
| 1129 | (o SelectItemsForDownload)  <- want-to-have | 
| 1130 | (o DownloadItems)  <- want-to-have | 
| 1131 | o OfflineReading (pdf, chm) | 
| 1132 |  | 
| 1133 | o link to http://teamsonar.no-ip.com | 
| 1134 |  | 
| 1135 | o mail announces to announce@netfrag.org | 
| 1136 |  | 
| 1137 | o no symlinks in webroot anymore? use ApacheAliases? | 
| 1138 |  | 
| 1139 | o MiniHowto: NfoLinkageSystem(->news.nfo.announce) | 
| 1140 | o this declaration could mean: | 
| 1141 | o UseResources: | 
| 1142 | o look up "NfoLinkageSystem" as subject in newsgroup "news.nfo.announce" on default newsserver | 
| 1143 | o RenderThisWay: | 
| 1144 | o embed into document - html3 | 
| 1145 | o embed into document - dhtml (ExpandTree, CollapseTree) | 
| 1146 | o LinkToIt (JumpToMechanism(->minihowto)) | 
| 1147 |  | 
| 1148 | o php: appcontrol: reads .appcontrolrc-files recursively from directories and adds/removes users or sets passwords | 
| 1149 | according to specification in there | 
| 1150 |  | 
| 1151 | o source-code parser which creates documentation with wiki techniques | 
| 1152 | o pod2tavi -> tavi2html | 
| 1153 | o phpDoc <- tavi-plugin? | 
| 1154 |  | 
| 1155 | o integrate yakka and newsportal: | 
| 1156 | o make a yakka-page of embedded news-articles / threads / thread-parts (a NewsComposition) (->YakkaPageMetadata) | 
| 1157 | o article-sources | 
| 1158 | o all items from one news-server | 
| 1159 | o !!! from different news-servers !!! | 
| 1160 | o add a "CommentThis"-links to each item when rendering | 
| 1161 | o when user posts the answer on YakkaEditPage | 
| 1162 | o make yakka post to the article's associated news-server (read from YakkaItemMetadata) | 
| 1163 | o wait until new article is published, then ... | 
| 1164 | o ... add to NewsComposition (update YakkaPageMetadata) (->AsynchronousBackendDaemon) | 
| 1165 | o ... use/introduce a MetaItem "New" into YakkaPageMetadata (at TopLevel) | 
| 1166 | which shows NewItems(->self, ->live) per thread or newsgroup | 
| 1167 |  | 
| 1168 | o download this and that - e.g.: | 
| 1169 | o phpMyadmin(->archive.software.phpMyAdmin) | 
| 1170 | o this requires 'archive.software' to have ... | 
| 1171 | o ... a ListSearchHandler (searches nodelist below 'archive.software' only) | 
| 1172 | o ... a RecursiveSearchHandler (searches nodelist below 'archive.software' and all subfolders recursively) | 
| 1173 | o make this available as a ResourceHandler via a DispatchRequest sitting at | 
| 1174 | o http://netfrag.org/archive/?base=software&search=phpMyAdmin | 
| 1175 | o http://archive.netfrag.org/ | 
| 1176 |  | 
| 1177 | x rename newsgroup nfo.csm to nfo.caesar (Collaborative And Easy System Management) | 
| 1178 | x ctlinnd newgroup nfo.caesar | 
| 1179 | x /etc/init.d/inn stop | 
| 1180 | x cd /var/spool/news/nfo | 
| 1181 | x cp csm/* caesar/ | 
| 1182 | x cd caesar | 
| 1183 | (x movearticle ...) | 
| 1184 | o chown news.news * | 
| 1185 | o /usr/lib/news/bin/makehistory | 
| 1186 | x THIS FAILED! DON'T DO IT | 
| 1187 |  | 
| 1188 | o MiniHowto: KerberizedSystem (->~jonen) | 
| 1189 |  | 
| 1190 | o RefWords -> LookUpDb -> SearchDb | 
| 1191 |  | 
| 1192 | x added first news-article which refers/references to another one in another newsgroup | 
| 1193 | <a href="http://news.netfrag.org/nfo.caesar/id/1">Requirement: LDAP For Aliases, Maps, And Classes</a> | 
| 1194 | o PARSER-TODO: RefactorThisLink | 
| 1195 |  | 
| 1196 | o check out /usr/sbin/checksecurity - what's that? | 
| 1197 | x seems to come from /etc/cron.daily/standard | 
| 1198 |  | 
| 1199 | o write mail to the KroupwareMailingList | 
| 1200 |  | 
| 1201 | o ContentIndexer for netfrag.org which should provide a FullTextSearch over AllResources | 
| 1202 |  | 
| 1203 | o run MakeDoc at interval at netfrag.org as ServiceUser | 
| 1204 | o implement first version of makedoc | 
| 1205 | o use mkDoc.bat (or similar) for that purpose | 
| 1206 | o extend: use 'makedoc.bat|.pl' from ->cvs.joko.TestArea.topics.authoring.DocBook | 
| 1207 |  | 
| 1208 | o DispatchRequest to tie all together | 
| 1209 | o just make a ref from almost everything and see what comes in.... | 
| 1210 | o write handlers for the various refs.... | 
| 1211 |  | 
| 1212 | o show foldername in CVSSpam - message | 
| 1213 |  | 
| 1214 | o SoWhyCommands? | 
| 1215 | o JustUseHumanLanguage! | 
| 1216 | o StartWithEnglish | 
| 1217 | o TryGerman | 
| 1218 |  | 
| 1219 | o wrappers around the common used cvs commands | 
| 1220 | o cvscheckout <what> | 
| 1221 | o cvsupdate <what> | 
| 1222 | o cvscommit <what> <message> | 
| 1223 |  | 
| 1224 | o newsportal | 
| 1225 | feature-idea: crosspost to another group | 
| 1226 |  | 
| 1227 | o FreeTaskManagement | 
| 1228 |  | 
| 1229 | o run-dotfiles -R fetchdoc|synccvs|makedoc | 
| 1230 |  | 
| 1231 | o netfrag.org: "NewItems" (interacting with user's cookie's) | 
| 1232 |  | 
| 1233 | o phpLdapAdmin | 
| 1234 | o use Horde's Ldap-driver! | 
| 1235 | o tryout http://www.enaliath.com/phpLDAPadmin.tgz | 
| 1236 |  | 
| 1237 | o david-addons (Freeware) | 
| 1238 |  | 
| 1239 | o MacOsX (Shareware) | 
| 1240 |  | 
| 1241 | o POE - mailing-list??? | 
| 1242 |  | 
| 1243 | o publish all ldap-schemas seperately | 
| 1244 |  | 
| 1245 | o copyright information for nfo/docs/schemas (horde & janosch) | 
| 1246 |  | 
| 1247 | o notify of new news-entries / bug-requests | 
| 1248 |  | 
| 1249 | o scan urls from channel nfo and post to nfo.links.misc | 
| 1250 |  | 
| 1251 | o write current topic of #nfo to some page on http://netfrag.org and link to irc-channel there | 
| 1252 |  | 
| 1253 | o FeatureForTUTOS: ConvertNoteToTask | 
| 1254 |  | 
| 1255 | o FeatureForTUTOS: mark items in MiniTaskView as open or closed (by their respecrive state) | 
| 1256 |  | 
| 1257 |  | 
| 1258 |  | 
| 1259 |  | 
| 1260 | </pre> | 
| 1261 |  | 
| 1262 | <hr/> | 
| 1263 | $Id: joko_2003-01.html,v 1.87 2003/01/28 19:03:43 joko Exp $ | 
| 1264 |  | 
| 1265 | </body> | 
| 1266 | </html> |