InstallationWindows

From StatusNet
Jump to: navigation, search

This is a wiki version of my original document at [1] which is a bit prettier.


- @mikenz

Contents

Installing XAMPP

Xampp is a nicely packaged version of Apache 2, PHP 5.2 and MySQL 5. It takes the time out of setting up these applications on Windows.

Download XAMPP from http://www.apachefriends.org/en/xampp-windows.html I'm using the XAMPP package, but the XAMPP Lite one should work fine as well.

Extract it to somewhere, I extracted mine to c:\xampplite and will refer to files in that folder from now on. If you install is somewhere else then just remember that when reading this.

Run C:\xampp\xampp-control and start Apache and MySQL. Also check the "Svc" checkbox next to Apache and MySQL (running these programs as a service is recommended so that you don't have to worry about restarting them if your server is restarted for maintenance reasons).

Run the Services utility in Windows (Windows + R, then type "services.msc" in the "Run" box). Look for the Apache Service. Make sure it is running. If not, go check the error log; probably located at C:\xampp\apache\logs\error.log (subsitute "xampp" for "xampplite" if need be).

If you already have a webserver (say IIS for example) running on port 80, You may have to change the "Listen" directive in C:\xampp\apache\conf\httpd.conf to point to a different port: i.e. "Listen 8080" or "Listen 7000". You may also have to change the "Servername" directive as well: say "Servername hostname:8080" (substituting the FQDN of your server for "hostname" of course).

Go to http://localhost and you should see the XAMPP splash page. If so then XAMPP's all ready to go.

Installing Git

I said this was setting up a development environment on Windows so we're going to be using the development version of Statusnet :-)

"Git is a free & open source, distributed version control system designed to handle everything from small to very large projects with speed and efficiency." And is the version control system used for Statusnet.

Install mysgit from [2]. I'm using the executable installer (.exe) for version 1.7.0.2. Check the "Git Bash Here" and "Git GUI here" checkboxes for the Windows Explorer right-click context menu if you like (allows to to open Git Bash or Git GUI to a folder you right click on). Press "Next". Select the folder you want to install Git too. Probably C:\Program Files\Git. Press "Next". I'll be using the "Git Bash Only" option since I've checked the "Git Bash here" context menu option, and Git isn't my main VCS. Press "Next". Since "Use OpenSSH" is the default, I'll leave it as that. Press "Next". Go with the default "Checkout Windows-style, commit Unix-style line endings" as this will prevent messiness in the PHP files. Press "Next". Now the installer should run. Finally, press the "Finish" button.

Now you should be able to find Git Bash through a Desktop Icon, a Quick Launch icon, All Programs -> Git, or the right-click context menu.

Checking out a copy of Statusnet

Now that we have git we can get a copy of Statusnet.

Open Git Bash using All Programs -> Git -> Git Bash, your desktop icon, or quick launch icon.

To keep your desktop or other locations from getting cluttered, you are going to change directories to C:, at the Git Bash prompt, type in "cd /c" and hit Enter.

To get a local copy of Statusnet, type in "git clone git://gitorious.org/statusnet/mainline.git statusnet". This will create a clone of the Statusnet repository on gitorious.org in the folder C:\statusnet.

Statusnet Prequisites

Statusnet makes use of a number of other OpenSource libraries.

PEAR Libraries


NOTE: This whole delete section costed me a few days in troubleshooting, just use the existing Pear installation that comes with XAMPP, skip this section and jump to the upgrade steps


Delete the PEAR folder setup by XAMPP. In my case C:\xampp\php\PEAR.

Save the contents of http://pear.php.net/go-pear as C:\xampp\php\go-pear.php

Let's put the path to php.exe in your PATH.

  • Press Windows + Pause
  • Click the "Advanced system settings" link on the left
  • In the "System Properties" dialog, click the "Environment Variables" button
  • In the lower "System variables" list box, scroll to find "Path" or "PATH"
  • Click on that row
  • Click the "Edit..." button
  • If your "Path" doesn't end with a semicolon, then put one (Path is semicolon delimited, IOW the paths are separated with semicolons)
  • Then enter "C:\xampp\php" after the semicolon
  • Click "OK" three times, and then close the Control Panel -> System and Security -> System window.

Open a Windows command prompt (Windows + R, then type "cmd" in the "Run" box).

Navigate to C:\xampp\php

Microsoft Windows [Version 6.1.7600]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\Users\robertstackhouse>cd C:\xampp\php

Now run the go-pear.php file to install PEAR.

C:\xampp\php>php -q go-pear.php

Deprecated: Function ereg() is deprecated in C:\xampp\php\go-pear.php on line 14
06
Welcome to go-pear!

Go-pear will install the 'pear' command and all the files needed by
it.  This command is your tool for PEAR installation and maintenance.

Use 'php go-pear.php local' to install a local copy of PEAR.

Go-pear also lets you download and install the following optional PEAR
packages: PEAR_Frontend_Web-beta, PEAR_Frontend_Gtk2, MDB2.


If you wish to abort, press Control-C now, or press Enter to continue:

Press Enter.

HTTP proxy (http://user:password@proxy.myhost.com:port), or Enter for none::

Press Enter.

Below is a suggested file layout for your new PEAR installation.  To
change individual locations, type the number in front of the
directory.  Type 'all' to change all of them or simply press Enter to
accept these locations.

 1. Installation prefix ($prefix) : C:\xampp\php
 2. Temporary files directory     : $prefix\temp
 3. Binaries directory            : $prefix
 4. PHP code directory ($php_dir) : $prefix\pear
 5. Documentation base directory  : $php_dir\docs
 6. Data base directory           : $php_dir\data
 7. Tests base directory          : $php_dir\tests
 8. php.exe path                  : c:\xampp\php\php.exe

1-8, 'all' or Enter to continue:

Press Enter to accept the directory locations.

The following PEAR packages are bundled with PHP: PEAR_Frontend_Web-beta,
PEAR_Frontend_Gtk2, MDB2.
Would you like to install these as well? [Y/n] :

Type "Y" and then press Enter.

A whole bunch of text will go whizzing by (mostly deprecation warnings from PHP, if you are like me). Don't worry, that's just PEAR doing its thing.

When it finishes, you should see something like:

The 'pear' command is now at your service at c:\xampp\php\pear.bat


* WINDOWS ENVIRONMENT VARIABLES *
For convenience, a REG file is available under C:\xampp\php\PEAR_ENV.reg .
This file creates ENV variables for the current user.

Double-click this file to add it to the current user registry.

Because we have already added the php directory to your Path, you should simply be able to type "pear" in a command window to use the pear command.

Updating PEAR

Update the PEAR channel by using the following command: "pear channel-update pear.php.net"

C:\xampp\php>pear channel-update pear.php.net
Updating channel "pear.php.net"
Channel "pear.php.net" is up to date

C:\xampp\php>

Upgrading PEAR

Upgrade all the PEAR libraries using the command: "pear upgrade-all"

C:\xampp\php>pear upgrade-all
Nothing to upgrade-all

C:\xampp\php>

Installing PEAR libraries

Install db_dataobject.

C:\xampp\php>pear install db_dataobject
WARNING: "pear/DB" is deprecated in favor of "pear/MDB2"
Did not download optional dependencies: pear/Validate, use --alldeps to download
 automatically
pear/DB_DataObject can optionally use package "pear/Validate" (version >= 0.1.1)

downloading DB_DataObject-1.9.4.tgz ...
Starting to download DB_DataObject-1.9.4.tgz (70,667 bytes)
.................done: 70,667 bytes
downloading DB-1.7.13.tgz ...
Starting to download DB-1.7.13.tgz (132,246 bytes)
...done: 132,246 bytes
downloading Date-1.4.7.tgz ...
Starting to download Date-1.4.7.tgz (55,754 bytes)
...done: 55,754 bytes
install ok: channel://pear.php.net/DB-1.7.13
install ok: channel://pear.php.net/Date-1.4.7
install ok: channel://pear.php.net/DB_DataObject-1.9.4

Install validate-beta.

C:\xampp\php>pear install validate-beta
WARNING: "pear/Net_IDNA" is deprecated in favor of "pear/Net_IDNA2"
Did not download optional dependencies: pear/Net_IDNA, use --alldeps to download
 automatically
pear/Validate can optionally use package "pear/Net_IDNA" (version >= 0.7.1)
downloading Validate-0.8.3.tgz ...
Starting to download Validate-0.8.3.tgz (20,771 bytes)
........done: 20,771 bytes
install ok: channel://pear.php.net/Validate-0.8.3

Checking Changes made by PEAR

Stop Apache.

C:\xampp\php>net stop Apache2.2
The Apache2.2 service is stopping.....
The Apache2.2 service was stopped successfully.

Start Apache.

C:\xampp\php>net start Apache2.2
The Apache2.2 service is starting..
The Apache2.2 service was started successfully.

Then go check http://hostname:portnum/xampp/phpinfo.php for changes made by PEAR (omit :portnum if Apache is listening on 80). In my case, http://localhost:8080/xampp/phpinfo.php. Ctrl + F for "PEAR"

Setting up a database

Create Root Account Credentials

First, you are going to need to put the path to MySQL in your "Path" environment variable.

  • Press Windows + Pause
  • Click the "Advanced system settings" link on the left
  • In the "System Properties" dialog, click the "Environment Variables" button
  • In the lower "System variables" list box, scroll to find "Path" or "PATH"
  • Click on that row
  • Click the "Edit..." button

(If your "Path" doesn't end with a semicolon, then put one (Path is semicolon delimited, IOW the paths are separated with semicolons)

  • Then enter "C:\xampp\mysql\bin" after the semicolon

Click "OK" three times, and then close the Control Panel -> System and Security -> System window.

Now you are going to need to create the credentials for the MySQL root user (I highly recommend writing these down and sticking them in your wallet).

Run "mysqladmin -u root password new_pass" where new_pass is the password that you want to use to log in to MySQL as root with.

C:\Users\robertstackhouse>mysqladmin -u root password new_pass

Create Database and User for Statusnet

Now we need to create a database for Statusnet.

First let's create the database.

C:\Users\robertstackhouse>mysql -u root -p
Enter password: ********
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.1.41 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> CREATE DATABASE statusnet;
Query OK, 1 row affected (0.01 sec)

Let's look at our database.

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| cdcol              |
| mysql              |
| phpmyadmin         |
| statusnet          |
| test               |
+--------------------+
7 rows in set (0.02 sec)

It's in there. Now we have to create a user so that the PHP code can access the database. Substituting "password" for an actual password.

mysql> CREATE USER 'statusnet'@'localhost' IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.02 sec)

Now we have to grant the "statusnet" MySQL user permissions to work with the "statusnet" database.

mysql> GRANT ALL ON statusnet.* TO 'statusnet'@'localhost' IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.01 sec)

Running SQL File to Create Tables for Statusnet

Now we have an empty database and a database user for Statusnet. Next we need to create all the database tables. From the "mysql" prompt:

mysql> use statusnet;
Database changed
mysql> \. C:\statusnet\db\statusnet.sql   ---NOTE: this file doesn't exist in the latest
 release, you can get it from here: http://gitorious.org/statusnet/mainline/blobs/0.9.x/db/statusnet.sql---

Execute a "show tables" to look at the tables the SQL file created.

mysql> show tables;
+------------------------+
| Tables_in_statusnet    |
+------------------------+
| avatar                 |
| config                 |
| confirm_address        |
| consumer               |
| conversation           |
| deleted_notice         |
| design                 |
| fave                   |
| file                   |
| file_oembed            |
| file_redirection       |
| file_thumbnail         |
| file_to_post           |
| foreign_link           |
| foreign_service        |
| foreign_subscription   |
| foreign_user           |
| group_alias            |
| group_block            |
| group_inbox            |
| group_member           |
| inbox                  |
| invitation             |
| local_group            |
| location_namespace     |
| login_token            |
| message                |
| nonce                  |
| notice                 |
| notice_inbox           |
| notice_source          |
| notice_tag             |
| oauth_application      |
| oauth_application_user |
| oid_associations       |
| oid_nonces             |
| profile                |
| profile_block          |
| profile_role           |
| profile_tag            |
| queue_item             |
| related_group          |
| remember_me            |
| remote_profile         |
| reply                  |
| session                |
| sms_carrier            |
| subscription           |
| token                  |
| user                   |
| user_group             |
| user_location_prefs    |
+------------------------+
52 rows in set (0.02 sec)

Configuring Statusnet

In C:\statusnet make a copy of CONFIGURE and call it config.php. Open this up and edit the values.

---NOTE: The file doesn't exist in the latest release, you have to get it from: http://gitorious.org/statusnet/mainline/blobs/0.9.x/config.php.sample---

The Basics

Give your installation of Statusnet a name

#C:\statusnet\config.php

$config['site']['name'] = 'Just another Statusnet microblog';

Specify your host name and the path to Statusnet. If you set C:\Statusnet to your DocumentRoot in Apache, the path would be ; Since I'll be using an Alias directive to point to my copy of Statusnet, my path will be 'statusnet'. Omit ":portnum" if your instance of Apache is running off port 80.

#C:\statusnet\config.php

$config['site']['server'] = 'hostname:portnum';
$config['site']['path'] = 'statusnet';

Database Settings

Change the value of $config['db']['database'] to the tune of $config['db']['database'] = 'mysql://user:password@hostname/database '. If you followed the instructions exactly from above user and database should both be "statusnet". hostname should be the FQDN of your MySQL server (this will probably be "localhost", unless you've got MySQL running on a separate box).

#C:\statusnet\config.php

$config['db']['database'] = 'mysql://statusnet:password@localhost/statusnet';

Email

Configuring an SMTP server in your config.ini file will allow Statusnet to send administrative emails like account confirmations to your users. NOTE: if you don't set this up, your users will get a distracting error message when they try to register an account.

#C:\statusnet\config.php

// Email info, used for all outbound email
$config['mail']['notifyfrom'] = 'account@your.domain.com';
// Domain for generating no-reply and incoming email addresses, if enabled.
// Defaults to site server name.
$config['mail']['domain'] = 'your.domain.com';
// See http://pear.php.net/manual/en/package.mail.mail.factory.php for options
$config['mail']['backend'] = 'smtp';
$config['mail']['params'] = array(
 							'host' => 'mail.your.domain.com',
 							'port' => 25,
 							);

Apache Alias

Enable mod_alias

If you are using an alias directive to point to your copy of Statusnet, make sure mod_alias is enabled. Do this by opening C:\xampp\apache\conf\httpd.conf in a text editor (I'm using Notepad++) and searching for "mod_alias". The line enabling mod_alias should look like:

#C:\xampp\apache\conf\httpd.conf

LoadModule alias_module modules/mod_alias.so

If there is a leading "#" sign, remove it, and save the file.

Create a Text File for Your Alias

Create a text file at C:\xampp\apache\conf\extra\httpd-aliases.conf.

Paste in the following text:

#C:\xampp\apache\conf\extra\httpd-aliases.conf

Alias /statusnet "C:\statusnet"
<Directory "C:\statusnet" >
	Options Indexes FollowSymlinks MultiViews Includes
	AllowOverride All
	Order allow,deny
	Allow from all
</Directory>

Including httpd-aliases.conf from httpd.conf

Somewhere near the bottom of httpd.conf paste in the following:

#C:\xampp\apache\conf\httpd.conf

#Aliases
Include "conf/extra/httpd-aliases.conf"

Save httpd.conf.


Modify php.ini to diable strict error messages

  1. c:\xampp\php\php.ini

When I first launched the page there were a ton of 'Strict Standards' messages there isn't much documentation on them so I just disabled them using the following config, there hasn't been any side effects thusfar...

The php.ini has this as default: error_reporting = E_ALL | E_STRICT

change it to:

error_reporting = E_ALL & ~(E_NOTICE | E_DEPRECATED | E_STRICT)

Save php.ini

Restart Apache

Open the Services panel (Windows + R, type in "services.msc" then hit enter). Find the Apache2.2 service, and click the "Restart" link.

Alternatively, the same can be accomplished from issuing the following commands in succession from the command line:

C:\Users\robertstackhouse>net stop Apache2.2
The Apache2.2 service is stopping..
The Apache2.2 service was stopped successfully.


C:\Users\robertstackhouse>net start Apache2.2
The Apache2.2 service is starting..
The Apache2.2 service was started successfully.

Now go to http://localhost:portnum/statusnet/ (or http://localhost/statusnet if Apache is running on port 80) and you should have a microblog!

Fancy / Pretty Urls

Statusnet Configuration

http://localhost/statusnet/main/register instead of http://localhost/statusnet/index.php?action=register

Open C:\statusnet\config.php and turn fancy urls on.

#C:\statusnet\config.php

$config['site']['fancy'] = true;

.htaccess

In C:\statusnet make a copy of "htaccess.sample" called ".htaccess" - this is tricky in Windows as it doesn't like filenames starting with a dot. This can be done on the command line.

<IfModule mod_rewrite.c>
  RewriteEngine On

  # NOTE: change this to your actual StatusNet base URL path,
  # minus the domain part:
  #
  #   http://example.com/        => /
  #   http://example.com/mublog/ => /mublog/
  #
  RewriteBase /statusnet

  ## Uncomment these if having trouble with API authentication
  ## when PHP is running in CGI or FastCGI mode.
  #
  #RewriteCond %{HTTP:Authorization} ^(.*)
  #RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]

  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule (.*) index.php?p=$1 [L,QSA]
</IfModule>

<FilesMatch "\.(ini)">
  Order allow,deny
</FilesMatch>

httpd.conf

Make sure mod_rewrite is enabled. To do this, open C:\xampp\apache\conf\httpd.conf. Search for "mod_rewrite". The line enabling it should look like:

#C:\xampp\apache\conf\httpd.conf

LoadModule rewrite_module modules/mod_rewrite.so

If there is a leading "#" sign, remove it and save httpd.conf.

Stop and Start Apache again.

Now fancy urls like http://localhost/laconica/main/register will work.

Emblem-important-red.svg.png

Below here these instructions are not current, and contain information
that may be incorrect as of June 2010. XMPP instructions need to be tested and
possibly updated.


Create the first user so you can login

I went thru all the information above then tried to login, but didn't have a login account! So here is how to create that first user so you can login and start inviting people:

#c:\xampp\php\php.ini

Uncomment out the following line by removing the ;
;extension=php_curl.dll

Rename c:\statusnet\conf.php to conf-bak.php, we'll be creating a new one in a sec and copying the values from the -bak file into the new one.

Browse to http://yourserver.example.com/statusnet/install.php you should see 
an install screen, go thru the fields and refer back to the conf-bak.php if you 
forgot any information.

Submit it

copy the values from the -bak file that are missing from the new config.php.

Save

Restart Webservice: net stop Apache2.2 && net start Apache2.2

Enable Attachment Uploads

  1. c:\statusnet\config.php

Add these lines into your config.php to enable attachment uploads, after you enable this you will see a paperclip on the right side of the update status window:

$config['site']['profile'] = 'public';  //doesn't work if private, has to be public or inviteonly
$config['attachments']['uploads'] = true;
$config['attachments']['supported'] = true; //allow all file types to be uploaded
$config['attachments']['file_quota'] = 5000000;
$config['attachments']['user_quota'] = 50000000;
$config['attachments']['monthly_quota'] = 15000000;
$config['attachments']['path'] = "/statusnet/file/"; //ignored if site is private
$config['attachments']['dir'] = INSTALLDIR . '/file/'; 
//if you get an error uploading a file, check ntfs permissions on directory "c:\statusnet\file"

XMPP

You'll need an account on a XMPP server for this.

Edit config.php again and uncomment the xmpp config options and enter the details for your Jabber ID that your site will use.

Microsoft Windows [Version 6.0.6001]
Copyright (c) 2006 Microsoft Corporation.  All rights reserved.

C:\Users\mikenz&gt;darcs
darcs version 2.0.0 (2.0.0 (+ 19 patches))
Usage: darcs COMMAND ...

Microsoft Windows [Version 6.0.6001]
Copyright (c) 2006 Microsoft Corporation.  All rights reserved.

C:\Users\mikenz&gt;cd c:\xampplite\htdocs

c:\xampplite\htdocs&gt;darcs get --partial http://laconi.ca/darcs/ laconica
Finished getting.

c:\xampplite\htdocs&gt;

c:\xampplite\htdocs&gt;cd c:\xampplite\php\pear
c:\xampplite\php\pear&gt;..\php go-pear.phar

Are you installing a system-wide PEAR or a local copy?
(system|local) [system] : 

Below is a suggested file layout for your new PEAR installation.  To
change individual locations, type the number in front of the
directory.  Type 'all' to change all of them or simply press Enter to
accept these locations.

 1. Installation base ($prefix)                   : c:\xampplite\php\pear
 2. Temporary directory for processing            : c:\xampplite\php\pear\tmp
 3. Temporary directory for downloads             : c:\xampplite\php\pear\tmp
 4. Binaries directory                            : c:\xampplite\php\pear
 5. PHP code directory ($php_dir)                 : c:\xampplite\php\pear\pear
 6. Documentation directory                       : c:\xampplite\php\pear\docs
 7. Data directory                                : c:\xampplite\php\pear\data
 8. User-modifiable configuration files directory : c:\xampplite\php\pear\cfg
 9. Public Web Files directory                    : c:\xampplite\php\pear\www
10. Tests directory                               : c:\xampplite\php\pear\tests
11. Name of configuration file                    : C:\Windows\pear.ini
12. Path to CLI php.exe                           : c:\xampplite\php\pear\

1-12, 'all' or Enter to continue: 12

php.exe (sapi: cli) found.


Below is a suggested file layout for your new PEAR installation.  To
change individual locations, type the number in front of the
directory.  Type 'all' to change all of them or simply press Enter to
accept these locations.

 1. Installation base ($prefix)                   : c:\xampplite\php\pear
 2. Temporary directory for processing            : c:\xampplite\php\pear\tmp
 3. Temporary directory for downloads             : c:\xampplite\php\pear\tmp
 4. Binaries directory                            : c:\xampplite\php\pear
 5. PHP code directory ($php_dir)                 : c:\xampplite\php\pear\pear
 6. Documentation directory                       : c:\xampplite\php\pear\docs
 7. Data directory                                : c:\xampplite\php\pear\data
 8. User-modifiable configuration files directory : c:\xampplite\php\pear\cfg
 9. Public Web Files directory                    : c:\xampplite\php\pear\www
10. Tests directory                               : c:\xampplite\php\pear\tests
11. Name of configuration file                    : C:\Windows\pear.ini
12. Path to CLI php.exe                           : C:\xampplite\php

1-12, 'all' or Enter to continue: 11
(Use $prefix as a shortcut for 'c:\xampplite\php\pear', etc.)
Name of configuration file [C:\Windows\pear.ini] : c:\xampplite\php\pear.ini

Below is a suggested file layout for your new PEAR installation.  To
change individual locations, type the number in front of the
directory.  Type 'all' to change all of them or simply press Enter to
accept these locations.

 1. Installation base ($prefix)                   : c:\xampplite\php\pear
 2. Temporary directory for processing            : c:\xampplite\php\pear\tmp
 3. Temporary directory for downloads             : c:\xampplite\php\pear\tmp
 4. Binaries directory                            : c:\xampplite\php\pear
 5. PHP code directory ($php_dir)                 : c:\xampplite\php\pear\pear
 6. Documentation directory                       : c:\xampplite\php\pear\docs
 7. Data directory                                : c:\xampplite\php\pear\data
 8. User-modifiable configuration files directory : c:\xampplite\php\pear\cfg
 9. Public Web Files directory                    : c:\xampplite\php\pear\www
10. Tests directory                               : c:\xampplite\php\pear\tests
11. Name of configuration file                    : c:\xampplite\php\pear.ini
12. Path to CLI php.exe                           : c:\xampplite\php\pear\

1-12, 'all' or Enter to continue: 
Beginning install...
Configuration written to c:\xampplite\php\pear.ini...
Initialized registry...
Preparing to install...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/Archive_Tar-1.3.2.tar...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/Console_Getopt-1.2.3.tar...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/PEAR-1.7.1.tar...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/Structures_Graph-1.0.2.tar...
pear/PEAR can optionally use package "pear/XML_RPC" (version &gt;= 1.4.0)
install ok: channel://pear.php.net/Archive_Tar-1.3.2
install ok: channel://pear.php.net/Console_Getopt-1.2.3
install ok: channel://pear.php.net/Structures_Graph-1.0.2
install ok: channel://pear.php.net/PEAR-1.7.1
PEAR: Optional feature webinstaller available (PEAR's web-based installer)
PEAR: Optional feature gtkinstaller available (PEAR's PHP-GTK-based installer)
PEAR: Optional feature gtk2installer available (PEAR's PHP-GTK2-based installer)
PEAR: To install optional features use "pear install pear/PEAR#featurename"

******************************************************************************
WARNING!  The include_path defined in the currently used php.ini does not
contain the PEAR PHP directory you just specified:
&lt;c:\xampplite\php\pear\pear&gt;
If the specified directory is also not in the include_path used by
your scripts, you will have problems getting any PEAR packages working.


Would you like to alter php.ini &lt;C:\xampplite\php\php.ini&gt;? [Y/n] : C:\xampplite\apache\bin\php.ini

Please look over your php.ini file to make sure
c:\xampplite\php\pear\pear is in your include_path.
Current include path           : .;\xampplite\php\pear\
Configured directory           : c:\xampplite\php\pear\pear
Currently used php.ini (guess) : C:\xampplite\php\php.ini
Press Enter to continue: 

** WARNING! Old version found at c:\xampplite\php\pear, please remove it or be sure to use the new c:\xampplite\php\pear\pear.bat command

The 'pear' command is now at your service at c:\xampplite\php\pear\pear.bat

** The 'pear' command is not currently in your PATH, so you need to
** use 'c:\xampplite\php\pear\pear.bat' until you have added
** 'c:\xampplite\php\pear' to your PATH environment variable.

Run it without parameters to see the available actions, try 'pear list'
to see what packages are installed, or 'pear help' for help.

For more information about PEAR, see:

  http://pear.php.net/faq.php
  http://pear.php.net/manual/

Thanks for using go-pear!



* WINDOWS ENVIRONMENT VARIABLES *
For convenience, a REG file is available under c:\xampplite\php\pear\PEAR_ENV.reg .
This file creates ENV variables for the current user.

Double-click this file to add it to the current user registry.


c:\xampplite\php\pear&gt;

include_path=".;c:\xampp\php\pear\pear;C:\xampp\php\pear\"

c:\xampplite\php\pear&gt;pear channel-update pear.php.net
Updating channel "pear.php.net"
Update of Channel "pear.php.net" succeeded

c:\xampplite\php\pear&gt;pear upgrade-all
Will upgrade channel://pear.php.net/pear
Did not download optional dependencies: pear/XML_RPC, use --alldeps to download automatically
pear/PEAR can optionally use package "pear/XML_RPC" (version &gt;= 1.4.0)
downloading PEAR-1.7.2.tgz ...
Starting to download PEAR-1.7.2.tgz (302,744 bytes)
....done: 302,744 bytes
upgrade-all ok: channel://pear.php.net/PEAR-1.7.2
PEAR: Optional feature webinstaller available (PEAR's web-based installer)
PEAR: Optional feature gtkinstaller available (PEAR's PHP-GTK-based installer)
PEAR: Optional feature gtk2installer available (PEAR's PHP-GTK2-based installer)
PEAR: To install optional features use "pear install pear/PEAR#featurename"

c:\xampplite\php\pear&gt;

c:\xampplite\php\pear&gt;pear install db_dataobject
WARNING: "pear/DB" is deprecated in favor of "pear/MDB2"
Did not download optional dependencies: pear/MDB2, pear/Validate, use --alldeps to download automatically
pear/DB_[[DataObject]] can optionally use package "pear/MDB2" (version &gt;= 2.0.0RC1)
pear/DB_[[DataObject]] can optionally use package "pear/Validate" (version &gt;= 0.1.1)
downloading DB_[[DataObject]]-1.8.8.tgz ...
Starting to download DB_[[DataObject]]-1.8.8.tgz (64,219 bytes)
....done: 64,219 bytes
downloading Date-1.4.7.tgz ...
Starting to download Date-1.4.7.tgz (55,754 bytes)
...done: 55,754 bytes
install ok: channel://pear.php.net/Date-1.4.7
install ok: channel://pear.php.net/DB_[[DataObject]]-1.8.8

c:\xampplite\php\pear&gt;pear install validate-beta
downloading Validate-0.8.1.tgz ...
Starting to download Validate-0.8.1.tgz (19,588 bytes)
.......done: 19,588 bytes
install ok: channel://pear.php.net/Validate-0.8.1

c:\xampplite\php\pear&gt;

$extra_path = array("C:/xampplite/htdocs/laconica/ext/");
set_include_path(implode(PATH_SEPARATOR, $extra_path) . PATH_SEPARATOR . get_include_path());

$config['site']['name'] = 'Just another Laconica microblog';

#For contact email, defaults to $_SERVER["SERVER_ADMIN"]
#$config['site']['email'] = 'admin@example.net';
#Brought by...
#$config['site']['broughtby'] = 'Individual or Company';
#$config['site']['broughtbyurl'] = 'http://example.net/';

#Email info, used for SMS send. gmail example
$config['mail']['notifyfrom'] = 'username@gmail.com';
$config['mail']['domain'] = 'gmail.com';
# See http://pear.php.net/manual/en/package.mail.mail.factory.php for options
$config['mail']['backend'] = 'smtp';
$config['mail']['params'] = array('host' =&gt; 'ssl://smtp.gmail.com',
				  'port' =&gt; 465,
				  'auth' =&gt; true,
				  'username' =&gt; 'username@gmail.com',
				  'password' =&gt; 'password');
# for secure mail and xmpp you'll need to uncomment the extension=php_openssl.dll in your php.ini file  and restart your server.

$config['db']['database'] = 'mysql://laconica:laconicapassword@localhost/laconica';
$config['db']['ini_laconica'] = 'c:/xampplite/htdocs/laconica/stoica.ini';

$config['site']['fancy'] = true;

c:\xampplite&gt;cd c:\xampplite\htdocs\laconica

c:\xampplite\htdocs\laconica&gt;copy htaccess.sample ".htaccess"
        1 file(s) copied.

[[RewriteEngine]] On
[[RewriteBase]] /laconica

[[RewriteRule]] ^$ index.php?action=public [L,QSA]

[[LoadModule]] rewrite_module modules/mod_rewrite.so

# xmpp
$config['xmpp']['enabled'] = true;
$config['xmpp']['server'] = 'xmpp.example.net';
$config['xmpp']['port'] = 5222;
$config['xmpp']['user'] = 'microblog';
$config['xmpp']['resource'] = 'laconica';
$config['xmpp']['password'] = 'laconicapassword';

# xmpp using gtalk example
#$config['xmpp']['enabled'] = true;
#$config['xmpp']['host'] = 'talk.google.com';
#$config['xmpp']['server'] = 'gmail.com';
#$config['xmpp']['port'] = 5222;
#$config['xmpp']['user'] = 'username';
#$config['xmpp']['encryption'] = true;
#$config['xmpp']['resource'] = 'xmpphp';
#$config['xmpp']['password'] = 'password';
#$config['xmpp']['public'][] = 'username@gmail.com';

Login to your laconica installation and go to http://localhost/laconica/settings/im. Add the address of your server in your XMPP client if you haven't already and them try adding your address.

If you get a lot of errors like this

Microsoft Windows [Version 6.0.6001]
Copyright (c) 2006 Microsoft Corporation.  All rights reserved.

C:\Users\mikenz&gt;darcs
darcs version 2.0.0 (2.0.0 (+ 19 patches))
Usage: darcs COMMAND ...

Microsoft Windows [Version 6.0.6001]
Copyright (c) 2006 Microsoft Corporation.  All rights reserved.

C:\Users\mikenz&gt;cd c:\xampplite\htdocs

c:\xampplite\htdocs&gt;darcs get --partial http://laconi.ca/darcs/ laconica
Finished getting.

c:\xampplite\htdocs&gt;

c:\xampplite\htdocs&gt;cd c:\xampplite\php\pear
c:\xampplite\php\pear&gt;..\php go-pear.phar

Are you installing a system-wide PEAR or a local copy?
(system|local) [system] : 

Below is a suggested file layout for your new PEAR installation.  To
change individual locations, type the number in front of the
directory.  Type 'all' to change all of them or simply press Enter to
accept these locations.

 1. Installation base ($prefix)                   : c:\xampplite\php\pear
 2. Temporary directory for processing            : c:\xampplite\php\pear\tmp
 3. Temporary directory for downloads             : c:\xampplite\php\pear\tmp
 4. Binaries directory                            : c:\xampplite\php\pear
 5. PHP code directory ($php_dir)                 : c:\xampplite\php\pear\pear
 6. Documentation directory                       : c:\xampplite\php\pear\docs
 7. Data directory                                : c:\xampplite\php\pear\data
 8. User-modifiable configuration files directory : c:\xampplite\php\pear\cfg
 9. Public Web Files directory                    : c:\xampplite\php\pear\www
10. Tests directory                               : c:\xampplite\php\pear\tests
11. Name of configuration file                    : C:\Windows\pear.ini
12. Path to CLI php.exe                           : c:\xampplite\php\pear\

1-12, 'all' or Enter to continue: 12

php.exe (sapi: cli) found.


Below is a suggested file layout for your new PEAR installation.  To
change individual locations, type the number in front of the
directory.  Type 'all' to change all of them or simply press Enter to
accept these locations.

 1. Installation base ($prefix)                   : c:\xampplite\php\pear
 2. Temporary directory for processing            : c:\xampplite\php\pear\tmp
 3. Temporary directory for downloads             : c:\xampplite\php\pear\tmp
 4. Binaries directory                            : c:\xampplite\php\pear
 5. PHP code directory ($php_dir)                 : c:\xampplite\php\pear\pear
 6. Documentation directory                       : c:\xampplite\php\pear\docs
 7. Data directory                                : c:\xampplite\php\pear\data
 8. User-modifiable configuration files directory : c:\xampplite\php\pear\cfg
 9. Public Web Files directory                    : c:\xampplite\php\pear\www
10. Tests directory                               : c:\xampplite\php\pear\tests
11. Name of configuration file                    : C:\Windows\pear.ini
12. Path to CLI php.exe                           : C:\xampplite\php

1-12, 'all' or Enter to continue: 11
(Use $prefix as a shortcut for 'c:\xampplite\php\pear', etc.)
Name of configuration file [C:\Windows\pear.ini] : c:\xampplite\php\pear.ini

Below is a suggested file layout for your new PEAR installation.  To
change individual locations, type the number in front of the
directory.  Type 'all' to change all of them or simply press Enter to
accept these locations.

 1. Installation base ($prefix)                   : c:\xampplite\php\pear
 2. Temporary directory for processing            : c:\xampplite\php\pear\tmp
 3. Temporary directory for downloads             : c:\xampplite\php\pear\tmp
 4. Binaries directory                            : c:\xampplite\php\pear
 5. PHP code directory ($php_dir)                 : c:\xampplite\php\pear\pear
 6. Documentation directory                       : c:\xampplite\php\pear\docs
 7. Data directory                                : c:\xampplite\php\pear\data
 8. User-modifiable configuration files directory : c:\xampplite\php\pear\cfg
 9. Public Web Files directory                    : c:\xampplite\php\pear\www
10. Tests directory                               : c:\xampplite\php\pear\tests
11. Name of configuration file                    : c:\xampplite\php\pear.ini
12. Path to CLI php.exe                           : c:\xampplite\php\pear\

1-12, 'all' or Enter to continue: 
Beginning install...
Configuration written to c:\xampplite\php\pear.ini...
Initialized registry...
Preparing to install...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/Archive_Tar-1.3.2.tar...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/Console_Getopt-1.2.3.tar...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/PEAR-1.7.1.tar...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/Structures_Graph-1.0.2.tar...
pear/PEAR can optionally use package "pear/XML_RPC" (version &gt;= 1.4.0)
install ok: channel://pear.php.net/Archive_Tar-1.3.2
install ok: channel://pear.php.net/Console_Getopt-1.2.3
install ok: channel://pear.php.net/Structures_Graph-1.0.2
install ok: channel://pear.php.net/PEAR-1.7.1
PEAR: Optional feature webinstaller available (PEAR's web-based installer)
PEAR: Optional feature gtkinstaller available (PEAR's PHP-GTK-based installer)
PEAR: Optional feature gtk2installer available (PEAR's PHP-GTK2-based installer)
PEAR: To install optional features use "pear install pear/PEAR#featurename"

******************************************************************************
WARNING!  The include_path defined in the currently used php.ini does not
contain the PEAR PHP directory you just specified:
&lt;c:\xampplite\php\pear\pear&gt;
If the specified directory is also not in the include_path used by
your scripts, you will have problems getting any PEAR packages working.


Would you like to alter php.ini &lt;C:\xampplite\php\php.ini&gt;? [Y/n] : C:\xampplite\apache\bin\php.ini

Please look over your php.ini file to make sure
c:\xampplite\php\pear\pear is in your include_path.
Current include path           : .;\xampplite\php\pear\
Configured directory           : c:\xampplite\php\pear\pear
Currently used php.ini (guess) : C:\xampplite\php\php.ini
Press Enter to continue: 

** WARNING! Old version found at c:\xampplite\php\pear, please remove it or be sure to use the new c:\xampplite\php\pear\pear.bat command

The 'pear' command is now at your service at c:\xampplite\php\pear\pear.bat

** The 'pear' command is not currently in your PATH, so you need to
** use 'c:\xampplite\php\pear\pear.bat' until you have added
** 'c:\xampplite\php\pear' to your PATH environment variable.

Run it without parameters to see the available actions, try 'pear list'
to see what packages are installed, or 'pear help' for help.

For more information about PEAR, see:

  http://pear.php.net/faq.php
  http://pear.php.net/manual/

Thanks for using go-pear!



* WINDOWS ENVIRONMENT VARIABLES *
For convenience, a REG file is available under c:\xampplite\php\pear\PEAR_ENV.reg .
This file creates ENV variables for the current user.

Double-click this file to add it to the current user registry.


c:\xampplite\php\pear&gt;

include_path=".;c:\xampp\php\pear\pear;C:\xampp\php\pear\"

c:\xampplite\php\pear&gt;pear channel-update pear.php.net
Updating channel "pear.php.net"
Update of Channel "pear.php.net" succeeded

c:\xampplite\php\pear&gt;pear upgrade-all
Will upgrade channel://pear.php.net/pear
Did not download optional dependencies: pear/XML_RPC, use --alldeps to download automatically
pear/PEAR can optionally use package "pear/XML_RPC" (version &gt;= 1.4.0)
downloading PEAR-1.7.2.tgz ...
Starting to download PEAR-1.7.2.tgz (302,744 bytes)
....done: 302,744 bytes
upgrade-all ok: channel://pear.php.net/PEAR-1.7.2
PEAR: Optional feature webinstaller available (PEAR's web-based installer)
PEAR: Optional feature gtkinstaller available (PEAR's PHP-GTK-based installer)
PEAR: Optional feature gtk2installer available (PEAR's PHP-GTK2-based installer)
PEAR: To install optional features use "pear install pear/PEAR#featurename"

c:\xampplite\php\pear&gt;

c:\xampplite\php\pear&gt;pear install db_dataobject
WARNING: "pear/DB" is deprecated in favor of "pear/MDB2"
Did not download optional dependencies: pear/MDB2, pear/Validate, use --alldeps to download automatically
pear/DB_[[DataObject]] can optionally use package "pear/MDB2" (version &gt;= 2.0.0RC1)
pear/DB_[[DataObject]] can optionally use package "pear/Validate" (version &gt;= 0.1.1)
downloading DB_[[DataObject]]-1.8.8.tgz ...
Starting to download DB_[[DataObject]]-1.8.8.tgz (64,219 bytes)
....done: 64,219 bytes
downloading Date-1.4.7.tgz ...
Starting to download Date-1.4.7.tgz (55,754 bytes)
...done: 55,754 bytes
install ok: channel://pear.php.net/Date-1.4.7
install ok: channel://pear.php.net/DB_[[DataObject]]-1.8.8

c:\xampplite\php\pear&gt;pear install validate-beta
downloading Validate-0.8.1.tgz ...
Starting to download Validate-0.8.1.tgz (19,588 bytes)
.......done: 19,588 bytes
install ok: channel://pear.php.net/Validate-0.8.1

c:\xampplite\php\pear&gt;

$extra_path = array("C:/xampplite/htdocs/laconica/ext/");
set_include_path(implode(PATH_SEPARATOR, $extra_path) . PATH_SEPARATOR . get_include_path());

$config['site']['name'] = 'Just another Laconica microblog';

#For contact email, defaults to $_SERVER["SERVER_ADMIN"]
#$config['site']['email'] = 'admin@example.net';
#Brought by...
#$config['site']['broughtby'] = 'Individual or Company';
#$config['site']['broughtbyurl'] = 'http://example.net/';

#Email info, used for SMS send. gmail example
$config['mail']['notifyfrom'] = 'username@gmail.com';
$config['mail']['domain'] = 'gmail.com';
# See http://pear.php.net/manual/en/package.mail.mail.factory.php for options
$config['mail']['backend'] = 'smtp';
$config['mail']['params'] = array('host' =&gt; 'ssl://smtp.gmail.com',
				  'port' =&gt; 465,
				  'auth' =&gt; true,
				  'username' =&gt; 'username@gmail.com',
				  'password' =&gt; 'password');
# for secure mail and xmpp you'll need to uncomment the extension=php_openssl.dll in your php.ini file  and restart your server.

$config['db']['database'] = 'mysql://laconica:laconicapassword@localhost/laconica';
$config['db']['ini_laconica'] = 'c:/xampplite/htdocs/laconica/stoica.ini';

$config['site']['fancy'] = true;

c:\xampplite&gt;cd c:\xampplite\htdocs\laconica

c:\xampplite\htdocs\laconica&gt;copy htaccess.sample ".htaccess"
        1 file(s) copied.

[[RewriteEngine]] On
[[RewriteBase]] /laconica

[[RewriteRule]] ^$ index.php?action=public [L,QSA]

[[LoadModule]] rewrite_module modules/mod_rewrite.so

# xmpp
$config['xmpp']['enabled'] = true;
$config['xmpp']['server'] = 'xmpp.example.net';
$config['xmpp']['port'] = 5222;
$config['xmpp']['user'] = 'microblog';
$config['xmpp']['resource'] = 'laconica';
$config['xmpp']['password'] = 'laconicapassword';

# xmpp using gtalk example
#$config['xmpp']['enabled'] = true;
#$config['xmpp']['host'] = 'talk.google.com';
#$config['xmpp']['server'] = 'gmail.com';
#$config['xmpp']['port'] = 5222;
#$config['xmpp']['user'] = 'username';
#$config['xmpp']['encryption'] = true;
#$config['xmpp']['resource'] = 'xmpphp';
#$config['xmpp']['password'] = 'password';
#$config['xmpp']['public'][] = 'username@gmail.com';

Warning: stream_socket_enable_crypto() [http://localhost/laconica/settings/streams.crypto streams.crypto]: this stream does not support SSL/crypto in C:\xampplite\htdocs\laconica\ext\XMPPHP\XMPP.php on line 318

Then open up laconica\lib\jabber.php and at line 86 add a line to disable encryption. Note that this line number may change as development continues.

Microsoft Windows [Version 6.0.6001]
Copyright (c) 2006 Microsoft Corporation.  All rights reserved.

C:\Users\mikenz&gt;darcs
darcs version 2.0.0 (2.0.0 (+ 19 patches))
Usage: darcs COMMAND ...

Microsoft Windows [Version 6.0.6001]
Copyright (c) 2006 Microsoft Corporation.  All rights reserved.

C:\Users\mikenz&gt;cd c:\xampplite\htdocs

c:\xampplite\htdocs&gt;darcs get --partial http://laconi.ca/darcs/ laconica
Finished getting.

c:\xampplite\htdocs&gt;

c:\xampplite\htdocs&gt;cd c:\xampplite\php\pear
c:\xampplite\php\pear&gt;..\php go-pear.phar

Are you installing a system-wide PEAR or a local copy?
(system|local) [system] : 

Below is a suggested file layout for your new PEAR installation.  To
change individual locations, type the number in front of the
directory.  Type 'all' to change all of them or simply press Enter to
accept these locations.

 1. Installation base ($prefix)                   : c:\xampplite\php\pear
 2. Temporary directory for processing            : c:\xampplite\php\pear\tmp
 3. Temporary directory for downloads             : c:\xampplite\php\pear\tmp
 4. Binaries directory                            : c:\xampplite\php\pear
 5. PHP code directory ($php_dir)                 : c:\xampplite\php\pear\pear
 6. Documentation directory                       : c:\xampplite\php\pear\docs
 7. Data directory                                : c:\xampplite\php\pear\data
 8. User-modifiable configuration files directory : c:\xampplite\php\pear\cfg
 9. Public Web Files directory                    : c:\xampplite\php\pear\www
10. Tests directory                               : c:\xampplite\php\pear\tests
11. Name of configuration file                    : C:\Windows\pear.ini
12. Path to CLI php.exe                           : c:\xampplite\php\pear\

1-12, 'all' or Enter to continue: 12

php.exe (sapi: cli) found.


Below is a suggested file layout for your new PEAR installation.  To
change individual locations, type the number in front of the
directory.  Type 'all' to change all of them or simply press Enter to
accept these locations.

 1. Installation base ($prefix)                   : c:\xampplite\php\pear
 2. Temporary directory for processing            : c:\xampplite\php\pear\tmp
 3. Temporary directory for downloads             : c:\xampplite\php\pear\tmp
 4. Binaries directory                            : c:\xampplite\php\pear
 5. PHP code directory ($php_dir)                 : c:\xampplite\php\pear\pear
 6. Documentation directory                       : c:\xampplite\php\pear\docs
 7. Data directory                                : c:\xampplite\php\pear\data
 8. User-modifiable configuration files directory : c:\xampplite\php\pear\cfg
 9. Public Web Files directory                    : c:\xampplite\php\pear\www
10. Tests directory                               : c:\xampplite\php\pear\tests
11. Name of configuration file                    : C:\Windows\pear.ini
12. Path to CLI php.exe                           : C:\xampplite\php

1-12, 'all' or Enter to continue: 11
(Use $prefix as a shortcut for 'c:\xampplite\php\pear', etc.)
Name of configuration file [C:\Windows\pear.ini] : c:\xampplite\php\pear.ini

Below is a suggested file layout for your new PEAR installation.  To
change individual locations, type the number in front of the
directory.  Type 'all' to change all of them or simply press Enter to
accept these locations.

 1. Installation base ($prefix)                   : c:\xampplite\php\pear
 2. Temporary directory for processing            : c:\xampplite\php\pear\tmp
 3. Temporary directory for downloads             : c:\xampplite\php\pear\tmp
 4. Binaries directory                            : c:\xampplite\php\pear
 5. PHP code directory ($php_dir)                 : c:\xampplite\php\pear\pear
 6. Documentation directory                       : c:\xampplite\php\pear\docs
 7. Data directory                                : c:\xampplite\php\pear\data
 8. User-modifiable configuration files directory : c:\xampplite\php\pear\cfg
 9. Public Web Files directory                    : c:\xampplite\php\pear\www
10. Tests directory                               : c:\xampplite\php\pear\tests
11. Name of configuration file                    : c:\xampplite\php\pear.ini
12. Path to CLI php.exe                           : c:\xampplite\php\pear\

1-12, 'all' or Enter to continue: 
Beginning install...
Configuration written to c:\xampplite\php\pear.ini...
Initialized registry...
Preparing to install...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/Archive_Tar-1.3.2.tar...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/Console_Getopt-1.2.3.tar...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/PEAR-1.7.1.tar...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/Structures_Graph-1.0.2.tar...
pear/PEAR can optionally use package "pear/XML_RPC" (version &gt;= 1.4.0)
install ok: channel://pear.php.net/Archive_Tar-1.3.2
install ok: channel://pear.php.net/Console_Getopt-1.2.3
install ok: channel://pear.php.net/Structures_Graph-1.0.2
install ok: channel://pear.php.net/PEAR-1.7.1
PEAR: Optional feature webinstaller available (PEAR's web-based installer)
PEAR: Optional feature gtkinstaller available (PEAR's PHP-GTK-based installer)
PEAR: Optional feature gtk2installer available (PEAR's PHP-GTK2-based installer)
PEAR: To install optional features use "pear install pear/PEAR#featurename"

******************************************************************************
WARNING!  The include_path defined in the currently used php.ini does not
contain the PEAR PHP directory you just specified:
&lt;c:\xampplite\php\pear\pear&gt;
If the specified directory is also not in the include_path used by
your scripts, you will have problems getting any PEAR packages working.


Would you like to alter php.ini &lt;C:\xampplite\php\php.ini&gt;? [Y/n] : C:\xampplite\apache\bin\php.ini

Please look over your php.ini file to make sure
c:\xampplite\php\pear\pear is in your include_path.
Current include path           : .;\xampplite\php\pear\
Configured directory           : c:\xampplite\php\pear\pear
Currently used php.ini (guess) : C:\xampplite\php\php.ini
Press Enter to continue: 

** WARNING! Old version found at c:\xampplite\php\pear, please remove it or be sure to use the new c:\xampplite\php\pear\pear.bat command

The 'pear' command is now at your service at c:\xampplite\php\pear\pear.bat

** The 'pear' command is not currently in your PATH, so you need to
** use 'c:\xampplite\php\pear\pear.bat' until you have added
** 'c:\xampplite\php\pear' to your PATH environment variable.

Run it without parameters to see the available actions, try 'pear list'
to see what packages are installed, or 'pear help' for help.

For more information about PEAR, see:

  http://pear.php.net/faq.php
  http://pear.php.net/manual/

Thanks for using go-pear!



* WINDOWS ENVIRONMENT VARIABLES *
For convenience, a REG file is available under c:\xampplite\php\pear\PEAR_ENV.reg .
This file creates ENV variables for the current user.

Double-click this file to add it to the current user registry.


c:\xampplite\php\pear&gt;

include_path=".;c:\xampp\php\pear\pear;C:\xampp\php\pear\"

c:\xampplite\php\pear&gt;pear channel-update pear.php.net
Updating channel "pear.php.net"
Update of Channel "pear.php.net" succeeded

c:\xampplite\php\pear&gt;pear upgrade-all
Will upgrade channel://pear.php.net/pear
Did not download optional dependencies: pear/XML_RPC, use --alldeps to download automatically
pear/PEAR can optionally use package "pear/XML_RPC" (version &gt;= 1.4.0)
downloading PEAR-1.7.2.tgz ...
Starting to download PEAR-1.7.2.tgz (302,744 bytes)
....done: 302,744 bytes
upgrade-all ok: channel://pear.php.net/PEAR-1.7.2
PEAR: Optional feature webinstaller available (PEAR's web-based installer)
PEAR: Optional feature gtkinstaller available (PEAR's PHP-GTK-based installer)
PEAR: Optional feature gtk2installer available (PEAR's PHP-GTK2-based installer)
PEAR: To install optional features use "pear install pear/PEAR#featurename"

c:\xampplite\php\pear&gt;

c:\xampplite\php\pear&gt;pear install db_dataobject
WARNING: "pear/DB" is deprecated in favor of "pear/MDB2"
Did not download optional dependencies: pear/MDB2, pear/Validate, use --alldeps to download automatically
pear/DB_[[DataObject]] can optionally use package "pear/MDB2" (version &gt;= 2.0.0RC1)
pear/DB_[[DataObject]] can optionally use package "pear/Validate" (version &gt;= 0.1.1)
downloading DB_[[DataObject]]-1.8.8.tgz ...
Starting to download DB_[[DataObject]]-1.8.8.tgz (64,219 bytes)
....done: 64,219 bytes
downloading Date-1.4.7.tgz ...
Starting to download Date-1.4.7.tgz (55,754 bytes)
...done: 55,754 bytes
install ok: channel://pear.php.net/Date-1.4.7
install ok: channel://pear.php.net/DB_[[DataObject]]-1.8.8

c:\xampplite\php\pear&gt;pear install validate-beta
downloading Validate-0.8.1.tgz ...
Starting to download Validate-0.8.1.tgz (19,588 bytes)
.......done: 19,588 bytes
install ok: channel://pear.php.net/Validate-0.8.1

c:\xampplite\php\pear&gt;

$extra_path = array("C:/xampplite/htdocs/laconica/ext/");
set_include_path(implode(PATH_SEPARATOR, $extra_path) . PATH_SEPARATOR . get_include_path());

$config['site']['name'] = 'Just another Laconica microblog';

#For contact email, defaults to $_SERVER["SERVER_ADMIN"]
#$config['site']['email'] = 'admin@example.net';
#Brought by...
#$config['site']['broughtby'] = 'Individual or Company';
#$config['site']['broughtbyurl'] = 'http://example.net/';

#Email info, used for SMS send. gmail example
$config['mail']['notifyfrom'] = 'username@gmail.com';
$config['mail']['domain'] = 'gmail.com';
# See http://pear.php.net/manual/en/package.mail.mail.factory.php for options
$config['mail']['backend'] = 'smtp';
$config['mail']['params'] = array('host' =&gt; 'ssl://smtp.gmail.com',
				  'port' =&gt; 465,
				  'auth' =&gt; true,
				  'username' =&gt; 'username@gmail.com',
				  'password' =&gt; 'password');
# for secure mail and xmpp you'll need to uncomment the extension=php_openssl.dll in your php.ini file  and restart your server.

$config['db']['database'] = 'mysql://laconica:laconicapassword@localhost/laconica';
$config['db']['ini_laconica'] = 'c:/xampplite/htdocs/laconica/stoica.ini';

$config['site']['fancy'] = true;

c:\xampplite&gt;cd c:\xampplite\htdocs\laconica

c:\xampplite\htdocs\laconica&gt;copy htaccess.sample ".htaccess"
        1 file(s) copied.

[[RewriteEngine]] On
[[RewriteBase]] /laconica

[[RewriteRule]] ^$ index.php?action=public [L,QSA]

[[LoadModule]] rewrite_module modules/mod_rewrite.so

# xmpp
$config['xmpp']['enabled'] = true;
$config['xmpp']['server'] = 'xmpp.example.net';
$config['xmpp']['port'] = 5222;
$config['xmpp']['user'] = 'microblog';
$config['xmpp']['resource'] = 'laconica';
$config['xmpp']['password'] = 'laconicapassword';

# xmpp using gtalk example
#$config['xmpp']['enabled'] = true;
#$config['xmpp']['host'] = 'talk.google.com';
#$config['xmpp']['server'] = 'gmail.com';
#$config['xmpp']['port'] = 5222;
#$config['xmpp']['user'] = 'username';
#$config['xmpp']['encryption'] = true;
#$config['xmpp']['resource'] = 'xmpphp';
#$config['xmpp']['password'] = 'password';
#$config['xmpp']['public'][] = 'username@gmail.com';

Warning: stream_socket_enable_crypto() [http://localhost/laconica/settings/streams.crypto streams.crypto]: this stream does not support SSL/crypto in C:\xampplite\htdocs\laconica\ext\XMPPHP\XMPP.php on line 318

                $conn-&gt;autoSubscribe();
                $conn-&gt;useEncryption(false);

                if (!$conn) {
                        return false;
                }

Now try adding your IM again.

You should now have a message with a confirmation link. Clicking this should confirm your IM account.

To be able to post notices using XMPP you'll need to have the xmppdaemon.php running the whole time. Here's how to make a batch file so it's easy to start.

In C:\xampplite\htdocs\laconica create a new text file called "xmppdaemon.bat" and open it for editing. Add these two lines to it, and save it.

cd C:\xampplite\htdocs\laconica

c:\xampplite\php\php -c c:\xampplite\apache\bin\php.ini C:\xampplite\htdocs\laconica\xmppdaemon.php

Double click xmppdaemon.bat and it will open. Just leave the box open, a bunch off errors will probably scroll past . don't worry about them.

Now you should be able to send messages to the Jabber ID you configured and they'll show up in your microblog.

SMS

Sorry, too hard to do on Windows. This is not yet documented. It's suggested to use UNIX server.

Personal tools
Namespaces
Variants
Actions
Navigation
Status.net
Toolbox