summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'www-servers/boa')
-rw-r--r--www-servers/boa/Manifest1
-rw-r--r--www-servers/boa/boa-0.94.14_rc21-r1.ebuild63
-rw-r--r--www-servers/boa/files/boa-0.94.14_rc21-ENOSYS.patch17
-rw-r--r--www-servers/boa/files/boa-0.94.14_rc21-texi.patch14
-rw-r--r--www-servers/boa/files/boa.conf187
-rw-r--r--www-servers/boa/files/boa.conf.d4
-rw-r--r--www-servers/boa/files/boa.rc638
-rw-r--r--www-servers/boa/files/boa.service9
-rw-r--r--www-servers/boa/files/mime.types205
-rw-r--r--www-servers/boa/metadata.xml8
10 files changed, 546 insertions, 0 deletions
diff --git a/www-servers/boa/Manifest b/www-servers/boa/Manifest
new file mode 100644
index 000000000000..b6ca09bc89b3
--- /dev/null
+++ b/www-servers/boa/Manifest
@@ -0,0 +1 @@
+DIST boa-0.94.14rc21.tar.gz 199950 SHA256 02c51bf25f29d56e641b662f0767759654c28d88ec31f55c5a73d57edfe13cf6 SHA512 ca8e5c2c29f0b6cd4fd2f7268682dc345c1d37f4de099319e22d63d822a72195659d707e148f2e2725edec88d90208fc40702f15ab2cacadc9957f1a0437d798 WHIRLPOOL 81e2175a79d8592a6c801ea07350743e2b606d928e63e11a1642b0be195752073c0fb7187e2875a80f849481794c435bf1a053d5f0465c912e6a59746cf267c7
diff --git a/www-servers/boa/boa-0.94.14_rc21-r1.ebuild b/www-servers/boa/boa-0.94.14_rc21-r1.ebuild
new file mode 100644
index 000000000000..898373146388
--- /dev/null
+++ b/www-servers/boa/boa-0.94.14_rc21-r1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils systemd
+
+MY_P=${P/_/}
+DESCRIPTION="A very small and very fast http daemon"
+SRC_URI="http://www.boa.org/${MY_P}.tar.gz"
+HOMEPAGE="http://www.boa.org/"
+
+KEYWORDS="~amd64 ~mips ~ppc ~sparc ~x86"
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="doc"
+
+RDEPEND=""
+DEPEND="sys-devel/bison
+ sys-devel/flex
+ doc? ( virtual/latex-base )"
+
+S=${WORKDIR}/${MY_P}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-texi.patch
+ epatch "${FILESDIR}"/${P}-ENOSYS.patch
+}
+
+src_compile() {
+ default
+
+ use doc || sed -i -e '/^all:/s/boa.dvi //' docs/Makefile
+ emake docs
+}
+
+src_install() {
+ dosbin src/boa
+ doman docs/boa.8
+ doinfo docs/boa.info
+ if use doc; then
+ dodoc docs/boa.html
+ dodoc docs/boa_banner.png
+ dodoc docs/boa.dvi
+ fi
+
+ keepdir /var/log/boa
+ keepdir /var/www/localhost/htdocs
+ keepdir /var/www/localhost/cgi-bin
+ keepdir /var/www/localhost/icons
+
+ newinitd "${FILESDIR}"/boa.rc6 boa
+ newconfd "${FILESDIR}"/boa.conf.d boa
+
+ systemd_dounit "${FILESDIR}"/boa.service
+
+ exeinto /usr/lib/boa
+ doexe src/boa_indexer
+
+ insinto /etc/boa
+ doins "${FILESDIR}"/boa.conf
+ doins "${FILESDIR}"/mime.types
+}
diff --git a/www-servers/boa/files/boa-0.94.14_rc21-ENOSYS.patch b/www-servers/boa/files/boa-0.94.14_rc21-ENOSYS.patch
new file mode 100644
index 000000000000..35dc3d2493e7
--- /dev/null
+++ b/www-servers/boa/files/boa-0.94.14_rc21-ENOSYS.patch
@@ -0,0 +1,17 @@
+check for sendfile() returning ENOSYS and fall back to standard I/O.
+http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=330871
+
+diff -Naur boa-0.94.14rc21-orig/src/pipe.c boa-0.94.14rc21/src/pipe.c
+--- boa-0.94.14rc21-orig/src/pipe.c 2007-07-01 10:49:23.000000000 -0600
++++ boa-0.94.14rc21/src/pipe.c 2007-07-01 10:56:56.000000000 -0600
+@@ -215,7 +215,9 @@
+ }
+ req->ranges->start = sendfile_offset;
+ if (bytes_written < 0) {
+- if (errno == EWOULDBLOCK || errno == EAGAIN) {
++ if (errno == ENOSYS) {
++ return io_shuffle(req);
++ } else if (errno == EWOULDBLOCK || errno == EAGAIN) {
+ return -1; /* request blocked at the pipe level, but keep going */
+ } else if (errno == EINTR) {
+ goto retrysendfile;
diff --git a/www-servers/boa/files/boa-0.94.14_rc21-texi.patch b/www-servers/boa/files/boa-0.94.14_rc21-texi.patch
new file mode 100644
index 000000000000..68fcdfbe08e3
--- /dev/null
+++ b/www-servers/boa/files/boa-0.94.14_rc21-texi.patch
@@ -0,0 +1,14 @@
+--- docs/boa.texi.org 2003-02-02 06:02:22.000000000 +0100
++++ docs/boa.texi 2007-05-21 01:22:27.997819260 +0200
+@@ -33,10 +33,10 @@
+ @direntry
+ * Boa: (boa). The Boa Webserver
+ @end direntry
+-@end ifinfo
+
+ @comment node-name, next, previous, up
+ @node Top, Introduction, , (dir)
++@end ifinfo
+
+ Welcome to the documentation for Boa, a high performance
+ HTTP Server for UN*X-alike computers, covered by the
diff --git a/www-servers/boa/files/boa.conf b/www-servers/boa/files/boa.conf
new file mode 100644
index 000000000000..186fcfa8958b
--- /dev/null
+++ b/www-servers/boa/files/boa.conf
@@ -0,0 +1,187 @@
+# Boa v0.94 configuration file
+# File format has not changed from 0.93
+# File format has changed little from 0.92
+# version changes are noted in the comments
+#
+# The Boa configuration file is parsed with a lex/yacc or flex/bison
+# generated parser. If it reports an error, the line number will be
+# provided; it should be easy to spot. The syntax of each of these
+# rules is very simple, and they can occur in any order. Where possible
+# these directives mimic those of NCSA httpd 1.3; I saw no reason to
+# introduce gratuitous differences.
+
+# $Id$
+
+# The "ServerRoot" is not in this configuration file. It can be compiled
+# into the server (see defines.h) or specified on the command line with
+# the -c option, for example:
+#
+# boa -c /usr/local/boa
+
+
+# Port: The port Boa runs on. The default port for http servers is 80.
+# If it is less than 1024, the server must be started as root.
+
+Port 80
+
+# Listen: the Internet address to bind(2) to. If you leave it out,
+# it takes the behavior before 0.93.17.2, which is to bind to all
+# addresses (INADDR_ANY). You only get one "Listen" directive,
+# if you want service on multiple IP addresses, you have three choices:
+# 1. Run boa without a "Listen" directive
+# a. All addresses are treated the same; makes sense if the addresses
+# are localhost, ppp, and eth0.
+# b. Use the VirtualHost directive below to point requests to different
+# files. Should be good for a very large number of addresses (web
+# hosting clients).
+# 2. Run one copy of boa per IP address, each has its own configuration
+# with a "Listen" directive. No big deal up to a few tens of addresses.
+# Nice separation between clients.
+# The name you provide gets run through inet_aton(3), so you have to use dotted
+# quad notation. This configuration is too important to trust some DNS.
+
+#Listen 192.68.0.5
+
+# User: The name or UID the server should run as.
+# Group: The group name or GID the server should run as.
+
+User nobody
+Group nogroup
+
+# ServerAdmin: The email address where server problems should be sent.
+# Note: this is not currently used, except as an environment variable
+# for CGIs.
+
+#ServerAdmin root@localhost
+
+# ErrorLog: The location of the error log file. If this does not start
+# with /, it is considered relative to the server root.
+# Set to /dev/null if you don't want errors logged.
+# If unset, defaults to /dev/stderr
+
+ErrorLog /var/log/boa/error_log
+# Please NOTE: Sending the logs to a pipe ('|'), as shown below,
+# is somewhat experimental and might fail under heavy load.
+# "Usual libc implementations of printf will stall the whole
+# process if the receiving end of a pipe stops reading."
+#ErrorLog "|/usr/sbin/cronolog --symlink=/var/log/boa/error_log /var/log/boa/error-%Y%m%d.log"
+
+# AccessLog: The location of the access log file. If this does not
+# start with /, it is considered relative to the server root.
+# Comment out or set to /dev/null (less effective) to disable
+# Access logging.
+
+AccessLog /var/log/boa/access_log
+# Please NOTE: Sending the logs to a pipe ('|'), as shown below,
+# is somewhat experimental and might fail under heavy load.
+# "Usual libc implementations of printf will stall the whole
+# process if the receiving end of a pipe stops reading."
+#AccessLog "|/usr/sbin/cronolog --symlink=/var/log/boa/access_log /var/log/boa/access-%Y%m%d.log"
+
+# UseLocaltime: Logical switch. Uncomment to use localtime
+# instead of UTC time
+#UseLocaltime
+
+# VerboseCGILogs: this is just a logical switch.
+# It simply notes the start and stop times of cgis in the error log
+# Comment out to disable.
+
+#VerboseCGILogs
+
+# ServerName: the name of this server that should be sent back to
+# clients if different than that returned by gethostname + gethostbyname
+
+#ServerName www.your.org.here
+
+# VirtualHost: a logical switch.
+# Comment out to disable.
+# Given DocumentRoot /var/www, requests on interface 'A' or IP 'IP-A'
+# become /var/www/IP-A.
+# Example: http://localhost/ becomes /var/www/127.0.0.1
+#
+# Not used until version 0.93.17.2. This "feature" also breaks commonlog
+# output rules, it prepends the interface number to each access_log line.
+# You are expected to fix that problem with a postprocessing script.
+
+#VirtualHost
+
+# DocumentRoot: The root directory of the HTML documents.
+# Comment out to disable server non user files.
+
+DocumentRoot /var/www/localhost/htdocs
+
+# UserDir: The name of the directory which is appended onto a user's home
+# directory if a ~user request is recieved.
+
+UserDir public_html
+
+# DirectoryIndex: Name of the file to use as a pre-written HTML
+# directory index. Please MAKE AND USE THESE FILES. On the
+# fly creation of directory indexes can be _slow_.
+# Comment out to always use DirectoryMaker
+
+DirectoryIndex index.html
+
+# DirectoryMaker: Name of program used to create a directory listing.
+# Comment out to disable directory listings. If both this and
+# DirectoryIndex are commented out, accessing a directory will give
+# an error (though accessing files in the directory are still ok).
+
+DirectoryMaker /usr/lib/boa/boa_indexer
+
+# DirectoryCache: If DirectoryIndex doesn't exist, and DirectoryMaker
+# has been commented out, the the on-the-fly indexing of Boa can be used
+# to generate indexes of directories. Be warned that the output is
+# extremely minimal and can cause delays when slow disks are used.
+# Note: The DirectoryCache must be writable by the same user/group that
+# Boa runs as.
+
+# DirectoryCache /var/spool/boa/dircache
+
+# KeepAliveMax: Number of KeepAlive requests to allow per connection
+# Comment out, or set to 0 to disable keepalive processing
+
+KeepAliveMax 1000
+
+# KeepAliveTimeout: seconds to wait before keepalive connection times out
+
+KeepAliveTimeout 10
+
+# MimeTypes: This is the file that is used to generate mime type pairs
+# and Content-Type fields for boa.
+# Comment out to avoid loading mime.types (better use AddType!)
+
+MimeTypes /etc/boa/mime.types
+
+# DefaultType: MIME type used if the file extension is unknown, or there
+# is no file extension.
+
+DefaultType text/plain
+
+# AddType: adds types without editing mime.types
+# Example: AddType type extension [extension ...]
+
+# Uncomment the next line if you want .cgi files to execute from anywhere
+#AddType application/x-httpd-cgi cgi
+
+# Redirect, Alias, and ScriptAlias all have the same semantics -- they
+# match the beginning of a request and take appropriate action. Use
+# Redirect for other servers, Alias for the same server, and ScriptAlias
+# to enable directories for script execution.
+
+# Redirect allows you to tell clients about documents which used to exist in
+# your server's namespace, but do not anymore. This allows you to tell the
+# clients where to look for the relocated document.
+# Example: Redirect /bar http://elsewhere/feh/bar
+
+# Aliases: Aliases one path to another.
+# Example: Alias /path1/bar /path2/foo
+
+Alias /doc /usr/share/doc
+Alias /icons /var/www/localhost/icons
+
+# ScriptAlias: Maps a virtual path to a directory for serving scripts
+# Example: ScriptAlias /htbin/ /www/htbin/
+
+ScriptAlias /cgi-bin/ /var/www/localhost/cgi-bin/
+
diff --git a/www-servers/boa/files/boa.conf.d b/www-servers/boa/files/boa.conf.d
new file mode 100644
index 000000000000..5952e434dbc5
--- /dev/null
+++ b/www-servers/boa/files/boa.conf.d
@@ -0,0 +1,4 @@
+# config file for /etc/init.d/boa
+#
+# The only option allowed is '-c ServerRoot'
+BOA_OPTS="-c /etc/boa"
diff --git a/www-servers/boa/files/boa.rc6 b/www-servers/boa/files/boa.rc6
new file mode 100644
index 000000000000..3b480ce3636c
--- /dev/null
+++ b/www-servers/boa/files/boa.rc6
@@ -0,0 +1,38 @@
+#!/sbin/runscript
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# NB: Standard config is in /etc/boa/boa.conf
+# NB: Arguments to pass to boa are in /etc/conf.d/boa
+
+depend() {
+ need net
+}
+
+checkconfig() {
+ if [ -e /etc/conf.d/boa ] && [ -n "${BOA_OPTS}" ]; then
+ SR=`echo ${BOA_OPTS} | awk '{ FS = " " } { print $2 }'`
+ else
+ SR=/etc/boa
+ fi
+
+ if [ ! -e ${SR}/boa.conf ] ; then
+ eerror "You need a ${SR}/boa.conf to run Boa"
+ eerror "There is a sample file in /usr/share/docs/boa"
+ return 1
+ fi
+}
+
+start() {
+ checkconfig || return 1
+ ebegin "Starting Boa"
+ start-stop-daemon --quiet --start --exec /usr/sbin/boa -- ${BOA_OPTS}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping Boa"
+ start-stop-daemon --quiet --stop --name boa --exec /usr/sbin/boa
+ eend $?
+}
diff --git a/www-servers/boa/files/boa.service b/www-servers/boa/files/boa.service
new file mode 100644
index 000000000000..e4410d8e061f
--- /dev/null
+++ b/www-servers/boa/files/boa.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Boa web server
+After=network.target
+
+[Service]
+ExecStart=/usr/sbin/boa -d
+
+[Install]
+WantedBy=multi-user.target
diff --git a/www-servers/boa/files/mime.types b/www-servers/boa/files/mime.types
new file mode 100644
index 000000000000..53f6ea1011c8
--- /dev/null
+++ b/www-servers/boa/files/mime.types
@@ -0,0 +1,205 @@
+###############################################################################
+#
+# MIME-TYPES and the extensions that represent them
+#
+# This file is part of the "mime-support" package. Please send email (not a
+# bug report) to mime-support@packages.debian.org if you would like new types
+# and/or extensions to be added.
+#
+# Note: Compression schemes like "gzip", "bzip", and "compress" are not
+# actually "mime-types". They are "encodings" and hence must _not_ have
+# entries in this file to map their extensions. The "mime-type" of an
+# encoded file refers to the type of data that has been encoded, not the
+# type of the encoding.
+#
+###############################################################################
+
+
+application/activemessage
+application/andrew-inset
+application/applefile
+application/atomicmail
+application/cu-seeme csm cu
+application/dca-rft
+application/dec-dx
+application/dsptype tsp
+application/futuresplash spl
+application/ghostview
+application/mac-binhex40 hqx
+application/macwriteii
+application/msaccess mdb
+application/msword doc dot
+application/news-message-id
+application/news-transmission
+application/octet-stream bin
+application/oda oda
+application/pdf pdf
+application/pgp-signature pgp
+application/postscript ps ai eps
+application/remote-printing
+application/rtf rtf
+application/slate
+application/vnd.ms-excel xls xlb
+application/vnd.ms-powerpoint ppt pps pot
+application/vnd.wap.wmlc wmlc
+application/vnd.wap.wmlscriptc wmlsc
+application/wita
+application/wordperfect5.1 wp5
+application/zip zip
+application/x-123 wk
+application/x-bcpio bcpio
+application/x-chess-pgn pgn
+application/x-core
+application/x-cpio cpio
+application/x-csh
+application/x-debian-package deb
+application/x-director dcr dir dxr
+application/x-dms dms
+application/x-dvi dvi
+application/x-executable
+application/x-font pfa pfb gsf pcf pcf.Z
+application/x-gnumeric gnumeric
+application/x-gtar gtar tgz
+application/x-hdf hdf
+application/x-httpd-php phtml pht php
+application/x-httpd-php3 php3
+application/x-httpd-php3-source phps
+application/x-httpd-php3-preprocessed php3p
+application/x-httpd-php4 php4
+application/x-ica ica
+application/x-java class
+application/x-javascript js
+application/x-kdelnk
+application/x-kchart chrt
+application/x-killustrator kil
+application/x-kpresenter kpr kpt
+application/x-kspread ksp
+application/x-kword kwd kwt
+application/x-latex latex
+application/x-lha lha
+application/x-lzh lzh
+application/x-lzx lzx
+application/x-maker frm maker frame fm fb book fbdoc
+application/x-mif mif
+application/x-msdos-program com exe bat dll
+application/x-msi msi
+application/x-netcdf nc cdf
+application/x-ns-proxy-autoconfig pac
+application/x-object o
+application/x-ogg ogg
+application/x-oz-application oza
+application/x-perl pl pm
+application/x-redhat-package-manager rpm
+application/x-rx
+application/x-sh
+application/x-shar shar
+application/x-shellscript
+application/x-shockwave-flash swf swfl
+application/x-stuffit sit
+application/x-sv4cpio sv4cpio
+application/x-sv4crc sv4crc
+application/x-tar tar
+application/x-tcl
+application/x-tex
+application/x-tex-gf gf
+application/x-tex-pk pk PK
+application/x-texinfo texinfo texi
+application/x-trash ~ % bak old sik
+application/x-troff t tr roff
+application/x-troff-man man
+application/x-troff-me me
+application/x-troff-ms ms
+application/x-ustar ustar
+application/x-wais-source src
+application/x-wingz wz
+
+audio/basic au snd
+audio/midi mid midi
+audio/mpeg mpga mpega mp2 mp3
+audio/mpegurl m3u
+audio/prs.sid sid
+audio/x-aiff aif aiff aifc
+audio/x-gsm gsm
+audio/x-pn-realaudio ra rm ram
+audio/x-wav wav
+
+image/bitmap bmp
+image/gif gif
+image/ief ief
+image/jpeg jpeg jpg jpe
+image/pcx pcx
+image/png png
+image/tiff tiff tif
+image/vnd.wap.wbmp wbmp
+image/x-cmu-raster ras
+image/x-coreldraw cdr
+image/x-coreldrawpattern pat
+image/x-coreldrawtemplate cdt
+image/x-corelphotopaint cpt
+image/x-jng jng
+image/x-portable-anymap pnm
+image/x-portable-bitmap pbm
+image/x-portable-graymap pgm
+image/x-portable-pixmap ppm
+image/x-rgb rgb
+image/x-xbitmap xbm
+image/x-xpixmap xpm
+image/x-xwindowdump xwd
+
+inode/chardevice
+inode/blockdevice
+inode/directory-locked
+inode/directory
+inode/fifo
+inode/socket
+
+message/external-body
+message/news
+message/partial
+message/rfc822
+
+multipart/alternative
+multipart/appledouble
+multipart/digest
+multipart/mixed
+multipart/parallel
+
+text/comma-separated-values csv
+text/css css
+text/english
+text/html htm html xhtml
+text/mathml mml
+text/plain txt text diff
+text/richtext rtx
+text/tab-separated-values tsv
+text/vnd.wap.wml wml
+text/vnd.wap.wmlscript wmls
+text/xml xml
+text/x-c++hdr h++ hpp hxx hh
+text/x-c++src c++ cpp cxx cc
+text/x-chdr h
+text/x-crontab
+text/x-csh csh
+text/x-csrc c
+text/x-java java
+text/x-makefile
+text/x-moc moc
+text/x-pascal p pas
+text/x-setext etx
+text/x-sh sh
+text/x-tcl tcl tk
+text/x-tex tex ltx sty cls
+text/x-vcalendar vcs
+text/x-vcard vcf
+
+video/dl dl
+video/fli fli
+video/gl gl
+video/mpeg mpeg mpg mpe
+video/quicktime qt mov
+video/x-mng mng
+video/x-ms-asf asf asx
+video/x-msvideo avi
+video/x-sgi-movie movie
+
+x-world/x-vrml vrm vrml wrl
diff --git a/www-servers/boa/metadata.xml b/www-servers/boa/metadata.xml
new file mode 100644
index 000000000000..5cb9324943ab
--- /dev/null
+++ b/www-servers/boa/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+ </maintainer>
+</pkgmetadata>