Oddmuse logo

Oddmuse

  •  0 ratings
In category: Note-taking & Editors

About Oddmuse

A simple wiki engine written in Perl. No database required.

  •   732  
  •   0  
  •   0  
  •   0  
Github stats:
  •  Commits: 6,362  
  •   68  
  •   12  
  •  Latest commit: N/A  

Deploy this app to Linode with a free $100 credit!

Languages/Platforms/Technologies:
Lincenses:

More about Oddmuse

Oddmuse is a wiki engine. It has been around for a while. It got started back in 2003.

Oddmuse is one Perl script—and, optionally, one Perl script configuration and a suite of Perl script extensions, CSS themes, and installation examples.

Oddmuse leverages your local filesystem for storing, restoring, and versioning page content, rather than local or remote databases. “no database; no worries.”

Oddmuse is a program to run a wiki. A wiki can be used for communication in a team or for documentation, when things have to be quick and easy: Content Management for everybody.

A wiki enables other people to quickly join efforts. In the office, you can introduce new employees, distribute phone lists, store memos, plan trips, document projects, prepare meetings, or describe internal processes.

For many free software projects wikis have taken an important role somewhere between manual, FAQ, IRC, and mailing lists.

Oddmuse is very easy to install: Simple installation, compact code, and easy extensibility were the most important design factors.

Features

  • Easy to install: Just copy one file into the correct directory and off you go.
  • No dependencies on version management tools or database installation.
  • Web server needs Perl installed; if you are allowed to run scripts, that should be a given.
  • Easy to use for users, easy to hack for programmers.
  • Capable of multilingual sites.
  • Unicode (UTF-8) per default.
  • Valid HTML; CSS friendly.
  • Caching on several levels.
  • Easy to download.

This is the README file distributed together with the [[https://oddmuse.org/|Oddmuse]] script.

== Installing Oddmuse on a Debian System running Apache

The following instructions require a number of tools. You can make sure they're all installed by issuing the following command as {{{root}}}:

{{{ apt-get install coreutils apache2 sudo wget w3m perl \ libwww-perl libxml-rss-perl diffutils }}}

You probably created an account for yourself. You might have to add this user to the {{{sudo}}} group. Here's how I created my own user as {{{root}}}:

{{{ adduser alex usermod -a -G sudo alex }}}

Now you can login as {{{alex}}} and do everything else using {{{sudo}}}.

You need to copy wiki.pl into your cgi-bin directory, and you need to make the script executable. You might also have to change its owner to an appropriate user on your system.

{{{ sudo wget -O /usr/lib/cgi-bin/wiki.pl \ http://git.savannah.gnu.org/cgit/oddmuse.git/plain/wiki.pl sudo chmod +x /usr/lib/cgi-bin/wiki.pl sudo chown www-data.www-data /usr/lib/cgi-bin/wiki.pl }}}

If you're on SUSE, the user might not be {{{www-data}}} but {{{wwwrun}}} without appropriate group:

{{{ sudo chown wwwrun.root /usr/lib/cgi-bin/wiki.pl }}}

You should be able to test it right now! Visit {{{http://localhost/cgi-bin/wiki.pl}}}. If your site is available from the outside, you will be able to use a normal browser. If don't have a domain name yet, you'll probably have to use a text browser like {{{w3m}}}.

{{{ w3m http://localhost/cgi-bin/wiki.pl }}}

If you create pages in this wiki, these will get stored in a temporary directory. You need change the data directory from {{{"/tmp/oddmuse"}}} to like {{{"/var/local/oddmuse"}}}. The best way to do this without changing {{{wiki.pl}}} is by editing {{{/etc/apache2/sites-available/default}}}. Add the following line:

{{{ SetEnv WikiDataDir /var/local/oddmuse }}}

Enable the default site by calling the following command:

{{{ sudo a2ensite default }}}

Reload the Apache configuration by calling the following command:

{{{ sudo service apache2 reload }}}

You need to create the new data directory. You webserver runs CGI scripts as {{{www-data}}}. Thus, you need to change the owner and group of the directory to {{{www-data}}}.

{{{ sudo mkdir -p /var/local/oddmuse sudo chown www-data.www-data /var/local/oddmuse }}}

Done! Visit your wiki and start editing. Click on the edit link (the first link below the navigation bar, at the bottom of the page). This will allow you to enter some text for this page. Click the Save button and you are done.

To add new pages, edit the homepage and add links to new pages by putting their names in {{{[[double square brackets]]}}}.

Enjoy your wiki experience.

Visit https://www.oddmuse.org/ to learn more about the translation files and modules that are part of this package.

== Checking the Apache Setup

If you think this information doesn't work for you, here are some things to check.

Apache's config directory is {{{/etc/apache2/apache2.conf}}}. This is where we get the {{{www-data}}} username from. It says:

{{{

These need to be set in /etc/apache2/envvars

User ${APACHE_RUN_USER} Group ${APACHE_RUN_GROUP} }}}

Checking {{{/etc/apache2/envvars}}} we see the following:

{{{ export APACHE_RUN_USER=www-data export APACHE_RUN_GROUP=www-data }}}

So that's what we're using in the {{{chown}}} command in our instructions above.

The default site is configured in {{{/etc/apache2/sites-available/default}}}. In order for it to be //enabled//, there must be a symlink from a file in {{{/etc/apache2/sites-enabled}}} to the file in {{{sites-available}}}. You can enable it using the following command:

{{{ sudo a2ensite default }}}

This file also lists the directories we've used in our instructions above.

{{{ ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ }}}

This means that {{{http://localhost/cgi-bin/wiki.pl}}} will call {{{/usr/lib/cgi-bin/wiki.pl}}}

Don't forget to reload the Apache configuration as shown above, or simply restart it all:

{{{ sudo service apache2 graceful }}}

== Using just Perl

You can use Mojolicious as your web server. There is a simple

server.pl## which you can use. Here's how you might start it:

{{{ mkdir ~/oddmuse WikiDataDir=$HOME/oddmuse perl server.pl daemon }}}

This makes the server available on {{{http://localhost:3000/wiki}}}. Make sure you create the directory before starting the server! If you don't, you'll get a strange error: STDERR: : No such file or directory at ... perl5/Mojolicious/Plugin/CGI.pm.

If it works, feel free to upgrade to Hypnotoad.

{{{ WikiDataDir=$HOME/oddmuse hypnotoad server.pl }}}

Note: Hypnotoad uses a different default port. The above makes the server available on {{{http://localhost:8080/wiki}}}. Hypnotoad will keep forking new processes. To stop it, use the {{{-s}}} flag.

{{{ hypnotoad -s server.pl }}}

== License

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Both the GNU Free Documentation License, and the GNU General Public License are distributed together with this script. See the files [[https://github.com/kensanata/oddmuse/blob/master/FDL|FDL]] and [[https://github.com/kensanata/oddmuse/blob/master/GPL|GPL]], respectively.

Comments (0)

Please login to join the discussion on this project.

Oddmuse Reviews (0)

Overall Rating

None

based on 0 ratings

Please login to review this project.

No reviews for this project yet.

↑ back to top

pCloud Lifetime

Popular Projects

FluxBB

in Social Networks and Forums
 33k    0    0    0  

Nextcloud

in File Transfer & Synchronization
 20k    1    1    0  

Libreddit

in Social Networks and Forums
 7k    0    1    0  

Dashboard

in Personal Dashboards
 5k    0    0    0  

Audiobookshelf

in Audio Streaming
 5k    0    1    0  

CasaOS

in Self-hosting Solutions
 5k    0    0    0  

Mediagoblin

in Photo and Video Galleries
 4k    0    0    0  

Most Discussed

Nextcloud

in File Transfer & Synchronization
 20k    1    1    0  

Tube Archivist

in Automation
 3k    0    1    0  

OneDev

in Project Management
 2k    0    0    0  

iodine

in Proxy
 2k    0    0    0  

Alf.io

in Booking and Scheduling
 2k    0    0    0  

sysPass

in Password Managers
 1k    0    0    0  

Misskey

in Social Networks and Forums
 2k    0    0    0  
Linux VPS from $11/yr.
RackNerd VPS for $11.38/mo

Top Rated Projects

Gitea

 1 rating
in Project Management

Bagisto

 1 rating
in E-commerce

LinkAce

 1 rating
in Bookmarks and Link Sharing

Pydio

 1 rating
in File Transfer & Synchronization

Audiobookshelf

 1 rating
in Audio Streaming

Nextcloud

 1 rating
in File Transfer & Synchronization

Seafile

 1 rating
in File Transfer & Synchronization

Categories

You May Also Be Interested In

Overleaf logo
Overleaf cover

Overleaf

Web-based collaborative LaTeX editor.

Writing logo
Writing cover

Writing

Lightweight distraction-free text editor, in the browser (M…

Plainpad logo
Plainpad cover

Plainpad

A modern note taking application for the cloud, utilizing t…