joko's sample notes - 2003-01 - InventoryCleanupAndRefactoring





AIMS:
    Convert this document into a data-structure and back.
    Don't loose a bit of information.
    Make possible to link to all resources available.

for working with it
    global metadata
        cvs-loginfo/commitinfo
    ItemMetadata
        ItemStatus (open, closed and stuff)
        ItemAuthor
        ItemType
        ItemIdentifier
        references/associations to/from
    word metadata
        link to target
        show target as ...
    overview of all gathered metadata (at the bottom)

for rendering it
        render at as [in ] [to this ]




joko@netfrag.org - sample stack:

get (and refactor) from janosch:
    serial-interface-perl-scripts (3?)
        aquastar.pl
        relais.pl
        xyz
    faxGate.pl: mail-handler (Faxversandmodul)

gtk radiant

serial-line to eagle.psl.netfrag.org

rabit: php-gtk-ide (phpMole?)

mail links to jonen

Quake SDK (bots, ....)

3dmax: Reactor

look at tools @ perl/bin!!!

trim ~joko/Mail/.rules.pm for new Mailing Lists and CVS Logs (from CVSSpam)

get into ExtUtils::MakeMaker!!!

glossary: sync = get|send new mail & publish|announce

new mechanism to pass configuration-metadata to Torus: 'config_metadata => { file => '../etc/syncOutlookContacts.ini' }, ' and stuff....

TUTOS - to (static) report:
    Overview - All Projects: http://www.netfrag.org/tutos/php/product_overview.php?name=
    Statistics - All Projects: http://www.netfrag.org/tutos/php/product_overview.php?format=&start=0&format=stat
    Timetrack Summary - per User: http://www.netfrag.org/tutos/php/timetrack_overview.php?worker=1036
    look at:
    http://www.netfrag.org/tutos/php/res_cal.php?id=1036
    http://www.netfrag.org/tutos/php/timetrack_overview.php?worker=1036

Torus/XML
    -----------------------------------------------------------------------------
    Torus::addItem
          
        
        
            
                  

        

    

    -----------------------------------------------------------------------------

register: archive.netfrag.org

already archived somewhere in mail-history
        Data::Transfer::Sync::API::syncNodes
            Data::Transfer::Sync::Core::_syncNodes
                Data::Transfer::Sync::StorageInterface::_getNodeList( source )
                Data::Transfer::Sync::StorageInterface::_resolveNodeIdent( source )
                Data::Transfer::Sync::StorageInterface::_statloadNode( target )
                Data::Transfer::Sync::Compare::Checksum::_readChecksum( source )
                Data::Transfer::Sync::Core::_buildMap
                Data::Transfer::Sync::Core::_doTransferToTarget( insert|update )
                Data::Transfer::Sync::StorageInterface::_statloadNode( target )
                Data::Transfer::Sync::Compare::Checksum::_readChecksum( target )
                (Data::Transfer::Sync::Core::_doModifySource_IdentChecksum)

shortcut url: Detailed History (Tracker): http://www.netfrag.org/tutos/php/history_show.php?id=1054

glossary: "bind data" (add relationships and stuff...)

accounts for jonen, janosch and bareface (and all others) for inn@news.netfrag.org

outlook2ldap: win32, perl-5.8.0:
        ---> App::Config (CPAN, force)
        Tie::IxHash (CPAN)
        Log::Dispatch (CPAN)
        Log::Dispatch::Config (CPAN, force)
        mixin (ppm)
        DBI (ppm)
        Hash::Merge (ppm)
        Tie::SecureHash (ppm)
        ---> Date::Manip (CPAN)
        ---> Net::LDAP (own)

integrate TUTOS and sloccount!? the "costs"?

refactor DesignPattern:: to Data::Code::Object

create apache conf statically|dynamically from some declaration stored in ldap

misc
    cd /tmp
    umount /data
    recover /dev/ubd/2

implement rmtray!!! -> mv xyz /lost+found/tray/xyz
    -> [ insert project found by jonen here ]

apache startphrase: quepasa.netfrag.org

TUTOS FATAL ERROR Wednesday 22. Jan 2003
    =================================================================
        TUTOS FATAL ERROR Wednesday 22. Jan 2003
    14:15
    Error:
      Opening the MYSQL database MYSQL:tutos@localhost
    Detail:
      2002: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
          TUTOS Version: 1.0.20021113
    PHP Version: 4.2.3 Linux
    PHP Config: /etc/php4/apache/php.ini
    APACHE Version: Apache/1.3.26 (Unix) Debian GNU/Linux PHP/4.2.3 mod_ssl/2.8.9 OpenSSL/0.9.6g mod_perl/1.26
    Called from: http://www.netfrag.org/tutos/php/product_show.php?id=1108
    Called by: 217.231.123.32
    PHP Info Page
    =================================================================

Perl::Module::AutoInstall
    detect dynamically
    download from CPAN
    install || force install
    continue

perl -MCPAN -eshell
    install Hash::Merge
    install Bundle::CPAN
    install Hash::Merge
    force install Clone
    install Hash::Merge

apt-get install libtrash!!!

enhance-apache-perl-configuration:
    bug:
    root@quepasa:/tmp# /etc/init.d/apache start
    Starting web server: apacheconfiguring dynamic domain "golf5.de"
    features!!!
    have declaration stored in ldap:
        ldap-company-hierarchy-containers
        ldap-account-containers
            metadata (nsswitch)
            contact-information (pim (outlook|horde), notify, etc.)
        ldap-data-containers
            data-transfer (column/property -> column/property) mappings (via Data::Map)
            sendmail-virtusertable & -aliases
            mapped apache-config

news-accounts for all@netfrag.org

move data directories of mysql and ldap physically below /data (/var/lib/...)

backup-scripts:
    lowlevel: /data
    highlevel:
        mysql-databases
        ldap-databases
        news-spool
        cvs-repository

backup.pl <- backupThis.pl, backupMe.pl, backupHost.pl

https-only-mode (configurable) for horde and tutos!

make MX entry for news.netfrag.org!!!

backup-MX?

links-computing@netfrag.org -> newscollector -> recieveMail -> Mail::Audit -> news.netfrag.org:nfo.links.computing

convert content in nfo/doc/computing/.... to DocBook - publish and link generated content @ nfoweb

make "build.pl" read metadata from directory given (isCode? isDocBook? getFilelist!(?) getItems)
      
      

dispatchmail - prerequisites
    CPAN
        Mail::Audit
        Getopt::Long
        Hash::Merge
        mixin
    nfo/perl/libs
        DesignPattern::Object

check in joko's dispatchmail-rules

misc
    [task by joko] introduced "dispatchmail" to add mail2news-functionality to "recieveMail" (collector@netfrag.org)
    [task by joko] migrated joko_mail from "receiveMail" to "dispatchmail"
    [bug from joko] what about mailing from the cli / mails sent from the system (e.g. via CVSSpam):
          mail is sent out coming from @quepasa.netfrag.org
          --> how to configure just having @netfrag.org right here???
        [resolved by jonen] CVSSpam: janosch@netfrag.org:
              cd /etc/mail
              nano sendmail.mc
              add/replace line: MASQUERADE_AS(`netfrag.org')
              make
              /etc/init.d/sendmail reload
    [bug from joko] "su root" is needed sometimes
          else PATH is not set correctly
          and maybe something other
          compiling fails always
    [task by joko] these items already have been refactored into other Tasks, Notes and/or Bug Requests - this Note is just FYI.
    [task by joko] dispatchmail - project work
        README.pod -> README.html
        link with "topics.html" properly
        write something about data-/control-flow to README.pod

look (in detail) at Cyrus Netnews
        [...]
        The IMAP server can export netnews newsgroups as IMAP mailboxes.
        [...]
    collectnews, rmnews, syncnews
    seems to make an external web-based newsreader unneccessary!!!

tie together mail, news and html
      write mini-howto

link with erfrakon

sieve?

post some old mails to news.netfrag.org!

what about "dev@netfrag.org"?

nfo/perl/libs
      ts
      outlook2ldap
      dispatchmail
      get the essence (project- and development work - the whole workflow) out of it! write it down! in detail!

netfrag.org-workflow:
    technical questions to support@netfrag.org?
    publish them via news!
    queue them into / integrate with TUTOS somehow!!!

new threads@news.netfrag.org:
    ctlinnd newgroup nfo.support.queue
    ctlinnd newgroup nfo.support.faq

new account for janosch@news.netfrag.org
    nano /etc/news/nnrp.access
    added line: *:Read Post:janosch:janosch:*

check out from cvs-repository:
    joko/doc -> /home/joko/public_html/computing/overview/topics/
    leaded to (A, B and C): see home2web

added user@netfrag.org:
    adduser: collector/col§$

about: some sample items occoured 2003-01-17 until 2003-01-26.
    what to do with that?
        have all items stored in other applications conveniently.
        be able to have items or references to them *archived* centrally
        be able to access informations via *one* interface.
              actually *multiple* interfaces should be possible
                  the aim here is to get everything together (INTEGRATE!) (mnoGoSearch first! Torus::Archive later?)

refactor topics:
    make global-accessible@netfrag.org
    introduce subtopics
        sysadmin tasks
        janosch's, jonen's and joko's tasks

start project "admintools" @ nfo/perl/scripts - including
      getip.pl
      notify.pl
          on uml-event: up/down/reboot
          on news-post (dispatchmail: mail2news)
          on cvs-checkout (done on interval with joko/doc - see above)
          on build (build.pl)
      some tools from dispatchmail
      dispatchmail itself!
      

[idea] ;-) for symbols (in general)
    o = Open Task
    x = Closed Task
    (- [] = name of topic - fixed/proposed)
    [ by|for ] =
            type of topic - fixed/proposed
            username who submitted this item / should this item be assigned to
    this could become a language for describing the workflow
        this proposal should be the shortcut-form in wiki-style: (e.g. make 'tiki-workflow' from that?)
        more verbose (e.g. XML) - forms could/should become possible (e.g. 'WFML') (WorkFlow Markup|Modeling Language)
    TODO: refactor this document after further commits to show off refactoring process through cvs-revisioning!
        required for this: link to a page which shows the history of a document not as verbose as (e.g.) chora does
    d = from 'tbd': to-be-discussed
    c = cancelled

[idea] ;-) for symbols (in _this_ document here) (parser|engine behaviour modification)
    R = from 'tbr': to-be-refactored
    r = already refactored elsewhere
    an "r" may also mean "reference" ;-)
          make 'r-http://netfrag.org/to/another/reference/wrapped/via/http/' possible in documentation
          also the shortcut form: [r:/to/another/reference/wrapped/via/http/]
                  this - and only this - should be the minimalst requried definition of a "reference"
                  an internet "link" - however needs some more metadata around it: an "url" and a "caption" - what about these?
                        either fetch them from archive-metadata of this reference ...
                        ... or use the name directly as caption and build the url against a known redirector handler which
                            accesses the archive-metadata

rename "thread" to "newsgroup" in all scripts!

what about:
    Torus::Xyz - solution to reuse concepts of Apache 2 and Cyrus 2!!! (and OpenLDAP???) for building an open collaboration server?

word-search: "identify" and "search" for

establish global "logs/" - like at http://moose.qx.net/logs/

add redirecting page when someone wants to access
      http://netfrag.org/~joko/phpChoPro/ or
      http://netfrag.org/~joko/w2hfax/

update mail-dispatching-rules - aim: a more flat structure!!!
    look at ilo.de/Inbox
        marked message to Spam? Newsletters?
    move: logs/cvs/quepasa.netfrag.org -> logs/netfrag.org
    look at netfrag.org/Inbox
        if subject matches "Cron " set target "logs/netfrag.org/joko/cron" [push over cron]
            mkdir Mail/SORTED/netfrag.org/joko
            touch Mail/SORTED/netfrag.org/joko/cron
        if subject matches "quepasa daily usenet report" at begin set target "logs/netfrag.org/system/applications" [push over inn]
        if subject matches "[CVS" at begin set target "logs/netfrag.org/cvs" [push over CVSSpam]
        if mail is from myself set target "me2myself"
        moved some folders
            move already existing file to folder
                mv logs/netfrag.org/system logs/netfrag.org/system.tmp
                mkdir logs/netfrag.org/system
                mv logs/netfrag.org/system.tmp logs/netfrag.org/system/applications
            mv netfrag.org/Status/h1.service.netfrag.org logs/netfrag.org/system/
            mv netfrag.org/Status/TWikiChanges logs/twiki.org/ChangeLog
                mkdir logs/twiki.org
                do changes in .dispatchmailrc - always - ;-)
            mv netfrag.org/Status/quepasa.netfrag.org logs/netfrag.org/system/
            blocked email-partition *partition*! - email-partition(!) -> WordFinder
                mkdir ../FILTERED
                mv netfrag.org/Status/Spam ../FILTERED
                mv netfrag.org/Status/Test misc/
            mv netfrag.org/Status/Postmaster\ Routing misc/Postmaster
            rmdir netfrag.org/Status/
    look at netfrag.org/Inbox - again
                                    look at quepasa.netfrag.org/Inbox
        [Multisync-users]
        [Kroupware]
    tested the rules from above
        echo This is a testmail. Please ignore it. | mail -s "[CVS hello]" joko
move old mails to MailHistory
              write parser and engine to handle above declaration: Mail::Audit::Dispatch::Interface::Script
    add "X-"-field (X-Dispatched-By: dispatchmail-0.06 - http://netfrag.org/~joko/computing/dispatchmail/)
          release mail from above from joko - introduce another email-address
    e.g. work@netfrag.org, event@netfrag.org or tracker@netfrag.org (like collector@netfrag.org)

Multisync & SyncML
    post something to mailing-list...!?

the '.cvslink'-mechanism:
    type: ln -s /home/joko/public_html/_web/_cvs.php .

LinkContainer
    insert via drag & drop
    shows links hierarchically

(Self)Info - mails to yourself
    convert all "(Self)Info" mails to
    news-messages - use "formail" and ...?

h1.service.netfrag.org
    base os-upgrade: suse X -> debian 3.0
      dispatchmail
    are Mail-Headers already added?

workflow (PostThisLink)
    drag link from done google-search ...
    ... to container (at the current Task)
    a news-post is created automagically
        use this:
            [smtp-header-fields]
            From: expanded email-address resolved from Name|Nickname in Addressbook (via LDAP!)
            Subject: googled for ""
            [body]
            include into mime-part if not already included
                fetch from web on demand

ssl/tls for inn?

dispatchmail
    re-link as sub-/module-project under Torus::Content::Gateway (mail2news, mail2fax)
    -> Torus::Content - a content delivery engine
    -> additional idea: Torus::Content::Gateway is "just" the API to "Torus::Item::Router" in this case
        'Torus::Content::Gateway' would then route 'Torus::Item::RFC822'-objects using 'Torus::Item::Router'
    look at sieve - jonen posted to nfo.links.computing: [r:Message-ID: ]
    re-link as sub-/module-project under Torus::Virtual (mail2folder, mail2mail)
        here it acts as a dispatcher from incoming mails - TARGET gets resolved via ldap-resolvement
        make possible: MAIL-IN -> mail2mail (via ldap-query) -> mail2fax|mail2news
    mail2news
        the "via-fetchmail"-solution
        su collector
        cd ~
        chmod og-rwx .fetchmailrc

finally: do actually establish 'Torus' at 'nfo/perl/libs'

pod: checkout how to make references which expand to html-urls
    does pod handle this or do we need external link-expansion for this task?
    how to make references to news-messages?
            e.g.:
            Message-ID:
            news://news.netfrag.org/nfo.links.computing
      proposal(s) for "news2http" (Torus::Content::Gateway/Torus::Item::???):
            http://news.netfrag.org/id=b0ppj7$7gv$1@quepasa.netfrag.org
            http://news.netfrag.org/nfo.links.computing/subject=FilteringMailWithSieve of wiki
            http://news.netfrag.org/nfo.links.computing/id=b0ppj7$7gv$1@quepasa.netfrag.org

what about the '.nws'-files on ms? (for news-messages)

display-mode: everything strictly hierarchical to get maximum overview!!!

Inventory: cleaned up local and master code repositories

add "last-updated" to "README.html"

search.netfrag.org

tool for the "DoThis", "DoHere", "DoAll" - series
    FaxThis (joko/ToolBox/Windows/FaxThis)
    tool "WinSync": (WinSync All)
        RsyncHere
        Contacts2Ldap

statistics-page:
    for cvs.netfrag.org: cvs-statistics (activeness, ...), sloccount

home2web
    finally - added complete /home/joko/ to cvs-repository in order to get a revisioned ".dispatchmailrc"
        ~/.bashrc - added line: export CVSROOT=/var/lib/cvs
        relogin: logout/login
        cd ~
        joko@quepasa:~$ cvs checkout -d . joko (Fri Jan 24 00:43:18 CET 2003)
        cvs add TODO
        cvs add .bashrc .cronrc-hourly .forward
    added /home/joko/virtual/joko_mail
        [as joko]
        cvs add virtual
        chmod g+w virtual/CVS/*
        [as joko_mail
    shortcut for (e.g.): cvs commit -m "initial check-in" .bashrc .cronrc-hourly .forward
            cvsadd
    add /home/root (and maybe include there some other things "lying around")

alternative to all that Cyrus-stuff: just use the very "normal" imapd together with kerberos

make screenshots of log-output of dispatchmail when it's ready

base logging of 'dispatchmail' on DesignPattern::Object::Logger

dispatchmail-mail2folder: add feature to create folders recursively

archive mails
    su joko_mail
    cd ~
    mv ilo.de/Inbox ~/MailHistory/ARCHIVED/ilo.de/2002-05-30\ -\ 2003-01-24
    mkdir ~/MailHistory/ARCHIVED/netfrag.org/2003-01
    mv netfrag.org/Info ~/MailHistory/ARCHIVED/netfrag.org/2003-01/
        changed rule which formerly targeted to 'netfrag.org/Info' into 'me2myself'
    mv netfrag.org/Inbox ~/MailHistory/ARCHIVED/netfrag.org/2003-01/
    mkdir ~/MailHistory/ARCHIVED/netfrag.org/2003-01/Status
        mv netfrag.org/Status/cashew.netfrag.org ~/MailHistory/ARCHIVED/netfrag.org/2003-01/Status/
        mv netfrag.org/Status/h1.service.netfrag.org ~/MailHistory/ARCHIVED/netfrag.org/2003-01/Status/
    mv Sent ~/MailHistory/ARCHIVED/Sent/Sent_2002-11-13_-_2003-01-24
      
investigate LDAP-entry "mailForwardingAddress"

establish "Mini-HowTo"

search (allover): /^.*\.netfrag\.org/ => find all hostnames to register
      (they are scattered around in to-be-installed (web-)applications)

Mail::Audit::Dispatch::Lookup (csv-file, ::NetLDAP, => Data::Storage::Handler::Xyz => Data::Map)

switched mailing completely in outlook
    Evolution!
    now talking to 'wu-imapd' via ssl, too! - thanks to jonen!
        Jan 24 04:55:17 quepasa imapd[11508]: connect from 217.231.123.57
        Jan 24 04:55:17 quepasa imapd[11508]: imaps SSL service init from 217.231.123.57
        Jan 24 04:55:18 quepasa imapd[11508]: Login user=joko_mail host=pD9E77B39.dip.t-dialin.net [217.231.123.57]
    now my outlook sends via 'mail.netfrag.org' using 'TLS' - thanks to jonen!
        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
        Jan 24 04:53:10 quepasa sm-mta[11499]: h0O3r91D011499: from=, 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]

use IMAPFilter!!!

refactor old TODOs using 'home2web'

webgate (like dispatchmail)

zeit anhalten! (alle grauen männer umbringen!)

add to cvs:
      /home/service/
      /home/service/virtual/collector
      /home/service/virtual/tracker
      /home/service/virtual/fetcher
      /home/service/virtual/archiver

use 'wCron' to automagically do a 'cvs commit -m "+ updated/added content" joko/doc'
    mkdir -p C:\Programme\WCron
    unzip -j "C:\home\amo\develop\netfrag.org\rabit\wCron\releases\WCron-0.62-pre.zip" -d C:\Programme\WCron
    win2000: change/check permissions: right-click/Properties/Security Settings/Read, Execute = enabled
    run it
    add task
        implement shortcut-script: joko/Scripts/shortcuts/cvs_commit_joko-doc.bat
            add lines:
                cd C:\home\amo\develop\netfrag.org\joko
                cvs commit -m "+ updated/added content" doc

  on Windows it's called "QuickLaunch" ....

plugins for nautilus/gnome/kde:
    show arbitrary data-structures (from anywhere): here we may get the drag & drop - functionality "on-the-fly"

new user "gateway":
    adduser --home /home/service/virtual/gateway gateway (pass: gw%R%)
    mkdir /var/lib/cvs/gateway
    chown -R gateway.gateway /var/lib/cvs/gateway
    su gateway
    cvs -d /var/lib/cvs checkout -d ~ gateway
      error on quepasa:
        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
        Jan 24 19:00:09 quepasa sm-mta[17960]: h0OI081D017960: ruleset=check_rcpt, arg1=, relay=pD9E77B39.dip.t-dialin.net [217.231.123.57], reject=550 5.7.1 ... Relaying denied. Proper authentication required.
    add to /etc/mail/default-auth-info
        sendmail
        sendmail
        sendmailpwd
        quepasa.netfrag.org
    /etc/init.d/sendmail restart

Torus::Publish::ReWeb
      googling for something automagically opens a new task
      all links directly or indirectly coming out of this are sorted below this task
      the user can end this task on demand: timetracking is done automagically as well
        register tutos.netfrag.org

qpopper with tls, sasl and kerberos5?

off realtime! the only thing that happens at realtime is MailMiltering.
      cvs checkout of joko/doc is done via cron
      mail2news-dispatching is now done via cron (would be possible "in realtime" via '.forward'ing the mail *directly* to dispatchmail)

ctlinnd newgroup nfo.csm (Collaborative System Management)

make possible:
    after "cvs update" make question: "Found new items in "" while scanning. Should i add them to the repository?"
    drag & drop arbitrary items out of outlook (.msg, .nws, etc.) - search for them while scanning the fs and sync them
          against *original* source. (e.g. 'Message-ID: ')

CVSSpam -> nfo.log.cvs
    su root
    cd /etc/mail
    nano virtusertable
    add line:
        cvs-log@netfrag.org gateway
    make virtusertable
    su gateway
    cd ~
    nano .dispatchmailrc
        add lines:
            $self->copy('Newsgate', 'nfo.log.cvs')
                if $to =~ m/cvs-log/;
    exit (to logout)
    cvs update CVSROOT/loginfo
    add to CVSROOT/loginfo (to the end of the line starting with '^nfo '):
        --to cvs-log@netfrag.org
    cvs commit -m "+ added new notification target: 'cvs-log@netfrag.org'" CVSROOT/loginfo
    tested with some mini-howto
    removed '--to joko@netfrag.org --to jonen@netfrag.org --to bareface@netfrag.org --to janosch@netfrag.org '
          from CVSROOT/loginfo for module 'nfo'
    announce this
        added to '/etc/news/nnrp.access':
            *:Read Post:bareface:bareface:*
        /etc/init.d/inn reload

add 'gateways'-repository to chora
    nano /data/www/doc/horde/chora/config/cvsroots.php
    add lines:
        # 2003-01-24, joko
        $cvsroots['gateway'] = array(
                'name' => 'gateway',
                'location' => '/var/lib/cvs/gateway',
                'title' => "$titlePrefix gateway's CVS Repository",
                'cvsusers' => $cvsusers,
        );

configured Apache for serving news.netfrag.org
      cleaned up /data/www/virtual/netfrag/conf/httpd.conf
            ./test.conf
            comments
      /etc/init.d/apache reload
      test: http://news.netfrag.org/
        new module for cvs-repository?
      nfo/layouts/fs/skel/data2
      checkout to /data on quepasa.netfrag.org
      done:
            su root
            cd /var/lib/cvs
            mkdir -p nfo/layouts/fs/skel/data
            mkdir -p nfo/layouts/fs/skel/data2
            mkdir -p nfo/hosts/quepasa.netfrag.org/data
            cvs -d /var/lib/cvs checkout -d /data nfo/hosts/quepasa.netfrag.org/data
                *mungle everything and commit!* look at the repository!
            add special group with access to this repository: 'rootsrc'
                groupadd rootsrc
                usermod -G src,staff,rootsrc joko
                usermod -G src,staff,rootsrc jonen
                usermod -G rootsrc root
                change permissions
                    cd /var/lib/cvs/nfo/
                    chown -R .rootsrc hosts
                    chmod -R g+w hosts

          add to system-conf-repository:
    /etc/mail
    php: cvs-redirect
    
      extend WCron
      show (per-task) if it's currently running or not: provide buttons to (start, stop, pause, resume or cancel a task...)
      use as a frontend for administering nfo/libs/perl/ - backend - tasks(???)
        install Horde/Troll
      install troll
          cd /home/service/download
          mkdir horde
          cd horde
          wget ftp://ftp.horde.org/pub/troll/troll-0.0.2.tar.gz
          tar -xzf troll-0.0.2.tar.gz --directory=/data/www/doc/horde/
      configure horde
          cd /data/www/doc/horde/
          nano config/registry.php
                add lines:
                  $this->applications['troll'] = array(
                          'fileroot' => dirname(__FILE__) . '/../troll',
                          'webroot' => $this->applications['horde']['webroot'] . '/troll',
                          'icon' => $this->applications['horde']['webroot'] . '/troll/graphics/troll.gif',
                          'name' => _("News"),
                          'allow_guests' => true,
                          'show' => true
                  );
            configure Troll
                cd troll/config
                conf.php
                    cp conf.php.dist conf.php
                    nano conf.php
                    edit:
                        $conf['news']['server'] = 'news.netfrag.org';
                        $conf['news']['mailserver'] = 'mail.netfrag.org';
                servers.php
                    cp servers.php.dist servers.php
                    add:
                        $servers['netfrag.org'] = array(
                                'name' => 'news.netfrag.org',
                                'server' => 'news.netfrag.org',
                                'port' => 119,
                        );
                prefs.php
                    cp prefs.php.dist prefs.php
                html.php
                    cp html.php.dist html.php
                permissions
                    chmod o+r *.php
                                                    test: http://netfrag.org/horde/
                another (more bright) skin for horde@netfrag.org!!!
                  Warum nicht überall Horde? Sondern TUTOS?
      Horde ist sehr breit angelegt, dafür fehlt es jedoch an vielen Stellen noch ein wenig im Detail.
      mittlerweile: mit Hermes & Co.? nochmal ansehen!

just do automated operations (like cvs commit) only if system is idle

automagically redirect http://netfrag.org/horde/ to https://netfrag.org/horde/
    with an Apache - rewrite-rule?
      how to map TUTOS-groups to newsgroups?
    ctlinnd newgroup nfo.tutos.sysadmin
    add dispatching for sysadmin@netfrag.org
        add to /home/service/virtual/gateway/.dispatchmailrc
            $self->copy('Newsgate', 'nfo.tutos.sysadmin') if $to =~ m/sysadmin/;
        add to /etc/mail/virtusertable:
            # --- news.netfrag.org - joko, 2003-01-24
            sysadmin@netfrag.org gateway
            make virtusertable!
        write welcome-mail
            root@quepasa:~$ mail sysadmin@netfrag.org
            Subject: Welcome to the sysadmin-newsgroup at netfrag.org!
            Have fun!
            greets, joko.
                          .
            Cc:
        test: do "refresh newsgroups" at your favourite news-reader
    this has been refactored to: [news:id=b0shbj$l9s$1@quepasa.netfrag.org]
        HEADERS:
            Message-ID:
            Subject: Re: Welcome to the sysadmin-newsgroup at netfrag.org!
        newsgate
            http://news.netfrag.org/nfo.tutos.sysadmin/id/b0shbj$l9s$1@quepasa.netfrag.org
            http://news.netfrag.org/nfo.tutos.sysadmin/subject/Re: Welcome to the sysadmin-newsgroup at netfrag.org!

Erkenntnis aus UML (Kernel 2.4): schwierig mit gleichzeitigem Zugriff

gave up trying to get Troll running

setup alternatives to Horde for public access
    viewcvs
        apt-get install libapache-mod-python
              WebNewsViewer
      release the user from having to send email-messages to actually post urls with content (e.g. "FirstPage")

parse .url-files!

have newsgroup-structure backed in ldap-container (ou) somehow (Data::Map!)

new email-addresses@netfrag.org:
    sysadmin@netfrag.org
    faq@netfrag.org
      --rework|*reworked*-- apache-layout - check into repository as something root is responsible for!

--setup|*setting up*-- newsportal (by Florian Amrhein)
    url: http://florian-amrhein.de/newsportal/
    cd /home/service/download
    mkdir newsportal
    cd newsportal
    wget http://florian-amrhein.de/newsportal/download/newsportal-0.24.tar.gz
    mkdir -p /data/www/virtual/netfrag/sites/news/apps/newsportal/
    tar -xzf newsportal-0.24.tar.gz --directory=/data/www/global/apps/newsportal/
    add to /data/www/virtual/netfrag/conf/applications.conf
        Alias /webnews/ /data/www/global/apps/newsportal/
    configure in /data/www/global/apps/newsportal/config.inc
        // newsserver setup
        $server="news.netfrag.org";
        $server_auth_user="webnews";
        $server_auth_pass="web123";
    add to /etc/news/nnrp.access:
        # 2003-01-26, joko
        *:Read Post:webnews:web123:*
    modify groups.txt
        
        TODO: AUTOUPDATE here!
    add to the index-page:
        xR set INSERTION=""
        grep -rin "             doc/readme-deutsch.html:4:
            doc/faq.html:4:
            doc/history.txt:234:- fehlender Tag ergaenzt
            doc/readme-english.html:4:
            doc/history.txt~:233:- fehlender Tag ergaenzt
            extras/frames/thread_frameset.php:10:
            head.inc:5:
        cvs add head.inc
        cvs commit -m "+ initial commit" head.inc
        
            nano head.inc
             STRG+W + T: 5
            xR
            xR
             STRG+O + [ENTER]
        test: http://www.netfrag.org/webnews/>
            TODO: RefactorThisHtmlRef to WebNews
        view message in some MimeViewer or HtmlViewer (Horde?)
            -> use a MessageViewer with MimeCapabilities and HtmlCapabilities
    Why newsportal and no other?
        directly connects to nntp-daemon
        has local spool (o TODO: purge regularly?)
        highly customizable
            added custom css-stylesheet and changed something at content-rendering-level without any problems
            visit cvs.netfrag.org to look at the changes made to the newsportal codebase:
                -> newsportal at cvs.netfrag.org
                    TODO: RefactorThisLink
        it's just easy!
    setup dispatchrequest for http://news.netfrag.org
        cd /data/www/virtual/netfrag/sites/news/
        create symlink
            ./.symlinkrc
        copy over from webcvs
            cp ../webcvs/index.php .
            mkdir .dispatch
            cd .dispatch
            cp ../webcvs/.dispatch/config.php .
            cp ../webcvs/.dispatch/index.php .
        cvs add ...
        cvs commit ...
    added|*adding* dispatcher at http://news.netfrag.org
        used and mungled DispatchRequest(->cvs, ->doc, ->search) for this purpose
            IdeaFor ParseDoc: expand: cvs=JumpToCvs, doc=JumpToDoc, search=SearchFor
                examples for the JumpToCvs mechanism are shown on tested http://cvs.netfrag.org/ - still working...
        AddedFeatures to DispatchRequest:
            JumpToNewsgroup: http://news.netfrag.org/nfo.tutos.sysadmin/
                e.g. ->http://netfrag.org/webnews/thread.php?group=nfo.links.computing
            JumpToThread: NotYetImplemented! DoWeReallyNeedThis?
            JumpToArticle: http://news.netfrag.org/nfo.sysadmin.tutos/id/b0shbj$l9s$1@quepasa.netfrag.org
            JumpToArticle: http://news.netfrag.org/nfo.links.computing/id/44
                e.g. ->http://netfrag.org/webnews/article.php?id=44&group=nfo.links.computing

NfoWeb
    add WikiPages:
        Overview
            News
                news.netfrag.org
            Users
            Development
                Projects
                cvs.netfrag.org
            Documentation
                Topics
                MiniHowto
            Download
            (o Search)
    modify HomePage
        change Projects to Overview

yakka & pod
    convert pod to tavi
        perl first (pod2tavi)
        php afterwards (pod2tavi-php)
        then refactor to a YakkaPlugin (an "input-filter"?) ('yakka-filter-pod'?)
    address "files" outside the normal/configured default YakkaRepository
        introduce: "ExplicitAddressingOfArbitraryTargets"
            via HttpHeader (GET/POST) (HtmlUrlArgument, HtmlFormField)
        introduce "YakkaContainers": aim: group a bunch of targets/items together as a kind of "MetaRepository"

viewcvs & yakka
    a filesystem-adapter for yakka's storage-handler-system
    show "view in yakka" if document-type eq 'tavi|tavi,v|pod'

IconForNetfrag.Org?
    fav.ico?
      --*installed*|install-- viewcvs
    apt-get install viewcvs
        configured:
            /var/lib/cvs
            email-address (new): cvs-admin@netfrag.org -> dev@netfrag.org
            no forbidden modules (do this via unix permissions!)
            allow tarball generation? yes!
            Hint: add "Alias /viewcvs/ /usr/share/viewcvs/" to /etc/apache/conf/httpd.conf for online documents and icons
                added to '/data/www/virtual/netfrag/conf/applications.conf' in our case
            added '' to '/etc/viewcvs/templates/header.ezt'

rendering *proposals* for TaviWorkflow
    Linking|Referencing (WikiWords, PureExplicitLinkExtrapolation, NamedLinks)
    Coloring
        [o=red, x=green, R=red, r=green]

*shortcut*: TestApache to run 'apachectl configtest' (WikiForSystemAdministration)

web-based newsreader? twig!
    apt-get install twig
      shutdown horde (for now: "pause")

viewcvs & apache-mod-python?

home2web, .home2webrc
    what?
        --before: buildhtml --source=pod|tavi
        --after: say "ready"
    hmmm...
        buildhtml: automate various SubTasks
        synccvs (->cvs.nfo.perl.scripts.shortcuts.synccvs.pl)
        buildhtml (->makedoc) (->cvs.nfo.perl.scripts.shortcuts.synccvs.pl)

added root of quepasa to cvs
    su root
    cd /var/lib/cvs/nfo/hosts/quepasa.netfrag.org
    mkdir root
        chown -R .rootsrc root/
        chmod -R g+w root/
    cd /tmp
    cvs -d /var/lib/cvs checkout -d / nfo/hosts/quepasa.netfrag.org/root
    start with /etc
        cd /etc
        cvs add etc
        cvs add viewcvs
            cd viewcvs
            cvs add ....
            cvs commit -m "+ initial commit"

How to get a single file from cvs for download: (e.g.)
      wget http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/*checkout*/viewcvs/viewcvs/templates/header.ezt?rev=1.2

cvsgraph still missing: apt-get install cvsgraph

chora -> viewcvs
    change logo at /usr/share/viewcvs/images
    removed from template
    cvsview-query.cgi didn't work yet!
        error was:
            tail -f /data/www/virtual/netfrag/log/error_log
            Traceback (most recent call last):
                File "/usr/lib/cgi-bin/viewcvs-query.cgi", line 50, in ?
                    import query
                File "/usr/lib/python2.1/viewcvs/query.py", line 42, in ?
                    import cvsdb
                File "/usr/lib/python2.1/viewcvs/cvsdb.py", line 34, in ?
                    import dbi
                File "/usr/lib/python2.1/viewcvs/dbi.py", line 17, in ?
                    import MySQLdb
            ImportError: No module named MySQLdb
            [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
        solution is:
            apt-get install python-mysqldb
        use mysql;
            insert into db values ('localhost', 'ViewCVS', 'viewcvs', 'Y','Y','Y','Y','Y','Y','N','Y','Y','Y');
            insert into db values ('%', 'ViewCVS', 'viewcvs', 'Y','Y','Y','Y','Y','Y','N','Y','Y','Y');
            insert into user (host, user, password) values ('localhost', 'viewcvs', password('viewcvs'));
            flush privileges;
        cd /usr/lib/viewcvs
        ./make-database
    
    mail to author of viewcvs
          
docu about uml and filesystem-layer running on gharb for MiniHowTo?

search.php?wiki=1&cvs=1&index=1

get mnoGoSearch running
    e apt-get install mnoGoSearch
    e apt-get install mnogosearch-common mnogosearch-doc mnogosearch-pgsql mnogosearch-php
    apt-get install mnogosearch-common mnogosearch-php
        don't overwrite configuration files
        use 'crc-multi'
        use 'postgres'
        use 'mnogosearch'
    apt-get install postgresql
        use 'Enter default encoding (SQL_ASCII):'
                Success. You can now start the database server using:
                                          /usr/lib/postgresql/bin/postmaster -D /var/lib/postgres/data
                or
                        /usr/lib/postgresql/bin/pg_ctl -D /var/lib/postgres/data -l logfile start
                                  PostgreSQL database now installed.
                Use /usr/bin/createdb to create a specific database and
                /usr/bin/createuser to enable other users to connect to a
                PostgreSQL database.
                                  In the first instance, these commands must be run by the
                user 'postgres'.
                                  Restarting PostgreSQL database: postmaster
                No /usr/lib/postgresql/bin/postmaster found running; none killed.
                Starting PostgreSQL postmaster.
                postmaster successfully started
                .
                Enabling the PL procedural language in all PostgreSQL databases...
                plpgsql added to template1
    apt-get install postgresql-dev
    e apt-get install libpostgresql
    e apt-get install libpgtcl
    apt-get install mnogosearch-pgsql mnogosearch-pgsql-dev
    dpkg-reconfigure mnogosearch-common
    su postgres
    /usr/lib/postgresql/bin/createuser mnogosearch
    /usr/lib/postgresql/bin/createdb mnogosearch
          changed to "mysql" in /etc/mnogosearch/indexer.conf and
        e deployed schemas at /usr/share/doc/mnogosearch-common/create/mysql/
            mysql -e "insert into user (host, user, password) values ('localhost', 'mnogosearch', password('mno123'));" mysql
            mysql -e "insert into user (host, user, password) values ('%', 'mnogosearch', password('mno123'));" mysql
            mysql -e "insert into db values ('localhost', 'mnogosearch', 'mnogosearch', 'Y','Y','Y','Y','Y','Y','N','Y','Y','Y');" mysql
            mysql -e "create database mnogosearch;"
            cd /usr/share/doc/mnogosearch-common/create/mysql/
            mysql mnogosearch < categories.txt
            mysql mnogosearch < crc-multi.txt
        deployed schemas at /usr/share/doc/mnogosearch-common/create/pgsql/
            psql -U mnogosearch mnogosearch < create.txt
            ...
        added to /data/www/virtual/netfrag/conf/applications.conf
            php_value include_path /usr/share/mnogosearch-php:/etc/mnogosearch-php
            Alias /search/ /var/www/search.php
        apt-get install php4-pgsql
                  !!! jonen made mysql-mode apts for mnogosearch-common_3.2.6-2.SU.1_all.deb !!!
            use them: [...] ->archive:/path/to/debs

it's not tavi nor tavi-workflow - it's: JustWrite? it's todo! (.todo -> .justdo -> .justwrite -> .done)

ScanToWeb

look at Mailman: http://www.list.org/features.html

use cvsup!?

alien.netfrag.org - (package-conversion) --> alien.packages.netfrag.org

chora2viewcvs - How to migrate from Horde/Chora to viewcvs.

LinuxInCvs (linux2cvs)

TestApacheConfig, StopApache, StartApache have to work without any running Apache - of course!

through "viewcvs" we loose the ability to "publish" documents via former chora:
      viewcvs takes care to keep documents like they are in their original - so ".html"-files should be shown with text/plain

re-integrate .cvslink/JumpToCvs with dispatchurl

WikiWords in CvsCommitMessages? (via yakka?)

http://cvs.netfrag.org/bareface/yakka/?tarball=1

[source:/link/to/source-code] (most times a '.cvslink' - hmmm?)
      [source:]

HelpMe

[snapshot:/link/to/snapshot]
      [snapshot:]

dispatchrequest - a multipurpose request dispatcher
    integrate:
        redirector at cvs.netfrag.org ...
        ... and news.netfrag.org
    JumpToCvs (.cvslink-mechanism)
    how was it done?
        cd /data/www/virtual/netfrag/sites/webcvs/.dispatch
        ln -s /data/www/global/apps/dispatchrequest .
                buildhtml -> makedoc

TWIG & yakka?

rename: dispatchmail -> dispatchmessage

rename: dispatchrequest -> forwardrequest?

readrc of bashrc|perlrc|xmlrc

setup TWIG
    cd /usr/share/doc/twig
    cd /data/www/virtual/netfrag/conf/
    nano applications.conf
    add line: Alias /twig/ /usr/share/twig/
    had to modify /etc/apache/conf/httpd.conf:
        added: 'index.php3'
                
                        DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3
                

        added: '.php3'
                AddType application/x-httpd-php .php .php3
        /etc/init.d/apache reload
        cd /etc/twig
            modify config.inc.php3
        cd /usr/share/twig/setup
            mysql
                use mysql
                insert into user (host, user, password) values ('localhost', 'www-data', password(''));
                insert into db values ('localhost', 'twig', 'www-data', 'Y','Y','Y','Y','Y','Y','N','Y','Y','Y');
                create database twig;
                flush privileges;
            database-schema
                gunzip twig.table.mysql.gz
                mysql twig < twig.table.mysql
                  setup arbitrary packet and bind to csm-system (Collaborative Software Management)
    pinstall twig
        apt-get install twig
        cd /etc
        cvs add twig
        cd twig
        cvs add *
        cvs add .htaccess
        cvs commit -m "+ initial commit"
      
remove html from phpWiki: ('http://'!!!) (->https!!!)
             "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    

force https for: (authentication purposes - anonymous is http!)
    horde
    tutos
      dpkg -x twig_2.7.5-4_all.deb tmp/

TWIG & OpenLDAP!?

ApacheMasterLayoutRefactoring: quepasa.netfrag.org:
    removed /data/www/doc to /data/www/global/apps
        test:
            cd /data/www/virtual
            grep -ri "/data/www/doc" *
            cd /data/www/global
                grep -ri "/data/www/doc" *
                apps/twiki/
                    lib/TWiki.cfg
                    bin/.htaccess
                conf/twiki-httpd
                    ---> just change between 'global' and (e.g.) 'virtual/netfrag' for switching between scopes ;-)
                    ---> the container (folder)-structure at global and sub-virtual level must match almost exactly to make this possible!!!!!
                conf/virtualdomains-httpd/
                doc/twiki/
    removed: /data/www/virtual/netfrag/pub to /data/www/virtual/netfrag/sites/public
        cd virtual/netfrag/conf
            grep -ri "/pub" *
                modify httpd.conf and applications.conf
    apachectl configtest
        Syntax error on line 345 of /etc/apache/httpd.conf:
        DocumentRoot must be a directory
        disabled there completely
        now in /data/www/global/conf/httpd.conf
            DocumentRoot /data/www/virtual/netfrag/sites/public
    apachectl configtest
        fopen: No such file or directory
        apache: could not open document config file /data/www/conf/twiki-httpd.conf
        mv /data/www/global/conf/twiki-httpd.conf /data/www/virtual/netfrag/conf/
        nano /data/www/virtual/netfrag/conf/applications.conf to match new path
    apachectl configtest
        fopen: No such file or directory
        apache: could not open document config file /data/www/conf/tutos-httpd.conf
        cd virtual/netfrag
        grep -rin "www/conf" *
        edit applications.conf:21
            was: Include /data/www/conf/tutos-httpd.conf
            is: Include /data/www/global/conf/tutos-httpd.conf
    apachectl configtest
        Warning: DocumentRoot [/data/www/virtual/netfrag/sites/webnews] does not exist
        fopen: No such file or directory
        apache: could not open document config file /data/www/conf/dynamic.conf
        grep -rin webnews *
            edit applications.conf:30
                was: Alias /webnews/ /data/www/global/apps/newsportal/
                is: Alias /webnews/ /data/www/global/apps/newsportal/
            edit httpd.conf:74
                was: DocumentRoot /data/www/virtual/netfrag/sites/webnews
                is: DocumentRoot /data/www/virtual/netfrag/sites/news
          cd global/conf
          grep -rin www/conf *
            STDOUT-PARSE:
                httpd.conf:14:#Include /data/www/conf/httpd-php-perl.conf
                httpd.conf:16:#Include /data/www/conf/virtualdomains-httpd.conf
                httpd.conf:29:Include /data/www/conf/dynamic.conf
                    ->FILE-MODIFY: httpd.conf:29:Include /data/www/global/conf/dynamic.conf
    apachectl configtest
            root@quepasa:/data/www/global/conf# apachectl configtest
            configuring dynamic domain "golf5.de"
            configuring dynamic domain "smartmen.de"
            configuring dynamic domain "ballonflug.de"
            Syntax OK
    /etc/init.d/apache restart
    testing "http://netfrag.org/" fails
    testing "http://netfrag.org/index.php"
        makes redirect to "http://netfrag.org/nfoweb/" but fails there
    tail -f tail -f /data/www/virtual/netfrag/log/error_log
        [Sun Jan 26 15:32:04 2003] [error] [client 217.231.119.195] File does not exist: /data/www/virtual/netfrag/pub/
        [Sun Jan 26 15:33:02 2003] [error] [client 217.231.119.195] File does not exist: /data/www/virtual/netfrag/pub/
        [Sun Jan 26 16:37:37 2003] [error] [client 217.231.119.195] Symbolic link not allowed: /data/www/virtual/netfrag/sites/public/nfoweb/
        [Sun Jan 26 16:38:08 2003] [error] [client 217.231.119.195] Symbolic link not allowed: /data/www/virtual/netfrag/sites/public/nfoweb/
        [Sun Jan 26 16:40:10 2003] [error] [client 217.231.119.195] Symbolic link not allowed: /data/www/virtual/netfrag/sites/public/nfoweb/

  register:
    public.netfrag.org -> http://netfrag.org
    secure.netfrag.org -> https://netfrag.org
      netfrag.org: DispatchRequest for http://netfrag.org/nfoweb/!
netfrag.org: DispatchRequest for http://netfrag.org/rrr/!

IntroduceMergePoint at http://netfrag.org/doc/
    MiniHowto
    faqs (e.g. from news://news.netfrag.org/nfo.faq.users

what about an "AUTOSAVE"-feature for UltraEdit when leaving the window or
    an AUTOCOMMIT on that very event (maybe integrated with a counter)
      write scripts to iterate recursively through directories under specified path ...
    ... and do some actions on each directory, e.g.
    execute some specified .dot-files (e.g. .pod2htmlrc, .symlinkrc, .makedocrc)
      CVSSpam in action:
    10146 ? S 0:00 /usr/sbin/sshd
    10148 ? S 0:00 /usr/sbin/sshd
    10149 ? S 0:00 cvs server
    10150 ? S 0:00 cvs server
    10151 ? S 0:00 /bin/login
    10155 ? S 0:00 /usr/bin/ruby -w /var/lib/cvs/CVSROOT/collect_diffs.rb --to joko@netfrag
    10158 ? S 0:00 /usr/bin/ruby /var/lib/cvs/CVSROOT/cvsspam.rb /tmp/#cvs.loginfo.10149.10
      as Chora'sStylesheet has come active (by accident) when viewing this file view web
      we should include this as a fixed default making horde our default stylesheet delivery engine (for now)

link-checker for netfrag.org

dispatcher for style.netfrag.org redirecting to ?
    styleme.php
    brandme.php
      
  mini-howto: "HttpRedirect"

how to refactor the MiniHowtos?
    into a wiki? wikis seem to miss offline/distributed capabilities! (for now)
    into pod
        build offline
        build online
    into DocBook?
    into tavi? (or "TaviWorkflow"?)
    but: LinkWithWikiAutomagically to get everything together
        look at the InterwikiMechanism
        look at the various WikiPluginArchitectures
        look at YakkaDev!

a LinkageExample: RenderThis(html4|text|html3|pdf) with [[yakka]] and [[tavi-workflow]]!
    this could mean:
        use the declared formats as output filters for viewing target in other formats / styles

proposal for hierarchical structure (and HomePage) of netfrag.org
    ~overview -> SomeWiki -> Overview
        ~projects (include some common text here)
        ~users (include some common text here)
            Page: UserArea
            Page: ~users
    ~projects -> SomeWiki-> Projects
    ~users (include former page "User area" (now UserArea) automagically at the bottom here! (WikiInclude?))
        ~rabit (raBit's router - psl.no-ip.com)
        ~natraj (sam's place - optix)
        ~joko (joko's)
        ~bareface (->yakka)

MasterWorkflow:
    -> TheThreeGoodThings
        -> HaveIdea -> WriteDown (RefactorLater) -> WriteDownMore -> WriteDownAssociations -> WriteDownEvenMoreIfNotStoppedByExternalInfluences
        -> RefactorIdeas -> Categorize -> AddNotes -> AddTasks
        -> DoThings -> ReadTasks -> DoTasks
    -> TheFourthBadThing: TimeTrackAllThis ;-) (it seems to be not so far away....)

what do we need / what do we do?
    --- researcher
        OnlineReading
        (o SelectItemsForDownload) <- want-to-have
        (o DownloadItems) <- want-to-have
    --- researcher
        OfflineReading
        ClumsyOfflineReading <- status-quo
            (o NiceOfflineReading) <- want-to-have
            (o OfflineArchiving) <- want-to-have
        OfflineEditing (text, html, pod, tavi)
        OnlinePublishing ()
    --- engine
        LiveDispatching (ContentEncoding, ContentConversion, EnvelopeEncapsulation, GatewayToXyz)
            OfflineRendering (html, text, pdf, chm)
    --- reader
        OnlineReading ()
        (o SelectItemsForDownload) <- want-to-have
        (o DownloadItems) <- want-to-have
        OfflineReading (pdf, chm)

link to http://teamsonar.no-ip.com

mail announces to announce@netfrag.org

no symlinks in webroot anymore? use ApacheAliases?

MiniHowto: NfoLinkageSystem(->news.nfo.announce)
    this declaration could mean:
        UseResources:
            look up "NfoLinkageSystem" as subject in newsgroup "news.nfo.announce" on default newsserver
        RenderThisWay:
            embed into document - html3
            embed into document - dhtml (ExpandTree, CollapseTree)
            LinkToIt (JumpToMechanism(->minihowto))

php: appcontrol: reads .appcontrolrc-files recursively from directories and adds/removes users or sets passwords
        according to specification in there

source-code parser which creates documentation with wiki techniques
    pod2tavi -> tavi2html
    phpDoc <- tavi-plugin?

integrate yakka and newsportal:
    make a yakka-page of embedded news-articles / threads / thread-parts (a NewsComposition) (->YakkaPageMetadata)
        article-sources
            all items from one news-server
            !!! from different news-servers !!!
        add a "CommentThis"-links to each item when rendering
        when user posts the answer on YakkaEditPage
            make yakka post to the article's associated news-server (read from YakkaItemMetadata)
            wait until new article is published, then ...
                ... add to NewsComposition (update YakkaPageMetadata) (->AsynchronousBackendDaemon)
                ... use/introduce a MetaItem "New" into YakkaPageMetadata (at TopLevel)
                    which shows NewItems(->self, ->live) per thread or newsgroup
      download this and that - e.g.:
    phpMyadmin(->archive.software.phpMyAdmin)
        this requires 'archive.software' to have ...
            ... a ListSearchHandler (searches nodelist below 'archive.software' only)
            ... a RecursiveSearchHandler (searches nodelist below 'archive.software' and all subfolders recursively)
            make this available as a ResourceHandler via a DispatchRequest sitting at
                http://netfrag.org/archive/?base=software&search=phpMyAdmin
                http://archive.netfrag.org/

rename newsgroup nfo.csm to nfo.caesar (Collaborative And Easy System Management)
    ctlinnd newgroup nfo.caesar
    /etc/init.d/inn stop
    cd /var/spool/news/nfo
    cp csm/* caesar/
    cd caesar
    (x movearticle ...)
    chown news.news *
    /usr/lib/news/bin/makehistory
    THIS FAILED! DON'T DO IT
      MiniHowto: KerberizedSystem (->~jonen)

RefWords -> LookUpDb -> SearchDb

added first news-article which refers/references to another one in another newsgroup
      Requirement: LDAP For Aliases, Maps, And Classes
      PARSER-TODO: RefactorThisLink

check out /usr/sbin/checksecurity - what's that?
    seems to come from /etc/cron.daily/standard
      write mail to the KroupwareMailingList

ContentIndexer for netfrag.org which should provide a FullTextSearch over AllResources

run MakeDoc at interval at netfrag.org as ServiceUser
    implement first version of makedoc
    use mkDoc.bat (or similar) for that purpose
    extend: use 'makedoc.bat|.pl' from ->cvs.joko.TestArea.topics.authoring.DocBook

DispatchRequest to tie all together
    just make a ref from almost everything and see what comes in....
    write handlers for the various refs....
      show foldername in CVSSpam - message

SoWhyCommands?
        JustUseHumanLanguage!
            StartWithEnglish
            TryGerman

wrappers around the common used cvs commands
    cvscheckout
    cvsupdate
    cvscommit

newsportal
    feature-idea: crosspost to another group
      FreeTaskManagement

run-dotfiles -R fetchdoc|synccvs|makedoc

netfrag.org: "NewItems" (interacting with user's cookie's)

phpLdapAdmin
    use Horde's Ldap-driver!
    tryout http://www.enaliath.com/phpLDAPadmin.tgz
      david-addons (Freeware)

MacOsX (Shareware)

POE - mailing-list???

publish all ldap-schemas seperately

copyright information for nfo/docs/schemas (horde & janosch)

notify of new news-entries / bug-requests

scan urls from channel nfo and post to nfo.links.misc

write current topic of #nfo to some page on http://netfrag.org and link to irc-channel there

FeatureForTUTOS: ConvertNoteToTask

FeatureForTUTOS: mark items in MiniTaskView as open or closed (by their respecrive state)

wiki.de?

increase memory for quepasa.netfrag.org (128?)

have a look at /usr/share/mail-audit-tools/popread

ModeWorkflow:
    OnlineMode:
        GoOnline
        SyncHome2Web
        BrowseInternet, SelectItemsForDownload (SeeOtherNote "what do we need / what do we do?")
        SyncWeb2Home
        GoOffline (switches to DisconnectedMode)
    DisconnectedMode:
        ReadMails, WriteMails
        ReadNews, PostAnswers
        BrowseIntranet, PublishStuff
        GoHome (switches to ShutdownMode)
    ShutdownMode
        all (important - more or less...) messages are redirected to pre-configured
              addresses and/or notifications are sent on incoming messages at specific
              targets to pre-configured addresses as well.

Hack: ModifyWord to *only* load and save HTML-Documents

TUTOS:
    MyTUTOS:
        on http://www.netfrag.org/tutos/php/mytutos.php ...
        "Open Tasks" (below|above "Products & Projects")
        ... display http://www.netfrag.org/tutos/php/task_overview.php?id=1036
        columns: Taskname (linked to task), Projectname (linked to project), created
    Calendar:
        collapse Items (cut away Project-relationship)
        limit column width
        smaller font
        evtl.: vertically
    create Task:
        a "pre"-task doesn't need dates (neither from nor to) (use the creation-date for displaying in overview)
        an "ongoing"-task needs a begin date only
        a "finished" task needs both!

look at docbook.m4 at /home/service/download/mnogosearch/mnogosearch-3.2.7/

/home/service/download/mnogosearch/3.1.2.5/sample

all attempts to install some recent mnoGoSearch-version working together with mysql
        from some debian packages failed, now trying mnogosearch-3.1.20
        configure --with-mysql
        apt-get install libmysqlclient10-dev
        configure --with-mysql
        make && make install
        configure /usr/local/mnogosearch/etc/indexer.conf
        cd /home/service/download/mnogosearch/mnogosearch-3.1.20/create/stopwords
            ./stopword.pl stop.de.txt stop.en.txt > stopwords.txt
            mysql mnogosearch < stopwords.txt

        seems to work perfectly with "single"-mode!
                  now switching to crc-multi again....
            cd /usr/local/mnogosearch
            ./sbin/indexer -a -v 5

phpHtmlLib
    quick2pick-code: refactor TreeView to *new* phpHtmlLib-component
    new: add EditingFeature to phpHtmlLib's "InfoTable"-component
    quick2pick-code: refactor to feature "IntegratedEditing" of phpHtmlLib's "Xyz List" - component

indexing netfrag.org

    lookup examples:
        sendmail (->rank!) (exclude http://www.netfrag.org/docs/build/?)
        sync (ok)
        kerberos (exclude http://www.netfrag.org/docs/build/?)
        xabbu (ok)
        polygon (ok)
        textur (ok)
        3d (ok)
        parkvilla (ok)
        stonie (ok)
        lash la rue (ok)
        sendmail (ok)
        kerberos (ok)
              not needed urls (exclude somehow (mnogosearch-directive|robots.txt!):
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/HowToUseWiki
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/FindPage
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/SandBox
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/WikiWikiWeb
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/RecentChanges
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/AddingPages
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/TextFormattingRules
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/UserPreferences
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PhpWikiDocumentation
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/MoreAboutMechanics
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/EditText
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/WabiSabi
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/RecentVisitors
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/SteveWainstead
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/RecentEdits
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PhpWiki
        (Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/HomePage)???
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/MagicPhpWikiURLs
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/CalendarPlugin
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/GoodStyle
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/InterWiki
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/LinkIcons
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PgsrcTranslation
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PhpWikiAdministration
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/ReleaseNotes
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/WikiPlugin
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/MostPopular
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/InterWikiMap
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/CategoryCategory
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/AllPages
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/BackLinks
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/DebugInfo
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/FullRecentChanges
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/FullTextSearch
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/LikePages
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PageHistory
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/TitleSearch
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/TestPage
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/OrphanedPages
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/FuzzyPages
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/Info
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/NewMarkupTestPage
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PageGroupTest
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PageGroupTestFour
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PageGroupTestOne
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PageGroupTestThree
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PageGroupTestTwo
        Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/RandomPage
    ... same with "http://www.netfrag.org/rrr/index.php/" - it's a phpWiki, too
        => make up a robots.txt?
    exclude http://www.netfrag.org/docs/build/!!!
        Disallow Regex http://www.netfrag.org/docs/build/.*
    FeatureRequest: remember (via cookie!) last issued searches
    how to clear a mnogosearch-index-database?
        indexer -C
    how to re-index?
        just run 'indexer'
    index more resources on netfrag.org (news, cvs)
    exclude unwanted resources (wiki-test-& default-pages & co.)
    establish http://search.netfrag.org/
        place DispatchRequest there, let it redirect to an application "mnoGoSearch"
        "mnoGoSearch" is currently installed at http://netfrag.org/search/
        => (e.g.) http://search.netfrag.org/dust -> http://netfrag.org/search/?q=dust

http://w-a-c.com: Inhalt unter "Clubtreffen" besser positionieren!

http://lashlarue.de: inhalte und struktur überarbeiten

patch cvs-permissions:
    cd /var/lib/cvs/nfo
    chown -R .src doc patches perl php
    chown -R .rootsrc hosts layouts
    do this regularly
    run indexer and '.runrc' on interval!

amo@grasshopper: cleanup local repository 'nfo' from cvs.netfrag.org!!!

categorization:
    document-type:
    file-type:
        suffix: .xyz (guess application-relationship of file from this)
        content-encoding: ASCII, EBCDIC, UTF-8, etc.

shortcut for:
    ctlinnd newgroup nfo.dev.php
    nano /data/www/global/apps/newsportal/groups.txt
        add: nfo.dev.php Php Development

look at slurp:/var/www/docbook-dsssl/

make ResourceGroups (group - what else? - resources together - from netfrag.org or other urls/urns or WikiTags)

look at R:\staff\public\Research\Mirrored Sites

phpw2hfax?

look at phpOrgaSync: http://www.ds-services.de/portal/
    ->http://www.phprojekt.com/

amavis uses 'Net::Server::PreForkSimple':
        Jan 30 07:52:53 quepasa amavis[25445]: 2003/01/30-07:52:53 Amavis (type Net::Server::PreForkSimple) starting! pid(25445)

mnogosearch: use searchd? what's spelld?

look at quepasa:/etc/apache/httpd.conf:
    # MetaDir: specifies the name of the directory in which Apache can find
    # meta information files. These files contain additional HTTP headers
    # to include when sending the document
    #
    #MetaDir .web

    #
    # MetaSuffix: specifies the file name suffix for the file containing the
    # meta information.
    #
    #MetaSuffix .meta

look at quepasa:/etc/apache/httpd.conf:
    # Customizable error response (Apache style)
    # these come in three flavors
    #
    # 1) plain text
    #ErrorDocument 500 "The server made a boo boo.
    # n.b. the (") marks it as text, it does not get output
    #
    # 2) local redirects
    #ErrorDocument 404 /missing.html
    # to redirect to local URL /missing.html
    #ErrorDocument 404 /cgi-bin/missing_handler.pl
    # N.B.: You can redirect to a script or a document using server-side-includes.
    #
    # 3) external redirects
    #ErrorDocument 402 http://some.other_server.com/subscription_info.html
    # N.B.: Many of the environment variables associated with the original
    # request will *not* be available to such a script.

look at quepasa:/etc/apache/httpd.conf:
    # Allow http put (such as Netscape Gold's publish feature)
    # Use htpasswd to generate /etc/apache/passwd.
    # You must unremark these two lines at the top of this file as well:
    #LoadModule put_module modules/mod_put.so
    #
    #Alias /upload /tmp
    #
    # EnablePut On
    # AuthType Basic
    # AuthName Temporary
    # AuthUserFile /etc/apache/passwd
    # EnableDelete Off
    # umask 007
    #
    # require valid-user
    #

    #


admin:
    LoginLists (e.g. User-Account per Service(mail (send & recieve), shell, wiki, news))
    IncludeLists (e.g. include newsgroup into newsportal (news2http-gateway), include path to Backup)
    ExcludeLists (e.g. exclude from Indexer (mnoGoSearch))

a general question: why does a user *still* has to specifiy *two* servers for mail?
    technical - okay (more than....) - but from the user perspective? no! just one!
      benchmark dispatchmail:
      a) started via pipe in .forward-file
        MTA Queue status...
                                        /var/spool/mqueue (3 requests)
        -----Q-ID----- --Size-- -----Q-Time----- ------------Sender/Recipient-----------
        h0U8ARv9027686* 16930 Thu Jan 30 09:13
                                                                                          
        h0U8ARv7027686* 56 Thu Jan 30 09:13
                                                                                          |"/data/opt/dispatchmail/bin/dispatchm
        h0U8ARv5027686* 56 Thu Jan 30 09:13
                                                                                          |"/data/opt/dispatchmail/bin/dispatchm
                                        Total requests: 3
      b) as milter-handler????

lookup: paul verilio

review D:\e\home\amo\develop\cvs\nautilux.progressive-media.de\amo !!!

make up a Bundle::dispatchmail
    install dispatchmail
    get dispatchmail.pl from nfo-repository
        get Mail::Audit from CPAN
        get Mail::Audit::Dispatch from nfo-repository
        get dependencies
            DesignPattern::Object
            DesignPattern::Bridge
            org::netfrag::shortcuts
            MIME::Lite
            Hash::Merge
            Log::Dispatch
            Log::Dispatch::Config
    load a sample .dispatchmrc into your users home-directory
    edit it according your needs - see (in future) Mail::Audit::Tour
    test your rules by running
        ./buildmail | ./dispatchmail --base=/home/username (you'll need MIME::Lite for running buildmail...)

cvshistory
    draw a graphical / navigatable timeline of a cvs-history
    embed urls pointing to arbitrary resources

establish: bugs@netfrag.org
    automagically create TUTOS-ticket

groupwares / time-trackers
    TUTOS
    phpProjekt
    [include tool from janosch here]

get together Log::Dispatch(mail) and Mail::Audit::Dispatch
    make up a Log::Dispatch::Address
        use Data::Map(via ldap) to actually resolve

Torus - client-compatibility
    Outlook Express, Outlook 2000, 2002 (win32)
    Horde (web)
    Netscape & Mozilla (win32 & *nix)
    Ximian Evolution (*nix)
    TUTOS (web)
    Twig (web)
    PhpProjekt
      jonen@gharb: patched Mail::Audit::Dispatch (don't ask for ~/Mail any more!)

glossary: public bulletin board

dispatchmail: make option "--user=" work again!

  

$Id: joko_2003-01.html,v 1.133 2003/04/05 02:28:18 joko Exp $