MoinMoin prepackaged for Distribution
To make the installation of MoinMoin even easier it should be packaged for different distributions/operation systems. As we use dist utils several package formats are quite trivial. Nevertheless is it difficult to build packages for a large number of platforms. This page describes current status of diverse moin packages for diverse OSes.
Contents
DesktopEdition
This is a special Edition of MoinMoin. It works on every platform and out of the box. No webserver is required. This is the best way of just trying MoinMoin out or use MoinMoin as PersonalWiki.
See DesktopEdition
Linux Distributions
Arch Linux
MoinMoin can be installed from the [community] repositories.
You can also package it yourself using the following PKGBUILD with makepkg, then pacman -U.
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Samuel Mathieson <smathieson@gmail.com>
pkgname=moinmoin
_xpkgname=moin
pkgver=1.9.5
pkgrel=1
pkgdesc="A python wiki clone"
arch=(any)
url="http://moinmo.in/"
license=('GPL')
depends=('python2')
conflicts=('moin')
source=(http://static.moinmo.in/files/moin-$pkgver.tar.gz)
md5sums=('adfa15e3e37cf26b4b014f209959e9d9')
build() {
cd $srcdir/${_xpkgname}-$pkgver
# python2 fix
for file in $(find . -name '*.py' -print) wiki/server/*; do
sed -i 's_^#!.*/usr/bin/python_#!/usr/bin/python2_' $file
sed -i 's_^#!.*/usr/bin/env.*python_#!/usr/bin/env python2_' $file
done
python2 setup.py build
python2 setup.py install --root=$pkgdir --record=INSTALLED_FILES
}
OpenSuse
Tested for 10.3
# Define MOINMOIN Version
export MOINVERSION=1.8.2
export MOINFILE=moin-${MOINVERSION}.tar.gz# Donwload MoinMoin ( To /usr/src/packages/SOURCES/ )
cd /usr/src/packages/SOURCES/ && wget http://static.moinmo.in/files/${MOINFILE} # Create SPEC File ( in /usr/src/packages/SOURCES/ )
cat > python-moinmoin.spec <<EOF
Name: python-moinmoin
License: GPL
Group: Productivity/Networking/Web/Applications
Version: 0.0.0
Release: 1
Summary: Advanced, easy to use and extensible WikiEngine
URL: http://moinmo.in/MoinMoinWiki
# Source: http://static.moinmo.in/files/moin-%{version}.tar.gz
Source: moin-%{version}.tar.gz
BuildRoot: %{_tmppath}/moin-%{version}-build
Prefix: %{_prefix}
Packager: Public
%py_requires
BuildRequires: python-devel >= 2.4 , crunzip
Requires: python >= 2.4
Requires: python-xml
Provides: moin = %{version}
Obsoletes: moin <= %{version}-%{release}
%description
MoinMoin is an advanced, easy to use and extensible WikiEngine with a large
community of users. Said in a few words, it is about collaboration on easily
editable web pages.
%prep
%setup -n moin-%{version}
%build
export CFLAGS="\$RPM_OPT_FLAGS"
%{__python} setup.py build
%install
python setup.py install --root=\$RPM_BUILD_ROOT \\
--record-rpm=INSTALLED_FILES --prefix=%{_prefix}
%clean
[ "\$RPM_BUILD_ROOT" != "/" ] && rm -rf \$RPM_BUILD_ROOT
%files -f INSTALLED_FILES
%defattr(-,root,root)
%doc README docs/*
%changelog
* Thu Apr 16 2009 Public - $MOINVERSION
- Updated to $MOINVERSION
* Tue Jun 24 2008 Ben Haggaer - 1.7.0
- Updated to 1.7.0
* Sun Apr 20 2008 Ben Haggaer - 1.6.2
- Updated to 1.6.2, added python-xml requirement
* Wed Jan 02 2008 Ben Haggaer - 1.6.0
- Updated to 1.6 and merged spec from mrueckert@suse.de version
* Wed Sep 05 2007 Ben Haggaer - 1.5.8
- Initial attempt at build for opensuse 10.2+
* Sun Mar 11 2007 Dag Wieers <dag@wieers.com> - 1.5.7-1
- Initial package.
EOF# Patch SPEC File to MOINVERSION
perl -p -i -e "s/^Version:.*/Version: $MOINVERSION/" python-moinmoin.spec
# Build Package ( Ignore warnings )
rpmbuild -bb python-moinmoin.spec
# verify build - Check RPM Package content
rpm -qlp /usr/src/packages/RPMS/i586/python-moinmoin-$MOINVERSION-1.i586.rpm
# Change back we we cpome from
cd -
Notes:
SPEC has been taken from ftp://ftp5.gwdg.de/pub/opensuse/repositories/home%3A/turble/openSUSE_11.0/src/python-moinmoin-1.7.0-6.1.src.rpm
Other Linuxes
- Debian
See /DebianLinux.
- Fedora
has MoinMoin in the default "fedora" repository.
see VillePekkaVainio#FedoraPackages for the current package maintainer's page on this wiki
- Foresight and rPath
Latest version moin=1.5.7-1.1-2 - To install just do sudo conary update moin
- Mandrake
Moin is in Mandrake Contrib since 9.2. If you want a more recent version, try the package from Mandrake Cooker. See http://www.urpmi.org/. There are some much more RPM elaborated RPMs for Mandrake. See http://cvs.mandrakesoft.com/cgi-bin/cvsweb.cgi/contrib-SPECS/moin/.
- Gentoo
There is a moinmoin ebuild available in Portage. Supported platforms currently include x86, ppc, sparc and amd64. You may want to add the following to /etc/portage/package.keywords :
www-apps/moinmoin ~x86
- You will need to create package.keywords if it doesn't exist.
- Ubuntu
- ALT Linux
ALT Linux is russian community-based set of distros, so most of the pages you can find there are in Russian. Last moin package info, specfile, rpm and src.rpm can be found at http://sisyphus.ru/srpm/moin (page in Russian). One can download rpm and src.rpm directly from ALT Linux FTP server. The package includes simple installation script moin-instance-setup that creates new Moin instance and Apache 1.3.* dedicated config file. Also, the FreeBSD patch is used for moving data and underlay directories down from the cgi-bin. Note the specfile is not fully comatible with FC et al.: it lacks some traditional sections (like %clean), and may use some ALT-specific macros.
- RPMs
- Since 1.2.1 there is a very simple RPM spec file in the moin tar. It is not yet tested on other distributions than Fedora Core 1 and Suse 9.0. To build a RPM out of the tarball do:
su root ... rpmbuild -tb moin-1.3.1.tar.gz
Alternate methodtar xzf moin-1.3.1.tar.gz cd moin-1.3.1 python setup.py bdist_rpm
For older versions of rpm (3.x) use rpm instead of rpmbuild. The spec file makes the following assumptions:- The RPM "python" is installed and refers to python 2.x.x.
The python executable in the path is also Python 2.
- There is a RPM python-devel and it is installed.
- Fedora core
- Suse 9.0, 9.3
- Mandrake 10.1
(cd $RPM_BUILD_ROOT; find ./usr/share/moin -type f | sed 's/\.//' ) > INSTALLED_FILES.find (cd $RPM_BUILD_ROOT; find ./usr/bin -type f | sed 's/\.//' ) >> INSTALLED_FILES.find (cd $RPM_BUILD_ROOT; find ./usr/lib/python*/site-packages/MoinMoin -type f | sed 's/\.//' ) >> INSTALLED_FILES.find
- (note: lines should not wrap)
%files -f INSTALLED_FILES.find
Without these modifications, 'rpmbuild' complained about "duplicate files", since the python install also lists directories created (and rpmbuild then double counts...).
- Since 1.2.1 there is a very simple RPM spec file in the moin tar. It is not yet tested on other distributions than Fedora Core 1 and Suse 9.0. To build a RPM out of the tarball do:
Mac OS X
Basically you install on Mac OS X using the ApacheOnUnix instructions. The commands on the INSTALL.html are the same except the user and group of the web server, and how you run chown. I installed moin like that many times on 10.2 and 10.3 without any problem.
To make it easier to those new to the command line, I update the Mac OS X instructions on MoinMaster. If you have any problems, check first HelpOnInstalling/ApacheOnMacOsx.
I may create an easier installer if I have time for this. -- NirSoffer 2004-08-06 16:41:45
FreeBSD
FreeBSD is "father" of most packaging systems in world of unices. System for compiling and (or)installing of all programs is called "Ports and Packages Collection" and starting point on Web for learning about it is: FreeBSD Ports . Installing one program is easy, here an example for MoinMoin:
#cd /usr/ports/www/moinmoin/ #make install clean
That's it. If You are behind proxy or firewall, set first variables http_proxy and ftp_proxy somewhat like this, for example:
#export http_proxy=http://your.proxy:port #export ftp_proxy=http://your.proxy:port
Dir /usr/ports is kind of skeleton for all programms (which are not in base FreeBSD release) with appropriate makefiles, dependency lists, specific FreeBSD patches and basic info about them. After source code has been compiled and package made out if it (make), installed in its appropriate directories (install), and all clutter deleted (clean), you can mostly use it at once.
Ok, then let's see what the status of MoinMoin port for FreeBSD:
Informations on web are here: Freshports -- www/moinmoin
- It has been updated to 1.5.3 on 20 Apr 2006
The make file includes options to use different kinds of servers, user and group and other options. See Makefile
OpenBSD
Since OpenBSD 3.7, there is a moinmoin port under the www category. The ports system is similar to FreeBSD (actually borrowed, but now goes its own ways). See the OpenBSD ports & package collection page for more information.
Before turning into a port, moinmoin was used on OpenBSD releases 3.0 thru 3.5 and it worked flawlessly.
Solaris
tjyang is customizing moin-1.3.3 package sources created by TWW Inc. (http://www.thewrittenword.com ). The moin-1.3.3 was created as part of support contract between TWW and tjyang's workplace.
The binary package and its package source will be released back to moinmoin community in return for great moinmoin wiki engine and its supportive commnunity. Special thanks to AlexanderSchremmer for his support on IRC #moin channel. Currently the package is not ready for release.
The customization includes followings.
- More default setting to minimize the configuration effort from application installer.
- Will include more *Market to save configuration work.
- The installation command will be like this "pkg-inst moinS-1.3.3" on a solaris sparc box. all the depended software will be installed automatically by pkg-inst tool.
- The same package source may be used to generate package for HPUX,AIX,IRIX,RHAS3.0.
- Details TBA.
Other OSes
Feel free to add your package instructions/scripts here.
If you don't find a package ...
... then simply use the tarball from MoinMoinDownload, it is usually fresher than most packages you get and fits our installation instructions better. Don't be afraid: as python is interpreted, you don't need to compile it.
