Compare commits

..

1 Commits

Author SHA1 Message Date
Eelco Dolstra
4ff1c293d9 * GNU hello package added.
svn path=/nixpkgs/branches/logistics/; revision=397
2003-09-24 09:05:59 +00:00
1376 changed files with 2807 additions and 54468 deletions

31
COPYING
View File

@@ -1,31 +0,0 @@
Copyright (c) 2003-2006 Eelco Dolstra
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
======================================================================
Note: the license above does not apply to the packages built by the
Nix Packages collection, merely to the package descriptions (i.e., Nix
expressions, build scripts, etc.). Also, the license does not apply
to some of the binaries used for bootstrapping Nixpkgs (e.g.,
pkgs/stdenv/linux/tools/bash). It also might not apply to patches
included in Nixpkgs, which may be derivative works of the packages to
which they apply. The aforementioned artifacts are all covered by the
licenses of the respective packages.

12
ChangeLog Normal file
View File

@@ -0,0 +1,12 @@
2003-08-18 Eelco Visser <visser@cs.uu.nl>
* pkgs/strategoxt/pkg-build.sh: generic build script for packages
with the standard untar; bootstrap; configure; make; make install
interface. The script is parameterized with arguments for
configure. That is, all arguments are passed verbatim to
configure.
* asfix-tools, gpp, sc, srts, stratego-front, xtc: Fix expressions
and (trivial) build script for basic strategoxt packages. All
packages are abstracted on subversion revision.

1
STABLE
View File

@@ -1 +0,0 @@
1

View File

@@ -1 +0,0 @@
0.10

View File

@@ -1,27 +0,0 @@
XMLLINT = xmllint --catalogs
XSLTPROC = xsltproc --catalogs \
--param section.autolabel 1 \
--param section.label.includes.component.label 1 \
--param html.stylesheet \'style.css\' \
--param xref.with.number.and.title 1 \
--param toc.section.depth 3 \
--param admon.style \'\' \
--param callout.graphics.extension \'.gif\'
NEWS_OPTS = \
--stringparam generate.toc "article nop" \
--stringparam section.autolabel.max.depth 0 \
--stringparam header.rule 0
all: NEWS.html NEWS.txt
NEWS.html: release-notes.xml
$(XSLTPROC) --nonet --xinclude --output $@ $(NEWS_OPTS) \
$(docbookxsl)/html/docbook.xsl release-notes.xml
NEWS.txt: release-notes.xml
$(XSLTPROC) --nonet --xinclude quote-literals.xsl release-notes.xml | \
$(XSLTPROC) --nonet --output $@.tmp.html $(NEWS_OPTS) \
$(docbookxsl)/html/docbook.xsl -
LANG=en_US w3m -dump $@.tmp.html > $@
rm $@.tmp.html

View File

@@ -1,44 +0,0 @@
<?xml version="1.0"?>
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:str="http://exslt.org/strings"
extension-element-prefixes="str">
<xsl:output method="xml"/>
<xsl:template match="function|command|literal|varname|filename|option|quote">`<xsl:apply-templates/>'</xsl:template>
<xsl:template match="token"><xsl:text> </xsl:text><xsl:apply-templates /><xsl:text>
</xsl:text></xsl:template>
<xsl:template match="screen|programlisting">
<screen><xsl:apply-templates select="str:split(., '&#xA;')" /></screen>
</xsl:template>
<xsl:template match="section[following::section]">
<section>
<xsl:apply-templates />
<screen><xsl:text>
</xsl:text></screen>
</section>
</xsl:template>
<xsl:template match="*">
<xsl:element name="{name(.)}" namespace="{namespace-uri(.)}">
<xsl:copy-of select="namespace::*" />
<xsl:for-each select="@*">
<xsl:attribute name="{name(.)}" namespace="{namespace-uri(.)}">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:for-each>
<xsl:apply-templates/>
</xsl:element>
</xsl:template>
<xsl:template match="text()">
<xsl:value-of select="translate(., '‘’“”—', concat(&quot;`'&quot;, '&quot;&quot;-'))" />
</xsl:template>
</xsl:stylesheet>

View File

@@ -1,404 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<article xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Nixpkgs Release Notes</title>
<section><title>Release 0.10 (October 12, 2006)</title>
<note><para>This release of Nixpkgs requires <link
xlink:href='http://nix.cs.uu.nl/dist/nix/nix-0.10/'>Nix
0.10</link> or higher.</para></note>
<para>This release has the following improvements:</para>
<itemizedlist>
<listitem><para><filename>pkgs/system/all-packages-generic.nix</filename>
is gone, we now just have
<filename>pkgs/top-level/all-packages.nix</filename> that contains
all available packages. This should cause much less confusion with
users. <filename>all-packages.nix</filename> is a function that by
default returns packages for the current platform, but you can
override this by specifying a different <varname>system</varname>
argument.</para></listitem>
<listitem><para>Certain packages in Nixpkgs are now
user-configurable through a configuration file, i.e., without having
to edit the Nix expressions in Nixpkgs. For instance, the Firefox
provided in the Nixpkgs channel is built without the RealPlayer
plugin (for legal reasons). Previously, you could easily enable
RealPlayer support by editing the call to the Firefox function in
<filename>all-packages.nix</filename>, but such changes are not
respected when Firefox is subsequently updated through the Nixpkgs
channel.</para>
<para>The Nixpkgs configuration file (found in
<filename>~/.nixpkgs/config.nix</filename> or through the
<envar>NIXPKGS_CONFIG</envar> environment variable) is an attribute
set that contains configuration options that
<filename>all-packages.nix</filename> reads and uses for certain
packages. For instance, the following configuration file:
<programlisting>
{
firefox = {
enableRealPlayer = true;
};
}</programlisting>
persistently enables RealPlayer support in the Firefox
build.</para>
<para>(Actually, <literal>firefox.enableRealPlayer</literal> is the
<emphasis>only</emphasis> configuration option currently available,
but more are sure to be added.)</para></listitem>
<listitem><para>Support for new platforms:
<itemizedlist>
<listitem><para><literal>i686-cygwin</literal>, i.e., Windows
(using <link xlink:href="http://www.cygwin.com/">Cygwin</link>).
The standard environment on <literal>i686-cygwin</literal> by
default builds binaries for the Cygwin environment (i.e., it
uses Cygwin tools and produces executables that use the Cygwin
library). However, there is also a standard environment that
produces binaries that use <link
xlink:href="http://www.mingw.org/">MinGW</link>. You can use it
by calling <filename>all-package.nix</filename> with the
<varname>stdenvType</varname> argument set to
<literal>"i686-mingw"</literal>.</para></listitem>
<listitem><para><literal>i686-darwin</literal>, i.e., Mac OS X
on Intel CPUs.</para></listitem>
<listitem><para><literal>powerpc-linux</literal>.</para></listitem>
<listitem><para><literal>x86_64-linux</literal>, i.e., Linux on
64-bit AMD/Intel CPUs. Unlike <literal>i686-linux</literal>,
this platform doesnt have a pure <literal>stdenv</literal>
yet.</para></listitem>
</itemizedlist>
</para>
</listitem>
<listitem><para>The default compiler is now GCC 4.1.1.</para></listitem>
<listitem><para>X11 updated to X.orgs X11R7.1.</para></listitem>
<listitem><para>Notable new packages:
<itemizedlist>
<listitem><para>Opera.</para></listitem>
<listitem><para>Microsoft Visual C++ 2005 Express Edition and
the Windows SDK.</para></listitem>
</itemizedlist>
In total there are now around 809 packages in Nixpkgs.</para>
</listitem>
<listitem><para>It is now <emphasis>much</emphasis> easier to
override the default C compiler and other tools in
<literal>stdenv</literal> for specific packages.
<filename>all-packages.nix</filename> provides two utility
functions for this purpose: <function>overrideGCC</function> and
<function>overrideInStdenv</function>. Both take a
<literal>stdenv</literal> and return an augmented
<literal>stdenv</literal>; the formed changes the C compiler, and
the latter adds additional packages to the front of
<literal>stdenv</literal>s initial <envar>PATH</envar>, allowing
tools to be overriden.</para>
<para>For instance, the package <varname>strategoxt</varname>
doesnt build with the GNU Make in <literal>stdenv</literal>
(version 3.81), so we call it with an augmented
<literal>stdenv</literal> that uses GNU Make 3.80:
<programlisting>
strategoxt = (import ../development/compilers/strategoxt) {
inherit fetchurl pkgconfig sdf aterm;
stdenv = overrideInStdenv stdenv [gnumake380];
};
gnumake380 = <replaceable>...</replaceable>;</programlisting>
Likewise, there are many packages that dont compile with the
default GCC (4.1.1), but thats easily fixed:
<programlisting>
exult = import ../games/exult {
inherit fetchurl SDL SDL_mixer zlib libpng unzip;
stdenv = overrideGCC stdenv gcc34;
};</programlisting>
</para></listitem>
<listitem><para>It has also become much easier to experiment with
changes to the <literal>stdenv</literal> setup script (which notably
contains the generic builder). Since edits to
<filename>pkgs/stdenv/generic/setup.sh</filename> trigger a rebuild
of <emphasis>everything</emphasis>, this was formerly quite painful.
But now <literal>stdenv</literal> contains a function to
“regenerate” <literal>stdenv</literal> with a different setup
script, allowing the use of a different setup script for specific
packages:
<programlisting>
pkg = import <replaceable>...</replaceable> {
stdenv = stdenv.regenerate ./my-setup.sh;
<replaceable>...</replaceable>
}</programlisting>
</para></listitem>
<listitem><para>Packages can now have a human-readable
<emphasis>description</emphasis> field. Package descriptions are
shown by <literal>nix-env -qa --description</literal>. In addition,
theyre shown on the Nixpkgs release page. A description can be
added to a package as follows:
<programlisting>
stdenv.mkDerivation {
name = "exult-1.2";
<replaceable>...</replaceable>
meta = {
description = "A reimplementation of the Ultima VII game engine";
};
}</programlisting>
The <varname>meta</varname> attribute is not passed to the builder,
so changes to the description do not trigger a rebuild. Additional
<varname>meta</varname> attributes may be defined in the future
(such as the URL of the packages homepage, the license,
etc.).</para></listitem>
</itemizedlist>
<para>The following people contributed to this release:
Andres Löh,
Armijn Hemel,
Christof Douma,
Eelco Dolstra,
Eelco Visser,
Mart Kolthof,
Martin Bravenboer,
Merijn de Jonge,
Rob Vermaas and
Roy van den Broek.
</para>
</section>
<section><title>Release 0.9 (January 31, 2006)</title>
<para>There have been zillions of changes since the last release of
Nixpkgs. Many packages have been added or updated. The following are
some of the more notable changes:</para>
<itemizedlist>
<listitem><para>Distribution files have been moved to <link
xlink:href="http://nix.cs.uu.nl/" />.</para></listitem>
<listitem><para>The C library on Linux, Glibc, has been updated to
version 2.3.6.</para></listitem>
<listitem><para>The default compiler is now GCC 3.4.5. GCC 4.0.2 is
also available.</para></listitem>
<listitem><para>The old, unofficial Xlibs has been replaced by the
official modularised X11 distribution from X.org, i.e., X11R7.0.
X11R7.0 consists of 287 (!) packages, all of which are in Nixpkgs
though not all have been tested. It is now possible to build a
working X server (previously we only had X client libraries). We
use a fully Nixified X server on NixOS.</para></listitem>
<listitem><para>The Sun JDK 5 has been purified, i.e., it doesnt
require any non-Nix components such as
<filename>/lib/ld-linux.so.2</filename>. This means that Java
applications such as Eclipse and Azureus can run on
NixOS.</para></listitem>
<listitem><para>Hardware-accelerated OpenGL support, used by games
like Quake 3 (which is now built from source).</para></listitem>
<listitem><para>Improved support for FreeBSD on
x86.</para></listitem>
<listitem><para>Improved Haskell support; e.g., the GHC build is now
pure.</para></listitem>
<listitem><para>Some support for cross-compilation: cross-compiling
builds of GCC and Binutils, and cross-compiled builds of the C
library uClibc.</para></listitem>
<listitem><para>Notable new packages:
<itemizedlist>
<listitem><para>teTeX, including support for building LaTeX
documents using Nix (with automatic dependency
determination).</para></listitem>
<listitem><para>Ruby.</para></listitem>
<listitem><para>System-level packages to support NixOS,
e.g. Grub, GNU <literal>parted</literal> and so
on.</para></listitem>
<listitem><para><literal>ecj</literal>, the Eclipse Compiler for
Java, so we finally have a freely distributable compiler that
supports Java 5.0.</para></listitem>
<listitem><para><literal>php</literal>.</para></listitem>
<listitem><para>The GIMP.</para></listitem>
<listitem><para>Inkscape.</para></listitem>
<listitem><para>GAIM.</para></listitem>
<listitem><para><literal>kdelibs</literal>. This allows us to
add KDE-based packages (such as
<literal>kcachegrind</literal>).</para></listitem>
</itemizedlist>
</para></listitem>
</itemizedlist>
<para>The following people contributed to this release:
Andres Löh,
Armijn Hemel,
Bogdan Dumitriu,
Christof Douma,
Eelco Dolstra,
Eelco Visser,
Mart Kolthof,
Martin Bravenboer,
Rob Vermaas and
Roy van den Broek.
</para>
</section>
<section><title>Release 0.8 (April 11, 2005)</title>
<para>This release is mostly to remain synchronised with the changed
hashing scheme in Nix 0.8.</para>
<para>Notable updates:
<itemizedlist>
<listitem><para>Adobe Reader 7.0</para></listitem>
<listitem><para>Various security updates (zlib 1.2.2, etc.)</para></listitem>
</itemizedlist>
</para>
</section>
<section><title>Release 0.7 (March 14, 2005)</title>
<itemizedlist>
<listitem>
<para>The bootstrap process for the standard build
environment on Linux (stdenv-linux) has been improved. It is no
longer dependent in its initial bootstrap stages on the system
Glibc, GCC, and other tools. Rather, Nixpkgs contains a statically
linked bash and curl, and uses that to download other statically
linked tools. These are then used to build a Glibc and dynamically
linked versions of all other tools.</para>
<para>This change also makes the bootstrap process faster. For
instance, GCC is built only once instead of three times.</para>
<para>(Contributed by Armijn Hemel.)</para>
</listitem>
<listitem>
<para>Tarballs used by Nixpkgs are now obtained from the same server
that hosts Nixpkgs (<link
xlink:href="http://catamaran.labs.cs.uu.nl/" />). This reduces the
risk of packages being unbuildable due to moved or deleted files on
various servers.</para>
</listitem>
<listitem>
<para>There now is a generic mechanism for building Perl modules.
See the various Perl modules defined in
pkgs/system/all-packages-generic.nix.</para>
</listitem>
<listitem>
<para>Notable new packages:
<itemizedlist>
<listitem><para>Qt 3</para></listitem>
<listitem><para>MySQL</para></listitem>
<listitem><para>MythTV</para></listitem>
<listitem><para>Mono</para></listitem>
<listitem><para>MonoDevelop (alpha)</para></listitem>
<listitem><para>Xine</para></listitem>
</itemizedlist>
</para>
</listitem>
<listitem>
<para>Notable updates:
<itemizedlist>
<listitem><para>GCC 3.4.3</para></listitem>
<listitem><para>Glibc 2.3.4</para></listitem>
<listitem><para>GTK 2.6</para></listitem>
</itemizedlist>
</para>
</listitem>
</itemizedlist>
</section>
</article>

View File

@@ -1,283 +0,0 @@
/* Copied from http://bakefile.sourceforge.net/, which appears
licensed under the GNU GPL. */
/***************************************************************************
Basic headers and text:
***************************************************************************/
body
{
font-family: sans-serif;
background: white;
margin: 2em 1em 2em 1em;
}
h1,h2,h3
{
color: #005aa0;
text-align: left;
}
h1 /* title */
{
font-size: 200%;
}
h2 /* chapters, appendices, subtitle */
{
font-size: 180%;
}
/* Extra space between chapters, appendices. */
div.chapter > div.titlepage h2, div.appendix > div.titlepage h2
{
margin-top: 1.5em;
}
div.section > div.titlepage h2 /* sections */
{
font-size: 150%;
margin-top: 1.5em;
}
h3 /* subsections */
{
font-size: 125%;
}
div.appendix h3
{
font-size: 150%;
margin-top: 1.5em;
}
div.refnamediv h2, div.refsynopsisdiv h2, div.refsection h2 /* refentry parts */
{
margin-top: 1.4em;
font-size: 125%;
}
div.refsection h3
{
font-size: 110%;
}
/***************************************************************************
Examples:
***************************************************************************/
div.example
{
border: 1px solid #6185a0;
padding: 6px 6px;
margin-left: 1.5em;
margin-right: 1.5em;
background: #f4f4f8;
}
div.example p.title
{
margin-top: 0em;
}
/***************************************************************************
Screen dumps:
***************************************************************************/
pre.screen, pre.programlisting
{
border: 1px solid #6185a0;
padding: 3px 3px;
margin-left: 1.5em;
margin-right: 1.5em;
color: #600000;
background: #f4f4f8;
font-family: monospace;
/* font-size: 90%; */
}
div.example pre.programlisting
{
border: 0px;
padding: 0 0;
margin: 0 0 0 0;
}
/***************************************************************************
Notes, warnings etc:
***************************************************************************/
.note, .warning
{
border: 1px solid #6185a0;
padding: 3px 3px;
margin-left: 1.5em;
margin-right: 1.5em;
margin-bottom: 1em;
padding: 0.3em 0.3em 0.3em 0.3em;
background: #fffff5;
}
div.note, div.warning
{
font-style: italic;
}
div.note h3, div.warning h3
{
color: red;
font-size: 100%;
// margin: 0 0 0 0;
padding-right: 0.5em;
display: inline;
}
div.note p, div.warning p
{
margin-bottom: 0em;
}
div.note h3 + p, div.warning h3 + p
{
display: inline;
}
div.note h3
{
color: blue;
font-size: 100%;
}
div.navfooter *
{
font-size: 90%;
}
/***************************************************************************
Links colors and highlighting:
***************************************************************************/
a:link { color: #0048b3; }
a:visited { color: #002a6a; }
a:hover { background: #ffffcd; }
/***************************************************************************
Table of contents:
***************************************************************************/
.toc
{
font-size: 90%;
}
/***************************************************************************
Special elements:
***************************************************************************/
tt, code
{
color: #400000;
}
.term
{
font-weight: bold;
}
div.variablelist dd p, div.glosslist dd p
{
margin-top: 0em;
}
div.variablelist dd, div.glosslist dd
{
margin-left: 1.5em;
}
div.glosslist dt
{
font-style: italic;
}
.default
{
font-style: italic;
}
.availability
{
font-style: italic;
}
.varname
{
color: #400000;
}
div.informaltable table
{
border: 1px solid #6185a0;
width: 100%;
}
div.informaltable td
{
border: 0;
padding: 5px;
}
div.informaltable td.default
{
text-align: right;
}
div.informaltable th
{
text-align: left;
color: #005aa0;
border: 0;
padding: 5px;
background: #fffff5;
font-weight: normal;
font-style: italic;
}
td.varname, td.tagname, td.paramname
{
font-weight: bold;
vertical-align: top;
}
div.epigraph
{
font-style: italic;
text-align: right;
}
table.productionset table.productionset
{
font-family: monospace;
}
strong.command
{
// font-family: monospace;
// font-style: italic;
// font-weight: normal;
color: #400000;
}
div.calloutlist td
{
padding-bottom: 1em;
}

View File

@@ -1,62 +0,0 @@
* If NIX_DEBUG is turned on (set to "1"), autoconf configure scripts
may fail to find the correct preprocessor:
checking how to run the C preprocessor... /lib/cpp
* When building gcc using a Nix gcc, generated libraries link against
the libraries of the latter:
$ ldd /nix/store/3b1d3995c4edbf026be5c73f66f69245-gcc-3.3.3/lib/libstdc++.so
...
libgcc_s.so.1 => /nix/store/1f19e61d1b7051f1131f78b41b2a0e7e-gcc-3.3.2/lib/libgcc_s.so.1 (0x400de000)
(wrong! should be .../3b1d.../lib/libgcc_s...)
...
* In libXt:
/bin/sh ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I. -DXTHREADS -DXUSE_MTSAFE_API -I/nix/store/aadf0bd4a908da11d14f6538503b8408-libX11-6.2.1/include -I/nix/store/ba366e3b944ead64ec9b0490bb615874-xproto-6.6.1/include -I./include/X11 -g -O2 -c -o ActionHook.lo `test -f 'ActionHook.c' || echo './'`ActionHook.c
mkdir .libs
gcc -DHAVE_CONFIG_H -I. -I. -I. -DXTHREADS -DXUSE_MTSAFE_API -I/nix/store/aadf0bd4a908da11d14f6538503b8408-libX11-6.2.1/include -I/nix/store/ba366e3b944ead64ec9b0490bb615874-xproto-6.6.1/include -I./include/X11 -g -O2 -c ActionHook.c -fPIC -DPIC -o .libs/ActionHook.o
In file included from IntrinsicI.h:55,
from ActionHook.c:69:
include/X11/IntrinsicP.h:54:27: X11/Intrinsic.h: No such file or directory
* Then:
gcc -DHAVE_CONFIG_H -I. -I. -I. -DXTHREADS -DXUSE_MTSAFE_API -I/nix/store/aadf0bd4a908da11d14f6538503b8408-libX11-6.2.1/include -I/nix/store/ba366e3b944ead64ec9b0490bb615874-xproto-6.6.1/include -I./include -I./include/X11 -g -O2 -c ActionHook.c -fPIC -DPIC -o .libs/ActionHook.o
In file included from IntrinsicI.h:55,
from ActionHook.c:69:
include/X11/IntrinsicP.h:202:25: X11/ObjectP.h: No such file or directory
(moved to include/X11; should edit include/Makefile.am)
* `ld' on Mac OS X barfs if the timestamp on static libraries has
changed (which happens if they are installed through a substitute).
Typical error:
/usr/bin/ld: table of contents for archive: libATerm.a is out of
date; rerun ranlib(1) (can't load from it)
Solution: patch ld.
Non-solution: extend NAR file format to include timestamps. We
don't want that because they introduce a source of non-determinism.
To catch problems like this one determistically, we should change
the timestamp on store objects to 0.
* In gtksourceview-sharp: does the prefix patch cause problems (e.g.,
makefile.am says "mimeinfodir should be the same as the gnome
prefix")?
* fgrep/egrep: these fail if grep is not in the $PATH.
* teTeX: some programs (such as epstopdf) depend on /usr/bin/env, and
expect perl to be in the environment.

View File

@@ -1,116 +0,0 @@
* Classification scheme for packages
- many packages fall under several categories; what matters is the
*primary* purpose of a package. For example, the libxml2 package
builds both a library and some tools; but it's a library foremost,
so it goes under ./development/libraries.
- when in doubt, refactor.
IF it's used to support SOFTWARE DEVELOPMENT:
IF it's a LIBRARY used by other packages:
IF it's directly related to GTK:
./development/libraries/gtk+
ELSE
./development/libraries
(e.g., libxml2)
ELSE IF it's a COMPILER:
./development/compilers
(e.g., gcc)
ELSE IF it's an INTERPRETER:
./development/interpreters
ELSE IF it's a development TOOL (or set of):
IF it's a PARSER GENERATOR (incl. lexers):
./development/tools/parsing
(e.g., bison, flex)
ELSE IF it's a BUILD MANAGER:
./development/tools/build-managers
(e.g., gnumake
ELSE
./development/tools/misc
(e.g., binutils)
ELSE
./development/misc
ELSE IF it's a TOOL (or set of):
# a tool is a relatively *small* program, esp. one intented to be
# used non-interactively
IF it's for NETWORKING:
./tools/networking
(e.g., wget)
ELSE IF it's for TEXT PROCESSING:
./tools/text
(e.g., diffutils)
ELSE IF it's a SYSTEM utility, i.e., something related or essential
to the operation of a system:
./tools/system
(e.g., init)
ELSE IF it's an ARCHIVER (which may include a compression function):
./tools/archivers
(e.g., zip, tar)
ELSE IF it's a COMPRESSION program:
./tools/compression
(e.g., gzip, bzip2)
ELSE IF it's a SECURITY program:
./tools/security
(e.g., nmap, gnupg)
ELSE
./tools/misc
ELSE IF it's a SHELL:
./shells
ELSE IF it's a SERVER:
IF it's a HTTP server:
./servers/http
(e.g., apache)
IF it's a X11 server:
./servers/x11
(e.g., xfree86)
ELSE
./servers/misc
ELSE IF it's a DESKTOP ENVIRONMENT (incl. WINDOW MANAGERS):
./desktops
(e.g., kde, gnome, fvwm)
ELSE IF it's an APPLICATION:
# a (typically large) program with a distinct user interface,
# primarily used interactively
IF it's a VERSION MANAGEMENT system:
./applications/version-management
ELSE IF it's for VIDEO playback/etc:
./applications/video
ELSE IF it's for GRAPHICS viewing/editing/etc:
./applications/graphics
ELSE IF it's for NETWORKING:
IF it's a MAILREADER:
./applications/networking/mailreaders
IF it's a NEWSREADER:
./applications/networking/newsreaders
ELSE
./applications/networking/misc
ELSE
./applications/misc
ELSE IF it's DATA (i.e., does not have a straight-forward executable semantics):
IF it's related to SGML/XML processing:
IF it's a XML DTD:
./data/sgml+xml/schemas/xml-dtd
ELSE IF it's an XSLT stylesheet (okay, these are executable...):
./data/sgml+xml/stylesheets/xslt
ELSE IF it's a GAME:
./games
ELSE:
./misc

View File

@@ -1,31 +0,0 @@
Creating a new static stdenv
----------------------------
When Nix is ported to a new (Linux) platform and you want to have a completely
pure setup for the stdenv (for example for NixOS) it is necessary to rebuild
the static tools.
The challenge is that there is no Nix environment yet, for bootstrapping.
The first task is to create all the tools that are necessary. For most tools
there are ready made Nix expressions.
GCC
There is an expression gcc-static-3.4. Depending on whether or not you already
have an environment built with Nix (x86-linux: yes, rest: not yet) you should
set the noSysDirs parameter in all-packages.nix. If there is an environment,
leave it, but if the system is still impure (like most systems), set noSysDirs
to false.
bash
There is an expression for bash-static. Simply build it.
bzip2
There is an expression for bzip2-static. Simply build it.
findutils
There is an expression for findutils-static. Simply build it.

View File

@@ -1,331 +0,0 @@
Setting up a cross compiler with Nix
"Cross compilation" means compiling a program on one machine for another
type of machine. A typical use of cross compilation is to compile programs
for embedded devices. These devices often don't have the computing power
and memory to compile programs natively.
For a fully working cross compiler the following are needed:
* cross binutils: assembler, archiver, linker, etcetera that understand
the format of the target system
* cross compiler: a compiler that can generate binary code and object files
for the target platform
* cross C library: a library to link object files with to create fully
functional programs
Cross compilers are difficult to set up. A lot of people report that they
cannot succeed in building a cross toolchain successfully. The answers
usually consist of "download this pre-built toolchain", which is equally
unhelpful.
A toolchain is set up in five steps:
1. build binutils to that can run on the host platform, but generate code
for the target platform
2. build Linux kernel headers for the target platform
3. build a minimal C only version of GCC, that can run on the host platform
and generate code for the target platform
4. build a C library for the target platform. This includes the dynamic
linker, C library, etc.
5. build a full GCC
****
NB:
Keep in mind that many programs are not very well suited for cross
compilation. Either they are not intended to run on other platforms,
because the code is highly platform specific, or the configuration proces
is not written with cross compilation in mind.
Nix will not solve these problems for you!
***
This document describes to set up a cross compiler to generate code for
arm-linux with uClibc and runs on i686-linux. The "stdenv" used is the
default from the standard Nix packages collection.
Step 1: build binutils for arm-linux in the stdenv for i686-linux
---
{stdenv, fetchurl, noSysDirs}:
stdenv.mkDerivation {
name = "binutils-2.16.1-arm";
builder = ./builder.sh;
src = fetchurl {
url = http://ftp.nluug.nl/gnu/binutils/binutils-2.16.1.tar.bz2;
md5 = "6a9d529efb285071dad10e1f3d2b2967";
};
inherit noSysDirs;
configureFlags = "--target=arm-linux";
}
---
This will compile binutils that will run on i686-linux, but knows the
format used by arm-linux.
Step 2: build kernel headers for the target architecture
default.nix for kernel-headers-arm:
---
{stdenv, fetchurl}:
assert stdenv.system == "i686-linux";
stdenv.mkDerivation {
name = "linux-headers-2.6.13.4-arm";
builder = ./builder.sh;
src = fetchurl {
url = http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.13.4.tar.bz2;
md5 = "94768d7eef90a9d8174639b2a7d3f58d";
};
}
---
builder.sh for kernel-headers-arm:
---
source $stdenv/setup
buildPhase() {
make include/linux/version.h
}
buildPhase=buildPhase
installPhase() {
mkdir $out
mkdir $out/include
#cd $out/include
#ln -s asm-arm asm
make include/asm ARCH=arm
cp -prvd include/linux include/asm include/asm-arm include/asm-generic $out/include
echo -n > $out/include/linux/autoconf.h
}
installPhase=installPhase
genericBuild
---
Step 3: build a minimal GCC
Extra/different parameters include the target platform and the kernel
headers argument (this needs a major cleanup, as well as the name, it
needs to be different!). Profiled compilers are disabled. The tarball
used here is just gcc-core. For some reason it doesn't install nicely
if the whole tarball is used (or is this some braino on my side? -- AH).
Only C is used, because for other languages (such as C++) extra libraries
need to be compiled, for which libraries compiled for the target system
are needed.
There is a bit of evilness going on. The cross compiled utilities need
to be either copied to or be linked from the output tree of the compiler.
(Is this really true? Back this up with arguments! -- AH)
Symbolic links are not something we want inside the Nix store.
---
{ stdenv, fetchurl, noSysDirs
, langC ? true, langCC ? true, langF77 ? false
, profiledCompiler ? false
, binutilsArm
, kernelHeadersArm
}:
assert langC;
stdenv.mkDerivation {
name = "gcc-4.0.2-arm";
builder = ./builder.sh;
src = fetchurl {
url = ftp://ftp.nluug.nl/pub/gnu/gcc/gcc-4.0.2/gcc-core-4.0.2.tar.bz2;
md5 = "f7781398ada62ba255486673e6274b26";
#url = ftp://ftp.nluug.nl/pub/gnu/gcc/gcc-4.0.2/gcc-4.0.2.tar.bz2;
#md5 = "a659b8388cac9db2b13e056e574ceeb0";
};
# !!! apply only if noSysDirs is set
patches = [./no-sys-dirs.patch ./gcc-inhibit.patch];
inherit noSysDirs langC langCC langF77 profiledCompiler;
buildInputs = [binutilsArm];
inherit kernelHeadersArm binutilsArm;
platform = "arm-linux";
}
---
The builder.sh for a cross-compiler. Note that the binutils are prefixed
with the architecture name, so arm-linux-ld instead of ld, etc. This is
necessary because when we cross-compile a lot of programs look for these
tools with these specific names. The standard gcc-wrapper does not take this
into account yet.
---
source $stdenv/setup
export NIX_FIXINC_DUMMY=$NIX_BUILD_TOP/dummy
mkdir $NIX_FIXINC_DUMMY
if test "$noSysDirs" = "1"; then
if test "$noSysDirs" = "1"; then
# Figure out what extra flags to pass to the gcc compilers
# being generated to make sure that they use our glibc.
if test -e $NIX_GCC/nix-support/orig-glibc; then
glibc=$(cat $NIX_GCC/nix-support/orig-glibc)
# Ugh. Copied from gcc-wrapper/builder.sh. We can't just
# source in $NIX_GCC/nix-support/add-flags, since that
# would cause *this* GCC to be linked against the
# *previous* GCC. Need some more modularity there.
extraCFlags="-B$glibc/lib -isystem $glibc/include"
extraLDFlags="-B$glibc/lib -L$glibc/lib -Wl,-s \
-Wl,-dynamic-linker,$glibc/lib/ld-linux.so.2"
# Oh, what a hack. I should be shot for this.
# In stage 1, we should link against the previous GCC, but
# not afterwards. Otherwise we retain a dependency.
# However, ld-wrapper, which adds the linker flags for the
# previous GCC, is also used in stage 2/3. We can prevent
# it from adding them by NIX_GLIBC_FLAGS_SET, but then
# gcc-wrapper will also not add them, thereby causing
# stage 1 to fail. So we use a trick to only set the
# flags in gcc-wrapper.
hook=$(pwd)/ld-wrapper-hook
echo "NIX_GLIBC_FLAGS_SET=1" > $hook
export NIX_LD_WRAPPER_START_HOOK=$hook
fi
export NIX_EXTRA_CFLAGS=$extraCFlags
export NIX_EXTRA_LDFLAGS=$extraLDFlags
export CFLAGS=$extraCFlags
export CXXFLAGS=$extraCFlags
export LDFLAGS=$extraLDFlags
fi
else
patches=""
fi
preConfigure=preConfigure
preConfigure() {
# Determine the frontends to build.
langs="c"
if test -n "$langCC"; then
langs="$langs,c++"
fi
if test -n "$langF77"; then
langs="$langs,f77"
fi
# Cross compiler evilness
ensureDir $out
ensureDir $out/arm-linux
ensureDir $out/arm-linux/bin
ln -s $binutilsArm/arm-linux/bin/as $out/arm-linux/bin/as
ln -s $binutilsArm/arm-linux/bin/ld $out/arm-linux/bin/ld
ln -s $binutilsArm/arm-linux/bin/ar $out/arm-linux/bin/ar
ln -s $binutilsArm/arm-linux/bin/ranlib $out/arm-linux/bin/ranlib
# Perform the build in a different directory.
mkdir ../build
cd ../build
configureScript=../$sourceRoot/configure
configureFlags="--enable-languages=$langs --target=$platform --disable-threads --disable-libmudflap --disable-shared --with-headers=$kernelHeadersArm/include --disable-multilib"
}
postInstall=postInstall
postInstall() {
# Remove precompiled headers for now. They are very big and
# probably not very useful yet.
find $out/include -name "*.gch" -exec rm -rf {} \; -prune
# Remove `fixincl' to prevent a retained dependency on the
# previous gcc.
rm -rf $out/libexec/gcc/*/*/install-tools
}
#if test -z "$profiledCompiler"; then
#makeFlags="bootstrap"
#else
#makeFlags="profiledbootstrap"
#fi
genericBuild
---
Step 4: build a C library for the target platform.
The previous steps are enough to compile a C library. In our case we take
uClibc. It's intended to be a small sized replacement for glibc. It is widely
used in embedded environments.
...
Step 5: Build a compiler to link with the newly built C library.
...
If we restrict the compiler to just C programs it is relatively easy,
since we only need to wrap the GCC we built in the previous step with all
the right tools and the right C library. Successfully compiled programs with
this compiler and verified to be working on a HP Jornada 820 running Linux
are "patch", "make" and "wget".
If we want to build C++ programs it gets a lot more difficult. GCC has a
three step compilation proces. In the first step a simple compiler, called
xgcc, that can compile only C programs is built. With that compiler it
compiles itself two more times: one time to build a full compiler, and another
time to build a full compiler once again with the freshly built compiler from
step 2. In the second and third step support for C++ is compiled, if this
is configured.
One of the libraries that has to be built for C++ support step is libstdc++.
This library uses xgcc, even when cross compiling, since libstdc++ has to be
compiled for arm-linux.
One of the compiler flags that GCC uses for this compiler is called X_CFLAGS.
This is used by the Nix build process to set the dynamic linker, glibc
in the case of i686-linux using the default Nix packages collection.
Obiously, since we need to compile libstc++ for arm-linux with uClibc linking
will not be done correctly: you can't link object files built for arm-linux
with a glibc built for i686-linux.
Setting X_CFLAGS to use the uClibc libraries and dynamic linker will fail
too. Earlier on in the build process these flags are used to compile important
files like libgcc.a by the host system gcc, which does need to be linked
to glibc. To make this work correctly you will need to carefully juggle
with compilation flags. This is still work in progress for Nix.
---
After succesfully completing the whole toolchain you can start building
packages with the newly built tools. To make everything build correctly
you will need a stdenv for your target platform. Setting up this platform
will take some effort. Right now there is a very experimental setup for
arm-linux, which needs to be cleaned up before it is production ready.
Please note that many packages are not well suited for cross-compilation.
Even though the package itself might be very well portable often the
buildscripts are not. One thing that we have seen that causes frequent
build failures is the use of the LD variable. This is often set to 'ld'
and not $(CROSS)-ld.

View File

@@ -1,35 +0,0 @@
Upgrading the standard initial environment
For Nix on i686-linux we make use of an environment of statically linked
tools (see $nixpkgs/stdenv/linux). The first version of these tools were
compiled outside of Nix, in an impure environment. They are used as some
magical ingredient to make everything work. To keep these tools more in
synchronization with the rest of nixpkgs and to make porting of nixpkgs
to other platforms easier the static versions are now also built with Nix
and nixpkgs.
The tools can be found in nixpkgs in:
- shells/bash-static
- tools/networking/curl-diet
- tools/archivers/gnutar-diet
- tools/compression/gzip-diet
- tools/compression/bzip2-static
- tools/text/gnused-diet
- tools/text/diffutils-diet
- tools/text/gnupatch-diet
- tools/misc/findutils-static
and
- development/compilers/gcc-static-3.4
Most packages are compiled with dietlibc, an alternate C library, apart
from bash and findutils, which are statically linked to glibc. The reason
we chose dietlibc has various reasons. First of all, curl cannot be built
statically with glibc. If we do, we get a static binary, but it cannot resolve
hostnames to IP addresses. glibc dynamically loads functionality at runtime
to do resolving. When linking with dietlibc this doesn't happen.
The static tools are not used as part of the input hashing (see Eelco's
PhD thesis, paragraph 5.4.1), so changing them does not change anything and
will not force a massive rebuild.

View File

@@ -1,16 +0,0 @@
* Patch development/tools/misc/libtool not to search standard
directories for libraries (like setup.sh does now). [do we want
this?]
* In setup.sh: add configureFlagsArray or something
* Inform freedesktop people that Xaw requires Xpm.
* After building gcc, filter out references to /tmp/nix... in
.../lib/libsupc++.la and .../lib/libstdc++.la
* Add gettext to glib propagatedBuildInputs? Glib's `gi18n.h' doesn't
seem to like Glibc `libintl.h'; needs the gettext one instead.
[Move from libbonoboui]
* Fix the bzip2 build generically.

View File

@@ -1,27 +0,0 @@
Adding uClibc support for a new platform
Sometimes you want to cross-compile to another architecture, for example an
embedded devices. For embedded devices the uClibc C library is popular.
In Nixpkgs there is support for uClibc for several architectures but not
everything is supported.
Adding support is not very difficult,
* Add your architecture to the buildfiles in
$nixpkgs/development/tools/misc/binutils-cross
* Add your architecture to the buildfiles in
$nixpkgs/development/compilers/gcc-4.0-cross
* Add your architecture to the buildfiles in
$nixpkgs/os-specific/linux/kernel-headers-cross
* Add your architecture to the buildfiles in
$nixpkgs/development/uclibc
In the latter directory you will also need a configuration file for uClibc.
You can make these by unpacking the uClibc sources and run a "make menuconfig".
In the configuration a few things need to be adapted:
- kernel sources -> need to point at our own kernel headers
- install -> needs to point at $out

View File

@@ -1,44 +0,0 @@
#! /bin/sh -e
find . -name "*.nix" | while read fn; do
grep -E '^ *url = ' "$fn" | while read line; do
if oldURL=$(echo "$line" | sed 's^url = \(.*\);^\1^'); then
if ! echo "$oldURL" | grep -q -E "www.cs.uu.nl|nix.cs.uu.nl|.stratego-language.org|java.sun.com|ut2004|linuxq3a|RealPlayer|Adbe|belastingdienst|microsoft|armijn/.nix|sun.com|archive.eclipse.org"; then
base=$(basename $oldURL)
newURL="http://nix.cs.uu.nl/dist/tarballs/$base"
newPath="/data/webserver/dist/tarballs/$base"
echo "$fn: $oldURL -> $newURL"
isSafe=1
if test -e "$newPath"; then
hash=$(fgrep -A 1 "$oldURL" "$fn" | grep md5 | sed 's^.*md5 = \"\(.*\)\";.*^\1^')
echo "HASH = $hash"
if ! test "$(nix-hash --type md5 --flat "$newPath")" = "$hash"; then
echo "WARNING: $newPath exists and differs!"
isSafe=
fi
fi
if test -n "$doMove" -a -n "$isSafe"; then
if ! test -e "$newPath"; then
curl --disable-epsv --fail --location --max-redirs 20 "$oldURL" > "$newPath".tmp
mv -f "$newPath".tmp "$newPath"
fi
sed "s^$oldURL^$newURL^" < "$fn" > "$fn".tmp
mv -f "$fn".tmp "$fn"
fi
fi
fi
done
done

View File

@@ -1,22 +0,0 @@
#! /usr/bin/perl -w
use strict;
my %map;
open LIST1, "<$ARGV[0]" or die;
while (<LIST1>) {
/^(\S+)\s+(.*)$/;
$map{$1} = $2;
}
open LIST1, "<$ARGV[1]" or die;
while (<LIST1>) {
/^(\S+)\s+(.*)$/;
if (!defined $map{$1}) {
print STDERR "missing file: $2\n";
next;
}
print "$2\n";
print "$map{$1}\n";
}

View File

@@ -1,143 +0,0 @@
/* Tool to sort attribute sets. Primarily useful for keeping
all-packages.nix tidy.
To compile:
$ strc -i ../../maintainers/scripts/sort-attrs.str -la stratego-lib
Typical invocation:
$ sglr -m -p ~/Dev/nix/src/libexpr/nix.tbl -i all-packages.nix \
| implode-asfix --lex \
| ../../maintainers/scripts/sort-attrs \
| asfix-yield
*/
module sort-attrs
imports
libstratego-lib
libstratego-sglr
strategies
no-wsp = !appl(prod([], cf(opt(layout())), no-attrs()), [])
rules
list-sep(s): [] -> []
list-sep(s): [x | xs] -> [[x | before] | <list-sep(s)> [split | after]]
where
<split-fetch-keep(s)> xs => (before, split, after)
list-sep(s): [x | xs] -> [[x | xs]]
where
<not(split-fetch-keep(s))> xs
list-sep-end(s): xs -> [<conc> (before, [split]) | <list-sep-end(s)> after]
where
<split-fetch-keep(s)> xs => (before, split, after)
list-sep-end(s): xs -> [xs]
where
<not(split-fetch-keep(s))> xs
sort-attrs:
appl(p@prod(_, _, attrs([term(cons("Attrs"))])),
[ lit("{")
, ws1
, appl(p2@list(cf(iter-star(sort("Bind")))), attrs)
, ws2
, lit("}")
]
) ->
appl(p, [lit("{"), <no-wsp>, appl(p2, <concat> attrs'), ws2, lit("}")])
where
<debug> "found it";
<attach-wsp> [ws1 | attrs] => withWSP;
<list-sep(starts-section)> withWSP => groups;
<length; debug> groups;
<map({x', x'', x''', xs', starts, starts': \[x | xs] -> [x''' | xs']
where
<remove-section-start> x => (x', starts);
<map(regularise-empty-lines); qsort(compare-attrs)> [x' | xs] => [x'' | xs'];
<[] <+ \x -> ["\n\n\n" | x]\ > starts => starts';
<prepend-layout> (starts', x'') => x'''
\ })> groups => attrs';
<debug> "did it"
attach-wsp: [a, b | cs] -> [(a, b) | <attach-wsp> cs]
attach-wsp: [] -> []
strategies
starts-section =
?x@(appl(prod([cf(layout())], cf(opt(layout())), no-attrs()), cs), attr);
<implode-string; is-substring(!"###")> cs;
!x
rules
remove-section-start:
(appl(prod([cf(layout())], cf(opt(layout())), no-attrs()), cs), attr) ->
((appl(prod([cf(layout())], cf(opt(layout())), no-attrs()), cs'), attr), starts)
where
!cs;
list-sep-end(?10); // separate into lines, keeping the \n
map(implode-string);
partition(where(is-substring(!"###"))) => (starts, rest);
<map(explode-string); concat> rest => cs'
regularise-empty-lines:
(appl(prod([cf(layout())], cf(opt(layout())), no-attrs()), cs), attr) ->
(appl(prod([cf(layout())], cf(opt(layout())), no-attrs()), cs''), attr)
where
// separate into lines, keeping the \n
// last whitespace is significant, keep
<list-sep-end(?10); split-init-last> cs => (init, last);
<regularise-empty-lines'> init => cs'; // remove whitespace-only lines
<concat> [<explode-string> "\n\n", <concat> cs', last] => cs'' // add one empty line
/* Dirty hack: *do* keep the first empty line following a non-empty line. !!! order matters */
regularise-empty-lines': [] -> []
regularise-empty-lines': [x, y | xs] -> [x, y | <regularise-empty-lines'> xs]
where
<fetch-elem(not(?10 <+ ?32))> x;
<not(fetch-elem(not(?10 <+ ?32)))> y
regularise-empty-lines': [x | xs] -> [x | <regularise-empty-lines'> xs]
where <fetch-elem(not(?10 <+ ?32))> x
regularise-empty-lines': [x | xs] -> <regularise-empty-lines'> xs
where <not(fetch-elem(not(?10 <+ ?32)))> x
prepend-layout:
(text, (appl(prod([cf(layout())], cf(opt(layout())), no-attrs()), cs), attr)) ->
(appl(prod([cf(layout())], cf(opt(layout())), no-attrs()), cs''), attr)
where
<implode-string> cs => cs';
<conc-strings; explode-string> (<concat-strings> text, cs') => cs''
compare-attrs:
x@
( (_, appl(p1@prod(_, _, attrs([term(cons("Bind"))])), [id1 | xs1]))
, (_, appl(p2@prod(_, _, attrs([term(cons("Bind"))])), [id2 | xs2]))
)
-> x
where
<string-lt> (id1, id2)
strategies
main = io-wrap(
oncetd(sort-attrs)
)

19
pkgs/MPlayer/MPlayer-build.sh Executable file
View File

@@ -0,0 +1,19 @@
#! /bin/sh
envpkgs="$freetype $x11"
. $stdenv/setup || exit 1
tar xvfj $src || exit 1
tar xvfj $fonts || exit 1
cd MPlayer-* || exit 1
./configure --prefix=$out --with-win32libdir=$win32codecs \
--with-x11incdir=$x11/include --with-x11libdir=$x11/lib \
--with-reallibdir=$win32codecs \
--disable-sdl --disable-esd --disable-xanim --disable-cdparanoia --disable-directfb \
--disable-lirc --disable-svga --disable-libdv \
--disable-vorbis --disable-png --disable-jpeg --disable-gif \
--enable-runtime-cpudetection \
|| exit 1
make || exit 1
make install || exit 1
cp -p ../font-arial-iso-8859-1/font-arial-18-iso-8859-1/* $out/share/mplayer/font || exit 1

21
pkgs/MPlayer/MPlayer.fix Normal file
View File

@@ -0,0 +1,21 @@
Package(
[ ("name", "MPlayer-0.91")
, ("build", Relative("MPlayer/MPlayer-build.sh"))
, ("src", App(IncludeFix("fetchurl/fetchurl.fix"),
[ ("url", "http://www1.mplayerhq.hu/MPlayer/releases/MPlayer-0.91.tar.bz2")
, ("md5", "bb09138564ddf954392d20dbc4b88ebd")
]))
, ("fonts", App(IncludeFix("fetchurl/fetchurl.fix"),
[ ("url", "http://www2.mplayerhq.hu/MPlayer/releases/fonts/font-arial-iso-8859-1.tar.bz2")
, ("md5", "1ecd31d17b51f16332b1fcc7da36b312")
]))
, ("stdenv", IncludeFix("stdenv/stdenv.fix"))
, ("x11", IncludeFix("xfree86/xfree86.fix"))
, ("freetype", IncludeFix("freetype/freetype.fix"))
, ("win32codecs", IncludeFix("win32codecs/win32codecs.fix"))
]
)

11
pkgs/Xft/Xft-build.sh Executable file
View File

@@ -0,0 +1,11 @@
#! /bin/sh
envpkgs="$fontconfig $x11"
. $stdenv/setup || exit 1
tar xvfz $src || exit 1
cd fcpackage*/Xft || exit 1
./configure --prefix=$out --x-includes=$x11/include --x-libraries=$x11/lib || exit 1
make || exit 1
make install || exit 1
echo $envpkgs > $out/envpkgs || exit 1

15
pkgs/Xft/Xft.fix Normal file
View File

@@ -0,0 +1,15 @@
Package(
[ ("name", "Xft-20021121")
, ("build", Relative("Xft/Xft-build.sh"))
, ("src", App(IncludeFix("fetchurl/fetchurl.fix"),
[ ("url", "http://fontconfig.org/release/fcpackage.2_1.tar.gz")
, ("md5", "2f2852c80924a9b5356c3037a471c1a1")
]))
, ("stdenv", IncludeFix("stdenv/stdenv.fix"))
, ("x11", IncludeFix("xfree86/xfree86.fix"))
, ("fontconfig", IncludeFix("fontconfig/fontconfig.fix"))
]
)

View File

@@ -1,13 +0,0 @@
{stdenv, fetchurl, perl
, bison, flex, glib
, pkgconfig, libxml2}:
stdenv.mkDerivation {
name = "GStreamer-0.10.10";
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/gstreamer-0.10.10.tar.bz2;
md5 = "6875bf0bd3cf38b9ae1362b9e644e6fc" ;
};
buildInputs = [perl bison flex glib pkgconfig libxml2];
}

View File

@@ -1,6 +0,0 @@
source $stdenv/setup
ensureDir "$out/lib/bmp/Input"
installFlags="install libdir=$out/lib/bmp/Input"
genericBuild

View File

@@ -1,11 +0,0 @@
{stdenv, fetchurl, pkgconfig, bmp, glib, gtk, libmpcdec, taglib}:
stdenv.mkDerivation {
name = "bmp-plugin-musepack-1.2";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/bmp-musepack-1.2.tar.bz2;
md5 = "5fe0c9d341ca37d05c780a478f829a5f";
};
buildInputs = [pkgconfig bmp glib gtk libmpcdec taglib];
}

View File

@@ -1,20 +0,0 @@
{ stdenv, fetchurl, pkgconfig, alsaLib, esound, libogg, libvorbis, id3lib
, glib, gtk, libglade
}:
stdenv.mkDerivation {
name = "bmp-0.9.7.1";
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/bmp-0.9.7.1.tar.gz;
md5 = "c25d5a8d49cc5851d13d525a20023c4c";
};
buildInputs = [
pkgconfig alsaLib esound libogg libvorbis id3lib
glib gtk libglade
];
meta = {
description = "Beep Media Player, an XMMS fork";
};
}

View File

@@ -1,11 +0,0 @@
{stdenv, fetchurl}:
stdenv.mkDerivation {
name = "cdparanoia-III-alpha9.8";
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/cdparanoia-III-alpha9.8.src.tgz;
md5 = "7218e778b5970a86c958e597f952f193" ;
};
patches = [./fix.patch];
}

View File

@@ -1,46 +0,0 @@
*** cdparanoia-III-alpha9.8/interface/utils.h Thu Apr 20 00:41:04 2000
--- cdparanoia-III-alpha9.8-old/interface/utils.h Wed Jan 19 21:44:08 2005
***************
*** 110,117 ****
case CDDA_MESSAGE_LOGIT:
d->errorbuf=catstring(d->errorbuf,s);
break;
- case CDDA_MESSAGE_FORGETIT:
- default:
}
}
}
--- 110,115 ----
***************
*** 125,132 ****
case CDDA_MESSAGE_LOGIT:
d->messagebuf=catstring(d->messagebuf,s);
break;
- case CDDA_MESSAGE_FORGETIT:
- default:
}
}
}
--- 123,128 ----
***************
*** 167,174 ****
}
}
break;
- case CDDA_MESSAGE_FORGETIT:
- default:
}
}
if(malloced)free(buffer);
--- 163,168 ----
***************
*** 203,210 ****
if(!malloced)*messages=catstring(*messages,"\n");
}
break;
- case CDDA_MESSAGE_FORGETIT:
- default:
}
}
if(malloced)free(buffer);
--- 197,202 ----

View File

@@ -1,11 +0,0 @@
{stdenv, fetchurl, libogg}:
stdenv.mkDerivation {
name = "flac-1.1.2";
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/flac-1.1.2.tar.gz;
md5 = "2bfc127cdda02834d0491ab531a20960" ;
};
buildInputs = [libogg] ;
}

View File

@@ -1,9 +0,0 @@
{stdenv, fetchurl}:
stdenv.mkDerivation {
name = "lame-3.96.1";
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/lame-3.96.1.tar.gz;
md5 = "e1206c46a5e276feca11a7149e2fc6ac" ;
};
}

File diff suppressed because it is too large Load Diff

View File

@@ -1,18 +0,0 @@
{stdenv, fetchurl, alsaLib, esound, libogg, libvorbis, glib, gtk}:
stdenv.mkDerivation {
name = "xmms-1.2.10";
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/xmms-1.2.10.tar.bz2;
md5 = "03a85cfc5e1877a2e1f7be4fa1d3f63c";
};
# Patch borrowed from SuSE 10.0 to fix pause/continue on ALSA.
patches = [./alsa.patch];
buildInputs = [alsaLib esound libogg libvorbis glib gtk];
meta = {
description = "A music player very similar to Winamp";
};
}

View File

@@ -1,46 +0,0 @@
source $stdenv/setup
source $makeWrapper
unpackFile $src
ensureDir $out
mv eclipse $out/
# Unpack the jars that contain .so files.
#echo "unpacking some jars..."
#for i in $(find $out -name "*.linux*.jar"); do
# echo $i
# cd $(dirname $i) && $jdk/bin/jar -x < $i
# rm $i
#done
# Set the dynamic linker and RPATH.
rpath=
for i in $libraries; do
rpath=$rpath${rpath:+:}$i/lib
done
glibc=$(cat $NIX_GCC/nix-support/orig-glibc)
find $out \( -type f -a -perm +0100 \) \
-print \
-exec patchelf --interpreter $glibc/lib/ld-linux.so.* \
--set-rpath "$rpath" {} \;
#find $out \( -type f -a -name "*.so*" \) \
# -print \
# -exec patchelf --set-rpath "$rpath" {} \;
# Make a wrapper script so that the proper JDK is found.
makeWrapper $out/eclipse/eclipse $out/bin/eclipse \
--prefix PATH ":" "$jdk/bin" \
--prefix LD_LIBRARY_PATH ":" "$rpath"
ensureDir plugin-working-dir
workingdir="$(pwd)/plugin-working-dir"
for plugin in $plugins; do
if test -e $plugin/install; then
cd $workingdir
$plugin/install "$out/eclipse"
rm -rf $workingdir/*
else
# assume that it is a file
cp $plugin $out/eclipse/plugins
fi
done

View File

@@ -1 +0,0 @@
import ./eclipse-sdk-3.1.2.nix

View File

@@ -1,18 +0,0 @@
{fetchurl, stdenv, makeWrapper, jdk, gtk, glib, libXtst, plugins ? []}:
let {
body =
stdenv.mkDerivation {
name = "eclipse-sdk-3.1.2";
builder = ./builder.sh;
src = bindist;
inherit makeWrapper jdk plugins;
libraries = [gtk glib libXtst];
};
bindist =
fetchurl {
url = http://archive.eclipse.org/eclipse/downloads/drops/R-3.1.2-200601181600/eclipse-SDK-3.1.2-linux-gtk.tar.gz;
md5 = "ece50ed4d6d48dac839bfe8fa719fcff";
};
}

View File

@@ -1,18 +0,0 @@
{fetchurl, stdenv, makeWrapper, jdk, gtk, glib, libXtst}:
let {
body =
stdenv.mkDerivation {
name = "eclipse-sdk-3.1";
builder = ./builder.sh;
src = bindist;
inherit makeWrapper jdk;
libraries = [gtk glib libXtst];
};
bindist =
fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/eclipse-SDK-3.1-linux-gtk.tar.gz;
md5 = "0441c11cc5af1e84ed3be322929899e8";
};
}

View File

@@ -1,21 +0,0 @@
source $stdenv/setup
ensureDir $out
cat >> $out/install <<EOF
#! /bin/sh
PLUGIN=$plugin
UNZIP=$unzip/bin/unzip
ECLIPSE=\$1
\$UNZIP \$PLUGIN
if test -e plugins; then
cp -prd * \$ECLIPSE
else
cd *
cp -prd * \$ECLIPSE
fi
EOF
chmod u+x $out/install

View File

@@ -1,10 +0,0 @@
{stdenv, unzip, plugin}:
let {
body =
stdenv.mkDerivation {
name = "eclipse-zip-plugin-installer";
builder = ./builder.sh;
inherit plugin unzip;
};
}

View File

@@ -1,6 +0,0 @@
{stdenv, fetchurl}:
fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/org.spoofax.editor_0.3.0.jar;
md5 = "ff66d229c774f840ec8285f64c0f95bc";
}

View File

@@ -1,6 +0,0 @@
{stdenv, fetchurl}:
fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/org.spoofax.editor_0.3.10.jar;
md5 = "ff77853e750e19a9b8d380c17ea27f3d";
}

View File

@@ -1,6 +0,0 @@
{stdenv, fetchurl}:
fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/org.spoofax.editor_0.3.11.jar;
md5 = "c36941afcb0e538e16fafd594eae128e";
}

View File

@@ -1,13 +0,0 @@
source $stdenv/setup
myglibc=`cat ${NIX_GCC}/nix-support/orig-glibc`
echo "glibc: $myglibc"
postConfigure() {
cp $myglibc/lib/crt1.o src
cp $myglibc/lib/crti.o src
cp $myglibc/lib/crtn.o src
}
postConfigure=postConfigure
genericBuild

View File

@@ -1,41 +0,0 @@
Only in emacs-21.3: configure.in~
Only in emacs-21.3: patchfile
Only in emacs-21.3/src: Makefile.in~
diff -rc emacs-orig/src/s/gnu-linux.h emacs-21.3/src/s/gnu-linux.h
*** emacs-orig/src/s/gnu-linux.h 2001-09-28 17:50:04.000000000 +0200
--- emacs-21.3/src/s/gnu-linux.h 2004-10-06 13:13:19.000000000 +0200
***************
*** 173,179 ****
/* GNU/Linux usually has crt0.o in a non-standard place */
#define START_FILES pre-crt0.o /usr/lib/crt0.o
#else
! #define START_FILES pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o
#endif
#ifdef __ELF__
--- 173,179 ----
/* GNU/Linux usually has crt0.o in a non-standard place */
#define START_FILES pre-crt0.o /usr/lib/crt0.o
#else
! #define START_FILES pre-crt0.o crt1.o crti.o
#endif
#ifdef __ELF__
***************
*** 225,231 ****
#else
#undef LIB_GCC
#define LIB_GCC
! #define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtn.o
#endif
/* Don't use -g in test compiles in configure.
--- 225,231 ----
#else
#undef LIB_GCC
#define LIB_GCC
! #define LIB_STANDARD -lgcc -lc -lgcc crtn.o
#endif
/* Don't use -g in test compiles in configure.
Only in emacs-21.3/src/s: gnu-linux.h~

View File

@@ -1,34 +0,0 @@
{ xawSupport ? true
, xpmSupport ? true
, xaw3dSupport ? false
, gtkGUI ? false
, xftSupport ? false
, stdenv, fetchurl, x11, libXaw ? null, libXpm ? null, Xaw3d ? null
, pkgconfig ? null, gtk ? null, libXft ? null, libpng ? null
}:
assert xawSupport -> libXaw != null;
assert xpmSupport -> libXpm != null;
assert xaw3dSupport -> Xaw3d != null;
assert gtkGUI -> pkgconfig != null && gtk != null;
assert xftSupport -> libXft != null && libpng != null; # libpng = probably a bug
stdenv.mkDerivation {
name = "emacs-22.0.50-pre-xft";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/emacs-22.0.50-pre-xft.tar.bz2;
md5 = "4f96ada6f18513aeb70adc27b7ac862f";
};
patches = [./crt.patch];
buildInputs = [
x11
(if xawSupport then libXaw else null)
(if xpmSupport then libXpm else null)
(if xaw3dSupport then Xaw3d else null)
]
++ (if gtkGUI then [pkgconfig gtk] else [])
++ (if xftSupport then [libXft libpng] else []);
configureFlags =
if gtkGUI then ["--with-x-toolkit=gtk" "--with-xft"] else [];
}

View File

@@ -1,4 +0,0 @@
source $stdenv/setup
mkdir -p $out/emacs/site-lisp
cp $src $out/emacs/site-lisp/cua.el

View File

@@ -1,8 +0,0 @@
{stdenv, fetchurl}: stdenv.mkDerivation {
name = "cua-mode-2.10";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/cua-mode-2.10.el;
md5 = "5bf5e43f5f38c8383868c7c6c5baca09";
};
}

View File

@@ -1,6 +0,0 @@
source $stdenv/setup
mkdir -p $out/emacs/site-lisp
tar zxvf $src
cp haskell-mode*/*.el $out/emacs/site-lisp
cp haskell-mode*/*.hs $out/emacs/site-lisp

View File

@@ -1,8 +0,0 @@
{stdenv, fetchurl}: stdenv.mkDerivation {
name = "haskell-mode-1.45";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/haskell-mode-1.45.tar.gz;
md5 = "c609998580cdb9ca8888c7d47d22ca3b";
};
}

View File

@@ -1,7 +0,0 @@
source $stdenv/setup
mkdir -p $out/emacs/site-lisp
cd $out/emacs/site-lisp
tar xvfz $src
mv nxml-mode-*/* .
rmdir nxml-mode-*

View File

@@ -1,8 +0,0 @@
{stdenv, fetchurl}: stdenv.mkDerivation {
name = "nxml-mode-20041004";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/nxml-mode-20041004.tar.gz;
md5 = "ac137024cf337d6f11d8ab278d39b4db";
};
}

View File

@@ -1,13 +0,0 @@
source $stdenv/setup
myglibc=`cat ${NIX_GCC}/nix-support/orig-glibc`
echo "glibc: $myglibc"
postConfigure() {
cp $myglibc/lib/crt1.o src
cp $myglibc/lib/crti.o src
cp $myglibc/lib/crtn.o src
}
postConfigure=postConfigure
genericBuild

View File

@@ -1,41 +0,0 @@
Only in emacs-21.3: configure.in~
Only in emacs-21.3: patchfile
Only in emacs-21.3/src: Makefile.in~
diff -rc emacs-orig/src/s/gnu-linux.h emacs-21.3/src/s/gnu-linux.h
*** emacs-orig/src/s/gnu-linux.h 2001-09-28 17:50:04.000000000 +0200
--- emacs-21.3/src/s/gnu-linux.h 2004-10-06 13:13:19.000000000 +0200
***************
*** 173,179 ****
/* GNU/Linux usually has crt0.o in a non-standard place */
#define START_FILES pre-crt0.o /usr/lib/crt0.o
#else
! #define START_FILES pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o
#endif
#ifdef __ELF__
--- 173,179 ----
/* GNU/Linux usually has crt0.o in a non-standard place */
#define START_FILES pre-crt0.o /usr/lib/crt0.o
#else
! #define START_FILES pre-crt0.o crt1.o crti.o
#endif
#ifdef __ELF__
***************
*** 225,231 ****
#else
#undef LIB_GCC
#define LIB_GCC
! #define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtn.o
#endif
/* Don't use -g in test compiles in configure.
--- 225,231 ----
#else
#undef LIB_GCC
#define LIB_GCC
! #define LIB_STANDARD -lgcc -lc -lgcc crtn.o
#endif
/* Don't use -g in test compiles in configure.
Only in emacs-21.3/src/s: gnu-linux.h~

View File

@@ -1,29 +0,0 @@
{ xawSupport ? true
, xpmSupport ? true
, xaw3dSupport ? false
, gtkGUI ? false
, stdenv, fetchurl, x11, libXaw ? null, libXpm ? null, Xaw3d ? null
, pkgconfig ? null, gtk ? null
}:
assert xawSupport && !xaw3dSupport -> libXaw != null;
assert xawSupport && xaw3dSupport -> Xaw3d != null;
assert xpmSupport -> libXpm != null;
assert gtkGUI -> pkgconfig != null && gtk != null;
stdenv.mkDerivation {
name = "emacs-22.0.50-pre20051207";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/emacs-22.0.50-pre20051207.tar.bz2;
md5 = "011d40367015691e4319ddc65b4e7843";
};
patches = [./crt.patch];
buildInputs = [
x11
(if xawSupport then if xaw3dSupport then Xaw3d else libXaw else null)
(if xpmSupport then libXpm else null)
] ++ (if gtkGUI then [pkgconfig gtk] else []);
configureFlags =
if gtkGUI then ["--with-x-toolkit=gtk"] else [];
}

View File

@@ -1,4 +0,0 @@
source $stdenv/setup
mkdir -p $out/emacs/site-lisp
cp $src $out/emacs/site-lisp/cua.el

View File

@@ -1,8 +0,0 @@
{stdenv, fetchurl}: stdenv.mkDerivation {
name = "cua-mode-2.10";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/cua-mode-2.10.el;
md5 = "5bf5e43f5f38c8383868c7c6c5baca09";
};
}

View File

@@ -1,6 +0,0 @@
source $stdenv/setup
mkdir -p $out/emacs/site-lisp
tar zxvf $src
cp haskell-mode*/*.el $out/emacs/site-lisp
cp haskell-mode*/*.hs $out/emacs/site-lisp

View File

@@ -1,8 +0,0 @@
{stdenv, fetchurl}: stdenv.mkDerivation {
name = "haskell-mode-1.45";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/haskell-mode-1.45.tar.gz;
md5 = "c609998580cdb9ca8888c7d47d22ca3b";
};
}

View File

@@ -1,7 +0,0 @@
source $stdenv/setup
mkdir -p $out/emacs/site-lisp
cd $out/emacs/site-lisp
tar xvfz $src
mv nxml-mode-*/* .
rmdir nxml-mode-*

View File

@@ -1,8 +0,0 @@
{stdenv, fetchurl}: stdenv.mkDerivation {
name = "nxml-mode-20041004";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/nxml-mode-20041004.tar.gz;
md5 = "ac137024cf337d6f11d8ab278d39b4db";
};
}

View File

@@ -1,13 +0,0 @@
source $stdenv/setup
myglibc=`cat ${NIX_GCC}/nix-support/orig-glibc`
echo "glibc: $myglibc"
postConfigure() {
cp $myglibc/lib/crt1.o src
cp $myglibc/lib/crti.o src
cp $myglibc/lib/crtn.o src
}
postConfigure=postConfigure
genericBuild

View File

@@ -1,41 +0,0 @@
Only in emacs-21.3: configure.in~
Only in emacs-21.3: patchfile
Only in emacs-21.3/src: Makefile.in~
diff -rc emacs-orig/src/s/gnu-linux.h emacs-21.3/src/s/gnu-linux.h
*** emacs-orig/src/s/gnu-linux.h 2001-09-28 17:50:04.000000000 +0200
--- emacs-21.3/src/s/gnu-linux.h 2004-10-06 13:13:19.000000000 +0200
***************
*** 173,179 ****
/* GNU/Linux usually has crt0.o in a non-standard place */
#define START_FILES pre-crt0.o /usr/lib/crt0.o
#else
! #define START_FILES pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o
#endif
#ifdef __ELF__
--- 173,179 ----
/* GNU/Linux usually has crt0.o in a non-standard place */
#define START_FILES pre-crt0.o /usr/lib/crt0.o
#else
! #define START_FILES pre-crt0.o crt1.o crti.o
#endif
#ifdef __ELF__
***************
*** 225,231 ****
#else
#undef LIB_GCC
#define LIB_GCC
! #define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtn.o
#endif
/* Don't use -g in test compiles in configure.
--- 225,231 ----
#else
#undef LIB_GCC
#define LIB_GCC
! #define LIB_STANDARD -lgcc -lc -lgcc crtn.o
#endif
/* Don't use -g in test compiles in configure.
Only in emacs-21.3/src/s: gnu-linux.h~

View File

@@ -1,28 +0,0 @@
{ xawSupport ? true
, xpmSupport ? true
, xaw3dSupport ? false
, stdenv, fetchurl, x11, libXaw ? null, libXpm ? null, Xaw3d ? null
}:
assert xawSupport && !xaw3dSupport -> libXaw != null;
assert xawSupport && xaw3dSupport -> Xaw3d != null;
assert xpmSupport -> libXpm != null;
stdenv.mkDerivation {
name = "emacs-21.4a";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/emacs-21.4a.tar.gz;
md5 = "8f9d97cbd126121bd5d97e5e31168a87";
};
patches = [./crt.patch];
buildInputs = [
x11
(if xawSupport then if xaw3dSupport then Xaw3d else libXaw else null)
(if xpmSupport then libXpm else null)
];
meta = {
description = "All Hail Emacs, the ultimate editor";
};
}

View File

@@ -1,4 +0,0 @@
source $stdenv/setup
mkdir -p $out/emacs/site-lisp
cp $src $out/emacs/site-lisp/cua.el

View File

@@ -1,8 +0,0 @@
{stdenv, fetchurl}: stdenv.mkDerivation {
name = "cua-mode-2.10";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/cua-mode-2.10.el;
md5 = "5bf5e43f5f38c8383868c7c6c5baca09";
};
}

View File

@@ -1,6 +0,0 @@
source $stdenv/setup
mkdir -p $out/emacs/site-lisp
tar zxvf $src
cp haskell-mode*/*.el $out/emacs/site-lisp
cp haskell-mode*/*.hs $out/emacs/site-lisp

View File

@@ -1,8 +0,0 @@
{stdenv, fetchurl}: stdenv.mkDerivation {
name = "haskell-mode-1.45";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/haskell-mode-1.45.tar.gz;
md5 = "c609998580cdb9ca8888c7d47d22ca3b";
};
}

View File

@@ -1,7 +0,0 @@
source $stdenv/setup
mkdir -p $out/emacs/site-lisp
cd $out/emacs/site-lisp
tar xvfz $src
mv nxml-mode-*/* .
rmdir nxml-mode-*

View File

@@ -1,8 +0,0 @@
{stdenv, fetchurl}: stdenv.mkDerivation {
name = "nxml-mode-20041004";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/nxml-mode-20041004.tar.gz;
md5 = "ac137024cf337d6f11d8ab278d39b4db";
};
}

View File

@@ -1,9 +0,0 @@
{stdenv, fetchurl} :
stdenv.mkDerivation {
name = "joe-3.3";
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/joe-3.3.tar.gz;
md5 = "02221716679c039c5da00c275d61dbf4";
};
}

View File

@@ -1,29 +0,0 @@
source $stdenv/setup
source $makeWrapper
export MONO_GAC_PREFIX=$monodoc:$gtksharp
postInstall=postInstall
postInstall() {
mv $out/bin $out/bin-orig
mkdir $out/bin
moz=$(ls $mozilla/lib/*/libgtkembedmoz.so)
for i in $out/bin-orig/*; do
echo "wrapping $(basename $i)"
# !!! TODO: figure out the MONO_GAC_PREFIX automatically
makeWrapper "$i" "$out/bin/$(basename $i)" \
--suffix PATH ':' "$(dirname $(type -p mono))" \
--suffix PATH ':' "$(dirname $(type -p mono))" \
--suffix LD_LIBRARY_PATH ':' "$gtksharp/lib" \
--suffix MONO_GAC_PREFIX ':' "$gtksharp" \
--suffix MONO_GAC_PREFIX ':' "$gtkmozembedsharp" \
--suffix MONO_GAC_PREFIX ':' "$gtksourceviewsharp" \
--suffix MONO_GAC_PREFIX ':' "$monodoc" \
--set MOZILLA_FIVE_HOME "$(dirname $moz)"
done
}
genericBuild

View File

@@ -1,28 +0,0 @@
{ stdenv, fetchurl, file, mono, gtksharp, gtksourceviewsharp
, gtkmozembedsharp, monodoc
, perl, perlXMLParser, pkgconfig
, glib, gtk, GConf, gnomevfs, libbonobo, libglade, libgnome
, mozilla
}:
stdenv.mkDerivation {
name = "monodevelop-0.6-pre2315";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/monodevelop-0.6-pre2315.tar.bz2;
md5 = "8c33df5629b0676b7ab552854c1de6fd";
};
makeWrapper = ../../../build-support/make-wrapper/make-wrapper.sh;
patches = [./prefix.patch];
buildInputs = [
file mono gtksharp gtksourceviewsharp perl perlXMLParser pkgconfig
glib gtk GConf gnomevfs libbonobo libglade libgnome
gtkmozembedsharp monodoc
];
inherit mozilla monodoc gtksharp gtkmozembedsharp gtksourceviewsharp;
}

View File

@@ -1,44 +0,0 @@
diff -rc MonoDevelop-orig/Makefile.in MonoDevelop/Makefile.in
*** MonoDevelop-orig/Makefile.in 2005-03-09 17:43:58.000000000 +0100
--- MonoDevelop/Makefile.in 2005-03-09 18:10:20.000000000 +0100
***************
*** 298,304 ****
# (mkdir ../../build/bin/ hack)
SUBDIRS = Core build po Extras
bin_SCRIPTS = monodevelop
! gnome_data = @gnome_prefix@/share
desktopdir = $(gnome_data)/applications
desktop_DATA = monodevelop.desktop
pixmapdir = $(gnome_data)/pixmaps
--- 298,304 ----
# (mkdir ../../build/bin/ hack)
SUBDIRS = Core build po Extras
bin_SCRIPTS = monodevelop
! gnome_data = @prefix@/share
desktopdir = $(gnome_data)/applications
desktop_DATA = monodevelop.desktop
pixmapdir = $(gnome_data)/pixmaps
***************
*** 809,818 ****
all:
install-data-hook:
! $(UPDATE_MIME_DB) $(gnome_data)/mime
uninstall-hook:
! $(UPDATE_MIME_DB) $(gnome_data)/mime
run: runmd
--- 809,818 ----
all:
install-data-hook:
! # $(UPDATE_MIME_DB) $(gnome_data)/mime
uninstall-hook:
! # $(UPDATE_MIME_DB) $(gnome_data)/mime
run: runmd
Only in MonoDevelop: Makefile.in~

View File

@@ -1,21 +0,0 @@
source $stdenv/setup
source $makeWrapper
postInstall=postInstall
postInstall() {
mv $out/bin $out/bin-orig
mkdir $out/bin
for i in $out/bin-orig/*; do
echo "wrapping $(basename $i)"
# !!! TODO: figure out the MONO_GAC_PREFIX automatically
makeWrapper "$i" "$out/bin/$(basename $i)" \
--suffix PATH ':' "$(dirname $(type -p mono))" \
--suffix MONO_GAC_PREFIX ':' "$gtksharp" \
--suffix MONO_GAC_PREFIX ':' "$out"
done
}
genericBuild

View File

@@ -1,17 +0,0 @@
{stdenv, fetchurl, mono, gtksharp, pkgconfig}:
stdenv.mkDerivation {
name = "monodoc-1.0.6";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/monodoc-1.0.6.tar.gz;
md5 = "f2fc27e8e4717d90dc7efa2450625693";
};
makeWrapper = ../../../build-support/make-wrapper/make-wrapper.sh;
buildInputs = [mono gtksharp pkgconfig];
inherit gtksharp;
}

View File

@@ -1,11 +0,0 @@
{stdenv, fetchurl, ncurses, gettext}:
stdenv.mkDerivation {
name = "nano-1.2.5";
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/nano-1.2.5.tar.gz;
md5 = "f2b3efbf1cf356d736740d531b6b22c4";
};
buildInputs = [ncurses gettext];
configureFlags = "--enable-tiny";
}

View File

@@ -1,11 +0,0 @@
source $stdenv/setup
export NIX_CFLAGS_COMPILE="-DBUILD_UNTESTED_NEDIT -L$motif/lib $NIX_CFLAGS_COMPILE"
installPhase=installPhase
installPhase() {
ensureDir $out/bin
cp -p source/nedit source/nc $out/bin
}
genericBuild

View File

@@ -1,19 +0,0 @@
{stdenv, fetchurl, x11, motif, libXpm}:
assert stdenv.system == "i686-linux";
stdenv.mkDerivation {
name = "nedit-5.5";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/nedit-5.5-src.tar.bz2;
md5 = "48cb3dce52d44988f3a4d7c6f47b6bbe";
};
patches = [./dynamic.patch];
inherit motif;
buildInputs = [x11 motif libXpm];
makeFlags = if stdenv.system == "i686-linux" then "linux" else "";
}

View File

@@ -1,27 +0,0 @@
diff -rc nedit-5.5-orig/makefiles/Makefile.linux nedit-5.5/makefiles/Makefile.linux
*** nedit-5.5-orig/makefiles/Makefile.linux 2003-05-20 02:27:56.000000000 +0200
--- nedit-5.5/makefiles/Makefile.linux 2005-12-03 00:42:23.000000000 +0100
***************
*** 17,27 ****
# To test if the Motif library exports the runtime version
# add -DHAVE__XMVERSIONSTRING to CFLAGS
#
! CFLAGS=-O -I/usr/X11R6/include -DUSE_DIRENT -DUSE_LPR_PRINT_CMD
ARFLAGS=-urs
! LIBS= -L/usr/X11R6/lib -Wl,-Bstatic -lXm -Wl,-Bdynamic -lXp -lXpm -lXext -lXt -lSM -lICE -lX11 -lm
include Makefile.common
--- 17,27 ----
# To test if the Motif library exports the runtime version
# add -DHAVE__XMVERSIONSTRING to CFLAGS
#
! CFLAGS=-O -DUSE_DIRENT -DUSE_LPR_PRINT_CMD
ARFLAGS=-urs
! LIBS= -lXm -lXp -lXpm -lXext -lXt -lSM -lICE -lX11 -lm
include Makefile.common

View File

@@ -1,15 +0,0 @@
{stdenv, fetchurl, ncurses}:
stdenv.mkDerivation {
name = "vim-7.0";
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/vim-7.0.tar.bz2;
md5 = "4ca69757678272f718b1041c810d82d8";
};
inherit ncurses;
buildInputs = [ncurses];
NIX_CFLAGS_COMPILE="-D_BSD_SOURCE=1";
}

View File

@@ -1,9 +0,0 @@
source $stdenv/setup
postInstall=postInstall
postInstall() {
ln -s $out/bin/vim $out/bin/vi
}
genericBuild

View File

@@ -1,18 +0,0 @@
{stdenv, fetchurl, ncurses}:
stdenv.mkDerivation {
name = "vim-7.0";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/vim-7.0.tar.bz2;
md5 = "4ca69757678272f718b1041c810d82d8";
};
inherit ncurses;
buildInputs = [ncurses];
meta = {
description = "The most popular clone of the VI editor";
};
}

View File

@@ -1,7 +0,0 @@
set -e
source $stdenv/setup
unzip $src
mkdir $out
mv batik-* $out/batik

View File

@@ -1,12 +0,0 @@
{stdenv, fetchurl, unzip}:
stdenv.mkDerivation {
name = "batik-1.6";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/batik-1.6.zip;
md5 = "edff288fc64f968ff96ca49763d50f3c";
};
buildInputs = [unzip];
}

View File

@@ -1,28 +0,0 @@
source $stdenv/setup
source $makeWrapper
postInstall=postInstall
postInstall() {
mv $out/bin $out/bin-orig
mkdir $out/bin
for i in $out/bin-orig/*; do
echo "wrapping $(basename $i)"
# !!! TODO: figure out the MONO_GAC_PREFIX automatically
makeWrapper "$i" "$out/bin/$(basename $i)" \
--prefix PATH ':' "$(dirname $(type -p mono))" \
--prefix LD_LIBRARY_PATH ':' "$sqlite/lib" \
--prefix LD_LIBRARY_PATH ':' "$libgnomeui/lib/libglade/2.0" \
--prefix MONO_GAC_PREFIX ':' "$gtksharp"
done
# !!! hack
export ALL_INPUTS="$out $pkgs"
find $out -name "*.dll.config" -o -name "*.exe.config" | while read configFile; do
echo "modifying config file $configFile"
$monoDLLFixer "$configFile"
done
}
genericBuild

View File

@@ -1,26 +0,0 @@
{ stdenv, fetchurl, perl, perlXMLParser, pkgconfig, mono, libexif
, libgnome, libgnomeui, gtksharp, libjpeg, sqlite, lcms, libgphoto2
, monoDLLFixer
}:
stdenv.mkDerivation {
name = "f-spot-0.0.10";
builder = ./builder.sh;
makeWrapper = ../../../build-support/make-wrapper/make-wrapper.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/f-spot-0.0.10.tar.bz2;
md5 = "19cc6e067ccc261b0502ff6189b79832";
};
patches = [./dllmap.patch];
buildInputs = [
perl perlXMLParser pkgconfig mono libexif
libgnome libgnomeui gtksharp libjpeg sqlite
lcms libgphoto2
];
inherit monoDLLFixer gtksharp sqlite libgnomeui;
}

View File

@@ -1,28 +0,0 @@
diff -rc f-spot-0.0.10-orig/libgphoto2-sharp/libgphoto2-sharp.dll.config f-spot-0.0.10/libgphoto2-sharp/libgphoto2-sharp.dll.config
*** f-spot-0.0.10-orig/libgphoto2-sharp/libgphoto2-sharp.dll.config 2005-02-27 19:25:09.000000000 +0100
--- f-spot-0.0.10/libgphoto2-sharp/libgphoto2-sharp.dll.config 2005-03-11 12:13:12.000000000 +0100
***************
*** 1,3 ****
<configuration>
! <dllmap dll="libgphoto2.so" target="/usr/lib/libgphoto2.so.2"/>
</configuration>
--- 1,3 ----
<configuration>
! <dllmap dll="libgphoto2.so" target="libgphoto2.so.2"/>
</configuration>
diff -rc f-spot-0.0.10-orig/src/f-spot.exe.config.in f-spot-0.0.10/src/f-spot.exe.config.in
*** f-spot-0.0.10-orig/src/f-spot.exe.config.in 2005-02-27 18:03:02.000000000 +0100
--- f-spot-0.0.10/src/f-spot.exe.config.in 2005-03-11 12:48:03.000000000 +0100
***************
*** 9,13 ****
<dllmap dll="libfspoteog" target="@prefix@/lib/f-spot/libfspoteog.so.0"/>
<dllmap dll="libfspotjpeg" target="@prefix@/lib/f-spot/libfspotjpg.so.0"/>
<dllmap dll="liblcms-1.0.0.dll" target="liblcms.so.1"/>
! <dllmap dll="libexif.dll" target="libexif.so.@EXIF_SOVERSION@"/>
</configuration>
--- 9,13 ----
<dllmap dll="libfspoteog" target="@prefix@/lib/f-spot/libfspoteog.so.0"/>
<dllmap dll="libfspotjpeg" target="@prefix@/lib/f-spot/libfspotjpg.so.0"/>
<dllmap dll="liblcms-1.0.0.dll" target="liblcms.so.1"/>
! <dllmap dll="libexif.dll" target="libexif.so"/>
</configuration>

View File

@@ -1,17 +0,0 @@
{stdenv, fetchurl, pkgconfig, gtk, libgtkhtml, glib, pango, atk, freetype
, fontconfig, libart_lgpl, libtiff, libjpeg, libpng, libexif, zlib, perl
, perlXMLParser, python, pygtk, gettext}:
stdenv.mkDerivation {
name = "gimp-2.3.10";
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/gimp-2.3.10.tar.bz2;
md5 = "a46acb413484300583ffca1fa54e0874" ;
};
buildInputs = [ pkgconfig gtk libgtkhtml glib pango atk freetype fontconfig
libart_lgpl libtiff libjpeg libpng libexif zlib perl
perlXMLParser python pygtk gettext ] ;
configureFlags = [ "--disable-print" ];
}

View File

@@ -1,21 +0,0 @@
{stdenv, fetchurl, pkgconfig, gtk, libpng}:
assert pkgconfig != null && gtk != null && libpng != null;
# Note that we cannot just copy gtk's png attribute, since gtk might
# not be linked against png.
# !!! assert libpng == gtk.libpng;
stdenv.mkDerivation {
name = "gqview-2.1.1";
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/gqview-2.1.1.tar.gz;
md5 = "2cd110305cfe4c530fcd6e34bb52e1f2";
};
buildInputs = [pkgconfig gtk libpng];
meta = {
description = "A fast image viewer";
};
}

View File

@@ -1,31 +0,0 @@
{ stdenv, fetchurl, pkgconfig,
perl, perlXMLParser,
gtk, libXft, fontconfig,
libpng,
zlib, popt,
boehmgc,
libxml2, libxslt,
glib,
gtkmm, glibmm, libsigcxx
}:
stdenv.mkDerivation {
name = "inkscape-0.43";
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/inkscape-0.43.tar.bz2;
md5 = "97c606182f5e177eef70c1e8a55efc1f";
};
buildInputs = [
pkgconfig
perl perlXMLParser
gtk libXft fontconfig
libpng
zlib popt
boehmgc
libxml2 libxslt
glib
gtkmm glibmm libsigcxx
];
}

View File

@@ -1,12 +0,0 @@
source $stdenv/setup
patchPhase=patchPhase
patchPhase() {
sed -e "s@-ljpeg6b@-ljpeg@" configure > configure.patched
mv configure.patched configure
chmod u+x configure
}
genericBuild
ln -s $KDEDIR/share/mimelnk $out/share

View File

@@ -1,23 +0,0 @@
{stdenv, fetchurl, libX11, libXext, libSM, kdelibs, qt, libjpeg, libungif, libpng, libtiff, imlib, arts, expat, perl}:
stdenv.mkDerivation {
name = "kuickshow-0.8.5";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/kuickshow-0.8.5.tgz;
md5 = "7a95852a0670b18859a1e6789b256ebd";
};
configureFlags = "
--with-imlib-config=${imlib}/bin
--with-extra-includes=${libjpeg}/include
--with-extra-libs=${libjpeg}/lib
--x-includes=${libX11}/include
--x-libraries=${libX11}/lib";
buildInputs = [kdelibs libX11 libXext libSM qt libjpeg libungif libpng libtiff imlib arts expat perl];
inherit libjpeg;
KDEDIR = kdelibs;
}

View File

@@ -1,9 +0,0 @@
. $stdenv/setup
preConfigure() {
autoreconf -i
}
preConfigure=preConfigure
genericBuild

View File

@@ -1,13 +0,0 @@
{stdenv, fetchurl, autoconf, automake, gettext, libtool, cvs, wxGTK, gtk, pkgconfig, libxml2, zip, libpng, libjpeg}:
stdenv.mkDerivation {
name = "xaralx-0.5r1405";
builder = ./builder.sh;
src = fetchurl {
url = http://downloads2.xara.com/opensource/XaraLX-0.5r1405.tar.bz2;
md5 = "1b087819e4b10b21da8c267ed56a45a4";
};
buildInputs = [automake autoconf gettext libtool cvs wxGTK gtk pkgconfig libxml2 zip libpng libjpeg];
configureFlags = "--with-wx-config --disable-svnversion --disable-international";
}

View File

@@ -1,29 +0,0 @@
source $stdenv/setup
echo "unpacking $src..."
tar xvfz $src
mkdir $out
echo "unpacking reader..."
tar xvf AdobeReader/COMMON.TAR -C $out
tar xvf AdobeReader/ILINXR.TAR -C $out
# Disable this plugin for now (it needs LDAP, and I'm too lazy to add it).
rm $out/Reader/intellinux/plug_ins/PPKLite.api
if test -n "$fastStart"; then
echo "removing plugins..."
rm -v $(ls $out/Reader/intellinux/plug_ins/*.api | grep -v SearchFind)
fi
glibc=$(cat $NIX_GCC/nix-support/orig-glibc)
fullPath=
for i in $libPath; do
fullPath=$fullPath${fullPath:+:}$i/lib
done
patchelf --interpreter $glibc/lib/ld-linux.so.* \
--set-rpath $fullPath \
$out/Reader/intellinux/bin/acroread

View File

@@ -1,19 +0,0 @@
{ xineramaSupport ? false
, stdenv, fetchurl, libXt, libXp, libXext, libX11, libXinerama ? null
, glib, pango, atk, gtk, libstdcpp5, zlib
, fastStart ? false
}:
stdenv.mkDerivation {
name = "acrobat-reader-7.0.1";
builder = ./builder.sh;
src = fetchurl {
url = http://ardownload.adobe.com/pub/adobe/reader/unix/7x/7.0/enu/AdbeRdr701_linux_enu.tar.gz;
md5 = "79e5a40aca6b49f7015cb1694876f87a";
};
libPath = [
libXt libXp libXext libX11 glib pango atk gtk libstdcpp5 zlib
(if xineramaSupport then libXinerama else null)
];
inherit fastStart;
}

View File

@@ -1,9 +0,0 @@
{stdenv, fetchurl}:
stdenv.mkDerivation {
name = "bluez-firmware-1.1";
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/bluez-firmware-1.1.tar.gz;
md5 = "2f1c2d939108c865dd07bae3e819c573";
};
}

View File

@@ -1,10 +0,0 @@
{stdenv, fetchurl, bluezLibs}:
stdenv.mkDerivation {
name = "bluez-utils-2.25";
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/bluez-utils-2.25.tar.gz;
md5 = "ae3729ab5592be06ed01b973d4b3e9fe";
};
buildInputs = [bluezLibs];
}

View File

@@ -1,11 +0,0 @@
source $stdenv/setup
prefix=$out
configurePhase() {
echo ;
}
configurePhase=configurePhase
genericBuild

View File

@@ -1,13 +0,0 @@
diff -ruN cdrtools-2.01/DEFAULTS/Defaults.linux cdrtools-2.01.new/DEFAULTS/Defaults.linux
--- cdrtools-2.01/DEFAULTS/Defaults.linux 2003-02-16 01:01:48.000000000 +0100
+++ cdrtools-2.01.new/DEFAULTS/Defaults.linux 2005-08-30 21:13:55.000000000 +0200
@@ -27,7 +27,8 @@
# Installation config stuff
#
###########################################################################
-INS_BASE= /opt/schily
+#INS_BASE= /opt/schily
+INS_BASE= $(out)
INS_KBASE= /
#
DEFUMASK= 002

View File

@@ -1,11 +0,0 @@
{stdenv, fetchurl}:
stdenv.mkDerivation {
name = "cdrtools-2.01";
builder = ./builder.sh;
src = fetchurl {
url = http://nix.cs.uu.nl/dist/tarballs/cdrtools-2.01.tar.bz2;
md5 = "d44a81460e97ae02931c31188fe8d3fd";
};
patches = [./cdrtools-2.01-install.patch];
}

Some files were not shown because too many files have changed in this diff Show More