dnsmasq, uisp, fltk libixp_for_wmii, acerhk kernel module, reiserfsprogs, radeontools, msmtp,
procmail, pstree, gxemul

changed:
umlutilities to also support building tunctl optionally (needing kernel header files)
wmii updated and wmiimenu added                                                 

svn path=/nixpkgs/trunk/; revision=9242
This commit is contained in:
Marc Weber 2007-09-03 12:10:57 +00:00
parent c597a26631
commit 088a6817db
15 changed files with 406 additions and 15 deletions

View File

@ -0,0 +1,17 @@
args: with args; stdenv.mkDerivation {
name="procmail-3.22";
buildInputs = [stdenv.gcc.libc];
installPhase = "
ensureDir \$out/bin
find . -exec sed -e \"s%^RM[ \\t]*=%RM=`type -f rm | awk '{print $3;}'`%\" -i '{}' ';'
sed -e 's%\\(LDFLAGS = \$(LDFLAGS1) -lnsl -ldl -lc\\)%\\1 -m%' -i src/Makefile
sed -e \"s%^BASENAME.*%\BASENAME=$out%\" -i Makefile
make DESTDIR=\$out install
";
phases ="installPhase";
src = fetchurl {
url = ftp://ftp.fu-berlin.de/pub/unix/mail/procmail/procmail-3.22.tar.gz;
sha256 = "05z1c803n5cppkcq99vkyd5myff904lf9sdgynfqngfk9nrpaz08";
};
o=62;
}

View File

@ -0,0 +1,22 @@
args:
args.stdenv.mkDerivation {
name = "pstree-2.31";
src = args.fetchurl {
url = http://fresh.t-systems-sfr.com/unix/src/misc/pstree-2.31.tar.gz;
sha256 = "1zzz29gsyra8csk54cyq0pcdxxg3l4gmksq8q1skv2z84g2yxdhh";
};
unpackPhase="unpackFile \$src; sourceRoot=.";
#buildInputs =(with args; []);
buildPhase="pwd; gcc -o pstree pstree.c";
installPhase="ensureDir \$out/bin; cp pstree \$out/bin";
meta = {
description = "show the running processes as tree";
# don't know the correct homepage..
homepage = http://fresh.t-systems-sfr.com/unix/src/misc/pstree-2.31.tar.gz;
license = "GPL";
};
}

View File

@ -0,0 +1,17 @@
args:
args.stdenv.mkDerivation {
name = "msmtp-1.4.13";
src = args.fetchurl {
url = http://dfn.dl.sourceforge.net/sourceforge/msmtp/msmtp-1.4.13.tar.bz2;
sha256 = "1x8q8dhcpnjym3icz6070l13hz98fvdvgc5j5psj4pmxbswx0r4p";
};
buildInputs =(with args; []);
meta = {
description = "a MUA";
homepage = http://msmtp.sourceforge.net/;
license = "GPL";
};
}

View File

@ -1,15 +1,29 @@
{ stdenv, fetchurl, libixp, x11, gawk}:
args: with args; stdenv.mkDerivation {
name = "wmii-20070516";
stdenv.mkDerivation {
name = "wmii-snap20070304";
description = "a really nice window manager which can be entirely driven by keyboard";
homepage = "http://www.suckless.org/wiki/wmii/";
builder = ./builder.sh;
src = fetchurl {
url = http://www.suckless.org/snaps/wmii-snap20070304.tgz;
sha256 = "06dd2e58c5cbb4adb9a8ba9cb8f19625a15df99b8ab7adec7ddc5844260e6a05";
url = http://www.suckless.org/snaps/wmii-snap20070304.tgz;
sha256 = "01ba1qk48n6wgpnavdwakgwmv895jvqvi75sm2wsvd6bqmc2xp86";
};
buildInputs = [ libixp ];
propagatedBuildInputs = [ x11 ];
inherit gawk;
buildInputs = [ libX11 libixp ];
inherit libixp;
phases = "installPhase";
installPhase = "
export CFLAGS=\$NIX_CFLAGS_COMPILE
export LDFLAGS\=$(echo \$NIX_LDFLAGS | sed -e 's/-rpath/-L/g')
sed -i -e \"s%^PREFIX.*%PREFIX=\$out%\" \\
-e \"s%^\\(INCS.*\\)%\\1 \$NIX_CFLAGS_COMPILE%\" \\
-e \"s%^\\(LIBS.*\\)%\\1 \$LDFLAGS%\" \\
config.mk
# don't use the default one installed by nixos!
sed -i -e \"s%ixpc%\$libixp/bin/ixpc%\" wmiir
make install
";
meta = { homepage = "www.suckless.org";
description = "a really cool window manager which can by driven by keyboard only";
license="MIT";
};
}

View File

@ -0,0 +1,35 @@
args: with args; stdenv.mkDerivation {
name = "wmiimenu-3.1";
src = fetchurl {
url = http://suckless.org/download/wmii-3.1.tar.gz;
sha256 = "0sviwxbanpsfdm55zvx9hflncw35slkz41xr517y3yfgxx6qlhlk";
};
buildInputs = [ libX11 libixp ];
inherit libixp;
phases = "installPhase";
installPhase = "
export CFLAGS=\$NIX_CFLAGS_COMPILE
export LDFLAGS\=$(echo \$NIX_LDFLAGS | sed -e 's/-rpath/-L/g')
sed -i -e \"s%^PREFIX.*%PREFIX=\$out%\" \\
-e \"s%^\\(INCS.*\\)%\\1 \$NIX_CFLAGS_COMPILE%\" \\
-e \"s%^\\(LIBS.*\\)%\\1 \$LDFLAGS%\" \\
config.mk
# don't use the default one installed by nixos!
# sed -i -e \"s%ixpc%\$libixp/bin/ixpc%\" wmiir
# This will fail but wmiimenu has been built (hack!)
set +e
make &> /dev/null
set -e
ensureDir \$out/bin
cp cmd/wmiimenu \$out/bin
";
meta = { homepage = "www.suckless.org";
description = "one small tool of the wmii window manger to let the user select an item from a list by filtering..";
license="MIT";
};
}

View File

@ -0,0 +1,18 @@
args: with args;
stdenv.mkDerivation {
name = "libixp_for_wmii";
phases = "installPhase";
installPhase = "
export LDFLAGS\=$(echo \$NIX_LDFLAGS | sed -e 's/-rpath/-L/g')
sed -i -e \"s%^PREFIX.*%PREFIX=\$out%\" \\
-e \"s%^\\(INCLUDE.*\\)%\\1 \$NIX_CFLAGS_COMPILE%\" \\
-e \"s%^\\(LIBS.*\\)%\\1 \$LDFLAGS%\" \\
config.mk
make install
";
src = fetchurl {
url = http://www.suckless.org/snaps/libixp-20070220.tar.gz;
sha256 = "0bhqgrxp0lnwyf3c9165nldyw300mifyh0mlyfg1i5qr54rk7p79";
};
}

View File

@ -0,0 +1,19 @@
args:
args.stdenv.mkDerivation {
name = "uisp-20050207";
configureFlags="--disable-dependency-tracking";
src = args.fetchurl {
url = http://mirror.switch.ch/mirror/gentoo/distfiles/uisp-20050207.tar.gz;
sha256 = "1bncxp5yxh9r1yrp04vvhfiva8livi1pwic7v8xj99q09zrwahvw";
};
#buildInputs =(with args; []);
meta = {
description = "tool for AVR microcontrollers which can interface to many hardware in-system programmers";
license = "GPL-2";
homepage = http://savannah.nongnu.org/projects/uisp;
};
}

View File

@ -0,0 +1,34 @@
args: with args.lib; with args;
let
name="gxemul-0.4.6";
co = chooseOptionsByFlags {
inherit args;
flagDescr = {
mandatory = { install = "ensureDir \$out/bin; cp gxemul \$out/bin;"; };
doc = { install = "ensureDir \$out/share/${name}; cp -r doc \$out/share/${name};"; implies = "man"; };
demos = { install = "ensureDir \$out/share/${name}; cp -r demos \$out/share/${name};"; };
man = { install = "cp -r ./man \$out/;";};
};
optionals = ["libX11"];
defaultFlags = [ "demos" "doc" ];
};
in args.stdenv.mkDerivation {
inherit name;
inherit (co) /* flags */ buildInputs configureFlags;
src = fetchurl {
url = http://gavare.se/gxemul/src/gxemul-0.4.6.tar.gz;
sha256 = "0hf3gi6hfd2qr5090zimfiddcjgank2q6m7dfsr81wwpxfbhb2z3";
};
configurePhase="./configure";
installPhase = concatStrings ( catAttrs "install" co.flatOptions );
meta = {
license = "BSD";
description = "A Machine Emulator, Mainly emulates MIPS, but supports other CPU type";
homepage = http://gavare.se/gxemul/;
};
}

View File

@ -0,0 +1,45 @@
source $stdenv/setup
unpackPhase(){
sourceRoot=.
}
buildPhase(){
# it's not possible to unpack only one directory, is it ? :(
# The linux folks should start using 7zip
#unpackFile $kernel
ln -s /tmp/linux-2.6.21.7/ .
#mv linux* /tmp
ensureDir orig/drivers/
ensureDir patched/drivers/
cp -r linux-*/drivers/misc orig/drivers
cp -r linux-*/drivers/misc patched/drivers
unpackFile $acerhk
mv acerhk* patched/drivers/misc/acerhk
if test -n debug; then
sed -i -e 's/.*define ACERDEBUG.*/#define ACERDEBUG/' patched/drivers/misc/acerhk/acerhk.c
fi
cat > ./sedscript << EOF
/menu/a config ACERHK\\
tristate "Acerhk driver"\\
depends on EXPERIMENTAL\\
default m\\
---help---\\
This is an experimental acer keyboard driver for\\
acer laptops\\
EOF
sed -i -f ./sedscript patched/drivers/misc/Kconfig
echo 'obj-$(CONFIG_ACERHK) += acerhk/' >> patched/drivers/misc/Makefile
set +e
diff -urN orig patched > diff
set -e
ensureDir $out
tar jcf ${out}/acerhk-patch.tar.bz2 diff
}
phases="buildPhase";
genericBuild

View File

@ -0,0 +1,20 @@
args:
args.stdenv.mkDerivation {
name = "acerhk_kernel_patch-0.5.35";
kernel = args.kernel.src;
inherit (args) debug;
acerhk = args.fetchurl {
url = http://mirror.switch.ch/mirror/gentoo/distfiles/acerhk-0.5.35.tar.bz2;
sha256 = "1kg002qraa8vha2cgza3z74d9j46g180g5b44zbv64dsa9n2j4b0";
};
buildInputs =(with args; [gnupatch]);
builder = ./builder.sh;
meta = {
description = "Hotkey driver for some Acer";
homepage = http://www.cakey.de/acerhk/;
license = "GPL-2";
};
}

View File

@ -0,0 +1,31 @@
args:
args.stdenv.mkDerivation {
name = "radeontool-1.5";
inherit (args) pciutils;
# Don't know wether it's a good idea to hardcode the lspci path..
# But it will work on nix..
postUnpack = "
cd $sourceRoot;
sed -i \"s%lspci%\$pciutils/sbin/lspci%g\" radeontool.c
cd ..
";
src = args.fetchurl {
url = http://fdd.com/software/radeon/radeontool-1.5.tar.gz;
sha256 = "0qbkawhhq0y0gqbbql7q04y0v0hims5c4jkjsbc1y03rf9kr10ar";
};
installPhase = "
ensureDir \$out/bin
chmod +x lightwatch.pl
cp radeontool lightwatch.pl \$out/bin
";
meta = {
description = "Control the backlight and external video output of ATI Radeon Mobility graphics cards";
homepage = http://fdd.com/software/radeon/;
license = "ZLIB";
};
}

View File

@ -0,0 +1,15 @@
args: with args;
stdenv.mkDerivation {
name = "reiserfsprogs-3.6.19";
src = fetchurl {
url = ftp://ftp.namesys.com/pub/reiserfsprogs/reiserfsprogs-3.6.19.tar.gz;
sha256 = "1gv8gr0l5l2j52540y2wj9c9h7fn0r3vabykf95748ydmr9jr1n0";
};
homepage=http://www.namesys.com/;
description="Reiserfs Utilities";
license="GPL-2";
}

View File

@ -1,6 +1,8 @@
{stdenv, fetchurl}:
{stdenv, fetchurl, kernelHeaders , tunctl ? false}:
stdenv.mkDerivation {
inherit tunctl;
buildInputs = if tunctl then kernelHeaders else null;
name = "uml-utilities-20040114";
builder = ./builder.sh;
src = fetchurl {

View File

@ -0,0 +1,19 @@
args:
args.stdenv.mkDerivation {
name = "dnsmasq-2.40";
src = args.fetchurl {
url = http://www.thekelleys.org.uk/dnsmasq/dnsmasq-2.40.tar.gz;
sha256 = "1q346l403rvvmvr14fk2l201p8fl3p5417vkp95zlx00jdb7hl8n";
};
installPhase = "ensureDir \$out; make DESTDIR=\$out PREFIX=ôônstall";
buildInputs =(with args; []);
meta = {
description = "DNS forwarder and DHCP server";
homepage = http://www.thekelleys.org.uk/dnsmasq/doc.html;
license = "GPL";
};
}

View File

@ -224,6 +224,11 @@ rec {
sshSupport = true;
};
# TODO do some testing
fetchhg = import ../build-support/fetchhg {
inherit stdenv mercurial nix;
};
# Allow the stdenv to determine fetchurl, to cater for strange
# requirements.
fetchurl = useFromStdenv (stdenv ? fetchurl) stdenv.fetchurl
@ -326,6 +331,11 @@ rec {
curl = if stdenv ? curl then stdenv.curl else (assert false; null);
dnsmasq = import ../tools/networking/dnsmasq {
# TODO i18n can be installed as well, implement it?
inherit fetchurl stdenv;
};
dhcp = import ../tools/networking/dhcp {
inherit fetchurl stdenv groff nettools coreutils iputils gnused bash;
};
@ -1121,6 +1131,10 @@ rec {
inherit fetchurl stdenv perl autoconf;
};
avrdude = import ../development/tools/misc/avrdude {
inherit lib fetchurl stdenv flex yacc;
};
binutils = useFromStdenv (stdenv ? binutils) stdenv.binutils
(import ../development/tools/misc/binutils {
inherit fetchurl stdenv noSysDirs;
@ -1270,6 +1284,10 @@ rec {
inherit fetchurl stdenv ncurses;
};
uisp = import ../development/tools/misc/uisp {
inherit fetchurl stdenv;
};
uuagc = import ../development/tools/haskell/uuagc {
inherit fetchurl stdenv;
ghc = ghc66;
@ -1428,6 +1446,7 @@ rec {
inherit fetchurl stdenv;
};
# commented out because it's using the new configuration style proposal which is unstable
# needs some testing ..
#fltk20 = (import ../development/libraries/fltk) {
@ -1760,6 +1779,10 @@ rec {
inherit fetchurl stdenv;
};
libixp_for_wmii = lowPrio (import ../development/libraries/libixp_for_wmii {
inherit fetchurl stdenv;
});
mesaSupported =
system == "i686-linux" ||
system == "x86_64-linux";
@ -2410,6 +2433,12 @@ rec {
### OS-SPECIFIC
# this creates a patch which can be applied to the kernel to integrate this module..
kernel_module_acerhk = import ../os-specific/linux/kernel/acerhk {
inherit fetchurl stdenv gnupatch;
kernel = kernel_2_6_21;
debug = true;
};
_915resolution = import ../os-specific/linux/915resolution {
inherit fetchurl stdenv;
@ -2592,6 +2621,14 @@ rec {
"CONFIG_EXT3COW_FS_POSIX_ACL=y\n" +
"CONFIG_EXT3COW_FS_SECURITY=y\n";
}
/* commented out because only acer users have need for it..
It takes quite a while to create the patch when unpacking the kernel sources only for that task
{ name = "acerhk";
patch = kernel_module_acerhk + "/acerhk-patch.tar.bz2" ;
extraConfig =
"CONFIG_ACERHK=m\n";
}
*/
{ name = "paravirt-nvidia";
patch = ../os-specific/linux/kernel/2.6.20-paravirt-nvidia.patch;
}
@ -2788,6 +2825,15 @@ rec {
inherit fetchurl stdenv pam openssl libnscd;
};
reiserfsprogs = import ../os-specific/linux/reiserfsprogs {
inherit fetchurl stdenv;
};
radeontools = import ../os-specific/linux/radeontools {
inherit pciutils;
inherit fetchurl stdenv;
};
shadowutils = import ../os-specific/linux/shadow {
inherit fetchurl stdenv;
};
@ -2833,7 +2879,8 @@ rec {
};
umlutilities = import ../os-specific/linux/uml-utilities {
inherit fetchurl stdenv;
inherit fetchurl kernelHeaders stdenv;
tunctl = true;
};
upstart = import ../os-specific/linux/upstart {
@ -2962,6 +3009,11 @@ rec {
inherit fetchurl stdenv unzip;
};
# commented out because it's using the new configuration style proposal which is unstable
#biew = import ../applications/misc/biew {
# inherit lib stdenv fetchurl ncurses;
#};
bmp = import ../applications/audio/bmp {
inherit fetchurl stdenv pkgconfig libogg libvorbis alsaLib id3lib;
inherit (gnome) esound libglade;
@ -3088,6 +3140,10 @@ rec {
xftSupport = true;
};
fetchmail = import ../applications/misc/fetchmail {
inherit stdenv fetchurl;
};
wireshark = import ../applications/networking/sniffers/wireshark {
inherit fetchurl stdenv perl pkgconfig libpcap;
inherit (gtkLibs) gtk;
@ -3279,6 +3335,10 @@ rec {
inherit fetchurl stdenv ncurses which openssl;
};
msmtp = import ../applications/networking/msmtp {
inherit fetchurl stdenv;
};
mythtv = import ../applications/video/mythtv {
inherit fetchurl stdenv which qt3 x11 lame zlib mesa;
inherit (xlibs) libX11 libXinerama libXv libXxf86vm libXrandr libXmu;
@ -3335,6 +3395,16 @@ rec {
inherit fetchurl stdenv ncurses;
};
# perhaps there are better apps for this task? It's how I had configured my preivous system.
# And I don't want to rewrite all rules
procmail = import ../applications/misc/procmail {
inherit fetchurl stdenv autoconf;
};
pstree = import ../applications/misc/pstree {
inherit stdenv fetchurl;
};
pythonmagick = import ../applications/graphics/PythonMagick {
inherit fetchurl stdenv pkgconfig imagemagick boost;
python = python25;
@ -3467,9 +3537,17 @@ rec {
inherit (gtkLibs1x) gdkpixbuf;
};
wmii = import ../applications/window-managers/wmii {
# I'm keen on wmiimenu only >wmii-3.5 no longer has it...
wmiimenu = import ../applications/window-managers/wmii31 {
libixp = libixp03;
inherit fetchurl stdenv x11 gawk;
inherit fetchurl /* fetchhg */ stdenv gawk;
inherit (xlibs) libX11;
};
wmiiSnap = import ../applications/window-managers/wmii {
libixp = libixp_for_wmii;
inherit fetchurl /* fetchhg */ stdenv gawk;
inherit (xlibs) libX11;
};
wrapFirefox = firefox: import ../applications/networking/browsers/firefox-wrapper {
@ -3747,6 +3825,11 @@ rec {
inherit fetchurl stdenv libjpeg libpng zlib x11;
x11Support = true;
}));
#gxemul = (import ../misc/gxemul) {
#inherit lib stdenv fetchurl;
#inherit (xlibs) libX11;
#};
keynav = import ../tools/X11/keynav {
inherit stdenv fetchurl;