Difference between revisions of "User talk:Jeshyr"

From Dreamwidth Notes
Jump to: navigation, search
Line 1: Line 1:
= Hello, world! =
+
= Introduction =
 
<strong>The instructions below are not complete, and are not enough to get the Dreamwidth code up and running</strong>.
 
<strong>The instructions below are not complete, and are not enough to get the Dreamwidth code up and running</strong>.
  
Line 13: Line 13:
 
== Note about OS Versions ==
 
== Note about OS Versions ==
  
These notes are ''specifically'' about OS X Lion which already has 64-bit versions of all of its programs which simplifies this process quite a lot. I don't think this will work the same on previous versions of OS X.
+
These notes are ''specifically'' about OS X Lion which already has 64-bit versions of all of its programs which simplifies this process quite a lot. If you are trying this on a version prior to 10.7 Lion, you need to see [[Running Dreamwidth on a Mac OS X system]].
  
== Possible points of ''pain'' ==
 
Note: Installing the necessary environment (covered below) isn't that hard, but I'm not so sure about things like Perl modules, especially the xml parser, which were a ''pain'' back when I was trying to run LJ code on my PowerBook/Tiger. Crossing fingers, will cross that bridge, etc.
 
  
 
= XCode =
 
= XCode =
Line 23: Line 21:
  
 
Once the installer has downloaded you need to run it - doubleclick on 'Install Xcode' in your Applications folder. You can delete the installer once the installation is finished, if you like.
 
Once the installer has downloaded you need to run it - doubleclick on 'Install Xcode' in your Applications folder. You can delete the installer once the installation is finished, if you like.
 +
  
 
= MySQL =  
 
= MySQL =  
Line 43: Line 42:
  
 
Now you can refer to your install directory as <code>/usr/local/mysql</code> which is easier to remember.
 
Now you can refer to your install directory as <code>/usr/local/mysql</code> which is easier to remember.
 
== Have an optional section ==
 
 
Go inside; look at the install instructions if you want:
 
  $ cd /usr/local/mysql
 
  $ open INSTALL-BINARY
 
  
 
== Setting up the mysql user ==  
 
== Setting up the mysql user ==  
 
      
 
      
You'll find out that the first few instructions won't work on Lion, though! Try these instead:
+
The /usr/local/mysql/INSTALL-BINARY installation instructions will '''not''' work on OS X. Use these instead:
  
 
   $ sudo dscl . -create /Groups/mysql # same as groupadd mysql
 
   $ sudo dscl . -create /Groups/mysql # same as groupadd mysql
Line 71: Line 64:
 
There should be a way to start up mysql on system startup. If you don't do that, you will need to run this command every time you want to get the mysql database up and running:
 
There should be a way to start up mysql on system startup. If you don't do that, you will need to run this command every time you want to get the mysql database up and running:
 
   $ sudo bin/mysqld_safe --user=mysql &
 
   $ sudo bin/mysqld_safe --user=mysql &
 +
 +
(You'll need to leave the terminal window open after this or you'll terminate the mysql process).
 +
  
 
= Mercurial =
 
= Mercurial =
Line 87: Line 83:
  
 
   $ sudo ln -s /usr/local/bin/hg /usr/bin/hg
 
   $ sudo ln -s /usr/local/bin/hg /usr/bin/hg
 +
  
 
= GD =
 
= GD =
Line 93: Line 90:
  
 
I'm not installing this yet
 
I'm not installing this yet
 +
 +
 +
= GMP =
 +
 +
GMP is another C library for arbitrary-precision math.
 +
 +
It's available here:
 +
    http://gmplib.org/
 +
 +
Not installing this yet either, it does claim to build on OS X though.
  
  
Line 144: Line 151:
 
install Class::Trigger
 
install Class::Trigger
 
install URI
 
install URI
#install Math::BigInt::GMP # requires libgmp first
+
#install Math::BigInt::GMP # requires libgmp first, leaving this for now
 
install Crypt::DH
 
install Crypt::DH
 
install URI::Fetch
 
install URI::Fetch

Revision as of 03:17, 19 September 2011

Introduction

The instructions below are not complete, and are not enough to get the Dreamwidth code up and running.

Below are some notes on getting the environment setup on OS X 10.7 Lion. Some of these may be applicable to older versions too, but I've no way of testing. This is a supplementary document, for setting up the environment only. For instructions on actually running the DW code, see Dev_Getting_Started.

I'm assuming that you want all of these to be placed in /usr/local/bin instead of overwriting your system files. All instructions below should leave your system files intact.

When you see stuff like this:

 $ commandname parameters

The $ is a Terminal prompt. You should type the rest of the line as is into your Terminal (e.g., "commandname parameters", no "$" and no quotation marks). Lines not preceded by a "$" are output.

Note about OS Versions

These notes are specifically about OS X Lion which already has 64-bit versions of all of its programs which simplifies this process quite a lot. If you are trying this on a version prior to 10.7 Lion, you need to see Running Dreamwidth on a Mac OS X system.


XCode

Install XCode from the App Store - this what used to be called Dev Tools. You can search for "XCode" from within the Mac App Store and that will get you the XCode installer.

Once the installer has downloaded you need to run it - doubleclick on 'Install Xcode' in your Applications folder. You can delete the installer once the installation is finished, if you like.


MySQL

Obtaining the binary

You can download the binary from here:

 http://dev.mysql.com/downloads/mysql/

You need the 64 bit version.

Once downloaded, unzip the contents into /usr/local:

 $ sudo tar xvfz mysql-5.5.16-osx10.6-x86_64.tar.gz -C /usr/local

Then create a symbolic link to make the rest of everything easier:

   $ cd /usr/local
   $ sudo ln -s mysql-5.5.16-osx10.6-x86_64/ mysql # use whatever directory corresponds to your MySQL download

Now you can refer to your install directory as /usr/local/mysql which is easier to remember.

Setting up the mysql user

The /usr/local/mysql/INSTALL-BINARY installation instructions will not work on OS X. Use these instead:

 $ sudo dscl . -create /Groups/mysql # same as groupadd mysql
 $ sudo dscl . -create /Users/mysql  # same as useradd mysql
 $ sudo dscl . -append /Groups/mysql GroupMembership mysql

Setting up folder permissions

 $ cd /usr/local/mysql
 $ sudo chown -R mysql .
 $ sudo chgrp -R mysql .
 $ sudo scripts/mysql_install_db --user=mysql
 $ sudo chown -R root .
 $ sudo chown -R mysql data

Starting up mysql

There should be a way to start up mysql on system startup. If you don't do that, you will need to run this command every time you want to get the mysql database up and running:

 $ sudo bin/mysqld_safe --user=mysql &

(You'll need to leave the terminal window open after this or you'll terminate the mysql process).


Mercurial

Obtaining it

Binary packages for OS X are available here:

   http://mercurial.berkwood.com/

Download the most recent one available for your OS version - I used Mercurial 1.9.2 for OS X 10.7 for this.

This build of Mercurial comes with a standard Mac-style installer so double-click on the package in the Finder to unzip it, then double-click on the installer and go with all the default options.

Create a shortcut

The DW bootstrap.pl expects Mercurial to be installed in /usr/bin, whereas the binary installs it in /usr/local/bin. So we shall put in a symbolic link:

 $ sudo ln -s /usr/local/bin/hg /usr/bin/hg


GD

GD is a C library for making graphics and graphs.

I'm not installing this yet


GMP

GMP is another C library for arbitrary-precision math.

It's available here:

   http://gmplib.org/

Not installing this yet either, it does claim to build on OS X though.


GPG

GnuPG is available pre-built for Mac OS X at:

   http://www.gpgtools.org/

Simply download and install this package, it's standard Mac style.


Perl Modules

CPAN

First set up CPAN which simplifies installation of all the other modules:

   $ sudo CPAN

You can answer "yes" to it's autoconfiguration question:

   Would you like me to configure as much as possible automatically? [yes] 

I was able to accept defaults for the other questions it asked. When it's installed it will dump you into the CPAN shell:

   cpan[1]> 

The first thing to do is reinstall CPAN to make sure you're up to date.

   cpan[1]> install Bundle::CPAN

This installed a lot of other support modules and took quite a while, it spams the screen with tons of results while it's doing it and it stopped a few times to ask me questions, I just accepted any default it offered! When it's done, reload your CPAN shell:

   cpan[2]> reload cpan

Perl Modules

You now have a really really long list of packages to install. Some of these will install prerequisites automatically, others will ask if they should - just accept all defaults.

I have copied this list mostly from the Dreamwidth Scratch Installation page and make no claims about it being complete OR about any of these modules being necessary :)

install Captcha::reCAPTCHA install Unicode::CheckUTF8 install DateTime install MIME::Lite install HTML::Template install Net::DNS install XML::Simple install Class::Accessor install Class::Data::Inheritable install Class::Trigger install URI

  1. install Math::BigInt::GMP # requires libgmp first, leaving this for now

install Crypt::DH install URI::Fetch install HTML::Template install MIME::Lite install GnuPG::Interface # requires GPG first install Mail::GnuPG # requires GPG first install Proc::ProcessTable install SOAP::Lite install RPC::XML install String::CRC32 install Text::vCard install XML::Atom install XML::RSS install Image::Size install Unicode::MapUTF8 install Net::OpenID::Consumer install Net::OpenID::Server install YAML install CAPTCHA::ReCAPTCHA install DBD::SQLite3 install Test::Simple install Test::SimpleUnit install Template install Term::ReadKey install Test::Most install Business::CreditCard

  1. extutils::cbuilder??
  2. perlmagick
  3. libwww
  4. install GD #wait until GD installed
  5. install GD::Graph #wait until GD installed

Postfix

If you want your DW installation to be able to deliver mail you'll need Postfix set up. By default, Lion comes with Postfix installed but not configured.

Possibly relevant info:

   * https://discussions.apple.com/thread/3247974?start=0&tstart=0

Getting the bootstrap

Instead of wget, curl should do the trick:

  $ curl -O  http://hg.dwscoalition.org/dw-free/raw-file/tip/bin/bootstrap.pl

You can also install wget using Fink or build it from source if you prefer.