Merge branch 'merge-kernel-builds' into upstream-master
This is a second attempt at unifying the generic and manual-config
kernel builds (see #412 for the last time).
The set of working kernel packages is a superset of those that work on
master, and as the only objection last time was the size of the $dev
closure and now both $out and $dev combined are 20M smaller than $out on
master (see message for ac2035287f
), this
should be unobjectionable.
Signed-off-by: Shea Levy <shea@shealevy.com>
This commit is contained in:
commit
139f8949e6
@ -16,7 +16,6 @@ let
|
|||||||
ati_unfree = { modules = [ kernelPackages.ati_drivers_x11 ]; driverName = "fglrx"; };
|
ati_unfree = { modules = [ kernelPackages.ati_drivers_x11 ]; driverName = "fglrx"; };
|
||||||
nouveau = { modules = [ pkgs.xf86_video_nouveau ]; };
|
nouveau = { modules = [ pkgs.xf86_video_nouveau ]; };
|
||||||
nvidia = { modules = [ kernelPackages.nvidia_x11 ]; };
|
nvidia = { modules = [ kernelPackages.nvidia_x11 ]; };
|
||||||
nvidiaLegacy96 = { modules = [ kernelPackages.nvidia_x11_legacy96 ]; driverName = "nvidia"; };
|
|
||||||
nvidiaLegacy173 = { modules = [ kernelPackages.nvidia_x11_legacy173 ]; driverName = "nvidia"; };
|
nvidiaLegacy173 = { modules = [ kernelPackages.nvidia_x11_legacy173 ]; driverName = "nvidia"; };
|
||||||
nvidiaLegacy304 = { modules = [ kernelPackages.nvidia_x11_legacy304 ]; driverName = "nvidia"; };
|
nvidiaLegacy304 = { modules = [ kernelPackages.nvidia_x11_legacy304 ]; driverName = "nvidia"; };
|
||||||
unichrome = { modules = [ pkgs.xorgVideoUnichrome ]; };
|
unichrome = { modules = [ pkgs.xorgVideoUnichrome ]; };
|
||||||
@ -443,7 +442,6 @@ in
|
|||||||
|
|
||||||
boot.extraModulePackages =
|
boot.extraModulePackages =
|
||||||
optional (elem "nvidia" driverNames) kernelPackages.nvidia_x11 ++
|
optional (elem "nvidia" driverNames) kernelPackages.nvidia_x11 ++
|
||||||
optional (elem "nvidiaLegacy96" driverNames) kernelPackages.nvidia_x11_legacy96 ++
|
|
||||||
optional (elem "nvidiaLegacy173" driverNames) kernelPackages.nvidia_x11_legacy173 ++
|
optional (elem "nvidiaLegacy173" driverNames) kernelPackages.nvidia_x11_legacy173 ++
|
||||||
optional (elem "nvidiaLegacy304" driverNames) kernelPackages.nvidia_x11_legacy304 ++
|
optional (elem "nvidiaLegacy304" driverNames) kernelPackages.nvidia_x11_legacy304 ++
|
||||||
optional (elem "virtualbox" driverNames) kernelPackages.virtualboxGuestAdditions ++
|
optional (elem "virtualbox" driverNames) kernelPackages.virtualboxGuestAdditions ++
|
||||||
@ -497,7 +495,6 @@ in
|
|||||||
pkgs.xdg_utils
|
pkgs.xdg_utils
|
||||||
]
|
]
|
||||||
++ optional (elem "nvidia" driverNames) kernelPackages.nvidia_x11
|
++ optional (elem "nvidia" driverNames) kernelPackages.nvidia_x11
|
||||||
++ optional (elem "nvidiaLegacy96" driverNames) kernelPackages.nvidia_x11_legacy96
|
|
||||||
++ optional (elem "nvidiaLegacy173" driverNames) kernelPackages.nvidia_x11_legacy173
|
++ optional (elem "nvidiaLegacy173" driverNames) kernelPackages.nvidia_x11_legacy173
|
||||||
++ optional (elem "nvidiaLegacy304" driverNames) kernelPackages.nvidia_x11_legacy304
|
++ optional (elem "nvidiaLegacy304" driverNames) kernelPackages.nvidia_x11_legacy304
|
||||||
++ optional (elem "virtualbox" driverNames) xorg.xrefresh
|
++ optional (elem "virtualbox" driverNames) xorg.xrefresh
|
||||||
@ -521,8 +518,6 @@ in
|
|||||||
XORG_DRI_DRIVER_PATH = "/run/opengl-driver/lib/dri"; # !!! Depends on the driver selected at runtime.
|
XORG_DRI_DRIVER_PATH = "/run/opengl-driver/lib/dri"; # !!! Depends on the driver selected at runtime.
|
||||||
} // optionalAttrs (elem "nvidia" driverNames) {
|
} // optionalAttrs (elem "nvidia" driverNames) {
|
||||||
LD_LIBRARY_PATH = "${xorg.libX11}/lib:${xorg.libXext}/lib:${kernelPackages.nvidia_x11}/lib";
|
LD_LIBRARY_PATH = "${xorg.libX11}/lib:${xorg.libXext}/lib:${kernelPackages.nvidia_x11}/lib";
|
||||||
} // optionalAttrs (elem "nvidiaLegacy96" driverNames) {
|
|
||||||
LD_LIBRARY_PATH = "${xorg.libX11}/lib:${xorg.libXext}/lib:${kernelPackages.nvidia_x11_legacy96}/lib";
|
|
||||||
} // optionalAttrs (elem "nvidiaLegacy173" driverNames) {
|
} // optionalAttrs (elem "nvidiaLegacy173" driverNames) {
|
||||||
LD_LIBRARY_PATH = "${xorg.libX11}/lib:${xorg.libXext}/lib:${kernelPackages.nvidia_x11_legacy173}/lib";
|
LD_LIBRARY_PATH = "${xorg.libX11}/lib:${xorg.libXext}/lib:${kernelPackages.nvidia_x11_legacy173}/lib";
|
||||||
} // optionalAttrs (elem "nvidiaLegacy304" driverNames) {
|
} // optionalAttrs (elem "nvidiaLegacy304" driverNames) {
|
||||||
@ -544,8 +539,6 @@ in
|
|||||||
${optionalString cfg.driSupport32Bit
|
${optionalString cfg.driSupport32Bit
|
||||||
"ln -sf ${pkgs_i686.linuxPackages.nvidia_x11.override { libsOnly = true; kernelDev = null; } } /run/opengl-driver-32"}
|
"ln -sf ${pkgs_i686.linuxPackages.nvidia_x11.override { libsOnly = true; kernelDev = null; } } /run/opengl-driver-32"}
|
||||||
''
|
''
|
||||||
else if elem "nvidiaLegacy96" driverNames then
|
|
||||||
"ln -sf ${kernelPackages.nvidia_x11_legacy96} /run/opengl-driver"
|
|
||||||
else if elem "nvidiaLegacy173" driverNames then
|
else if elem "nvidiaLegacy173" driverNames then
|
||||||
"ln -sf ${kernelPackages.nvidia_x11_legacy173} /run/opengl-driver"
|
"ln -sf ${kernelPackages.nvidia_x11_legacy173} /run/opengl-driver"
|
||||||
else if elem "nvidiaLegacy304" driverNames then
|
else if elem "nvidiaLegacy304" driverNames then
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ stdenv, fetchurl, lib, iasl, dev86, pam, libxslt, libxml2, libX11, xproto, libXext
|
{ stdenv, fetchurl, lib, iasl, dev86, pam, libxslt, libxml2, libX11, xproto, libXext
|
||||||
, libXcursor, libXmu, qt4, libIDL, SDL, libcap, zlib, libpng, glib, kernelDev, lvm2
|
, libXcursor, libXmu, qt4, libIDL, SDL, libcap, zlib, libpng, glib, kernel, lvm2
|
||||||
, which, alsaLib, curl, gawk
|
, which, alsaLib, curl, gawk
|
||||||
, xorriso, makeself, perl, pkgconfig
|
, xorriso, makeself, perl, pkgconfig
|
||||||
, javaBindings ? false, jdk ? null
|
, javaBindings ? false, jdk ? null
|
||||||
@ -52,7 +52,7 @@ let
|
|||||||
};
|
};
|
||||||
|
|
||||||
in stdenv.mkDerivation {
|
in stdenv.mkDerivation {
|
||||||
name = "virtualbox-${version}-${kernelDev.version}";
|
name = "virtualbox-${version}-${kernel.version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://download.virtualbox.org/virtualbox/${version}/VirtualBox-${version}.tar.bz2";
|
url = "http://download.virtualbox.org/virtualbox/${version}/VirtualBox-${version}.tar.bz2";
|
||||||
@ -61,14 +61,14 @@ in stdenv.mkDerivation {
|
|||||||
|
|
||||||
buildInputs =
|
buildInputs =
|
||||||
[ iasl dev86 libxslt libxml2 xproto libX11 libXext libXcursor qt4 libIDL SDL
|
[ iasl dev86 libxslt libxml2 xproto libX11 libXext libXcursor qt4 libIDL SDL
|
||||||
libcap glib kernelDev lvm2 python alsaLib curl pam xorriso makeself perl
|
libcap glib lvm2 python alsaLib curl pam xorriso makeself perl
|
||||||
pkgconfig which libXmu ]
|
pkgconfig which libXmu ]
|
||||||
++ optional javaBindings jdk
|
++ optional javaBindings jdk
|
||||||
++ optional pythonBindings python;
|
++ optional pythonBindings python;
|
||||||
|
|
||||||
prePatch = ''
|
prePatch = ''
|
||||||
set -x
|
set -x
|
||||||
MODULES_BUILD_DIR=`echo ${kernelDev}/lib/modules/*/build`
|
MODULES_BUILD_DIR=`echo ${kernel.dev}/lib/modules/*/build`
|
||||||
sed -e 's@/lib/modules/`uname -r`/build@'$MODULES_BUILD_DIR@ \
|
sed -e 's@/lib/modules/`uname -r`/build@'$MODULES_BUILD_DIR@ \
|
||||||
-e 's@MKISOFS --version@MKISOFS -version@' \
|
-e 's@MKISOFS --version@MKISOFS -version@' \
|
||||||
-e 's@PYTHONDIR=.*@PYTHONDIR=${if pythonBindings then python else ""}@' \
|
-e 's@PYTHONDIR=.*@PYTHONDIR=${if pythonBindings then python else ""}@' \
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchurl, lib, patchelf, cdrkit, kernelDev, which, makeWrapper
|
{ stdenv, fetchurl, lib, patchelf, cdrkit, kernel, which, makeWrapper
|
||||||
, xorg, dbus, virtualbox }:
|
, xorg, dbus, virtualbox }:
|
||||||
|
|
||||||
let
|
let
|
||||||
@ -8,14 +8,14 @@ let
|
|||||||
in
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "VirtualBox-GuestAdditions-${version}-${kernelDev.version}";
|
name = "VirtualBox-GuestAdditions-${version}-${kernel.version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
|
url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
|
||||||
sha256 = "f11a7f13dfe7bf9f246fb877144bb467fe6deadcd876568ec79b6ccd3b59d767";
|
sha256 = "f11a7f13dfe7bf9f246fb877144bb467fe6deadcd876568ec79b6ccd3b59d767";
|
||||||
};
|
};
|
||||||
|
|
||||||
KERN_DIR = "${kernelDev}/lib/modules/*/build";
|
KERN_DIR = "${kernel.dev}/lib/modules/*/build";
|
||||||
|
|
||||||
buildInputs = [ patchelf cdrkit makeWrapper dbus ];
|
buildInputs = [ patchelf cdrkit makeWrapper dbus ];
|
||||||
|
|
||||||
@ -115,7 +115,7 @@ stdenv.mkDerivation {
|
|||||||
for i in *
|
for i in *
|
||||||
do
|
do
|
||||||
cd $i
|
cd $i
|
||||||
kernelVersion=$(cd ${kernelDev}/lib/modules; ls)
|
kernelVersion=$(cd ${kernel.dev}/lib/modules; ls)
|
||||||
export MODULE_DIR=$out/lib/modules/$kernelVersion/misc
|
export MODULE_DIR=$out/lib/modules/$kernelVersion/misc
|
||||||
find . -type f | xargs sed -i -e "s|-o root||g" \
|
find . -type f | xargs sed -i -e "s|-o root||g" \
|
||||||
-e "s|-g root||g"
|
-e "s|-g root||g"
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
{ fetchurl, stdenv, linux, elfutils, latex2html, xmlto, docbook_xml_dtd_412
|
{ fetchurl, stdenv, elfutils, latex2html, xmlto, docbook_xml_dtd_412
|
||||||
, libxml2, docbook_xsl, libxslt, texLive, texLiveExtra, ghostscript, pkgconfig
|
, libxml2, docbook_xsl, libxslt, texLive, texLiveExtra, ghostscript, pkgconfig
|
||||||
, gtkmm, libglademm, boost, perl, sqlite }:
|
, gtkmm, libglademm, boost, perl, sqlite }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "systemtap-1.2-${linux.version}";
|
name = "systemtap-1.2";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://sources.redhat.com/systemtap/ftp/releases/${name}.tar.gz";
|
url = "http://sources.redhat.com/systemtap/ftp/releases/${name}.tar.gz";
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{ stdenv, fetchgit, kernelDev }:
|
{ stdenv, fetchgit, kernel }:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "acpi-call-${kernelDev.version}";
|
name = "acpi-call-${kernel.version}";
|
||||||
|
|
||||||
src = fetchgit {
|
src = fetchgit {
|
||||||
url = "git://github.com/mkottman/acpi_call.git";
|
url = "git://github.com/mkottman/acpi_call.git";
|
||||||
@ -12,12 +12,12 @@ stdenv.mkDerivation {
|
|||||||
preBuild = ''
|
preBuild = ''
|
||||||
sed -e 's/break/true/' -i examples/turn_off_gpu.sh
|
sed -e 's/break/true/' -i examples/turn_off_gpu.sh
|
||||||
sed -e 's@/bin/bash@.bin/sh@' -i examples/turn_off_gpu.sh
|
sed -e 's@/bin/bash@.bin/sh@' -i examples/turn_off_gpu.sh
|
||||||
sed -e "s@/lib/modules/\$(.*)@${kernelDev}/lib/modules/${kernelDev.modDirVersion}@" -i Makefile
|
sed -e "s@/lib/modules/\$(.*)@${kernel.dev}/lib/modules/${kernel.modDirVersion}@" -i Makefile
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out/lib/modules/${kernelDev.modDirVersion}/misc
|
mkdir -p $out/lib/modules/${kernel.modDirVersion}/misc
|
||||||
cp acpi_call.ko $out/lib/modules/${kernelDev.modDirVersion}/misc
|
cp acpi_call.ko $out/lib/modules/${kernel.modDirVersion}/misc
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
cp examples/turn_off_gpu.sh $out/bin/test_discrete_video_off.sh
|
cp examples/turn_off_gpu.sh $out/bin/test_discrete_video_off.sh
|
||||||
chmod a+x $out/bin/test_discrete_video_off.sh
|
chmod a+x $out/bin/test_discrete_video_off.sh
|
||||||
|
@ -1,28 +0,0 @@
|
|||||||
{ stdenv, fetchurl, builderDefs, kernelDev }:
|
|
||||||
let localDefs = builderDefs.passthru.function {
|
|
||||||
src = /* put a fetchurl here */
|
|
||||||
fetchurl {
|
|
||||||
url = http://downloads.sourceforge.net/madwifi/madwifi-0.9.4.tar.gz;
|
|
||||||
sha256 = "06jd5b8rfw7rmiva6jgmrb7n26g5plcg9marbnnmg68gbcqbr3xh";
|
|
||||||
};
|
|
||||||
|
|
||||||
buildInputs = [];
|
|
||||||
configureFlags = [];
|
|
||||||
makeFlags = [''KERNELPATH=${kernelDev}/lib/modules/*/build'' ''DESTDIR=$out''];
|
|
||||||
};
|
|
||||||
in with localDefs;
|
|
||||||
let
|
|
||||||
postInstall = fullDepEntry (''
|
|
||||||
ln -s $out/usr/local/bin $out/bin
|
|
||||||
'') [minInit doMakeInstall];
|
|
||||||
in
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
name = "atheros-0.9.4-${kernelDev.version}";
|
|
||||||
builder = writeScript (name + "-builder")
|
|
||||||
(textClosure localDefs [doMakeInstall
|
|
||||||
postInstall doForceShare doPropagate]);
|
|
||||||
meta = {
|
|
||||||
description = "Atheros WiFi driver";
|
|
||||||
inherit src;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchurl, kernelDev, xlibs, which, imake
|
{ stdenv, fetchurl, kernel, xlibs, which, imake
|
||||||
, mesa # for fgl_glxgears
|
, mesa # for fgl_glxgears
|
||||||
, libXxf86vm, xf86vidmodeproto # for fglrx_gamma
|
, libXxf86vm, xf86vidmodeproto # for fglrx_gamma
|
||||||
, xorg, makeWrapper, glibc, patchelf
|
, xorg, makeWrapper, glibc, patchelf
|
||||||
@ -22,9 +22,9 @@
|
|||||||
|
|
||||||
assert stdenv.system == "x86_64-linux";
|
assert stdenv.system == "x86_64-linux";
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
name = "ati-drivers-${version}-${kernel.version}";
|
stdenv.mkDerivation {
|
||||||
version = "13.4";
|
name = "ati-drivers-13.4-${kernel.version}";
|
||||||
|
|
||||||
builder = ./builder.sh;
|
builder = ./builder.sh;
|
||||||
|
|
||||||
@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
|
|||||||
mesa
|
mesa
|
||||||
];
|
];
|
||||||
|
|
||||||
kernel = kernelDev;
|
kernel = kernel.dev;
|
||||||
|
|
||||||
inherit glibc /* glibc only used for setting interpreter */;
|
inherit glibc /* glibc only used for setting interpreter */;
|
||||||
|
|
||||||
@ -72,6 +72,7 @@ stdenv.mkDerivation rec {
|
|||||||
maintainers = [stdenv.lib.maintainers.marcweber];
|
maintainers = [stdenv.lib.maintainers.marcweber];
|
||||||
platforms = [ "x86_64-linux" ];
|
platforms = [ "x86_64-linux" ];
|
||||||
hydraPlatforms = [];
|
hydraPlatforms = [];
|
||||||
|
broken = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# moved assertions here because the name is evaluated when the NixOS manual is generated
|
# moved assertions here because the name is evaluated when the NixOS manual is generated
|
||||||
|
@ -1,41 +0,0 @@
|
|||||||
{ stdenv, fetchurl, kernelDev, aufs }:
|
|
||||||
|
|
||||||
assert aufs != null;
|
|
||||||
|
|
||||||
let version = "20100506"; in
|
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
name = "aufs2-util-${version}-${kernelDev.version}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "http://tarballs.nixos.org/aufs2-util-git-${version}.tar.bz2";
|
|
||||||
sha256 = "0ly0c3p8fjxqbk8k5rmm1a91wg8wcrvhi1lv4aawalkkk8rqbnwk";
|
|
||||||
};
|
|
||||||
|
|
||||||
buildInputs = [ aufs ];
|
|
||||||
|
|
||||||
makeFlags =
|
|
||||||
[ "KDIR=${kernelDev}/lib/modules/${kernelDev.version}/build"
|
|
||||||
"Install=install"
|
|
||||||
"DESTDIR=$(out)"
|
|
||||||
];
|
|
||||||
|
|
||||||
postInstall =
|
|
||||||
''
|
|
||||||
mv $out/usr/* $out
|
|
||||||
rmdir $out/usr
|
|
||||||
|
|
||||||
cp aufs.shlib $out/lib/
|
|
||||||
|
|
||||||
substituteInPlace $out/bin/aubrsync \
|
|
||||||
--replace /sbin/mount $out/sbin/mount \
|
|
||||||
--replace /usr/lib/aufs.shlib $out/lib/aufs.shlib
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "Utilities for AUFS2";
|
|
||||||
homepage = http://aufs.sourceforge.net/;
|
|
||||||
maintainers = [ stdenv.lib.maintainers.eelco ];
|
|
||||||
platforms = stdenv.lib.platforms.linux;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,40 +0,0 @@
|
|||||||
{ stdenv, fetchgit, kernelDev, aufs }:
|
|
||||||
|
|
||||||
assert aufs != null;
|
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
name = "aufs3-util-${aufs.patch.version}-${kernelDev.version}";
|
|
||||||
|
|
||||||
src = fetchgit {
|
|
||||||
url = git://aufs.git.sourceforge.net/gitroot/aufs/aufs-util.git;
|
|
||||||
rev = aufs.patch.utilRev;
|
|
||||||
sha256 = aufs.patch.utilHash;
|
|
||||||
};
|
|
||||||
|
|
||||||
buildInputs = [ aufs ];
|
|
||||||
|
|
||||||
makeFlags =
|
|
||||||
[ "KDIR=${kernelDev}/lib/modules/${kernelDev.modDirVersion}/build"
|
|
||||||
"Install=install"
|
|
||||||
"DESTDIR=$(out)"
|
|
||||||
];
|
|
||||||
|
|
||||||
postInstall =
|
|
||||||
''
|
|
||||||
mv $out/usr/* $out
|
|
||||||
rmdir $out/usr
|
|
||||||
|
|
||||||
cp aufs.shlib $out/lib/
|
|
||||||
|
|
||||||
substituteInPlace $out/bin/aubrsync \
|
|
||||||
--replace /sbin/mount $out/sbin/mount \
|
|
||||||
--replace /usr/lib/aufs.shlib $out/lib/aufs.shlib
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "Utilities for AUFS3";
|
|
||||||
homepage = http://aufs.sourceforge.net/;
|
|
||||||
maintainers = [ stdenv.lib.maintainers.eelco ];
|
|
||||||
platforms = stdenv.lib.platforms.linux;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,43 +0,0 @@
|
|||||||
{ stdenv, fetchurl, kernelDev, perl, fetchgit }:
|
|
||||||
|
|
||||||
assert kernelDev.features ? aufsBase;
|
|
||||||
|
|
||||||
let version = "20100522"; in
|
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
name = "aufs2-${version}-${kernelDev.version}";
|
|
||||||
|
|
||||||
src =
|
|
||||||
if (builtins.lessThan (builtins.compareVersions kernelDev.version "2.6.35") 0) then
|
|
||||||
fetchurl {
|
|
||||||
url = "http://tarballs.nixos.org/aufs2-standalone-git-${version}.tar.bz2";
|
|
||||||
sha256 = "1g4mw4qx2xzpygdwjiw36bkhfz1hi7wxx7w79n2h0lr5grzzdnd6";
|
|
||||||
}
|
|
||||||
else
|
|
||||||
fetchgit {
|
|
||||||
url = "http://git.c3sl.ufpr.br/pub/scm/aufs/aufs2-standalone.git";
|
|
||||||
rev = "d950eef373ff1e0448ad3945b734da6ab050571d";
|
|
||||||
sha256 = "816145b0341bd7862df50c058144cf6ebc25c05d2976f781ff0fe10d4559b853";
|
|
||||||
};
|
|
||||||
|
|
||||||
buildInputs = [ perl ];
|
|
||||||
|
|
||||||
makeFlags = "KDIR=${kernelDev}/lib/modules/${kernelDev.version}/build";
|
|
||||||
|
|
||||||
installPhase =
|
|
||||||
''
|
|
||||||
mkdir -p $out/lib/modules/${kernelDev.version}/misc
|
|
||||||
cp aufs.ko $out/lib/modules/${kernelDev.version}/misc
|
|
||||||
|
|
||||||
# Install the headers because aufs2-util requires them.
|
|
||||||
cp -prvd include $out/
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "Another Unionfs implementation for Linux (second generation)";
|
|
||||||
homepage = http://aufs.sourceforge.net/;
|
|
||||||
maintainers = [ stdenv.lib.maintainers.eelco
|
|
||||||
stdenv.lib.maintainers.raskin ];
|
|
||||||
platforms = stdenv.lib.platforms.linux;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,44 +0,0 @@
|
|||||||
{ stdenv, kernelDev, perl }:
|
|
||||||
|
|
||||||
let
|
|
||||||
|
|
||||||
aufsPredicate = x:
|
|
||||||
if x ? features then
|
|
||||||
(if x.features ? aufs3 then x.features.aufs3 else false)
|
|
||||||
else false;
|
|
||||||
featureAbort = abort "This kernel does not have aufs 3 support";
|
|
||||||
patch = stdenv.lib.findFirst aufsPredicate featureAbort kernelDev.kernelPatches;
|
|
||||||
|
|
||||||
in
|
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
name = "aufs3-${patch.version}-${kernelDev.version}";
|
|
||||||
|
|
||||||
src = patch.patch.src;
|
|
||||||
|
|
||||||
buildInputs = [ perl ];
|
|
||||||
|
|
||||||
makeFlags = "KDIR=${kernelDev}/lib/modules/${kernelDev.modDirVersion}/build";
|
|
||||||
|
|
||||||
NIX_CFLAGS_COMPILE="-I${kernelDev}/lib/modules/${kernelDev.modDirVersion}/build/include/generated";
|
|
||||||
|
|
||||||
installPhase =
|
|
||||||
''
|
|
||||||
mkdir -p $out/lib/modules/${kernelDev.modDirVersion}/misc
|
|
||||||
cp -v aufs.ko $out/lib/modules/${kernelDev.modDirVersion}/misc
|
|
||||||
|
|
||||||
# Install the headers because aufs3-util requires them.
|
|
||||||
mkdir -p $out/include/linux
|
|
||||||
cp -v usr/include/linux/aufs_type.h $out/include/linux
|
|
||||||
'';
|
|
||||||
|
|
||||||
passthru = { inherit patch; };
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "Another Unionfs implementation for Linux (third generation)";
|
|
||||||
homepage = http://aufs.sourceforge.net/;
|
|
||||||
maintainers = [ stdenv.lib.maintainers.eelco
|
|
||||||
stdenv.lib.maintainers.raskin ];
|
|
||||||
platforms = stdenv.lib.platforms.linux;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,17 +1,17 @@
|
|||||||
{ stdenv, fetchurl, kernelDev }:
|
{ stdenv, fetchurl, kernel }:
|
||||||
|
|
||||||
let base = "batman-adv-2013.2.0"; in
|
let base = "batman-adv-2013.4.0"; in
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "${base}-${kernelDev.version}";
|
name = "${base}-${kernel.version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://downloads.open-mesh.org/batman/releases/${base}/${base}.tar.gz";
|
url = "http://downloads.open-mesh.org/batman/releases/${base}/${base}.tar.gz";
|
||||||
sha1 = "7d2aff2ad118cbc5452de43f7e9da8374521ec0e";
|
sha1 = "870a85df5410b3b5623be69e75297e642c91a7d4";
|
||||||
};
|
};
|
||||||
|
|
||||||
preBuild = ''
|
preBuild = ''
|
||||||
makeFlags="KERNELPATH=${kernelDev}/lib/modules/${kernelDev.modDirVersion}/build"
|
makeFlags="KERNELPATH=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
|
||||||
sed -i -e "s,INSTALL_MOD_DIR=,INSTALL_MOD_PATH=$out INSTALL_MOD_DIR=," \
|
sed -i -e "s,INSTALL_MOD_DIR=,INSTALL_MOD_PATH=$out INSTALL_MOD_DIR=," \
|
||||||
-e /depmod/d Makefile
|
-e /depmod/d Makefile
|
||||||
'';
|
'';
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
{ stdenv, fetchurl, kernelDev }:
|
{ stdenv, fetchurl, kernel }:
|
||||||
|
|
||||||
let
|
let
|
||||||
baseName = "bbswitch";
|
baseName = "bbswitch";
|
||||||
version = "0.7";
|
version = "0.7";
|
||||||
name = "${baseName}-${version}-${kernelDev.version}";
|
name = "${baseName}-${version}-${kernel.version}";
|
||||||
|
|
||||||
in
|
in
|
||||||
|
|
||||||
@ -17,13 +17,13 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
preBuild = ''
|
preBuild = ''
|
||||||
substituteInPlace Makefile \
|
substituteInPlace Makefile \
|
||||||
--replace "\$(shell uname -r)" "${kernelDev.modDirVersion}" \
|
--replace "\$(shell uname -r)" "${kernel.modDirVersion}" \
|
||||||
--replace "/lib/modules" "${kernelDev}/lib/modules"
|
--replace "/lib/modules" "${kernel.dev}/lib/modules"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
ensureDir $out/lib/modules/${kernelDev.modDirVersion}/misc
|
ensureDir $out/lib/modules/${kernel.modDirVersion}/misc
|
||||||
cp bbswitch.ko $out/lib/modules/${kernelDev.modDirVersion}/misc
|
cp bbswitch.ko $out/lib/modules/${kernel.modDirVersion}/misc
|
||||||
|
|
||||||
ensureDir $out/bin
|
ensureDir $out/bin
|
||||||
tee $out/bin/discrete_vga_poweroff << EOF
|
tee $out/bin/discrete_vga_poweroff << EOF
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
{ stdenv, fetchurl, kernelDev, perl, makeWrapper }:
|
{ stdenv, fetchurl, kernel, perl, makeWrapper }:
|
||||||
|
|
||||||
# BLCR 0.8.4 works for kernel version up to 2.6.38 (including 2.6.38.x)
|
# BLCR 0.8.4 works for kernel version up to 2.6.38 (including 2.6.38.x)
|
||||||
# BLCR 0.8.5 should works for kernel version up to 3.7.1
|
# BLCR 0.8.5 should works for kernel version up to 3.7.1
|
||||||
|
|
||||||
assert stdenv.isLinux;
|
assert stdenv.isLinux;
|
||||||
assert builtins.compareVersions "3.7.2" kernelDev.version == 1;
|
assert builtins.compareVersions "3.7.2" kernel.version == 1;
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "blcr_${kernelDev.version}-0.8.5";
|
name = "blcr_${kernel.version}-0.8.5";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = http://crd.lbl.gov/assets/Uploads/FTG/Projects/CheckpointRestart/downloads/blcr-0.8.5.tar.gz;
|
url = http://crd.lbl.gov/assets/Uploads/FTG/Projects/CheckpointRestart/downloads/blcr-0.8.5.tar.gz;
|
||||||
@ -18,9 +18,9 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
configureFlagsArray=(
|
configureFlagsArray=(
|
||||||
--with-linux=${kernelDev}/lib/modules/${kernelDev.modDirVersion}/build
|
--with-linux=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build
|
||||||
--with-kmod-dir=$out/lib/modules/${kernelDev.modDirVersion}
|
--with-kmod-dir=$out/lib/modules/${kernel.modDirVersion}
|
||||||
--with-system-map=${kernelDev}/System.map
|
--with-system-map=${kernel}/System.map
|
||||||
)
|
)
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
@ -1,49 +0,0 @@
|
|||||||
{ stdenv, fetchurl, kernelDev }:
|
|
||||||
let
|
|
||||||
version = "6_30_223_141";
|
|
||||||
in
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
name = "broadcom-sta-${version}-${kernelDev.version}";
|
|
||||||
|
|
||||||
src = if stdenv.system == "i686-linux" then (
|
|
||||||
fetchurl {
|
|
||||||
url = "http://www.broadcom.com/docs/linux_sta/hybrid-v35-nodebug-pcoem-${version}.tar.gz";
|
|
||||||
sha256 = "19wra62dpm0x0byksh871yxr128b4v13kzkzqv56igjfpzv36z6m";
|
|
||||||
} ) else (
|
|
||||||
fetchurl {
|
|
||||||
url = "http://www.broadcom.com/docs/linux_sta/hybrid-v35_64-nodebug-pcoem-${version}.tar.gz";
|
|
||||||
sha256 = "0jlvch7d3khmmg5kp80x4ka33hidj8yykqjcqq6j56z2g6wb4dsz";
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
buildInputs = [ kernelDev ];
|
|
||||||
patches = [
|
|
||||||
./linux-recent.patch
|
|
||||||
./license.patch
|
|
||||||
];
|
|
||||||
|
|
||||||
makeFlags = "KBASE=${kernelDev}/lib/modules/${kernelDev.modDirVersion}";
|
|
||||||
|
|
||||||
unpackPhase = ''
|
|
||||||
sourceRoot=broadcom-sta
|
|
||||||
mkdir "$sourceRoot"
|
|
||||||
tar xvf "$src" -C "$sourceRoot"
|
|
||||||
'';
|
|
||||||
|
|
||||||
installPhase =
|
|
||||||
''
|
|
||||||
binDir="$out/lib/modules/${kernelDev.modDirVersion}/kernel/net/wireless/"
|
|
||||||
docDir="$out/share/doc/broadcom-sta/"
|
|
||||||
mkdir -p "$binDir" "$docDir"
|
|
||||||
cp wl.ko "$binDir"
|
|
||||||
cp lib/LICENSE.txt "$docDir"
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "Kernel module driver for some Broadcom's wireless cards";
|
|
||||||
homepage = http://www.broadcom.com/support/802.11/linux_sta.php;
|
|
||||||
license = "unfree-redistributable";
|
|
||||||
maintainers = with stdenv.lib.maintainers; [ phreedom vcunat ];
|
|
||||||
platforms = stdenv.lib.platforms.linux;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,13 +0,0 @@
|
|||||||
diff -Naur hybrid-portsrc-x86_32-v5_10_91_9.orig/src/wl/sys/wl_linux.c hybrid-portsrc-x86_32-v5_10_91_9/src/wl/sys/wl_linux.c
|
|
||||||
--- hybrid-portsrc-x86_32-v5_10_91_9.orig/src/wl/sys/wl_linux.c 2009-04-23 02:48:59.000000000 +0900
|
|
||||||
+++ hybrid-portsrc-x86_32-v5_10_91_9/src/wl/sys/wl_linux.c 2009-05-08 00:48:20.000000000 +0900
|
|
||||||
@@ -171,6 +171,8 @@
|
|
||||||
static void wl_free_if(wl_info_t *wl, wl_if_t *wlif);
|
|
||||||
static void wl_get_driver_info(struct net_device *dev, struct ethtool_drvinfo *info);
|
|
||||||
|
|
||||||
+MODULE_LICENSE("MIXED/Proprietary");
|
|
||||||
+
|
|
||||||
#if defined(WL_CONFIG_RFKILL)
|
|
||||||
#include <linux/rfkill.h>
|
|
||||||
static int wl_init_rfkill(wl_info_t *wl);
|
|
||||||
|
|
@ -1,38 +1,37 @@
|
|||||||
{ stdenv, fetchurl, kernelDev }:
|
{ stdenv, fetchurl, kernel }:
|
||||||
|
let
|
||||||
let version = "5_100_82_112";
|
version = "6_30_223_141";
|
||||||
bits = if stdenv.system == "i686-linux" then "32" else
|
|
||||||
assert stdenv.system == "x86_64-linux"; "64";
|
|
||||||
in
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "broadcom-sta-${version}-${kernelDev.version}";
|
name = "broadcom-sta-${version}-${kernel.version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = if stdenv.system == "i686-linux" then (
|
||||||
url = "http://www.broadcom.com/docs/linux_sta/hybrid-portsrc_x86_${bits}-v${version}.tar.gz";
|
fetchurl {
|
||||||
sha256 = if bits == "32"
|
url = "http://www.broadcom.com/docs/linux_sta/hybrid-v35-nodebug-pcoem-${version}.tar.gz";
|
||||||
then "1rvhw9ngw0djxyyjx5m01c0js89zs3xiwmra03al6f9q7cbf7d45"
|
sha256 = "19wra62dpm0x0byksh871yxr128b4v13kzkzqv56igjfpzv36z6m";
|
||||||
else "1qsarnry10f5m8a73wbr9cg2ifs00sqg6x0ay59l72vl9hb2zlww";
|
} ) else (
|
||||||
};
|
fetchurl {
|
||||||
|
url = "http://www.broadcom.com/docs/linux_sta/hybrid-v35_64-nodebug-pcoem-${version}.tar.gz";
|
||||||
|
sha256 = "0jlvch7d3khmmg5kp80x4ka33hidj8yykqjcqq6j56z2g6wb4dsz";
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
buildInputs = [ kernelDev ];
|
patches = [
|
||||||
patches =
|
./linux-recent.patch
|
||||||
[ ./makefile.patch ./linux-2.6.39.patch ./linux-3.2.patch
|
./license.patch
|
||||||
./linux-3.4.patch ./license.patch
|
];
|
||||||
];
|
|
||||||
|
|
||||||
makeFlags = "KDIR=${kernelDev}/lib/modules/${kernelDev.modDirVersion}/build";
|
makeFlags = "KBASE=${kernel.dev}/lib/modules/${kernel.modDirVersion}";
|
||||||
|
|
||||||
unpackPhase =
|
unpackPhase = ''
|
||||||
''
|
|
||||||
sourceRoot=broadcom-sta
|
sourceRoot=broadcom-sta
|
||||||
mkdir "$sourceRoot"
|
mkdir "$sourceRoot"
|
||||||
tar xvf "$src" -C "$sourceRoot"
|
tar xvf "$src" -C "$sourceRoot"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installPhase =
|
installPhase =
|
||||||
''
|
''
|
||||||
binDir="$out/lib/modules/${kernelDev.modDirVersion}/kernel/net/wireless/"
|
binDir="$out/lib/modules/${kernel.modDirVersion}/kernel/net/wireless/"
|
||||||
docDir="$out/share/doc/broadcom-sta/"
|
docDir="$out/share/doc/broadcom-sta/"
|
||||||
mkdir -p "$binDir" "$docDir"
|
mkdir -p "$binDir" "$docDir"
|
||||||
cp wl.ko "$binDir"
|
cp wl.ko "$binDir"
|
||||||
@ -43,7 +42,7 @@ stdenv.mkDerivation {
|
|||||||
description = "Kernel module driver for some Broadcom's wireless cards";
|
description = "Kernel module driver for some Broadcom's wireless cards";
|
||||||
homepage = http://www.broadcom.com/support/802.11/linux_sta.php;
|
homepage = http://www.broadcom.com/support/802.11/linux_sta.php;
|
||||||
license = "unfree-redistributable";
|
license = "unfree-redistributable";
|
||||||
maintainers = [ stdenv.lib.maintainers.vcunat ];
|
maintainers = with stdenv.lib.maintainers; [ phreedom vcunat ];
|
||||||
platforms = stdenv.lib.platforms.linux;
|
platforms = stdenv.lib.platforms.linux;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,12 +1,13 @@
|
|||||||
diff -Naur hybrid-portsrc-x86_32-v5_10_91_9.orig/src/wl/sys/wl_linux.c hybrid-portsrc-x86_32-v5_10_91_9/src/wl/sys/wl_linux.c
|
diff -Naur hybrid-portsrc-x86_32-v5_10_91_9.orig/src/wl/sys/wl_linux.c hybrid-portsrc-x86_32-v5_10_91_9/src/wl/sys/wl_linux.c
|
||||||
--- hybrid-portsrc-x86_32-v5_10_91_9.orig/src/wl/sys/wl_linux.c 2009-04-23 02:48:59.000000000 +0900
|
--- hybrid-portsrc-x86_32-v5_10_91_9.orig/src/wl/sys/wl_linux.c 2009-04-23 02:48:59.000000000 +0900
|
||||||
+++ hybrid-portsrc-x86_32-v5_10_91_9/src/wl/sys/wl_linux.c 2009-05-08 00:48:20.000000000 +0900
|
+++ hybrid-portsrc-x86_32-v5_10_91_9/src/wl/sys/wl_linux.c 2009-05-08 00:48:20.000000000 +0900
|
||||||
@@ -163,6 +163,8 @@
|
@@ -171,6 +171,8 @@
|
||||||
static void wl_free_if(wl_info_t *wl, wl_if_t *wlif);
|
static void wl_free_if(wl_info_t *wl, wl_if_t *wlif);
|
||||||
static void wl_get_driver_info(struct net_device *dev, struct ethtool_drvinfo *info);
|
static void wl_get_driver_info(struct net_device *dev, struct ethtool_drvinfo *info);
|
||||||
|
|
||||||
+MODULE_LICENSE("MIXED/Proprietary");
|
+MODULE_LICENSE("MIXED/Proprietary");
|
||||||
+
|
+
|
||||||
static struct pci_device_id wl_id_table[] = {
|
#if defined(WL_CONFIG_RFKILL)
|
||||||
{ PCI_VENDOR_ID_BROADCOM, 0x4311, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
|
#include <linux/rfkill.h>
|
||||||
{ PCI_VENDOR_ID_BROADCOM, 0x4312, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
|
static int wl_init_rfkill(wl_info_t *wl);
|
||||||
|
|
||||||
|
@ -1,11 +0,0 @@
|
|||||||
--- old/src/wl/sys/wl_cfg80211.c
|
|
||||||
+++ new/src/wl/sys/wl_cfg80211.c
|
|
||||||
@@ -1811,7 +1811,7 @@
|
|
||||||
notif_bss_info->frame_len = offsetof(struct ieee80211_mgmt, u.beacon.variable) +
|
|
||||||
wl_get_ielen(wl);
|
|
||||||
freq = ieee80211_channel_to_frequency(notif_bss_info->channel
|
|
||||||
-#if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 39)
|
|
||||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 39)
|
|
||||||
,(notif_bss_info->channel <= CH_MAX_2G_CHANNEL) ? IEEE80211_BAND_2GHZ : IEEE80211_BAND_5GHZ
|
|
||||||
#endif
|
|
||||||
);
|
|
@ -1,13 +0,0 @@
|
|||||||
diff -Naur broadcom-sta-5.100.82.112.orig/src/wl/sys/wl_linux.c broadcom-sta-5.100.82.112/src/wl/sys/wl_linux.c
|
|
||||||
--- broadcom-sta-5.100.82.112.orig/src/wl/sys/wl_linux.c 2011-10-23 01:56:55.000000000 +0900
|
|
||||||
+++ broadcom-sta-5.100.82.112/src/wl/sys/wl_linux.c 2011-11-22 00:56:07.021520421 +0900
|
|
||||||
@@ -385,7 +385,9 @@
|
|
||||||
#endif
|
|
||||||
.ndo_get_stats = wl_get_stats,
|
|
||||||
.ndo_set_mac_address = wl_set_mac_address,
|
|
||||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 2, 0)
|
|
||||||
.ndo_set_multicast_list = wl_set_multicast_list,
|
|
||||||
+#endif
|
|
||||||
.ndo_do_ioctl = wl_ioctl
|
|
||||||
};
|
|
||||||
|
|
@ -1,12 +0,0 @@
|
|||||||
--- broadcom-sta.orig/src/wl/sys/wl_linux.c
|
|
||||||
+++ broadcom-sta.new/src/wl/sys/wl_linux.c
|
|
||||||
@@ -40,7 +40,9 @@
|
|
||||||
#include <linux/pci_ids.h>
|
|
||||||
#define WLC_MAXBSSCFG 1
|
|
||||||
|
|
||||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 4, 0)
|
|
||||||
#include <asm/system.h>
|
|
||||||
+#endif
|
|
||||||
#include <asm/io.h>
|
|
||||||
#include <asm/irq.h>
|
|
||||||
#include <asm/pgtable.h>
|
|
@ -1,16 +0,0 @@
|
|||||||
--- src/Makefile 2010-10-08 00:32:59.000000000 +0200
|
|
||||||
+++ src/Makefile 2010-11-09 11:06:28.832999850 +0100
|
|
||||||
@@ -27,10 +27,10 @@
|
|
||||||
EXTRA_LDFLAGS := $(src)/lib/wlc_hybrid.o_shipped
|
|
||||||
|
|
||||||
all:
|
|
||||||
- KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
|
|
||||||
+ KBUILD_NOPEDANTIC=1 make -C ${KDIR} M=`pwd`
|
|
||||||
|
|
||||||
clean:
|
|
||||||
- KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd` clean
|
|
||||||
+ KBUILD_NOPEDANTIC=1 make -C ${KDIR} clean
|
|
||||||
|
|
||||||
install:
|
|
||||||
- install -D -m 755 wl.ko /lib/modules/`uname -r`/kernel/drivers/net/wireless/wl.ko
|
|
||||||
+ install -D -m 755 wl.ko $out/lib/modules/${kernelVersion}/kernel/drivers/net/wireless/wl.ko
|
|
@ -1,8 +1,8 @@
|
|||||||
{ fetchurl, stdenv, kernelDev, onlyHeaders ? false }:
|
{ fetchurl, stdenv, kernel, onlyHeaders ? false }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "cryptodev-linux-1.6";
|
pname = "cryptodev-linux-1.6";
|
||||||
name = "${pname}-${kernelDev.version}";
|
name = "${pname}-${kernel.version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://download.gna.org/cryptodev-linux/${pname}.tar.gz";
|
url = "http://download.gna.org/cryptodev-linux/${pname}.tar.gz";
|
||||||
@ -10,12 +10,12 @@ stdenv.mkDerivation rec {
|
|||||||
};
|
};
|
||||||
|
|
||||||
buildPhase = if !onlyHeaders then ''
|
buildPhase = if !onlyHeaders then ''
|
||||||
make -C ${kernelDev}/lib/modules/${kernelDev.modDirVersion}/build \
|
make -C ${kernel.dev}/lib/modules/${kernel.modDirVersion}/build \
|
||||||
SUBDIRS=`pwd` INSTALL_PATH=$out
|
SUBDIRS=`pwd` INSTALL_PATH=$out
|
||||||
'' else ":";
|
'' else ":";
|
||||||
|
|
||||||
installPhase = stdenv.lib.optionalString (!onlyHeaders) ''
|
installPhase = stdenv.lib.optionalString (!onlyHeaders) ''
|
||||||
make -C ${kernelDev}/lib/modules/${kernelDev.modDirVersion}/build \
|
make -C ${kernel.dev}/lib/modules/${kernel.modDirVersion}/build \
|
||||||
INSTALL_MOD_PATH=$out SUBDIRS=`pwd` modules_install
|
INSTALL_MOD_PATH=$out SUBDIRS=`pwd` modules_install
|
||||||
'' + ''
|
'' + ''
|
||||||
mkdir -p $out/include/crypto
|
mkdir -p $out/include/crypto
|
||||||
|
@ -1,19 +1,17 @@
|
|||||||
{ stdenv, fetchurl, kernelDev }:
|
{ stdenv, fetchurl, kernel }:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "e1000e-1.5.1-${kernelDev.version}";
|
name = "e1000e-2.5.4-${kernel.version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/e1000/e1000e-1.5.1.tar.gz";
|
url = "mirror://sourceforge/e1000/e1000e-2.5.4.tar.gz";
|
||||||
sha256 = "0nzjlarpqcpm5y112n3vzra4qv32hiygpfkk10y8g4nln4adhqsw";
|
sha256 = "0bmihkc7y37jzwi996ryqblnyflyhhbimbnrnmlk419vxlzg1pzi";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ kernelDev ];
|
|
||||||
|
|
||||||
configurePhase = ''
|
configurePhase = ''
|
||||||
cd src
|
cd src
|
||||||
kernel_version=$( cd ${kernelDev}/lib/modules && echo * )
|
kernel_version=${kernel.modDirVersion}
|
||||||
sed -i -e 's|/lib/modules|${kernelDev}/lib/modules|' Makefile
|
sed -i -e 's|/lib/modules|${kernel.dev}/lib/modules|' Makefile
|
||||||
export makeFlags="BUILD_KERNEL=$kernel_version"
|
export makeFlags="BUILD_KERNEL=$kernel_version"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
@ -1,56 +0,0 @@
|
|||||||
{ fetchurl, stdenv, kernelDev, pkgconfig, gtkmm, boost, pcre }:
|
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
name = "exmap-0.10-${kernelDev.version}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "http://www.berthels.co.uk/exmap/download/${name}.tgz";
|
|
||||||
sha256 = "0z00dhl6bdmaz7p9wlvnj0izf0zlrlkv34fz449kxyislpzzxmgn";
|
|
||||||
};
|
|
||||||
|
|
||||||
patchPhase = ''
|
|
||||||
substituteInPlace "kernel/Makefile" \
|
|
||||||
--replace '/lib/modules/$(shell uname -r)/build' \
|
|
||||||
${kernelDev}/lib/modules/*/build
|
|
||||||
|
|
||||||
# The `proc_root' variable (the root of `/proc') is no longer exported
|
|
||||||
# since 2.6.26. Fortunately, one can pass `NULL' instead of `&proc_root'.
|
|
||||||
# See http://lkml.org/lkml/2008/3/30/57 .
|
|
||||||
substituteInPlace "kernel/exmap.c" \
|
|
||||||
--replace "&proc_root" "NULL"
|
|
||||||
|
|
||||||
substituteInPlace "src/Makefile" --replace "-Werror" ""
|
|
||||||
'';
|
|
||||||
|
|
||||||
buildInputs = [ kernelDev pkgconfig gtkmm boost pcre ];
|
|
||||||
|
|
||||||
buildPhase = "make build";
|
|
||||||
|
|
||||||
# XXX: The tests can only be run one the `exmap' module is loaded.
|
|
||||||
doCheck = false;
|
|
||||||
#checkPhase = "make test"
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p "$out/share/${name}"
|
|
||||||
cp kernel/*.ko "$out/share/${name}"
|
|
||||||
|
|
||||||
mkdir -p "$out/bin"
|
|
||||||
cp src/{gexmap,exmtool,elftool,showproc} "$out/bin"
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "Exmap, a tool showing the physical memory usage of processes";
|
|
||||||
|
|
||||||
longDescription = ''
|
|
||||||
Exmap is a utility which takes a snapshot of how the physical
|
|
||||||
memory and swap space are currently used by all the processes on
|
|
||||||
your system. It examines which page of memory are shared between
|
|
||||||
which processes, so that it can share the cost of the pages
|
|
||||||
fairly when calculating usage totals.
|
|
||||||
'';
|
|
||||||
|
|
||||||
homepage = http://www.berthels.co.uk/exmap/;
|
|
||||||
|
|
||||||
license = "GPLv2+";
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,10 +1,10 @@
|
|||||||
{ stdenv, fetchurl, kernelDev }:
|
{ stdenv, fetchurl, kernel }:
|
||||||
|
|
||||||
let baseName = "frandom-1.1";
|
let baseName = "frandom-1.1";
|
||||||
in
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "${baseName}-${kernelDev.version}";
|
name = "${baseName}-${kernel.version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/frandom/${baseName}.tar.gz";
|
url = "mirror://sourceforge/frandom/${baseName}.tar.gz";
|
||||||
@ -12,14 +12,14 @@ stdenv.mkDerivation rec {
|
|||||||
};
|
};
|
||||||
|
|
||||||
preBuild = ''
|
preBuild = ''
|
||||||
kernelVersion=$(cd ${kernelDev}/lib/modules && ls)
|
kernelVersion=${kernel.modDirVersion}
|
||||||
substituteInPlace Makefile \
|
substituteInPlace Makefile \
|
||||||
--replace "\$(shell uname -r)" "$kernelVersion" \
|
--replace "\$(shell uname -r)" "$kernelVersion" \
|
||||||
--replace "/lib/modules" "${kernelDev}/lib/modules"
|
--replace "/lib/modules" "${kernel.dev}/lib/modules"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
kernelVersion=$(cd ${kernelDev}/lib/modules && ls)
|
kernelVersion=${kernel.modDirVersion}
|
||||||
ensureDir $out/lib/modules/$kernelVersion/misc
|
ensureDir $out/lib/modules/$kernelVersion/misc
|
||||||
cp frandom.ko $out/lib/modules/$kernelVersion/misc
|
cp frandom.ko $out/lib/modules/$kernelVersion/misc
|
||||||
|
|
||||||
|
@ -1,27 +0,0 @@
|
|||||||
{ stdenv, fetchurl, kernelDev, module_init_tools}:
|
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
name = "iscsitarget-1.4.20.2-${kernelDev.version}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "mirror://sourceforge/iscsitarget/iscsitarget/1.4.20.2/${name}.tar.gz";
|
|
||||||
sha256 = "126kp0yc7vmvdbaw2xfav89340b0h91dvvyib5qbvyrq40n8wg0g";
|
|
||||||
};
|
|
||||||
|
|
||||||
KSRC = "${kernelDev}/lib/modules/*/build";
|
|
||||||
|
|
||||||
DESTDIR = "$(out)";
|
|
||||||
|
|
||||||
preConfigure = ''
|
|
||||||
export PATH=$PATH:${module_init_tools}/sbin
|
|
||||||
sed -i 's|/usr/|/|' Makefile
|
|
||||||
'';
|
|
||||||
|
|
||||||
buildInputs = [ module_init_tools ];
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "iSCSI Enterprise Target (IET), software for building an iSCSI storage system on Linux";
|
|
||||||
license = "GPLv2+";
|
|
||||||
homepage = http://iscsitarget.sourceforge.net;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,40 +0,0 @@
|
|||||||
{stdenv, fetchurl, kernelDev}:
|
|
||||||
|
|
||||||
let version = "1.2.25"; in
|
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
name = "iwlwifi-${version}-${kernelDev.version}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "http://www.intellinuxwireless.org/iwlwifi/downloads/iwlwifi-${version}.tgz";
|
|
||||||
sha256 = "09fjy0swcyd77fdp8x2825wj5cd73hwbzl8mz9sy2ha21p1qwq1d";
|
|
||||||
};
|
|
||||||
|
|
||||||
preBuild = ''
|
|
||||||
substituteInPlace scripts/generate_compatible \
|
|
||||||
--replace '/usr/bin/env /bin/bash' $shell
|
|
||||||
substituteInPlace Makefile \
|
|
||||||
--replace /sbin/depmod true
|
|
||||||
|
|
||||||
# Urgh, we need the complete kernel sources for some header
|
|
||||||
# files. So unpack the original kernel source tarball and copy
|
|
||||||
# the configured include directory etc. on top of it.
|
|
||||||
kernelVersion=$(cd ${kernelDev}/lib/modules && ls)
|
|
||||||
kernelBuild=$(echo ${kernelDev}/lib/modules/$kernelVersion/source)
|
|
||||||
tar xvfj ${kernelDev.src}
|
|
||||||
kernelSource=$(echo $(pwd)/linux-*)
|
|
||||||
cp -prd $kernelBuild/* $kernelSource
|
|
||||||
|
|
||||||
makeFlags=KSRC=$kernelSource
|
|
||||||
make $makeFlags || true
|
|
||||||
make $makeFlags
|
|
||||||
|
|
||||||
installFlags=KMISC=$out/lib/modules/$kernelVersion/misc
|
|
||||||
''; # */
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "Intel Wireless WiFi Link drivers for Linux";
|
|
||||||
homepage = http://www.intellinuxwireless.org/;
|
|
||||||
license = "GPLv2";
|
|
||||||
};
|
|
||||||
}
|
|
25
pkgs/os-specific/linux/kernel-headers/default.nix
Normal file
25
pkgs/os-specific/linux/kernel-headers/default.nix
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
{ stdenv, kernel, perl }:
|
||||||
|
|
||||||
|
let
|
||||||
|
baseBuildFlags = [ "INSTALL_HDR_PATH=$(out)" "headers_install" ];
|
||||||
|
in stdenv.mkDerivation {
|
||||||
|
name = "linux-headers-${kernel.version}";
|
||||||
|
|
||||||
|
inherit (kernel) src patches;
|
||||||
|
|
||||||
|
nativeBuildInputs = [ perl ];
|
||||||
|
|
||||||
|
buildFlags = [ "ARCH=${stdenv.platform.kernelArch}" ] ++ baseBuildFlags;
|
||||||
|
|
||||||
|
crossAttrs = {
|
||||||
|
inherit (kernel.crossDrv) src patches;
|
||||||
|
buildFlags = [ "ARCH=${stdenv.cross.platform.kernelArch}" ] ++ baseBuildFlags;
|
||||||
|
};
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
find $out \( -name ..install.cmd -o -name .install \) -print0 | xargs -0 rm
|
||||||
|
'';
|
||||||
|
|
||||||
|
# Headers shouldn't reference anything else
|
||||||
|
allowedReferences = [];
|
||||||
|
}
|
@ -1,149 +0,0 @@
|
|||||||
source $stdenv/setup
|
|
||||||
|
|
||||||
|
|
||||||
makeFlags="ARCH=$arch SHELL=/bin/sh KBUILD_BUILD_VERSION=1-NixOS $makeFlags"
|
|
||||||
if [ -n "$crossConfig" ]; then
|
|
||||||
makeFlags="$makeFlags CROSS_COMPILE=$crossConfig-"
|
|
||||||
fi
|
|
||||||
|
|
||||||
postPatch() {
|
|
||||||
# Makefiles are full of /bin/pwd, /bin/false, /bin/bash, etc.
|
|
||||||
# Patch these away, assuming the tools are in $PATH.
|
|
||||||
for mf in $(find -name Makefile); do
|
|
||||||
echo "stripping FHS paths in \`$mf'..."
|
|
||||||
sed -i "$mf" -e 's|/usr/bin/||g ; s|/bin/||g'
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
configurePhase() {
|
|
||||||
if test -n "$preConfigure"; then
|
|
||||||
eval "$preConfigure"
|
|
||||||
fi
|
|
||||||
|
|
||||||
export INSTALL_PATH=$out
|
|
||||||
export INSTALL_MOD_PATH=$out
|
|
||||||
|
|
||||||
# Set our own localversion, if specified.
|
|
||||||
rm -f localversion*
|
|
||||||
if test -n "$localVersion"; then
|
|
||||||
echo "$localVersion" > localversion-nix
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Patch kconfig to print "###" after every question so that
|
|
||||||
# generate-config.pl can answer them.
|
|
||||||
sed -e '/fflush(stdout);/i\printf("###");' -i scripts/kconfig/conf.c
|
|
||||||
|
|
||||||
# Get a basic config file for later refinement with $generateConfig.
|
|
||||||
make $kernelBaseConfig ARCH=$arch
|
|
||||||
|
|
||||||
# Create the config file.
|
|
||||||
echo "generating kernel configuration..."
|
|
||||||
echo "$kernelConfig" > kernel-config
|
|
||||||
DEBUG=1 ARCH=$arch KERNEL_CONFIG=kernel-config AUTO_MODULES=$autoModules \
|
|
||||||
perl -w $generateConfig
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
installPhase() {
|
|
||||||
|
|
||||||
mkdir -p $out
|
|
||||||
|
|
||||||
# New kernel versions have a combined tree for i386 and x86_64.
|
|
||||||
archDir=$arch
|
|
||||||
if test -e arch/x86 -a \( "$arch" = i386 -o "$arch" = x86_64 \); then
|
|
||||||
archDir=x86
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
# Copy the bzImage and System.map.
|
|
||||||
cp System.map $out
|
|
||||||
if test "$arch" = um; then
|
|
||||||
mkdir -p $out/bin
|
|
||||||
cp linux $out/bin
|
|
||||||
elif test "$kernelTarget" != "vmlinux"; then
|
|
||||||
# In any case we copy the 'vmlinux' ELF in the next lines
|
|
||||||
cp arch/$archDir/boot/$kernelTarget $out
|
|
||||||
fi
|
|
||||||
|
|
||||||
cp vmlinux $out
|
|
||||||
|
|
||||||
if grep -q "CONFIG_MODULES=y" .config; then
|
|
||||||
# Install the modules in $out/lib/modules.
|
|
||||||
make modules_install \
|
|
||||||
DEPMOD=$kmod/sbin/depmod \
|
|
||||||
$makeFlags "${makeFlagsArray[@]}" \
|
|
||||||
$installFlags "${installFlagsArray[@]}"
|
|
||||||
|
|
||||||
if test -z "$dontStrip"; then
|
|
||||||
# Strip the kernel modules.
|
|
||||||
echo "Stripping kernel modules..."
|
|
||||||
if [ -z "$crossConfig" ]; then
|
|
||||||
find $out -name "*.ko" -print0 | xargs -0 strip -S
|
|
||||||
else
|
|
||||||
find $out -name "*.ko" -print0 | xargs -0 $crossConfig-strip -S
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# move this to install later on
|
|
||||||
# largely copied from early FC3 kernel spec files
|
|
||||||
version=$(cd $out/lib/modules && ls -d *)
|
|
||||||
|
|
||||||
# remove symlinks and create directories
|
|
||||||
rm -f $out/lib/modules/$version/build
|
|
||||||
rm -f $out/lib/modules/$version/source
|
|
||||||
mkdir $out/lib/modules/$version/build
|
|
||||||
|
|
||||||
# copy config
|
|
||||||
cp .config $out/lib/modules/$version/build/.config
|
|
||||||
ln -s $out/lib/modules/$version/build/.config $out/config
|
|
||||||
|
|
||||||
if test "$arch" != um; then
|
|
||||||
# copy all Makefiles and Kconfig files
|
|
||||||
ln -s $out/lib/modules/$version/build $out/lib/modules/$version/source
|
|
||||||
cp --parents `find -type f -name Makefile -o -name "Kconfig*"` $out/lib/modules/$version/build
|
|
||||||
cp Module.symvers $out/lib/modules/$version/build
|
|
||||||
|
|
||||||
if test "$dontStrip" = "1"; then
|
|
||||||
# copy any debugging info that can be found
|
|
||||||
cp --parents -rv `find -name \*.debug -o -name debug.a` \
|
|
||||||
"$out/lib/modules/$version/build"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# weed out unneeded stuff
|
|
||||||
rm -rf $out/lib/modules/$version/build/Documentation
|
|
||||||
rm -rf $out/lib/modules/$version/build/scripts
|
|
||||||
rm -rf $out/lib/modules/$version/build/include
|
|
||||||
|
|
||||||
# copy architecture dependent files
|
|
||||||
cp -a arch/$archDir/scripts $out/lib/modules/$version/build/ || true
|
|
||||||
cp -a arch/$archDir/*lds $out/lib/modules/$version/build/ || true
|
|
||||||
cp -a arch/$archDir/Makefile*.cpu $out/lib/modules/$version/build/arch/$archDir/ || true
|
|
||||||
cp -a --parents arch/$archDir/kernel/asm-offsets.s $out/lib/modules/$version/build/arch/$archDir/kernel/ || true
|
|
||||||
|
|
||||||
# copy scripts
|
|
||||||
rm -f scripts/*.o
|
|
||||||
rm -f scripts/*/*.o
|
|
||||||
cp -a scripts $out/lib/modules/$version/build
|
|
||||||
|
|
||||||
# copy include files
|
|
||||||
includeDir=$out/lib/modules/$version/build/include
|
|
||||||
mkdir -p $includeDir
|
|
||||||
(cd include && cp -a * $includeDir)
|
|
||||||
(cd arch/$archDir/include && cp -a * $includeDir || true)
|
|
||||||
(cd arch/$archDir/include && cp -a asm/* $includeDir/asm/ || true)
|
|
||||||
(cd arch/$archDir/include && cp -a generated/asm/* $includeDir/asm/ || true)
|
|
||||||
(cd arch/$archDir/include/asm/mach-generic && cp -a * $includeDir/ || true)
|
|
||||||
# include files for special arm architectures
|
|
||||||
if [ "$archDir" == "arm" ]; then
|
|
||||||
cp -a --parents arch/arm/mach-*/include $out/lib/modules/$version/build
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test -n "$postInstall"; then
|
|
||||||
eval "$postInstall";
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
genericBuild
|
|
@ -11,6 +11,9 @@
|
|||||||
|
|
||||||
use strict;
|
use strict;
|
||||||
use IPC::Open2;
|
use IPC::Open2;
|
||||||
|
use Cwd;
|
||||||
|
|
||||||
|
my $wd = getcwd;
|
||||||
|
|
||||||
my $debug = $ENV{'DEBUG'};
|
my $debug = $ENV{'DEBUG'};
|
||||||
my $autoModules = $ENV{'AUTO_MODULES'};
|
my $autoModules = $ENV{'AUTO_MODULES'};
|
||||||
@ -36,7 +39,7 @@ close ANSWERS;
|
|||||||
sub runConfig {
|
sub runConfig {
|
||||||
|
|
||||||
# Run `make config'.
|
# Run `make config'.
|
||||||
my $pid = open2(\*IN, \*OUT, "make config SHELL=bash ARCH=$ENV{ARCH}");
|
my $pid = open2(\*IN, \*OUT, "make -C $ENV{SRC} O=$wd config SHELL=bash ARCH=$ENV{ARCH}");
|
||||||
|
|
||||||
# Parse the output, look for questions and then send an
|
# Parse the output, look for questions and then send an
|
||||||
# appropriate answer.
|
# appropriate answer.
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchurl, perl, mktemp, kmod, bc
|
{ stdenv, perl, linuxManualConfig
|
||||||
|
|
||||||
, # The kernel source tarball.
|
, # The kernel source tarball.
|
||||||
src
|
src
|
||||||
@ -23,20 +23,7 @@
|
|||||||
# symbolic name and `patch' is the actual patch. The patch may
|
# symbolic name and `patch' is the actual patch. The patch may
|
||||||
# optionally be compressed with gzip or bzip2.
|
# optionally be compressed with gzip or bzip2.
|
||||||
kernelPatches ? []
|
kernelPatches ? []
|
||||||
|
|
||||||
, # Allows you to set your own kernel version suffix (e.g.,
|
|
||||||
# "-my-kernel").
|
|
||||||
localVersion ? ""
|
|
||||||
|
|
||||||
, preConfigure ? ""
|
|
||||||
, extraMeta ? {}
|
, extraMeta ? {}
|
||||||
, ubootChooser ? null
|
|
||||||
, postInstall ? ""
|
|
||||||
|
|
||||||
, # After the builder did a 'make all' (kernel + modules)
|
|
||||||
# we force building the target asked: bzImage/zImage/uImage/...
|
|
||||||
postBuild ? "make $makeFlags $kernelTarget; make $makeFlags -C scripts unifdef"
|
|
||||||
|
|
||||||
, ...
|
, ...
|
||||||
}:
|
}:
|
||||||
|
|
||||||
@ -52,93 +39,90 @@ let
|
|||||||
map ({extraConfig ? "", ...}: extraConfig) kernelPatches;
|
map ({extraConfig ? "", ...}: extraConfig) kernelPatches;
|
||||||
in lib.concatStringsSep "\n" ([baseConfig] ++ configFromPatches);
|
in lib.concatStringsSep "\n" ([baseConfig] ++ configFromPatches);
|
||||||
|
|
||||||
|
configfile = stdenv.mkDerivation {
|
||||||
|
name = "linux-config-${version}";
|
||||||
|
|
||||||
|
generateConfig = ./generate-config.pl;
|
||||||
|
|
||||||
|
kernelConfig = kernelConfigFun config;
|
||||||
|
|
||||||
|
ignoreConfigErrors = stdenv.platform.name != "pc";
|
||||||
|
|
||||||
|
nativeBuildInputs = [ perl ];
|
||||||
|
|
||||||
|
platformName = stdenv.platform.name;
|
||||||
|
kernelBaseConfig = stdenv.platform.kernelBaseConfig;
|
||||||
|
kernelTarget = stdenv.platform.kernelTarget;
|
||||||
|
autoModules = stdenv.platform.kernelAutoModules;
|
||||||
|
arch = stdenv.platform.kernelArch;
|
||||||
|
|
||||||
|
crossAttrs = let
|
||||||
|
cp = stdenv.cross.platform;
|
||||||
|
in {
|
||||||
|
arch = cp.kernelArch;
|
||||||
|
platformName = cp.name;
|
||||||
|
kernelBaseConfig = cp.kernelBaseConfig;
|
||||||
|
kernelTarget = cp.kernelTarget;
|
||||||
|
autoModules = cp.kernelAutoModules;
|
||||||
|
|
||||||
|
# Just ignore all options that don't apply (We are lazy).
|
||||||
|
ignoreConfigErrors = true;
|
||||||
|
|
||||||
|
kernelConfig = kernelConfigFun configCross;
|
||||||
|
|
||||||
|
inherit (kernel.crossDrv) src patches preUnpack;
|
||||||
|
};
|
||||||
|
|
||||||
|
prePatch = kernel.prePatch + ''
|
||||||
|
# Patch kconfig to print "###" after every question so that
|
||||||
|
# generate-config.pl from the generic builder can answer them.
|
||||||
|
sed -e '/fflush(stdout);/i\printf("###");' -i scripts/kconfig/conf.c
|
||||||
|
'';
|
||||||
|
|
||||||
|
inherit (kernel) src patches preUnpack;
|
||||||
|
|
||||||
|
buildPhase = ''
|
||||||
|
cd $buildRoot
|
||||||
|
|
||||||
|
# Get a basic config file for later refinement with $generateConfig.
|
||||||
|
make -C ../$sourceRoot O=$PWD $kernelBaseConfig ARCH=$arch
|
||||||
|
|
||||||
|
# Create the config file.
|
||||||
|
echo "generating kernel configuration..."
|
||||||
|
echo "$kernelConfig" > kernel-config
|
||||||
|
DEBUG=1 ARCH=$arch KERNEL_CONFIG=kernel-config AUTO_MODULES=$autoModules \
|
||||||
|
SRC=../$sourceRoot perl -w $generateConfig
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = "mv .config $out";
|
||||||
|
};
|
||||||
|
|
||||||
|
kernel = linuxManualConfig {
|
||||||
|
inherit version modDirVersion src kernelPatches;
|
||||||
|
|
||||||
|
configfile = configfile.nativeDrv or configfile;
|
||||||
|
|
||||||
|
crossConfigfile = configfile.crossDrv or configfile;
|
||||||
|
|
||||||
|
config = { CONFIG_MODULES = "y"; CONFIG_FW_LOADER = "m"; };
|
||||||
|
|
||||||
|
crossConfig = { CONFIG_MODULES = "y"; CONFIG_FW_LOADER = "m"; };
|
||||||
|
};
|
||||||
|
|
||||||
configWithPlatform = kernelPlatform:
|
configWithPlatform = kernelPlatform:
|
||||||
import ./common-config.nix { inherit stdenv version kernelPlatform extraConfig; };
|
import ./common-config.nix { inherit stdenv version kernelPlatform extraConfig; };
|
||||||
|
|
||||||
config = configWithPlatform stdenv.platform;
|
config = configWithPlatform stdenv.platform;
|
||||||
configCross = configWithPlatform stdenv.cross.platform;
|
configCross = configWithPlatform stdenv.cross.platform;
|
||||||
|
|
||||||
in
|
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
name = "linux-${version}";
|
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
inherit version modDirVersion kernelPatches;
|
|
||||||
# Combine the `features' attribute sets of all the kernel patches.
|
# Combine the `features' attribute sets of all the kernel patches.
|
||||||
features = lib.fold (x: y: (x.features or {}) // y) features kernelPatches;
|
features = lib.fold (x: y: (x.features or {}) // y) features kernelPatches;
|
||||||
|
|
||||||
|
meta = kernel.meta // extraMeta;
|
||||||
};
|
};
|
||||||
|
|
||||||
builder = ./builder.sh;
|
nativeDrv = lib.addPassthru kernel.nativeDrv passthru;
|
||||||
|
|
||||||
generateConfig = ./generate-config.pl;
|
|
||||||
|
|
||||||
inherit preConfigure src kmod localVersion postInstall postBuild;
|
|
||||||
|
|
||||||
patches = map (p: p.patch) kernelPatches;
|
|
||||||
|
|
||||||
kernelConfig = kernelConfigFun config;
|
|
||||||
|
|
||||||
# For UML and non-PC, just ignore all options that don't apply (We are lazy).
|
|
||||||
ignoreConfigErrors = stdenv.platform.name != "pc";
|
|
||||||
|
|
||||||
nativeBuildInputs = [ perl mktemp bc ];
|
|
||||||
|
|
||||||
buildInputs = lib.optional (stdenv.platform.uboot != null)
|
|
||||||
(ubootChooser stdenv.platform.uboot);
|
|
||||||
|
|
||||||
platformName = stdenv.platform.name;
|
|
||||||
kernelBaseConfig = stdenv.platform.kernelBaseConfig;
|
|
||||||
kernelTarget = stdenv.platform.kernelTarget;
|
|
||||||
autoModules = stdenv.platform.kernelAutoModules;
|
|
||||||
|
|
||||||
# Should we trust platform.kernelArch? We can only do
|
|
||||||
# that once we differentiate i686/x86_64 in platforms.
|
|
||||||
arch =
|
|
||||||
if stdenv.system == "i686-linux" then "i386" else
|
|
||||||
if stdenv.system == "x86_64-linux" then "x86_64" else
|
|
||||||
if stdenv.isArm then "arm" else
|
|
||||||
if stdenv.system == "mips64el-linux" then "mips" else
|
|
||||||
abort "Platform ${stdenv.system} is not supported.";
|
|
||||||
|
|
||||||
crossAttrs = let
|
|
||||||
cp = stdenv.cross.platform;
|
|
||||||
in
|
|
||||||
assert cp.name == "sheevaplug" -> cp.uboot != null;
|
|
||||||
{
|
|
||||||
arch = cp.kernelArch;
|
|
||||||
platformName = cp.name;
|
|
||||||
kernelBaseConfig = cp.kernelBaseConfig;
|
|
||||||
kernelTarget = cp.kernelTarget;
|
|
||||||
autoModules = cp.kernelAutoModules;
|
|
||||||
|
|
||||||
# Just ignore all options that don't apply (We are lazy).
|
|
||||||
ignoreConfigErrors = true;
|
|
||||||
|
|
||||||
kernelConfig = kernelConfigFun configCross;
|
|
||||||
|
|
||||||
# The substitution of crossAttrs happens *after* the stdenv cross adapter sets
|
|
||||||
# the parameters for the usual stdenv. Thus, we need to specify
|
|
||||||
# the ".crossDrv" in the buildInputs here.
|
|
||||||
buildInputs = lib.optional (cp.uboot != null) (ubootChooser cp.uboot).crossDrv;
|
|
||||||
};
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description =
|
|
||||||
"The Linux kernel" +
|
|
||||||
(if kernelPatches == [] then "" else
|
|
||||||
" (with patches: "
|
|
||||||
+ lib.concatStrings (lib.intersperse ", " (map (x: x.name) kernelPatches))
|
|
||||||
+ ")");
|
|
||||||
license = "GPLv2";
|
|
||||||
homepage = http://www.kernel.org/;
|
|
||||||
maintainers = [
|
|
||||||
lib.maintainers.eelco
|
|
||||||
lib.maintainers.chaoflow
|
|
||||||
];
|
|
||||||
platforms = lib.platforms.linux;
|
|
||||||
} // extraMeta;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
crossDrv = lib.addPassthru kernel.crossDrv passthru;
|
||||||
|
in if kernel ? crossDrv then nativeDrv // { inherit nativeDrv crossDrv; } else lib.addPassthru kernel passthru
|
||||||
|
@ -1,45 +1,16 @@
|
|||||||
{ stdenv, runCommand, nettools, bc, perl, kmod, writeTextFile }:
|
{ stdenv, runCommand, nettools, bc, perl, kmod, writeTextFile, ubootChooser }:
|
||||||
|
|
||||||
let
|
let
|
||||||
inherit (stdenv.lib)
|
readConfig = configfile: import (runCommand "config.nix" {} ''
|
||||||
hasAttr getAttr optionalAttrs optional optionalString maintainers platforms;
|
echo "{" > "$out"
|
||||||
|
while IFS='=' read key val; do
|
||||||
# Function to parse the config file into a nix expression
|
[ "x''${key#CONFIG_}" != "x$key" ] || continue
|
||||||
readConfig = configFile:
|
no_firstquote="''${val#\"}";
|
||||||
let
|
echo ' "'"$key"'" = "'"''${no_firstquote%\"}"'";' >> "$out"
|
||||||
configAttrs = import "${runCommand "config.nix" {} ''
|
done < "${configfile}"
|
||||||
echo "{" > "$out"
|
echo "}" >> $out
|
||||||
while IFS='=' read key val; do
|
'').outPath;
|
||||||
[ "x''${key#CONFIG_}" != "x$key" ] || continue
|
in {
|
||||||
no_firstquote="''${val#\"}";
|
|
||||||
echo ' "'"$key"'" = "'"''${no_firstquote%\"}"'";' >> "$out"
|
|
||||||
done < "${configFile}"
|
|
||||||
echo "}" >> $out
|
|
||||||
''}";
|
|
||||||
|
|
||||||
config = configAttrs // rec {
|
|
||||||
attrName = attr: "CONFIG_" + attr;
|
|
||||||
|
|
||||||
isSet = attr: hasAttr (attrName attr) config;
|
|
||||||
|
|
||||||
getValue = attr: if isSet attr then getAttr (attrName attr) config else null;
|
|
||||||
|
|
||||||
isYes = attr: (isSet attr) && ((getValue attr) == "y");
|
|
||||||
|
|
||||||
isNo = attr: (isSet attr) && ((getValue attr) == "n");
|
|
||||||
|
|
||||||
isModule = attr: (isSet attr) && ((getValue attr) == "m");
|
|
||||||
|
|
||||||
isEnabled = attr: (isModule attr) || (isYes attr);
|
|
||||||
|
|
||||||
isDisabled = attr: (!(isSet attr)) || (isNo attr);
|
|
||||||
};
|
|
||||||
in
|
|
||||||
config;
|
|
||||||
|
|
||||||
in
|
|
||||||
|
|
||||||
{
|
|
||||||
# The kernel version
|
# The kernel version
|
||||||
version,
|
version,
|
||||||
# The version of the kernel module directory
|
# The version of the kernel module directory
|
||||||
@ -48,127 +19,212 @@ in
|
|||||||
src,
|
src,
|
||||||
# Any patches
|
# Any patches
|
||||||
kernelPatches ? [],
|
kernelPatches ? [],
|
||||||
# The kernel .config file
|
# Patches for native compiling only
|
||||||
|
nativeKernelPatches ? [],
|
||||||
|
# Patches for cross compiling only
|
||||||
|
crossKernelPatches ? [],
|
||||||
|
# The native kernel .config file
|
||||||
configfile,
|
configfile,
|
||||||
|
# The cross kernel .config file
|
||||||
|
crossConfigfile ? configfile,
|
||||||
# Manually specified nixexpr representing the config
|
# Manually specified nixexpr representing the config
|
||||||
# If unspecified, this will be autodetected from the .config
|
# If unspecified, this will be autodetected from the .config
|
||||||
config ? optionalAttrs allowImportFromDerivation (readConfig configfile),
|
config ? stdenv.lib.optionalAttrs allowImportFromDerivation (readConfig configfile),
|
||||||
|
# Cross-compiling config
|
||||||
|
crossConfig ? if allowImportFromDerivation then (readConfig crossConfigfile) else config,
|
||||||
# Whether to utilize the controversial import-from-derivation feature to parse the config
|
# Whether to utilize the controversial import-from-derivation feature to parse the config
|
||||||
allowImportFromDerivation ? false
|
allowImportFromDerivation ? false
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
installkernel = name: writeTextFile { name = "installkernel"; executable=true; text = ''
|
inherit (stdenv.lib)
|
||||||
#!/bin/sh
|
hasAttr getAttr optional optionalString maintainers platforms;
|
||||||
mkdir $4
|
|
||||||
cp -av $2 $4/${name}
|
installkernel = writeTextFile { name = "installkernel"; executable=true; text = ''
|
||||||
|
#!${stdenv.shell} -e
|
||||||
|
mkdir -p $4
|
||||||
|
cp -av $2 $4
|
||||||
cp -av $3 $4
|
cp -av $3 $4
|
||||||
'';};
|
''; };
|
||||||
|
|
||||||
isModular = config.isYes "MODULES";
|
|
||||||
|
|
||||||
installsFirmware = (config.isEnabled "FW_LOADER") &&
|
|
||||||
(isModular || (config.isDisabled "FIRMWARE_IN_KERNEL"));
|
|
||||||
|
|
||||||
commonMakeFlags = [
|
commonMakeFlags = [
|
||||||
"O=$(buildRoot)"
|
"O=$(buildRoot)"
|
||||||
"INSTALL_PATH=$(out)"
|
"DEPMOD=${kmod}/bin/depmod"
|
||||||
] ++ (optional isModular "INSTALL_MOD_PATH=$(out)")
|
];
|
||||||
++ optional installsFirmware "INSTALL_FW_PATH=$(out)/lib/firmware";
|
|
||||||
|
|
||||||
sourceRoot = stdenv.mkDerivation {
|
drvAttrs = config_: platform: kernelPatches: configfile:
|
||||||
name = "linux-${version}-source";
|
let
|
||||||
|
config = let attrName = attr: "CONFIG_" + attr; in {
|
||||||
|
isSet = attr: hasAttr (attrName attr) config;
|
||||||
|
|
||||||
inherit src;
|
getValue = attr: if config.isSet attr then getAttr (attrName attr) config else null;
|
||||||
|
|
||||||
patches = map (p: p.patch) kernelPatches;
|
isYes = attr: (config.getValue attr) == "y";
|
||||||
|
|
||||||
phases = [ "unpackPhase" "patchPhase" "installPhase" ];
|
isNo = attr: (config.getValue attr) == "n";
|
||||||
|
|
||||||
prePatch = ''
|
isModule = attr: (config.getValue attr) == "m";
|
||||||
for mf in $(find -name Makefile -o -name Makefile.include -o -name install.sh); do
|
|
||||||
echo "stripping FHS paths in \`$mf'..."
|
|
||||||
sed -i "$mf" -e 's|/usr/bin/||g ; s|/bin/||g ; s|/sbin/||g'
|
|
||||||
done
|
|
||||||
sed -i Makefile -e 's|= depmod|= ${kmod}/sbin/depmod|'
|
|
||||||
'';
|
|
||||||
|
|
||||||
installPhase = ''
|
isEnabled = attr: (config.isModule attr) || (config.isYes attr);
|
||||||
cd ..
|
|
||||||
mv $sourceRoot $out
|
isDisabled = attr: (!(config.isSet attr)) || (config.isNo attr);
|
||||||
'';
|
} // config_;
|
||||||
};
|
|
||||||
|
isModular = config.isYes "MODULES";
|
||||||
|
|
||||||
|
installsFirmware = (config.isEnabled "FW_LOADER") &&
|
||||||
|
(isModular || (config.isDisabled "FIRMWARE_IN_KERNEL"));
|
||||||
|
in {
|
||||||
|
outputs = if isModular then [ "out" "dev" ] else null;
|
||||||
|
|
||||||
|
passthru = {
|
||||||
|
inherit version modDirVersion config kernelPatches;
|
||||||
|
};
|
||||||
|
|
||||||
|
inherit src;
|
||||||
|
|
||||||
|
preUnpack = ''
|
||||||
|
mkdir build
|
||||||
|
export buildRoot="$(pwd)/build"
|
||||||
|
'';
|
||||||
|
|
||||||
|
patches = map (p: p.patch) kernelPatches;
|
||||||
|
|
||||||
|
prePatch = ''
|
||||||
|
for mf in $(find -name Makefile -o -name Makefile.include -o -name install.sh); do
|
||||||
|
echo "stripping FHS paths in \`$mf'..."
|
||||||
|
sed -i "$mf" -e 's|/usr/bin/||g ; s|/bin/||g ; s|/sbin/||g'
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
|
||||||
|
configurePhase = ''
|
||||||
|
runHook preConfigure
|
||||||
|
ln -sv ${configfile} $buildRoot/.config
|
||||||
|
make $makeFlags "''${makeFlagsArray[@]}" oldconfig
|
||||||
|
runHook postConfigure
|
||||||
|
'';
|
||||||
|
|
||||||
|
buildFlags = [ "KBUILD_BUILD_VERSION=1-NixOS" platform.kernelTarget ] ++ optional isModular "modules";
|
||||||
|
|
||||||
|
installFlags = [
|
||||||
|
"INSTALLKERNEL=${installkernel}"
|
||||||
|
"INSTALL_PATH=$(out)"
|
||||||
|
] ++ (optional isModular "INSTALL_MOD_PATH=$(out)")
|
||||||
|
++ optional installsFirmware "INSTALL_FW_PATH=$(out)/lib/firmware";
|
||||||
|
|
||||||
|
# Some image types need special install targets (e.g. uImage is installed with make uinstall)
|
||||||
|
installTargets = [ (if platform.kernelTarget == "uImage" then "uinstall" else "install") ];
|
||||||
|
|
||||||
|
postInstall = optionalString installsFirmware ''
|
||||||
|
mkdir -p $out/lib/firmware
|
||||||
|
'' + (if isModular then ''
|
||||||
|
make modules_install $makeFlags "''${makeFlagsArray[@]}" \
|
||||||
|
$installFlags "''${installFlagsArray[@]}"
|
||||||
|
unlink $out/lib/modules/${modDirVersion}/build
|
||||||
|
unlink $out/lib/modules/${modDirVersion}/source
|
||||||
|
|
||||||
|
mkdir -p $dev/lib/modules/${modDirVersion}
|
||||||
|
cd ..
|
||||||
|
mv $sourceRoot $dev/lib/modules/${modDirVersion}/source
|
||||||
|
cd $dev/lib/modules/${modDirVersion}/source
|
||||||
|
|
||||||
|
mv $buildRoot/.config $buildRoot/Module.symvers $TMPDIR
|
||||||
|
rm -fR $buildRoot
|
||||||
|
mkdir $buildRoot
|
||||||
|
mv $TMPDIR/.config $TMPDIR/Module.symvers $buildRoot
|
||||||
|
make modules_prepare $makeFlags "''${makeFlagsArray[@]}"
|
||||||
|
mv $buildRoot $dev/lib/modules/${modDirVersion}/build
|
||||||
|
|
||||||
|
# !!! No documentation on how much of the source tree must be kept
|
||||||
|
# If/when kernel builds fail due to missing files, you can add
|
||||||
|
# them here. Note that we may see packages requiring headers
|
||||||
|
# from drivers/ in the future; it adds 50M to keep all of its
|
||||||
|
# headers on 3.10 though.
|
||||||
|
|
||||||
|
chmod +w -R ../source
|
||||||
|
arch=`cd $dev/lib/modules/${modDirVersion}/build/arch; ls`
|
||||||
|
|
||||||
|
# Remove unusued arches
|
||||||
|
mv arch/$arch .
|
||||||
|
rm -fR arch
|
||||||
|
mkdir arch
|
||||||
|
mv $arch arch
|
||||||
|
|
||||||
|
# Remove all driver-specific code (50M of which is headers)
|
||||||
|
rm -fR drivers
|
||||||
|
|
||||||
|
# Keep all headers
|
||||||
|
find . -type f -name '*.h' -print0 | xargs -0 chmod -w
|
||||||
|
|
||||||
|
# Keep root and arch-specific Makefiles
|
||||||
|
chmod -w Makefile
|
||||||
|
chmod -w arch/$arch/Makefile
|
||||||
|
|
||||||
|
# Keep whole scripts dir
|
||||||
|
chmod -w -R scripts
|
||||||
|
|
||||||
|
# Delete everything not kept
|
||||||
|
find . -type f -perm -u=w -print0 | xargs -0 rm
|
||||||
|
|
||||||
|
# Delete empty directories
|
||||||
|
find -empty -type d -delete
|
||||||
|
'' else optionalString installsFirmware ''
|
||||||
|
make firmware_install $makeFlags "''${makeFlagsArray[@]}" \
|
||||||
|
$installFlags "''${installFlagsArray[@]}"
|
||||||
|
'');
|
||||||
|
|
||||||
|
# !!! This leaves references to gcc in $dev
|
||||||
|
# that we might be able to avoid
|
||||||
|
postFixup = if isModular then ''
|
||||||
|
if [ -z "$dontStrip" ]; then
|
||||||
|
find $out -name "*.ko" -print0 | xargs -0 -r ''${crossConfig+$crossConfig-}strip -S
|
||||||
|
fi
|
||||||
|
# !!! Should this be part of stdenv? Also patchELF should take an argument...
|
||||||
|
prefix=$dev
|
||||||
|
patchELF
|
||||||
|
prefix=$out
|
||||||
|
'' else null;
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description =
|
||||||
|
"The Linux kernel" +
|
||||||
|
(if kernelPatches == [] then "" else
|
||||||
|
" (with patches: "
|
||||||
|
+ stdenv.lib.concatStrings (stdenv.lib.intersperse ", " (map (x: x.name) kernelPatches))
|
||||||
|
+ ")");
|
||||||
|
license = "GPLv2";
|
||||||
|
homepage = http://www.kernel.org/;
|
||||||
|
maintainers = [
|
||||||
|
maintainers.shlevy
|
||||||
|
];
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
};
|
||||||
in
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation ((drvAttrs config stdenv.platform (kernelPatches ++ nativeKernelPatches) configfile) // {
|
||||||
name = "linux-${version}";
|
name = "linux-${version}";
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
outputs = if isModular then [ "out" "dev" ] else null;
|
nativeBuildInputs = [ perl bc nettools ] ++ optional (stdenv.platform.uboot != null)
|
||||||
|
(ubootChooser stdenv.platform.uboot);
|
||||||
passthru = {
|
|
||||||
inherit version modDirVersion config kernelPatches src;
|
|
||||||
};
|
|
||||||
|
|
||||||
inherit sourceRoot;
|
|
||||||
|
|
||||||
unpackPhase = ''
|
|
||||||
mkdir build
|
|
||||||
export buildRoot="$(pwd)/build"
|
|
||||||
cd ${sourceRoot}
|
|
||||||
'';
|
|
||||||
|
|
||||||
configurePhase = ''
|
|
||||||
runHook preConfigure
|
|
||||||
ln -sv ${configfile} $buildRoot/.config
|
|
||||||
make $makeFlags "''${makeFlagsArray[@]}" oldconfig
|
|
||||||
runHook postConfigure
|
|
||||||
'';
|
|
||||||
|
|
||||||
nativeBuildInputs = [ perl bc nettools ];
|
|
||||||
|
|
||||||
makeFlags = commonMakeFlags ++ [
|
makeFlags = commonMakeFlags ++ [
|
||||||
"INSTALLKERNEL=${installkernel stdenv.platform.kernelTarget}"
|
"ARCH=${stdenv.platform.kernelArch}"
|
||||||
];
|
];
|
||||||
|
|
||||||
crossAttrs = {
|
crossAttrs = let cp = stdenv.cross.platform; in
|
||||||
makeFlags = commonMakeFlags ++ [
|
(drvAttrs crossConfig cp (kernelPatches ++ crossKernelPatches) crossConfigfile) // {
|
||||||
"INSTALLKERNEL=${installkernel stdenv.cross.platform.kernelTarget}"
|
makeFlags = commonMakeFlags ++ [
|
||||||
];
|
"ARCH=${cp.kernelArch}"
|
||||||
|
"CROSS_COMPILE=$(crossConfig)-"
|
||||||
|
];
|
||||||
|
|
||||||
|
# !!! uboot has messed up cross-compiling, nativeDrv builds arm tools on x86,
|
||||||
|
# crossDrv builds x86 tools on x86 (but arm uboot). If this is fixed, uboot
|
||||||
|
# can just go into buildInputs (but not nativeBuildInputs since cp.uboot
|
||||||
|
# may be different from stdenv.platform.uboot)
|
||||||
|
buildInputs = optional (cp.uboot != null) (ubootChooser cp.uboot).crossDrv;
|
||||||
};
|
};
|
||||||
|
})
|
||||||
postInstall = optionalString installsFirmware ''
|
|
||||||
mkdir -p $out/lib/firmware
|
|
||||||
'' + (if isModular then ''
|
|
||||||
make modules_install $makeFlags "''${makeFlagsArray[@]}" \
|
|
||||||
$installFlags "''${installFlagsArray[@]}"
|
|
||||||
rm -f $out/lib/modules/${modDirVersion}/build
|
|
||||||
mkdir -p $dev/lib/modules/${modDirVersion}
|
|
||||||
mv $out/lib/modules/${modDirVersion}/source $dev/lib/modules/${modDirVersion}/source
|
|
||||||
mv $buildRoot $dev/lib/modules/${modDirVersion}/build
|
|
||||||
'' else optionalString installsFirmware ''
|
|
||||||
make firmware_install $makeFlags "''${makeFlagsArray[@]}" \
|
|
||||||
$installFlags "''${installFlagsArray[@]}"
|
|
||||||
'');
|
|
||||||
|
|
||||||
postFixup = if isModular then ''
|
|
||||||
if [ -z "$dontStrip" ]; then
|
|
||||||
find $out -name "*.ko" -print0 | xargs -0 -r strip -S
|
|
||||||
# Remove all references to the source directory to avoid unneeded
|
|
||||||
# runtime dependencies
|
|
||||||
find $out -name "*.ko" -print0 | xargs -0 -r sed -i \
|
|
||||||
"s|${sourceRoot}|$NIX_STORE/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-${sourceRoot.name}|g"
|
|
||||||
fi
|
|
||||||
'' else null;
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "The Linux kernel";
|
|
||||||
license = "GPLv2";
|
|
||||||
homepage = http://www.kernel.org/;
|
|
||||||
maintainers = [
|
|
||||||
maintainers.shlevy
|
|
||||||
];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
@ -18,24 +18,6 @@ let
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
makeAufs3StandalonePatch = {version, rev, sha256}:
|
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
name = "aufs3-standalone-${version}.patch";
|
|
||||||
|
|
||||||
src = fetchgit {
|
|
||||||
url = git://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git;
|
|
||||||
inherit sha256 rev;
|
|
||||||
};
|
|
||||||
|
|
||||||
phases = [ "unpackPhase" "installPhase" ];
|
|
||||||
|
|
||||||
# Instructions from http://aufs.git.sourceforge.net/git/gitweb.cgi?p=aufs/aufs3-standalone.git;a=blob;f=Documentation/filesystems/aufs/README;h=b8cf077635b323d1b454266366f05f476bbd09cb;hb=1067b9d8d64d23c70d905c9cd3c90a669e39c4d4
|
|
||||||
installPhase = ''
|
|
||||||
cat aufs3-base.patch aufs3-proc_map.patch aufs3-standalone.patch > $out
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
makeAppArmorPatch = {apparmor, version}:
|
makeAppArmorPatch = {apparmor, version}:
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "apparmor-${version}.patch";
|
name = "apparmor-${version}.patch";
|
||||||
@ -68,34 +50,6 @@ rec {
|
|||||||
features.secPermPatch = true;
|
features.secPermPatch = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
aufs3_2 = rec {
|
|
||||||
name = "aufs3.2";
|
|
||||||
version = "3.2.20121210";
|
|
||||||
utilRev = "91af15f977d12e02165759620005f6ce1a4d7602";
|
|
||||||
utilHash = "dda4df89828dcf0e4012d88b4aa3eda8c30af69d6530ff5fedc2411de872c996";
|
|
||||||
patch = makeAufs3StandalonePatch {
|
|
||||||
inherit version;
|
|
||||||
rev = "0bf50c3b82f98e2ddc4c9ba0657f28ebfa8d15cb";
|
|
||||||
sha256 = "bc4b65cb77c62744db251da98488fdf4962f14a144c045cea6cbbbd42718ff89";
|
|
||||||
};
|
|
||||||
features.aufsBase = true;
|
|
||||||
features.aufs3 = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
aufs3_4 = rec {
|
|
||||||
name = "aufs3.4";
|
|
||||||
version = "3.4.20121210";
|
|
||||||
utilRev = "91af15f977d12e02165759620005f6ce1a4d7602";
|
|
||||||
utilHash = "dda4df89828dcf0e4012d88b4aa3eda8c30af69d6530ff5fedc2411de872c996";
|
|
||||||
patch = makeAufs3StandalonePatch {
|
|
||||||
inherit version;
|
|
||||||
rev = "2faacd9baffb37df3b9062cc554353eebe68df1e";
|
|
||||||
sha256 = "3ecf97468f5e85970d9fd2bfc61e38c7f5ae2c6dde0045d5a17de085c411d452";
|
|
||||||
};
|
|
||||||
features.aufsBase = true;
|
|
||||||
features.aufs3 = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
no_xsave =
|
no_xsave =
|
||||||
{ name = "no-xsave";
|
{ name = "no-xsave";
|
||||||
patch = ./no-xsave.patch;
|
patch = ./no-xsave.patch;
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
{ stdenv, kernelDev, elfutils, python, perl, newt, slang, asciidoc, xmlto
|
{ stdenv, kernel, elfutils, python, perl, newt, slang, asciidoc, xmlto
|
||||||
, docbook_xsl, docbook_xml_dtd_45, libxslt, flex, bison, pkgconfig
|
, docbook_xsl, docbook_xml_dtd_45, libxslt, flex, bison, pkgconfig
|
||||||
, withGtk ? false, gtk ? null }:
|
, withGtk ? false, gtk ? null }:
|
||||||
|
|
||||||
assert withGtk -> gtk != null;
|
assert withGtk -> gtk != null;
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "perf-linux-${kernelDev.version}";
|
name = "perf-linux-${kernel.version}";
|
||||||
|
|
||||||
inherit (kernelDev) src patches;
|
inherit (kernel) src patches;
|
||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
cd tools/perf
|
cd tools/perf
|
||||||
@ -31,6 +31,7 @@ stdenv.mkDerivation {
|
|||||||
propagatedBuildInputs = [ elfutils.crossDrv newt.crossDrv ];
|
propagatedBuildInputs = [ elfutils.crossDrv newt.crossDrv ];
|
||||||
makeFlags = "CROSS_COMPILE=${stdenv.cross.config}-";
|
makeFlags = "CROSS_COMPILE=${stdenv.cross.config}-";
|
||||||
elfutils = elfutils.crossDrv;
|
elfutils = elfutils.crossDrv;
|
||||||
|
inherit (kernel.crossDrv) src patches;
|
||||||
};
|
};
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -1,74 +1,48 @@
|
|||||||
{ stdenv, fetchurl, perl, bison, mktemp, linuxHeaders, linuxHeadersCross, kernelDev ? null }:
|
{ stdenv, fetchurl, kernelHeaders, kernel, perl }:
|
||||||
|
|
||||||
assert stdenv.isLinux;
|
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "1.5.24";
|
version = "2.0.3";
|
||||||
baseMakeFlags = ["V=1" "prefix=$out" "SHLIBDIR=$out/lib"];
|
|
||||||
|
commonMakeFlags = [
|
||||||
|
"prefix=$(out)"
|
||||||
|
"SHLIBDIR=$(out)/lib"
|
||||||
|
];
|
||||||
in
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "klibc-${version}${stdenv.lib.optionalString (kernelDev != null) "-${kernelDev.version}"}";
|
name = "klibc-${version}-${kernel.version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://kernel/linux/libs/klibc/1.5/klibc-${version}.tar.bz2";
|
url = "mirror://kernel/linux/libs/klibc/2.0/klibc-${version}.tar.xz";
|
||||||
sha256 = "18lm32dlj9k2ky9wwk274zmc3jndgrb41b6qm82g3lza6wlw3yki";
|
sha256 = "02035f2b230020de569d40605485121e0fe481ed33a93bdb8bf8c6ee2695fffa";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Trick to make this build on nix. It expects to have the kernel sources
|
patches = [ ./no-reinstall-kernel-headers.patch ];
|
||||||
# instead of only the linux kernel headers.
|
|
||||||
# So it cannot run the 'make headers_install' it wants to run.
|
|
||||||
# We don't install the headers, so klibc will not be useful as libc, but
|
|
||||||
# usually in nixpkgs we only use the userspace tools comming with klibc.
|
|
||||||
prePatch = stdenv.lib.optionalString (kernelDev == null) ''
|
|
||||||
sed -i -e /headers_install/d scripts/Kbuild.install
|
|
||||||
'';
|
|
||||||
|
|
||||||
makeFlags = baseMakeFlags;
|
|
||||||
|
|
||||||
inherit linuxHeaders;
|
nativeBuildInputs = [ perl ];
|
||||||
|
|
||||||
|
makeFlags = commonMakeFlags ++ [
|
||||||
|
"KLIBCARCH=${stdenv.platform.kernelArch}"
|
||||||
|
"KLIBCKERNELSRC=${kernelHeaders}"
|
||||||
|
] ++ stdenv.lib.optional (stdenv.platform.kernelArch == "arm") "CONFIG_AEABI=y";
|
||||||
|
|
||||||
crossAttrs = {
|
crossAttrs = {
|
||||||
makeFlags = baseMakeFlags ++ [ "CROSS_COMPILE=${stdenv.cross.config}-"
|
makeFlags = commonMakeFlags ++ [
|
||||||
"KLIBCARCH=${stdenv.cross.arch}" ];
|
"KLIBCARCH=${stdenv.cross.platform.kernelArch}"
|
||||||
|
"KLIBCKERNELSRC=${kernelHeaders.crossDrv}"
|
||||||
patchPhase = ''
|
"CROSS_COMPILE=${stdenv.cross.config}-"
|
||||||
sed -i 's/-fno-pic -mno-abicalls/& -mabi=32/' usr/klibc/arch/mips/MCONFIG
|
] ++ stdenv.lib.optional (stdenv.cross.platform.kernelArch == "arm") "CONFIG_AEABI=y";
|
||||||
sed -i /KLIBCKERNELSRC/d scripts/Kbuild.install
|
|
||||||
# Wrong check for __mips64 in klibc
|
|
||||||
sed -i s/__mips64__/__mips64/ usr/include/fcntl.h
|
|
||||||
'';
|
|
||||||
|
|
||||||
linuxHeaders = linuxHeadersCross;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# The AEABI option concerns only arm systems, and does not affect the build for
|
|
||||||
# other systems.
|
|
||||||
preBuild = ''
|
|
||||||
sed -i /CONFIG_AEABI/d defconfig
|
|
||||||
echo "CONFIG_AEABI=y" >> defconfig
|
|
||||||
makeFlags=$(eval "echo $makeFlags")
|
|
||||||
|
|
||||||
'' + (if kernelDev == null then ''
|
|
||||||
mkdir linux
|
|
||||||
cp -prsd $linuxHeaders/include linux/
|
|
||||||
chmod -R u+w linux/include/
|
|
||||||
'' else ''
|
|
||||||
tar xvf ${kernelDev.src}
|
|
||||||
mv linux* linux
|
|
||||||
cd linux
|
|
||||||
ln -sv ${kernelDev}/config .config
|
|
||||||
make prepare
|
|
||||||
cd ..
|
|
||||||
'');
|
|
||||||
|
|
||||||
# Install static binaries as well.
|
# Install static binaries as well.
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
dir=$out/lib/klibc/bin.static
|
dir=$out/lib/klibc/bin.static
|
||||||
mkdir $dir
|
mkdir $dir
|
||||||
cp $(find $(find . -name static) -type f ! -name "*.g" -a ! -name ".*") $dir/
|
cp $(find $(find . -name static) -type f ! -name "*.g" -a ! -name ".*") $dir/
|
||||||
cp usr/dash/sh $dir/
|
cp usr/dash/sh $dir/
|
||||||
|
|
||||||
|
for file in ${kernelHeaders}/include/*; do
|
||||||
|
ln -sv $file $out/lib/klibc/include
|
||||||
|
done
|
||||||
'';
|
'';
|
||||||
|
|
||||||
nativeBuildInputs = [ perl bison mktemp ];
|
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,11 @@
|
|||||||
|
diff -Naur klibc-2.0.3-orig/scripts/Kbuild.install klibc-2.0.3/scripts/Kbuild.install
|
||||||
|
--- klibc-2.0.3-orig/scripts/Kbuild.install 2013-12-03 13:53:46.000000000 -0500
|
||||||
|
+++ klibc-2.0.3/scripts/Kbuild.install 2014-01-04 18:17:09.342609021 -0500
|
||||||
|
@@ -95,7 +95,6 @@
|
||||||
|
$(Q)mkdir -p $(INSTALLROOT)$(INSTALLDIR)/$(KCROSS)include
|
||||||
|
$(Q)mkdir -p $(INSTALLROOT)$(INSTALLDIR)/$(KCROSS)lib
|
||||||
|
$(Q)mkdir -p $(INSTALLROOT)$(INSTALLDIR)/$(KCROSS)bin
|
||||||
|
- $(Q)$(MAKE) -C $(KLIBCKERNELSRC) ARCH=$(KLIBCARCH) INSTALL_HDR_PATH=$(INSTALLROOT)$(INSTALLDIR)/$(KCROSS) headers_install
|
||||||
|
$(Q)cp -rf usr/include/. $(INSTALLROOT)$(INSTALLDIR)/$(KCROSS)include/.
|
||||||
|
$(Q)chmod -R a+rX $(INSTALLROOT)$(INSTALLDIR)/$(KCROSS)include
|
||||||
|
$(Q)$(install-data) $(srctree)/klcc/klcc.1 $(INSTALLROOT)$(mandir)/man1/$(KCROSS)klcc.1
|
@ -1,8 +1,8 @@
|
|||||||
{ stdenv, fetchurl, kernelDev }:
|
{ stdenv, fetchurl, kernel }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "lttng-modules-2.3.0";
|
pname = "lttng-modules-2.3.0";
|
||||||
name = "${pname}-${kernelDev.version}";
|
name = "${pname}-${kernel.version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://lttng.org/files/lttng-modules/${pname}.tar.bz2";
|
url = "https://lttng.org/files/lttng-modules/${pname}.tar.bz2";
|
||||||
@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
|
|||||||
patches = [ ./lttng-fix-build-error-on-linux-3.2.patch ];
|
patches = [ ./lttng-fix-build-error-on-linux-3.2.patch ];
|
||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
export KERNELDIR="${kernelDev}/lib/modules/${kernelDev.modDirVersion}/build"
|
export KERNELDIR="${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
|
||||||
export INSTALL_MOD_PATH="$out"
|
export INSTALL_MOD_PATH="$out"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
@ -1,14 +1,17 @@
|
|||||||
{ stdenv, fetchurl, kernelDev, perl }:
|
{ stdenv, fetchurl, kernel, perl, kmod }:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "ndiswrapper-1.56-${kernelDev.version}";
|
name = "ndiswrapper-1.59-${kernel.version}";
|
||||||
|
|
||||||
|
patches = [ ./no-sbin.patch ];
|
||||||
|
|
||||||
# need at least .config and include
|
# need at least .config and include
|
||||||
kernel = kernelDev;
|
kernel = kernel.dev;
|
||||||
|
|
||||||
buildPhase = "
|
buildPhase = "
|
||||||
echo make KBUILD=$(echo \$kernel/lib/modules/*/build);
|
echo make KBUILD=$(echo \$kernel/lib/modules/*/build);
|
||||||
echo -n $kernel/lib/modules/*/build > kbuild_path
|
echo -n $kernel/lib/modules/*/build > kbuild_path
|
||||||
|
export PATH=${kmod}/sbin:$PATH
|
||||||
make KBUILD=$(echo \$kernel/lib/modules/*/build);
|
make KBUILD=$(echo \$kernel/lib/modules/*/build);
|
||||||
";
|
";
|
||||||
|
|
||||||
@ -23,14 +26,11 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
# should we use unstable?
|
# should we use unstable?
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = mirror://sourceforge/ndiswrapper/ndiswrapper-1.56.tar.gz;
|
url = mirror://sourceforge/ndiswrapper/ndiswrapper-1.59.tar.gz;
|
||||||
sha256 = "10yqg1a08v6z1qm1qr1v4rbhl35c90gzrazapr09vp372hky8f57";
|
sha256 = "1g6lynccyg4m7gd7vhy44pypsn8ifmibq6rqgvc672pwngzx79b6";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ kernelDev perl ];
|
buildInputs = [ perl ];
|
||||||
|
|
||||||
# this is a patch against svn head, not stable version
|
|
||||||
patches = [./prefix.patch];
|
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Ndis driver wrapper for the Linux kernel";
|
description = "Ndis driver wrapper for the Linux kernel";
|
||||||
|
12
pkgs/os-specific/linux/ndiswrapper/no-sbin.patch
Normal file
12
pkgs/os-specific/linux/ndiswrapper/no-sbin.patch
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
diff -Naur ndiswrapper-1.59-orig/driver/Makefile ndiswrapper-1.59/driver/Makefile
|
||||||
|
--- ndiswrapper-1.59-orig/driver/Makefile 2013-11-28 14:42:35.000000000 -0500
|
||||||
|
+++ ndiswrapper-1.59/driver/Makefile 2014-01-04 18:31:43.242377375 -0500
|
||||||
|
@@ -191,7 +191,7 @@
|
||||||
|
rm -rf .tmp_versions
|
||||||
|
|
||||||
|
install: config_check $(MODULE)
|
||||||
|
- @/sbin/modinfo $(MODULE) | grep -q "^vermagic: *$(KVERS) " || \
|
||||||
|
+ @modinfo $(MODULE) | grep -q "^vermagic: *$(KVERS) " || \
|
||||||
|
{ echo "$(MODULE)" is not for Linux $(KVERS); exit 1; }
|
||||||
|
mkdir -p -m 755 $(DESTDIR)$(INST_DIR)
|
||||||
|
install -m 0644 $(MODULE) $(DESTDIR)$(INST_DIR)
|
@ -1,66 +0,0 @@
|
|||||||
diff -r -u ndiswrapper-1.53/driver/loader.c ndiswrapper-1.53/driver/loader.c
|
|
||||||
--- ndiswrapper-1.53/driver/loader.c 2008-05-28 06:54:08.000000000 +0400
|
|
||||||
+++ ndiswrapper-1.53/driver/loader.c 2008-06-15 17:05:07.000000000 +0400
|
|
||||||
@@ -100,7 +100,7 @@
|
|
||||||
EXIT1(return NULL);
|
|
||||||
}
|
|
||||||
INIT_COMPLETION(loader_complete);
|
|
||||||
- ret = call_usermodehelper("/sbin/loadndisdriver", argv, env, 1);
|
|
||||||
+ ret = call_usermodehelper(USERMOD_HELPER, argv, env, 1);
|
|
||||||
if (ret) {
|
|
||||||
up(&loader_mutex);
|
|
||||||
ERROR("couldn't load driver %s; check system log "
|
|
||||||
@@ -262,7 +262,7 @@
|
|
||||||
EXIT1(return NULL);
|
|
||||||
}
|
|
||||||
INIT_COMPLETION(loader_complete);
|
|
||||||
- ret = call_usermodehelper("/sbin/loadndisdriver", argv, env, 1);
|
|
||||||
+ ret = call_usermodehelper(USERMOD_HELPER, argv, env, 1);
|
|
||||||
if (ret) {
|
|
||||||
up(&loader_mutex);
|
|
||||||
ERROR("couldn't load file %s/%s; check system log "
|
|
||||||
@@ -698,7 +698,7 @@
|
|
||||||
EXIT1(return NULL);
|
|
||||||
}
|
|
||||||
INIT_COMPLETION(loader_complete);
|
|
||||||
- ret = call_usermodehelper("/sbin/loadndisdriver", argv, env, 1);
|
|
||||||
+ ret = call_usermodehelper(USERMOD_HELPER, argv, env, 1);
|
|
||||||
if (ret) {
|
|
||||||
up(&loader_mutex);
|
|
||||||
TRACE1("couldn't load device %04x:%04x; check system "
|
|
||||||
diff -r -u ndiswrapper-1.53/driver/Makefile ndiswrapper-1.53/driver/Makefile
|
|
||||||
--- ndiswrapper-1.53/driver/Makefile 2008-05-28 06:54:08.000000000 +0400
|
|
||||||
+++ ndiswrapper-1.53/driver/Makefile 2008-06-15 17:03:31.000000000 +0400
|
|
||||||
@@ -95,6 +95,10 @@
|
|
||||||
EXTRA_CFLAGS += -DWRAP_PREEMPT
|
|
||||||
endif
|
|
||||||
|
|
||||||
+ifdef DIST_DESTDIR
|
|
||||||
+EXTRA_CFLAGS += -DPREFIX=\"$(DIST_DESTDIR)\"
|
|
||||||
+endif
|
|
||||||
+
|
|
||||||
OBJS = crt.o hal.o iw_ndis.o loader.o ndis.o ntoskernel.o ntoskernel_io.o \
|
|
||||||
pe_linker.o pnp.o proc.o rtl.o wrapmem.o wrapndis.o wrapper.o
|
|
||||||
|
|
||||||
diff -r -u ndiswrapper-1.53/driver/ndiswrapper.h ndiswrapper-1.53/driver/ndiswrapper.h
|
|
||||||
--- ndiswrapper-1.53/driver/ndiswrapper.h 2008-05-28 06:54:08.000000000 +0400
|
|
||||||
+++ ndiswrapper-1.53/driver/ndiswrapper.h 2008-06-15 17:06:37.000000000 +0400
|
|
||||||
@@ -19,8 +19,17 @@
|
|
||||||
#define DRIVER_VERSION "1.53"
|
|
||||||
#define UTILS_VERSION "1.9"
|
|
||||||
|
|
||||||
+#ifndef PREFIX
|
|
||||||
+#define PREFIX
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
#define DRIVER_NAME "ndiswrapper"
|
|
||||||
-#define DRIVER_CONFIG_DIR "/etc/ndiswrapper"
|
|
||||||
+
|
|
||||||
+#ifndef DRIVER_CONFIG_DIR
|
|
||||||
+# define DRIVER_CONFIG_DIR PREFIX "/etc/ndiswrapper"
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
+#define USERMOD_HELPER PREFIX "/sbin/loadndisdriver"
|
|
||||||
|
|
||||||
#define SSID_MAX_WPA_IE_LEN 40
|
|
||||||
#define NDIS_ESSID_MAX_SIZE 32
|
|
@ -1,7 +1,7 @@
|
|||||||
{ stdenv, fetchurl, kernelDev, zlib }:
|
{ stdenv, fetchurl, kernel, zlib }:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "netatop-${kernelDev.version}-0.3";
|
name = "netatop-${kernel.version}-0.3";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = http://www.atoptool.nl/download/netatop-0.3.tar.gz;
|
url = http://www.atoptool.nl/download/netatop-0.3.tar.gz;
|
||||||
@ -12,9 +12,9 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
patchShebangs mkversion
|
patchShebangs mkversion
|
||||||
sed -i -e 's,^KERNDIR.*,KERNDIR=${kernelDev}/lib/modules/${kernelDev.modDirVersion}/build,' \
|
sed -i -e 's,^KERNDIR.*,KERNDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build,' \
|
||||||
*/Makefile
|
*/Makefile
|
||||||
sed -i -e 's,/lib/modules.*extra,'$out'/lib/modules/${kernelDev.modDirVersion}/extra,' \
|
sed -i -e 's,/lib/modules.*extra,'$out'/lib/modules/${kernel.modDirVersion}/extra,' \
|
||||||
-e s,/usr,$out, \
|
-e s,/usr,$out, \
|
||||||
-e /init.d/d \
|
-e /init.d/d \
|
||||||
-e /depmod/d \
|
-e /depmod/d \
|
||||||
@ -23,7 +23,7 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
preInstall = ''
|
preInstall = ''
|
||||||
ensureDir $out/bin $out/sbin $out/share/man/man{4,8}
|
ensureDir $out/bin $out/sbin $out/share/man/man{4,8}
|
||||||
ensureDir $out/lib/modules/${kernelDev.modDirVersion}/extra
|
ensureDir $out/lib/modules/${kernel.modDirVersion}/extra
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
|
@ -29,11 +29,10 @@ buildPhase() {
|
|||||||
|
|
||||||
# Create the module.
|
# Create the module.
|
||||||
kernelVersion=$(cd $kernel/lib/modules && ls)
|
kernelVersion=$(cd $kernel/lib/modules && ls)
|
||||||
sysSrc=$(echo $kernel/lib/modules/$kernelVersion/build/)
|
sysSource=$(echo $kernel/lib/modules/$kernelVersion/source)
|
||||||
|
sysOut=$(echo $kernel/lib/modules/$kernelVersion/build)
|
||||||
unset src # used by the nv makefile
|
unset src # used by the nv makefile
|
||||||
# Hack necessary to compile on 2.6.28.
|
make SYSSRC=$sysSource SYSOUT=$sysOut module
|
||||||
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$sysSrc/include/asm/mach-default"
|
|
||||||
make SYSSRC=$sysSrc module
|
|
||||||
cd ../../..
|
cd ../../..
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
@ -14,11 +14,10 @@ buildPhase() {
|
|||||||
echo "Building linux driver against kernel: $kernel";
|
echo "Building linux driver against kernel: $kernel";
|
||||||
cd kernel
|
cd kernel
|
||||||
kernelVersion=$(cd $kernel/lib/modules && ls)
|
kernelVersion=$(cd $kernel/lib/modules && ls)
|
||||||
sysSrc=$(echo $kernel/lib/modules/$kernelVersion/build/)
|
sysSrc=$(echo $kernel/lib/modules/$kernelVersion/source)
|
||||||
|
sysOut=$(echo $kernel/lib/modules/$kernelVersion/build)
|
||||||
unset src # used by the nv makefile
|
unset src # used by the nv makefile
|
||||||
# Hack necessary to compile on 2.6.28.
|
make SYSSRC=$sysSrc SYSOUT=$sysOut module
|
||||||
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$sysSrc/include/asm/mach-default -I$sysSrc/include/generated"
|
|
||||||
make SYSSRC=$sysSrc module
|
|
||||||
cd ..
|
cd ..
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
@ -16,11 +16,10 @@ buildPhase() {
|
|||||||
echo "Building linux driver against kernel: $kernel";
|
echo "Building linux driver against kernel: $kernel";
|
||||||
cd kernel
|
cd kernel
|
||||||
kernelVersion=$(cd $kernel/lib/modules && ls)
|
kernelVersion=$(cd $kernel/lib/modules && ls)
|
||||||
sysSrc=$(echo $kernel/lib/modules/$kernelVersion/build/)
|
sysSrc=$(echo $kernel/lib/modules/$kernelVersion/source)
|
||||||
|
sysOut=$(echo $kernel/lib/modules/$kernelVersion/build)
|
||||||
unset src # used by the nv makefile
|
unset src # used by the nv makefile
|
||||||
# Hack necessary to compile on 2.6.28.
|
make SYSSRC=$sysSrc SYSOUT=$sysOut module
|
||||||
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$sysSrc/include/asm/mach-default -I$sysSrc/include/generated"
|
|
||||||
make SYSSRC=$sysSrc module
|
|
||||||
cd ..
|
cd ..
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchurl, kernelDev ? null, xlibs, zlib, perl
|
{ stdenv, fetchurl, kernel ? null, xlibs, zlib, perl
|
||||||
, gtk, atk, pango, glib, gdk_pixbuf
|
, gtk, atk, pango, glib, gdk_pixbuf
|
||||||
, # Whether to build the libraries only (i.e. not the kernel module or
|
, # Whether to build the libraries only (i.e. not the kernel module or
|
||||||
# nvidia-settings). Used to support 32-bit binaries on 64-bit
|
# nvidia-settings). Used to support 32-bit binaries on 64-bit
|
||||||
@ -15,7 +15,7 @@ let
|
|||||||
in
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "nvidia-x11-${versionNumber}${optionalString (!libsOnly) "-${kernelDev.version}"}";
|
name = "nvidia-x11-${versionNumber}${optionalString (!libsOnly) "-${kernel.version}"}";
|
||||||
|
|
||||||
builder = ./builder.sh;
|
builder = ./builder.sh;
|
||||||
|
|
||||||
@ -34,7 +34,7 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
inherit versionNumber libsOnly;
|
inherit versionNumber libsOnly;
|
||||||
|
|
||||||
kernel = if libsOnly then null else kernelDev;
|
kernel = if libsOnly then null else kernel.dev;
|
||||||
|
|
||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
|
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
{stdenv, fetchurl, kernelDev, xlibs, zlib, gtk, atk, pango, glib, gdk_pixbuf}:
|
{stdenv, fetchurl, kernel, xlibs, zlib, gtk, atk, pango, glib, gdk_pixbuf}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
versionNumber = "173.14.36";
|
versionNumber = "173.14.39";
|
||||||
|
|
||||||
in
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "nvidia-x11-${versionNumber}-${kernelDev.version}";
|
name = "nvidia-x11-${versionNumber}-${kernel.version}";
|
||||||
|
|
||||||
builder = ./builder-legacy.sh;
|
builder = ./builder-legacy.sh;
|
||||||
|
|
||||||
@ -15,16 +15,16 @@ stdenv.mkDerivation {
|
|||||||
if stdenv.system == "i686-linux" then
|
if stdenv.system == "i686-linux" then
|
||||||
fetchurl {
|
fetchurl {
|
||||||
url = "http://us.download.nvidia.com/XFree86/Linux-x86/${versionNumber}/NVIDIA-Linux-x86-${versionNumber}-pkg0.run";
|
url = "http://us.download.nvidia.com/XFree86/Linux-x86/${versionNumber}/NVIDIA-Linux-x86-${versionNumber}-pkg0.run";
|
||||||
sha256 = "19wnikms9wradf1kmaywnp7hykrdm4xqz2ka7az66s3ma096y95c";
|
sha256 = "08xb7s7cxmj4zv4i3645kjhlhhwxiq6km9ixmsw3vv91f7rkb6d0";
|
||||||
}
|
}
|
||||||
else if stdenv.system == "x86_64-linux" then
|
else if stdenv.system == "x86_64-linux" then
|
||||||
fetchurl {
|
fetchurl {
|
||||||
url = "http://us.download.nvidia.com/XFree86/Linux-x86_64/${versionNumber}/NVIDIA-Linux-x86_64-${versionNumber}-pkg0.run";
|
url = "http://us.download.nvidia.com/XFree86/Linux-x86_64/${versionNumber}/NVIDIA-Linux-x86_64-${versionNumber}-pkg0.run";
|
||||||
sha256 = "1xf1w6qvqw0a3vd807hp3cgqmzm1wkpz2by52p0qgpjqld421k2s";
|
sha256 = "1p2ls0xj81l8v4n6dbjj3p5wlw1iyhgzyvqcv4h5fdxhhs2cb3md";
|
||||||
}
|
}
|
||||||
else throw "nvidia-x11 does not support platform ${stdenv.system}";
|
else throw "nvidia-x11 does not support platform ${stdenv.system}";
|
||||||
|
|
||||||
kernel = kernelDev;
|
kernel = kernel.dev;
|
||||||
|
|
||||||
inherit versionNumber;
|
inherit versionNumber;
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchurl, kernelDev ? null, xlibs, zlib, perl
|
{ stdenv, fetchurl, kernel ? null, xlibs, zlib, perl
|
||||||
, gtk, atk, pango, glib, gdk_pixbuf
|
, gtk, atk, pango, glib, gdk_pixbuf
|
||||||
, # Whether to build the libraries only (i.e. not the kernel module or
|
, # Whether to build the libraries only (i.e. not the kernel module or
|
||||||
# nvidia-settings). Used to support 32-bit binaries on 64-bit
|
# nvidia-settings). Used to support 32-bit binaries on 64-bit
|
||||||
@ -11,7 +11,7 @@ with stdenv.lib;
|
|||||||
let versionNumber = "304.117"; in
|
let versionNumber = "304.117"; in
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "nvidia-x11-${versionNumber}${optionalString (!libsOnly) "-${kernelDev.version}"}";
|
name = "nvidia-x11-${versionNumber}${optionalString (!libsOnly) "-${kernel.version}"}";
|
||||||
|
|
||||||
builder = ./builder-legacy304.sh;
|
builder = ./builder-legacy304.sh;
|
||||||
|
|
||||||
@ -30,7 +30,7 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
inherit versionNumber libsOnly;
|
inherit versionNumber libsOnly;
|
||||||
|
|
||||||
kernel = if libsOnly then null else kernelDev;
|
kernel = if libsOnly then null else kernel.dev;
|
||||||
|
|
||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
|
|
||||||
|
@ -1,44 +0,0 @@
|
|||||||
{stdenv, fetchurl, kernelDev, xlibs, zlib, gtk, atk, pango, glib}:
|
|
||||||
|
|
||||||
let
|
|
||||||
|
|
||||||
versionNumber = "96.43.23";
|
|
||||||
|
|
||||||
in
|
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
name = "nvidia-x11-${versionNumber}-${kernelDev.version}";
|
|
||||||
|
|
||||||
builder = ./builder-legacy.sh;
|
|
||||||
|
|
||||||
src =
|
|
||||||
if stdenv.system == "i686-linux" then
|
|
||||||
fetchurl {
|
|
||||||
url = "http://us.download.nvidia.com/XFree86/Linux-x86/${versionNumber}/NVIDIA-Linux-x86-${versionNumber}-pkg0.run";
|
|
||||||
sha256 = "0hi10h26l51mknr57zsdg0zaxcqdz1lp3hsz0hi1c1vkpbsavrji";
|
|
||||||
}
|
|
||||||
else if stdenv.system == "x86_64-linux" then
|
|
||||||
fetchurl {
|
|
||||||
url = "http://us.download.nvidia.com/XFree86/Linux-x86_64/${versionNumber}/NVIDIA-Linux-x86_64-${versionNumber}-pkg0.run";
|
|
||||||
sha256 = "09vynha40rsxpklj1m0qjfg853ckdpi9g87h06irikh405x57kzp";
|
|
||||||
}
|
|
||||||
else throw "nvidia-x11 does not support platform ${stdenv.system}";
|
|
||||||
|
|
||||||
kernel = kernelDev;
|
|
||||||
|
|
||||||
inherit versionNumber;
|
|
||||||
|
|
||||||
dontStrip = true;
|
|
||||||
|
|
||||||
glPath = stdenv.lib.makeLibraryPath [xlibs.libXext xlibs.libX11 xlibs.libXrandr];
|
|
||||||
|
|
||||||
cudaPath = stdenv.lib.makeLibraryPath [zlib stdenv.gcc.gcc];
|
|
||||||
|
|
||||||
programPath = stdenv.lib.makeLibraryPath [ gtk atk pango glib xlibs.libXv ];
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = http://www.nvidia.com/object/unix.html;
|
|
||||||
description = "X.org driver and kernel module for Legacy NVIDIA graphics cards";
|
|
||||||
license = "unfree";
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,14 +1,15 @@
|
|||||||
{ stdenv, fetchurl, kernelDev}:
|
{ stdenv, fetchurl, kernel}:
|
||||||
|
let
|
||||||
stdenv.mkDerivation rec {
|
pname = "open-iscsi-2.0-871";
|
||||||
name = "open-iscsi-2.0-871-${kernelDev.version}";
|
in stdenv.mkDerivation {
|
||||||
|
name = "${pname}-${kernel.version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://www.open-iscsi.org/bits/${name}.tar.gz";
|
url = "http://www.open-iscsi.org/bits/${pname}.tar.gz";
|
||||||
sha256 = "1jvx1agybaj4czhz41bz37as076spicsmlh5pjksvwl2mr38gsmw";
|
sha256 = "1jvx1agybaj4czhz41bz37as076spicsmlh5pjksvwl2mr38gsmw";
|
||||||
};
|
};
|
||||||
|
|
||||||
KSRC = "${kernelDev}/lib/modules/*/build";
|
KSRC = "${kernel.dev}/lib/modules/*/build";
|
||||||
DESTDIR = "$(out)";
|
DESTDIR = "$(out)";
|
||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
@ -21,5 +22,6 @@ stdenv.mkDerivation rec {
|
|||||||
description = "A high performance, transport independent, multi-platform implementation of RFC3720";
|
description = "A high performance, transport independent, multi-platform implementation of RFC3720";
|
||||||
license = "GPLv2+";
|
license = "GPLv2+";
|
||||||
homepage = http://www.open-iscsi.org;
|
homepage = http://www.open-iscsi.org;
|
||||||
|
broken = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,15 +1,17 @@
|
|||||||
{ stdenv, fetchurl, kernelDev, zlib }:
|
{ stdenv, fetchurl, kernel, zlib }:
|
||||||
|
|
||||||
/* Only useful for kernels 3.2 to 3.5.
|
/* Only useful for kernels 3.2 to 3.5.
|
||||||
Fails to build in 3.8.
|
Fails to build in 3.8.
|
||||||
3.9 upstream already includes a proper alps driver for this */
|
3.9 upstream already includes a proper alps driver for this */
|
||||||
|
|
||||||
|
assert builtins.compareVersions "3.8" kernel.version == 1;
|
||||||
|
|
||||||
let
|
let
|
||||||
ver = "1.3";
|
ver = "1.3";
|
||||||
bname = "psmouse-alps-${ver}";
|
bname = "psmouse-alps-${ver}";
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "psmouse-alps-${kernelDev.version}-${ver}";
|
name = "psmouse-alps-${kernel.version}-${ver}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = http://www.dahetral.com/public-download/alps-psmouse-dlkm-for-3-2-and-3-5/at_download/file;
|
url = http://www.dahetral.com/public-download/alps-psmouse-dlkm-for-3-2-and-3-5/at_download/file;
|
||||||
@ -19,12 +21,12 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
cd src/${bname}/src
|
cd src/${bname}/src
|
||||||
make -C ${kernelDev}/lib/modules/${kernelDev.modDirVersion}/build \
|
make -C ${kernel.dev}/lib/modules/${kernel.modDirVersion}/build \
|
||||||
SUBDIRS=`pwd` INSTALL_PATH=$out
|
SUBDIRS=`pwd` INSTALL_PATH=$out
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
make -C ${kernelDev}/lib/modules/${kernelDev.modDirVersion}/build \
|
make -C ${kernel.dev}/lib/modules/${kernel.modDirVersion}/build \
|
||||||
INSTALL_MOD_PATH=$out SUBDIRS=`pwd` modules_install
|
INSTALL_MOD_PATH=$out SUBDIRS=`pwd` modules_install
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{ stdenv, fetchurl, kernelDev, perl, autoconf, automake, libtool, coreutils, gawk }:
|
{ stdenv, fetchurl, kernel, perl, autoconf, automake, libtool, coreutils, gawk }:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "spl-0.6.2-${kernelDev.version}";
|
name = "spl-0.6.2-${kernel.version}";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = http://archive.zfsonlinux.org/downloads/zfsonlinux/spl/spl-0.6.2.tar.gz;
|
url = http://archive.zfsonlinux.org/downloads/zfsonlinux/spl/spl-0.6.2.tar.gz;
|
||||||
sha256 = "196scl8q0bkkak6m0p1l1fz254cgsizqm73bf9wk3iynamq7qmrw";
|
sha256 = "196scl8q0bkkak6m0p1l1fz254cgsizqm73bf9wk3iynamq7qmrw";
|
||||||
@ -9,7 +9,7 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
patches = [ ./install_prefix.patch ];
|
patches = [ ./install_prefix.patch ];
|
||||||
|
|
||||||
buildInputs = [ perl kernelDev autoconf automake libtool ];
|
buildInputs = [ perl autoconf automake libtool ];
|
||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
./autogen.sh
|
./autogen.sh
|
||||||
@ -23,8 +23,8 @@ stdenv.mkDerivation {
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
configureFlags = ''
|
configureFlags = ''
|
||||||
--with-linux=${kernelDev}/lib/modules/${kernelDev.modDirVersion}/build
|
--with-linux=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source
|
||||||
--with-linux-obj=${kernelDev}/lib/modules/${kernelDev.modDirVersion}/build
|
--with-linux-obj=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build
|
||||||
'';
|
'';
|
||||||
|
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
@ -1,23 +1,21 @@
|
|||||||
{stdenv, fetchurl, kernelDev}:
|
{stdenv, fetchurl, kernel}:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "tp_smapi-0.41-${kernelDev.version}";
|
name = "tp_smapi-0.41-${kernel.version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/downloads/evgeni/tp_smapi/tp_smapi-0.41.tar.gz";
|
url = "https://github.com/downloads/evgeni/tp_smapi/tp_smapi-0.41.tar.gz";
|
||||||
sha256 = "6aef02b92d10360ac9be0db29ae390636be55017990063a092a285c70b54e666";
|
sha256 = "6aef02b92d10360ac9be0db29ae390636be55017990063a092a285c70b54e666";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ kernelDev ];
|
|
||||||
|
|
||||||
makeFlags = [
|
makeFlags = [
|
||||||
"KBASE=${kernelDev}/lib/modules/${kernelDev.modDirVersion}"
|
"KBASE=${kernel.dev}/lib/modules/${kernel.modDirVersion}"
|
||||||
"SHELL=/bin/sh"
|
"SHELL=/bin/sh"
|
||||||
];
|
];
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
install -v -D -m 644 thinkpad_ec.ko "$out/lib/modules/${kernelDev.modDirVersion}/kernel/drivers/firmware/thinkpad_ec.ko"
|
install -v -D -m 644 thinkpad_ec.ko "$out/lib/modules/${kernel.modDirVersion}/kernel/drivers/firmware/thinkpad_ec.ko"
|
||||||
install -v -D -m 644 tp_smapi.ko "$out/lib/modules/${kernelDev.modDirVersion}/kernel/drivers/firmware/tp_smapi.ko"
|
install -v -D -m 644 tp_smapi.ko "$out/lib/modules/${kernel.modDirVersion}/kernel/drivers/firmware/tp_smapi.ko"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{stdenv, fetchurl, klibc, kernelDev, withKlibc ? true}:
|
{stdenv, fetchurl, klibc, kernel, withKlibc ? true}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "v86d-${version}-${kernelDev.version}";
|
name = "v86d-${version}-${kernel.version}";
|
||||||
version = "0.1.10";
|
version = "0.1.10";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
|
|||||||
configureFlags = if withKlibc then [ "--with-klibc" ] else [ "--default" ];
|
configureFlags = if withKlibc then [ "--with-klibc" ] else [ "--default" ];
|
||||||
|
|
||||||
makeFlags = [
|
makeFlags = [
|
||||||
"KDIR=${kernelDev}/lib/modules/${kernelDev.modDirVersion}/source"
|
"KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source"
|
||||||
"DESTDIR=$(out)"
|
"DESTDIR=$(out)"
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -27,7 +27,6 @@ stdenv.mkDerivation rec {
|
|||||||
homepage = http://dev.gentoo.org/~spock/projects/uvesafb/;
|
homepage = http://dev.gentoo.org/~spock/projects/uvesafb/;
|
||||||
license = "BSD";
|
license = "BSD";
|
||||||
platforms = [ "i686-linux" "x86_64-linux" ];
|
platforms = [ "i686-linux" "x86_64-linux" ];
|
||||||
broken = true;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{stdenv, fetchurl, kernelDev, ncurses, fxload}:
|
{stdenv, fetchurl, kernel, ncurses, fxload}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
@ -12,7 +12,7 @@ let
|
|||||||
in
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "wis-go7007-0.9.8-${kernelDev.version}";
|
name = "wis-go7007-0.9.8-${kernel.version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = http://gentoo.osuosl.org/distfiles/wis-go7007-linux-0.9.8.tar.bz2;
|
url = http://gentoo.osuosl.org/distfiles/wis-go7007-linux-0.9.8.tar.bz2;
|
||||||
@ -47,16 +47,6 @@ stdenv.mkDerivation {
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
preBuild = ''
|
preBuild = ''
|
||||||
# Urgh, we need the complete kernel sources for some header
|
|
||||||
# files. So unpack the original kernel source tarball and copy
|
|
||||||
# the configured include directory etc. on top of it.
|
|
||||||
kernelVersion=$(cd ${kernelDev}/lib/modules && ls)
|
|
||||||
kernelBuild=$(echo ${kernelDev}/lib/modules/$kernelVersion/source)
|
|
||||||
tar xvfj ${kernelDev.src}
|
|
||||||
kernelSource=$(echo $(pwd)/linux-*)
|
|
||||||
cp -prd $kernelBuild/* $kernelSource
|
|
||||||
|
|
||||||
#includeDir=$out/lib/modules/$kernelVersion/source/include/linux
|
|
||||||
includeDir=$TMPDIR/scratch
|
includeDir=$TMPDIR/scratch
|
||||||
substituteInPlace Makefile \
|
substituteInPlace Makefile \
|
||||||
--replace '$(DESTDIR)$(KSRC)/include/linux' $includeDir \
|
--replace '$(DESTDIR)$(KSRC)/include/linux' $includeDir \
|
||||||
@ -65,7 +55,7 @@ stdenv.mkDerivation {
|
|||||||
mkdir -p $out/etc/hotplug/usb
|
mkdir -p $out/etc/hotplug/usb
|
||||||
mkdir -p $out/etc/udev/rules.d
|
mkdir -p $out/etc/udev/rules.d
|
||||||
|
|
||||||
makeFlagsArray=(KERNELSRC=$kernelSource \
|
makeFlagsArray=(KERNELSRC=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source \
|
||||||
FIRMWARE_DIR=$out/firmware FXLOAD=${fxload}/sbin/fxload \
|
FIRMWARE_DIR=$out/firmware FXLOAD=${fxload}/sbin/fxload \
|
||||||
DESTDIR=$out SKIP_DEPMOD=1 \
|
DESTDIR=$out SKIP_DEPMOD=1 \
|
||||||
USE_UDEV=y)
|
USE_UDEV=y)
|
||||||
@ -79,5 +69,6 @@ stdenv.mkDerivation {
|
|||||||
meta = {
|
meta = {
|
||||||
description = "Kernel module for the Micronas GO7007, used in a number of USB TV devices";
|
description = "Kernel module for the Micronas GO7007, used in a number of USB TV devices";
|
||||||
homepage = http://oss.wischip.com/;
|
homepage = http://oss.wischip.com/;
|
||||||
|
broken = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{ stdenv, fetchurl, kernelDev, spl, perl, autoconf, automake, libtool, zlib, libuuid, coreutils, utillinux }:
|
{ stdenv, fetchurl, kernel, spl, perl, autoconf, automake, libtool, zlib, libuuid, coreutils, utillinux }:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "zfs-0.6.2-${kernelDev.version}";
|
name = "zfs-0.6.2-${kernel.version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = http://archive.zfsonlinux.org/downloads/zfsonlinux/zfs/zfs-0.6.2.tar.gz;
|
url = http://archive.zfsonlinux.org/downloads/zfsonlinux/zfs/zfs-0.6.2.tar.gz;
|
||||||
@ -10,7 +10,7 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
patches = [ ./mount_zfs_prefix.patch ./nix-build.patch ];
|
patches = [ ./mount_zfs_prefix.patch ./nix-build.patch ];
|
||||||
|
|
||||||
buildInputs = [ kernelDev spl perl autoconf automake libtool zlib libuuid coreutils ];
|
buildInputs = [ spl perl autoconf automake libtool zlib libuuid coreutils ];
|
||||||
|
|
||||||
# for zdb to get the rpath to libgcc_s, needed for pthread_cancel to work
|
# for zdb to get the rpath to libgcc_s, needed for pthread_cancel to work
|
||||||
NIX_CFLAGS_LINK = "-lgcc_s";
|
NIX_CFLAGS_LINK = "-lgcc_s";
|
||||||
@ -28,8 +28,8 @@ stdenv.mkDerivation {
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
configureFlags = ''
|
configureFlags = ''
|
||||||
--with-linux=${kernelDev}/lib/modules/${kernelDev.modDirVersion}/build
|
--with-linux=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source
|
||||||
--with-linux-obj=${kernelDev}/lib/modules/${kernelDev.modDirVersion}/build
|
--with-linux-obj=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build
|
||||||
--with-spl=${spl}/libexec/spl
|
--with-spl=${spl}/libexec/spl
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
{ stdenv, fetchurl, which, autoconf, automake, flex, yacc,
|
{ stdenv, fetchurl, which, autoconf, automake, flex, yacc,
|
||||||
kernelDev, glibc, ncurses, perl, krb5 }:
|
kernel, glibc, ncurses, perl, krb5 }:
|
||||||
|
|
||||||
assert stdenv.isLinux;
|
assert stdenv.isLinux;
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "openafs-1.6.1-${kernelDev.version}";
|
name = "openafs-1.6.1-${kernel.version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = http://www.openafs.org/dl/openafs/1.6.1/openafs-1.6.1-src.tar.bz2;
|
url = http://www.openafs.org/dl/openafs/1.6.1/openafs-1.6.1-src.tar.bz2;
|
||||||
@ -14,7 +14,7 @@ stdenv.mkDerivation {
|
|||||||
buildInputs = [ autoconf automake flex yacc ncurses perl which ];
|
buildInputs = [ autoconf automake flex yacc ncurses perl which ];
|
||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
ln -s ${kernelDev}/lib/modules/*/build $TMP/linux
|
ln -s ${kernel.dev}/lib/modules/*/build $TMP/linux
|
||||||
|
|
||||||
patchShebangs .
|
patchShebangs .
|
||||||
for i in `grep -l -R '/usr/\(include\|src\)' .`; do
|
for i in `grep -l -R '/usr/\(include\|src\)' .`; do
|
||||||
|
@ -84,7 +84,9 @@ let
|
|||||||
if system == "armv6l-linux" then platforms.raspberrypi
|
if system == "armv6l-linux" then platforms.raspberrypi
|
||||||
else if system == "armv5tel-linux" then platforms.sheevaplug
|
else if system == "armv5tel-linux" then platforms.sheevaplug
|
||||||
else if system == "mips64el-linux" then platforms.fuloong2f_n32
|
else if system == "mips64el-linux" then platforms.fuloong2f_n32
|
||||||
else platforms.pc;
|
else if system == "x86_64-linux" then platforms.pc64
|
||||||
|
else if system == "i686-linux" then platforms.pc32
|
||||||
|
else platforms.pcBase;
|
||||||
|
|
||||||
platform = if platform_ != null then platform_
|
platform = if platform_ != null then platform_
|
||||||
else config.platform or platformAuto;
|
else config.platform or platformAuto;
|
||||||
@ -6707,10 +6709,9 @@ let
|
|||||||
kernelPatches = callPackage ../os-specific/linux/kernel/patches.nix { };
|
kernelPatches = callPackage ../os-specific/linux/kernel/patches.nix { };
|
||||||
|
|
||||||
linux_3_2 = makeOverridable (import ../os-specific/linux/kernel/linux-3.2.nix) {
|
linux_3_2 = makeOverridable (import ../os-specific/linux/kernel/linux-3.2.nix) {
|
||||||
inherit fetchurl stdenv perl mktemp bc kmod ubootChooser;
|
inherit fetchurl stdenv perl linuxManualConfig;
|
||||||
kernelPatches =
|
kernelPatches =
|
||||||
[ kernelPatches.sec_perm_2_6_24
|
[ kernelPatches.sec_perm_2_6_24
|
||||||
# kernelPatches.aufs3_2
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -6757,10 +6758,9 @@ let
|
|||||||
});
|
});
|
||||||
|
|
||||||
linux_3_4 = makeOverridable (import ../os-specific/linux/kernel/linux-3.4.nix) {
|
linux_3_4 = makeOverridable (import ../os-specific/linux/kernel/linux-3.4.nix) {
|
||||||
inherit fetchurl stdenv perl mktemp bc kmod ubootChooser;
|
inherit fetchurl stdenv perl linuxManualConfig;
|
||||||
kernelPatches =
|
kernelPatches =
|
||||||
[ kernelPatches.sec_perm_2_6_24
|
[ kernelPatches.sec_perm_2_6_24
|
||||||
# kernelPatches.aufs3_4
|
|
||||||
] ++ lib.optionals (platform.kernelArch == "mips")
|
] ++ lib.optionals (platform.kernelArch == "mips")
|
||||||
[ kernelPatches.mips_fpureg_emu
|
[ kernelPatches.mips_fpureg_emu
|
||||||
kernelPatches.mips_fpu_sigill
|
kernelPatches.mips_fpu_sigill
|
||||||
@ -6776,11 +6776,11 @@ let
|
|||||||
});
|
});
|
||||||
|
|
||||||
linux_3_6_rpi = makeOverridable (import ../os-specific/linux/kernel/linux-rpi-3.6.nix) {
|
linux_3_6_rpi = makeOverridable (import ../os-specific/linux/kernel/linux-rpi-3.6.nix) {
|
||||||
inherit fetchurl stdenv perl mktemp bc kmod ubootChooser;
|
inherit fetchurl stdenv perl linuxManualConfig;
|
||||||
};
|
};
|
||||||
|
|
||||||
linux_3_10 = makeOverridable (import ../os-specific/linux/kernel/linux-3.10.nix) {
|
linux_3_10 = makeOverridable (import ../os-specific/linux/kernel/linux-3.10.nix) {
|
||||||
inherit fetchurl stdenv perl mktemp bc kmod ubootChooser;
|
inherit fetchurl stdenv perl linuxManualConfig;
|
||||||
kernelPatches =
|
kernelPatches =
|
||||||
[
|
[
|
||||||
kernelPatches.sec_perm_2_6_24
|
kernelPatches.sec_perm_2_6_24
|
||||||
@ -6801,7 +6801,7 @@ let
|
|||||||
});
|
});
|
||||||
|
|
||||||
linux_3_11 = makeOverridable (import ../os-specific/linux/kernel/linux-3.11.nix) {
|
linux_3_11 = makeOverridable (import ../os-specific/linux/kernel/linux-3.11.nix) {
|
||||||
inherit fetchurl stdenv perl mktemp bc kmod ubootChooser;
|
inherit fetchurl stdenv perl linuxManualConfig;
|
||||||
kernelPatches =
|
kernelPatches =
|
||||||
[
|
[
|
||||||
kernelPatches.sec_perm_2_6_24
|
kernelPatches.sec_perm_2_6_24
|
||||||
@ -6813,7 +6813,7 @@ let
|
|||||||
};
|
};
|
||||||
|
|
||||||
linux_3_12 = makeOverridable (import ../os-specific/linux/kernel/linux-3.12.nix) {
|
linux_3_12 = makeOverridable (import ../os-specific/linux/kernel/linux-3.12.nix) {
|
||||||
inherit fetchurl stdenv perl mktemp bc kmod ubootChooser;
|
inherit fetchurl stdenv perl linuxManualConfig;
|
||||||
kernelPatches =
|
kernelPatches =
|
||||||
[
|
[
|
||||||
kernelPatches.sec_perm_2_6_24
|
kernelPatches.sec_perm_2_6_24
|
||||||
@ -6834,8 +6834,6 @@ let
|
|||||||
linuxPackagesFor = kernel: self: let callPackage = newScope self; in {
|
linuxPackagesFor = kernel: self: let callPackage = newScope self; in {
|
||||||
inherit kernel;
|
inherit kernel;
|
||||||
|
|
||||||
kernelDev = kernel.dev or kernel;
|
|
||||||
|
|
||||||
acpi_call = callPackage ../os-specific/linux/acpi-call {};
|
acpi_call = callPackage ../os-specific/linux/acpi-call {};
|
||||||
|
|
||||||
batman_adv = callPackage ../os-specific/linux/batman-adv {};
|
batman_adv = callPackage ../os-specific/linux/batman-adv {};
|
||||||
@ -6844,45 +6842,20 @@ let
|
|||||||
|
|
||||||
ati_drivers_x11 = callPackage ../os-specific/linux/ati-drivers { };
|
ati_drivers_x11 = callPackage ../os-specific/linux/ati-drivers { };
|
||||||
|
|
||||||
aufs =
|
|
||||||
if self.kernel.features ? aufs2 then
|
|
||||||
callPackage ../os-specific/linux/aufs/2.nix { }
|
|
||||||
else if self.kernel.features ? aufs3 then
|
|
||||||
callPackage ../os-specific/linux/aufs/3.nix { }
|
|
||||||
else null;
|
|
||||||
|
|
||||||
aufs_util =
|
|
||||||
if self.kernel.features ? aufs2 then
|
|
||||||
callPackage ../os-specific/linux/aufs-util/2.nix { }
|
|
||||||
else if self.kernel.features ? aufs3 then
|
|
||||||
callPackage ../os-specific/linux/aufs-util/3.nix { }
|
|
||||||
else null;
|
|
||||||
|
|
||||||
blcr = callPackage ../os-specific/linux/blcr { };
|
blcr = callPackage ../os-specific/linux/blcr { };
|
||||||
|
|
||||||
cryptodev = callPackage ../os-specific/linux/cryptodev { };
|
cryptodev = callPackage ../os-specific/linux/cryptodev { };
|
||||||
|
|
||||||
e1000e = callPackage ../os-specific/linux/e1000e {};
|
e1000e = callPackage ../os-specific/linux/e1000e {};
|
||||||
|
|
||||||
exmap = callPackage ../os-specific/linux/exmap { };
|
|
||||||
|
|
||||||
frandom = callPackage ../os-specific/linux/frandom { };
|
frandom = callPackage ../os-specific/linux/frandom { };
|
||||||
|
|
||||||
iscsitarget = callPackage ../os-specific/linux/iscsitarget { };
|
|
||||||
|
|
||||||
iwlwifi = callPackage ../os-specific/linux/iwlwifi { };
|
|
||||||
|
|
||||||
lttngModules = callPackage ../os-specific/linux/lttng-modules { };
|
lttngModules = callPackage ../os-specific/linux/lttng-modules { };
|
||||||
|
|
||||||
atheros = callPackage ../os-specific/linux/atheros/0.9.4.nix { };
|
|
||||||
|
|
||||||
broadcom_sta = callPackage ../os-specific/linux/broadcom-sta/default.nix { };
|
broadcom_sta = callPackage ../os-specific/linux/broadcom-sta/default.nix { };
|
||||||
|
|
||||||
broadcom_sta6 = callPackage ../os-specific/linux/broadcom-sta-v6/default.nix { };
|
|
||||||
|
|
||||||
nvidia_x11 = callPackage ../os-specific/linux/nvidia-x11 { };
|
nvidia_x11 = callPackage ../os-specific/linux/nvidia-x11 { };
|
||||||
|
|
||||||
nvidia_x11_legacy96 = callPackage ../os-specific/linux/nvidia-x11/legacy96.nix { };
|
|
||||||
nvidia_x11_legacy173 = callPackage ../os-specific/linux/nvidia-x11/legacy173.nix { };
|
nvidia_x11_legacy173 = callPackage ../os-specific/linux/nvidia-x11/legacy173.nix { };
|
||||||
nvidia_x11_legacy304 = callPackage ../os-specific/linux/nvidia-x11/legacy304.nix { };
|
nvidia_x11_legacy304 = callPackage ../os-specific/linux/nvidia-x11/legacy304.nix { };
|
||||||
|
|
||||||
@ -6892,9 +6865,9 @@ let
|
|||||||
|
|
||||||
wis_go7007 = callPackage ../os-specific/linux/wis-go7007 { };
|
wis_go7007 = callPackage ../os-specific/linux/wis-go7007 { };
|
||||||
|
|
||||||
klibc = callPackage ../os-specific/linux/klibc {
|
kernelHeaders = callPackage ../os-specific/linux/kernel-headers { };
|
||||||
linuxHeaders = glibc.kernelHeaders;
|
|
||||||
};
|
klibc = callPackage ../os-specific/linux/klibc { };
|
||||||
|
|
||||||
/* compiles but has to be integrated into the kernel somehow
|
/* compiles but has to be integrated into the kernel somehow
|
||||||
Let's have it uncommented and finish it..
|
Let's have it uncommented and finish it..
|
||||||
@ -6909,15 +6882,6 @@ let
|
|||||||
|
|
||||||
spl = callPackage ../os-specific/linux/spl/default.nix { };
|
spl = callPackage ../os-specific/linux/spl/default.nix { };
|
||||||
|
|
||||||
sysprof = callPackage ../development/tools/profiling/sysprof {
|
|
||||||
inherit (gnome) libglade;
|
|
||||||
};
|
|
||||||
|
|
||||||
systemtap = callPackage ../development/tools/profiling/systemtap {
|
|
||||||
linux = self.kernelDev;
|
|
||||||
inherit (gnome) libglademm;
|
|
||||||
};
|
|
||||||
|
|
||||||
tp_smapi = callPackage ../os-specific/linux/tp_smapi { };
|
tp_smapi = callPackage ../os-specific/linux/tp_smapi { };
|
||||||
|
|
||||||
v86d = callPackage ../os-specific/linux/v86d { };
|
v86d = callPackage ../os-specific/linux/v86d { };
|
||||||
@ -6955,7 +6919,7 @@ let
|
|||||||
|
|
||||||
# A function to build a manually-configured kernel
|
# A function to build a manually-configured kernel
|
||||||
linuxManualConfig = import ../os-specific/linux/kernel/manual-config.nix {
|
linuxManualConfig = import ../os-specific/linux/kernel/manual-config.nix {
|
||||||
inherit (pkgs) stdenv runCommand nettools bc perl kmod writeTextFile;
|
inherit (pkgs) stdenv runCommand nettools bc perl kmod writeTextFile ubootChooser;
|
||||||
};
|
};
|
||||||
|
|
||||||
keyutils = callPackage ../os-specific/linux/keyutils { };
|
keyutils = callPackage ../os-specific/linux/keyutils { };
|
||||||
@ -7106,6 +7070,10 @@ let
|
|||||||
|
|
||||||
sysfsutils = callPackage ../os-specific/linux/sysfsutils { };
|
sysfsutils = callPackage ../os-specific/linux/sysfsutils { };
|
||||||
|
|
||||||
|
sysprof = callPackage ../development/tools/profiling/sysprof {
|
||||||
|
inherit (gnome) libglade;
|
||||||
|
};
|
||||||
|
|
||||||
# Provided with sysfsutils.
|
# Provided with sysfsutils.
|
||||||
libsysfs = sysfsutils;
|
libsysfs = sysfsutils;
|
||||||
systool = sysfsutils;
|
systool = sysfsutils;
|
||||||
@ -7118,6 +7086,10 @@ let
|
|||||||
|
|
||||||
systemd = callPackage ../os-specific/linux/systemd { };
|
systemd = callPackage ../os-specific/linux/systemd { };
|
||||||
|
|
||||||
|
systemtap = callPackage ../development/tools/profiling/systemtap {
|
||||||
|
inherit (gnome) libglademm;
|
||||||
|
};
|
||||||
|
|
||||||
# In nixos, you can set systemd.package = pkgs.systemd_with_lvm2 to get
|
# In nixos, you can set systemd.package = pkgs.systemd_with_lvm2 to get
|
||||||
# LVM2 working in systemd.
|
# LVM2 working in systemd.
|
||||||
systemd_with_lvm2 = pkgs.lib.overrideDerivation pkgs.systemd (p: {
|
systemd_with_lvm2 = pkgs.lib.overrideDerivation pkgs.systemd (p: {
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
rec {
|
rec {
|
||||||
pc = {
|
pcBase = {
|
||||||
name = "pc";
|
name = "pc";
|
||||||
uboot = null;
|
uboot = null;
|
||||||
kernelHeadersBaseConfig = "defconfig";
|
kernelHeadersBaseConfig = "defconfig";
|
||||||
@ -7,12 +7,17 @@ rec {
|
|||||||
# Build whatever possible as a module, if not stated in the extra config.
|
# Build whatever possible as a module, if not stated in the extra config.
|
||||||
kernelAutoModules = true;
|
kernelAutoModules = true;
|
||||||
kernelTarget = "bzImage";
|
kernelTarget = "bzImage";
|
||||||
# Currently ignored - it should be set according to 'system' once it is
|
|
||||||
# not ignored. This is for stdenv-updates.
|
|
||||||
kernelArch = "i386";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
pc_simplekernel = pc // {
|
pc64 = pcBase // { kernelArch = "x86_64"; };
|
||||||
|
|
||||||
|
pc32 = pcBase // { kernelArch = "i386"; };
|
||||||
|
|
||||||
|
pc32_simplekernel = pc32 // {
|
||||||
|
kernelAutoModules = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
pc64_simplekernel = pc64 // {
|
||||||
kernelAutoModules = false;
|
kernelAutoModules = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -192,7 +192,7 @@ let
|
|||||||
arch = "i586";
|
arch = "i586";
|
||||||
float = "hard";
|
float = "hard";
|
||||||
withTLS = true;
|
withTLS = true;
|
||||||
platform = pkgs.platforms.pc;
|
platform = pkgs.platforms.pc32;
|
||||||
libc = "glibc";
|
libc = "glibc";
|
||||||
openssl.system = "hurd-x86"; # Nix depends on OpenSSL.
|
openssl.system = "hurd-x86"; # Nix depends on OpenSSL.
|
||||||
};
|
};
|
||||||
|
@ -1082,8 +1082,6 @@ let
|
|||||||
acpi_call = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; };
|
acpi_call = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; };
|
||||||
atheros = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; };
|
atheros = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; };
|
||||||
ati_drivers_x11 = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; };
|
ati_drivers_x11 = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; };
|
||||||
aufs = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; };
|
|
||||||
aufs_util = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; };
|
|
||||||
bbswitch = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; };
|
bbswitch = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; };
|
||||||
broadcom_sta = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; };
|
broadcom_sta = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; };
|
||||||
cryptodev = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; };
|
cryptodev = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; };
|
||||||
|
Loading…
Reference in New Issue
Block a user