Author: viric
Date: Tue Dec 28 21:27:52 2010
New Revision: 25316
URL: https://svn.nixos.org/websvn/nix/?rev=25316&sc=1

Log:
Merging nixos stdenv-updates, as nixpkgs trunk got stdenv-updates merged some 
minutes ago.

Added:
   nixos/trunk/modules/installer/cd-dvd/system-tarball-fuloong2f.nix
      - copied unchanged from r25315, 
nixos/branches/stdenv-updates/modules/installer/cd-dvd/system-tarball-fuloong2f.nix
   nixos/trunk/modules/installer/cd-dvd/system-tarball-sheevaplug.nix
      - copied unchanged from r25315, 
nixos/branches/stdenv-updates/modules/installer/cd-dvd/system-tarball-sheevaplug.nix
Modified:
   nixos/trunk/   (props changed)
   nixos/trunk/lib/eval-config.nix
   nixos/trunk/lib/make-system-tarball.nix
   nixos/trunk/modules/installer/cd-dvd/system-tarball-pc.nix
   nixos/trunk/modules/installer/cd-dvd/system-tarball.nix
   nixos/trunk/modules/misc/nixpkgs.nix
   nixos/trunk/release.nix

Modified: nixos/trunk/lib/eval-config.nix
==============================================================================
--- nixos/trunk/lib/eval-config.nix     Tue Dec 28 21:19:57 2010        (r25315)
+++ nixos/trunk/lib/eval-config.nix     Tue Dec 28 21:27:52 2010        (r25316)
@@ -62,7 +62,7 @@
       in
       {
         inherit system;
-        inherit (nixpkgsOptions) config platform;
+        inherit (nixpkgsOptions) config;
       });
 
   # Optionally check wether all config values have corresponding

Modified: nixos/trunk/lib/make-system-tarball.nix
==============================================================================
--- nixos/trunk/lib/make-system-tarball.nix     Tue Dec 28 21:19:57 2010        
(r25315)
+++ nixos/trunk/lib/make-system-tarball.nix     Tue Dec 28 21:27:52 2010        
(r25316)
@@ -1,7 +1,7 @@
 { stdenv, perl, xz, pathsFromGraph
 
 , # The file name of the resulting tarball
-  fileName ? "nixos-built.tar.bz2"
+  fileName ? "nixos-system-${stdenv.system}"
 
 , # The files and directories to be placed in the tarball.
   # This is a list of attribute sets {source, target} where `source'

Copied: nixos/trunk/modules/installer/cd-dvd/system-tarball-fuloong2f.nix (from 
r25315, 
nixos/branches/stdenv-updates/modules/installer/cd-dvd/system-tarball-fuloong2f.nix)
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ nixos/trunk/modules/installer/cd-dvd/system-tarball-fuloong2f.nix   Tue Dec 
28 21:27:52 2010        (r25316, copy of r25315, 
nixos/branches/stdenv-updates/modules/installer/cd-dvd/system-tarball-fuloong2f.nix)
@@ -0,0 +1,194 @@
+{ config, pkgs, ... }:
+
+with pkgs.lib;
+
+let
+
+  # A dummy /etc/nixos/configuration.nix in the booted CD that
+  # rebuilds the CD's configuration (and allows the configuration to
+  # be modified, of course, providing a true live CD).  Problem is
+  # that we don't really know how the CD was built - the Nix
+  # expression language doesn't allow us to query the expression being
+  # evaluated.  So we'll just hope for the best.
+  dummyConfiguration = pkgs.writeText "configuration.nix"
+    ''
+      {config, pkgs, ...}:
+
+      {
+        require = [ ];
+
+        # Add your own options below
+        # E.g.,
+        #   services.openssh.enable = true;
+
+        nixpkgs.config.platform = pkgs.platforms.fuloong2f_n32;
+      }
+    '';
+  
+
+  pkgs2storeContents = l : map (x: { object = x; symlink = "none"; }) l;
+
+  options = {
+
+    system.nixosVersion = mkOption {
+      default = "${builtins.readFile ../../../VERSION}";
+      description = ''
+        NixOS version number.
+      '';
+    };
+  };
+
+  # A clue for the kernel loading
+  kernelParams = pkgs.writeText "kernel-params.txt" ''
+    Kernel Parameters:
+      init=/boot/init systemConfig=/boot/init ${toString 
config.boot.kernelParams}
+  '';
+
+  # System wide nixpkgs config
+  nixpkgsUserConfig = pkgs.writeText "config.nix" ''
+    pkgs:
+    {
+      platform = pkgs.platforms.fuloong2f_n32;
+    }
+  '';
+  
+in
+
+{
+  require =
+    [ options
+      ./system-tarball.nix
+      ../../hardware/network/rt73.nix
+    ];
+
+
+  # Disable some other stuff we don't need.
+  security.sudo.enable = false;
+
+  # Include only the en_US locale.  This saves 75 MiB or so compared to
+  # the full glibcLocales package.
+  i18n.supportedLocales = ["en_US.UTF-8/UTF-8" "en_US/ISO-8859-1"];
+
+  # Include some utilities that are useful for installing or repairing
+  # the system.
+  environment.systemPackages =
+    [ pkgs.subversion # for nixos-checkout
+      pkgs.w3m # needed for the manual anyway
+      pkgs.testdisk # useful for repairing boot problems
+      pkgs.mssys # for writing Microsoft boot sectors / MBRs
+      pkgs.parted
+      pkgs.ddrescue
+      pkgs.ccrypt
+      pkgs.cryptsetup # needed for dm-crypt volumes
+
+      # Some networking tools.
+      pkgs.sshfsFuse
+      pkgs.socat
+      pkgs.screen
+      pkgs.wpa_supplicant # !!! should use the wpa module
+
+      # Hardware-related tools.
+      pkgs.sdparm
+      pkgs.hdparm
+      pkgs.dmraid
+
+      # Tools to create / manipulate filesystems.
+      pkgs.ntfsprogs # for resizing NTFS partitions
+      pkgs.btrfsProgs
+      pkgs.jfsutils
+      pkgs.jfsrec
+
+      # Some compression/archiver tools.
+      pkgs.unrar
+      pkgs.unzip
+      pkgs.zip
+      pkgs.xz
+      pkgs.dar # disk archiver
+      
+      # Some editors.
+      pkgs.nvi
+      pkgs.bvi # binary editor
+      pkgs.joe
+    ];
+
+  # The initrd has to contain any module that might be necessary for
+  # mounting the CD/DVD.
+  boot.initrd.availableKernelModules =
+    [ "vfat" "reiserfs" ];
+
+  boot.kernelPackages = pkgs.linuxPackages_2_6_35;
+  boot.kernelParams = [ "console=tty" ];
+
+  boot.initrd.kernelModules =
+    [ # Wait for SCSI devices to appear.
+      "scsi_wait_scan"
+    ];
+
+  boot.postBootCommands =
+    ''
+      mkdir -p /mnt
+
+      cp ${dummyConfiguration} /etc/nixos/configuration.nix
+    '';
+
+  # Some more help text.
+  services.mingetty.helpLine =
+    ''
+        
+      Log in as "root" with an empty password.  ${
+        if config.services.xserver.enable then
+          "Type `start xserver' to start\nthe graphical user interface."
+        else ""
+      }
+    '';
+
+  # Include the firmware for various wireless cards.
+  networking.enableRT73Firmware = true;
+  networking.enableIntel2200BGFirmware = true;
+
+  # To speed up further installation of packages, include the complete stdenv
+  # in the Nix store of the tarball.
+  tarball.storeContents = pkgs2storeContents [ pkgs.stdenv ]
+    ++ [
+      {
+        object = config.system.build.bootStage2;
+        symlink = "/boot/init";
+      }
+      {
+        object = config.system.build.toplevel;
+        symlink = "/boot/system";
+      }
+    ];
+
+  tarball.contents = [
+    { source = kernelParams;
+      target = "/kernelparams.txt";
+    }
+    { source = config.boot.kernelPackages.kernel + "/" + 
config.system.boot.loader.kernelFile;
+      target = "/boot/" + config.system.boot.loader.kernelFile;
+    }
+    { source = nixpkgsUserConfig;
+      target = "/root/.nixpkgs/config.nix";
+    }
+  ];
+
+  # Allow sshd to be started manually through "start sshd".  It should
+  # not be started by default on the installation CD because the
+  # default root password is empty.
+  services.openssh.enable = true;
+
+  jobs.openssh.startOn = pkgs.lib.mkOverrideTemplate 50 {} "";
+
+  services.ttyBackgrounds.enable = false;
+
+  boot.loader.grub.enable = false;
+  boot.loader.generationsDir.enable = false;
+  system.boot.loader.kernelFile = "vmlinux";
+
+  # Needed for nixos to evaluate
+  system.build.menuBuilder = "true";
+
+  nixpkgs.config = {
+    platform = pkgs.platforms.fuloong2f_n32;
+  };
+}

Modified: nixos/trunk/modules/installer/cd-dvd/system-tarball-pc.nix
==============================================================================
--- nixos/trunk/modules/installer/cd-dvd/system-tarball-pc.nix  Tue Dec 28 
21:19:57 2010        (r25315)
+++ nixos/trunk/modules/installer/cd-dvd/system-tarball-pc.nix  Tue Dec 28 
21:27:52 2010        (r25316)
@@ -23,4 +23,16 @@
   # To speed up further installation of packages, include the complete stdenv
   # in the Nix store of the tarball.
   tarball.storeContents = pkgs2storeContents [ pkgs.stdenv pkgs.klibc 
pkgs.klibcShrunk ];
+
+  tarball.contents =
+    [ { source = config.boot.kernelPackages.kernel + "/" + 
config.system.boot.loader.kernelFile;
+        target = "/boot/" + config.system.boot.loader.kernelFile;
+      }
+    ];
+     
+  # Allow sshd to be started manually through "start sshd".  It should
+  # not be started by default on the installation CD because the
+  # default root password is empty.
+  services.openssh.enable = true;
+  jobs.openssh.startOn = pkgs.lib.mkOverrideTemplate 50 {} "";
 }

Copied: nixos/trunk/modules/installer/cd-dvd/system-tarball-sheevaplug.nix 
(from r25315, 
nixos/branches/stdenv-updates/modules/installer/cd-dvd/system-tarball-sheevaplug.nix)
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ nixos/trunk/modules/installer/cd-dvd/system-tarball-sheevaplug.nix  Tue Dec 
28 21:27:52 2010        (r25316, copy of r25315, 
nixos/branches/stdenv-updates/modules/installer/cd-dvd/system-tarball-sheevaplug.nix)
@@ -0,0 +1,186 @@
+# This module contains the basic configuration for building a NixOS
+# installation CD.
+
+{ config, pkgs, ... }:
+
+with pkgs.lib;
+
+let
+
+  # A dummy /etc/nixos/configuration.nix in the booted CD that
+  # rebuilds the CD's configuration (and allows the configuration to
+  # be modified, of course, providing a true live CD).  Problem is
+  # that we don't really know how the CD was built - the Nix
+  # expression language doesn't allow us to query the expression being
+  # evaluated.  So we'll just hope for the best.
+  dummyConfiguration = pkgs.writeText "configuration.nix"
+    ''
+      {config, pkgs, ...}:
+
+      {
+        require = [ ];
+
+        # Add your own options below and run "nixos-rebuild switch".
+        # E.g.,
+        #   services.openssh.enable = true;
+      }
+    '';
+  
+
+  pkgs2storeContents = l : map (x: { object = x; symlink = "none"; }) l;
+
+  options = {
+
+    system.nixosVersion = mkOption {
+      default = "${builtins.readFile ../../../VERSION}";
+      description = ''
+        NixOS version number.
+      '';
+    };
+  };
+
+  # A clue for the kernel loading
+  kernelParams = pkgs.writeText "kernel-params.txt" ''
+    Kernel Parameters:
+      init=${config.system.build.bootStage2} 
systemConfig=${config.system.build.toplevel} ${toString 
config.boot.kernelParams}
+  '';
+
+  
+in
+
+{
+  require =
+    [ options
+      ./system-tarball.nix
+      ../../hardware/network/rt73.nix
+    ];
+
+  # Disable some other stuff we don't need.
+  security.sudo.enable = false;
+
+  # Include only the en_US locale.  This saves 75 MiB or so compared to
+  # the full glibcLocales package.
+  i18n.supportedLocales = ["en_US.UTF-8/UTF-8" "en_US/ISO-8859-1"];
+
+  # Include some utilities that are useful for installing or repairing
+  # the system.
+  environment.systemPackages =
+    [ pkgs.subversion # for nixos-checkout
+      pkgs.w3m # needed for the manual anyway
+      pkgs.ddrescue
+      pkgs.ccrypt
+      pkgs.cryptsetup # needed for dm-crypt volumes
+
+      # Some networking tools.
+      pkgs.sshfsFuse
+      pkgs.socat
+      pkgs.screen
+      pkgs.wpa_supplicant # !!! should use the wpa module
+
+      # Hardware-related tools.
+      pkgs.sdparm
+      pkgs.hdparm
+      pkgs.dmraid
+
+      # Tools to create / manipulate filesystems.
+      pkgs.btrfsProgs
+
+      # Some compression/archiver tools.
+      pkgs.unrar
+      pkgs.unzip
+      pkgs.zip
+      pkgs.xz
+      pkgs.dar # disk archiver
+      
+      # Some editors.
+      pkgs.nvi
+      pkgs.bvi # binary editor
+      pkgs.joe
+    ];
+
+  boot.loader.grub.enable = false;
+  boot.loader.generationsDir.enable = false;
+  system.boot.loader.kernelFile = "uImage";
+
+  boot.initrd.availableKernelModules =
+    [ "mvsdio" "mmc_block" "reiserfs" "ext3" "ums-cypress" "rtc_mv"
+      "ext4" ];
+
+  boot.initrd.kernelModules =
+    [
+      "scsi_wait_scan"
+    ];
+
+  boot.postBootCommands =
+    ''
+      mkdir -p /mnt
+
+      cp ${dummyConfiguration} /etc/nixos/configuration.nix
+    '';
+
+  boot.initrd.extraUtilsCommands =
+    ''
+      cp ${pkgs.utillinux}/sbin/hwclock $out/bin
+    '';
+
+  boot.initrd.postDeviceCommands =
+    ''
+      hwclock -s
+    '';
+
+  boot.kernelParams =
+    [
+      "selinux=0"
+      "console=tty1"
+    ];
+
+  boot.kernelPackages = pkgs.linuxPackages_2_6_35;
+
+  services.mingetty = {
+    ttys = [ "ttyS0" ];
+
+    # Some more help text.
+    helpLine = ''
+      Log in as "root" with an empty password.  ${
+        if config.services.xserver.enable then
+          "Type `start xserver' to start\nthe graphical user interface."
+        else ""
+      }
+    '';
+  };
+
+  # Setting vesa, we don't get the nvidia driver, which can't work in arm.
+  services.xserver.videoDriver = "vesa";
+  services.xserver.videoDrivers = [];
+  services.nixosManual.enable = false;
+
+  # Include the firmware for various wireless cards.
+  networking.enableRT73Firmware = true;
+  networking.enableIntel2200BGFirmware = true;
+
+  # To speed up further installation of packages, include the complete stdenv
+  # in the Nix store of the tarball.
+  tarball.storeContents = pkgs2storeContents [ pkgs.stdenv ];
+  tarball.contents = [
+    { source = kernelParams;
+      target = "/kernelparams.txt";
+    }
+    { source = config.boot.kernelPackages.kernel + "/" + 
config.system.boot.loader.kernelFile;
+      target = "/boot/" + config.system.boot.loader.kernelFile;
+    }
+    { source = pkgs.ubootSheevaplug;
+      target = "/boot/uboot";
+    }
+  ];
+
+  # Allow sshd to be started manually through "start sshd".  It should
+  # not be started by default on the installation CD because the
+  # default root password is empty.
+  services.openssh.enable = true;
+  services.ttyBackgrounds.enable = false;
+  jobs.openssh.startOn = pkgs.lib.mkOverrideTemplate 50 {} "";
+
+  nixpkgs.config = {
+    platform = pkgs.platforms.sheevaplug;
+  };
+}

Modified: nixos/trunk/modules/installer/cd-dvd/system-tarball.nix
==============================================================================
--- nixos/trunk/modules/installer/cd-dvd/system-tarball.nix     Tue Dec 28 
21:19:57 2010        (r25315)
+++ nixos/trunk/modules/installer/cd-dvd/system-tarball.nix     Tue Dec 28 
21:27:52 2010        (r25316)
@@ -31,13 +31,6 @@
 
   };
 
-  # A clue for the uboot loading
-  ubootKernelParams = pkgs.writeText "uboot-kernel-params.txt" ''
-    Kernel Parameters:
-      init=${config.system.build.toplevel}/init
-      ${toString config.boot.kernelParams}
-  '';
-
   versionFile = pkgs.writeText "nixos-version" config.system.nixosVersion;
 
 in
@@ -45,20 +38,11 @@
 {
   require = options;
 
-  # Don't build the GRUB menu builder script, since we don't need it
-  # here and it causes a cyclic dependency.
-  boot.loader.grub.enable = false;
-
-  # !!! Hack - attributes expected by other modules.
-  system.build.menuBuilder = "true";
-  system.boot.loader.kernelFile = "bzImage";
-  environment.systemPackages = [ pkgs.grub2 ];
-
   # In stage 1 of the boot, mount the CD/DVD as the root FS by label
   # so that we don't need to know its device.
   fileSystems =
     [ { mountPoint = "/";
-        label = "rootfs";
+        device = "/dev/sda";
       }
     ];
 
@@ -77,23 +61,9 @@
   # Individual files to be included on the CD, outside of the Nix
   # store on the CD.
   tarball.contents =
-    [ { source = config.boot.kernelPackages.kernel + "/bzImage";
-        target = "/boot/bzImage";
-      }
-      { source = config.system.build.initialRamdisk + "/initrd";
+    [ { source = config.system.build.initialRamdisk + "/initrd";
         target = "/boot/initrd";
       }
-      { source = "${pkgs.grub2}/share/grub/unicode.pf2";
-        target = "/boot/grub/unicode.pf2";
-      }
-      { source = config.boot.loader.grub.splashImage;
-        target = "/boot/grub/splash.png";
-      }
-/*
-      { source = pkgs.ubootKernelParams;
-        target = "/uboot-kernelparams.txt";
-      }
-*/
       { source = versionFile;
         target = "/nixos-version.txt";
       }
@@ -110,7 +80,7 @@
     ''
       # After booting, register the contents of the Nix store on the
       # CD in the Nix database in the tmpfs.
-      ${config.environment.nix}/bin/nix-store --load-db < 
/nix/store/nix-path-registration
+      ${config.environment.nix}/bin/nix-store --load-db < 
/nix-path-registration
 
       # nixos-rebuild also requires a "system" profile and an
       # /etc/NIXOS tag.

Modified: nixos/trunk/modules/misc/nixpkgs.nix
==============================================================================
--- nixos/trunk/modules/misc/nixpkgs.nix        Tue Dec 28 21:19:57 2010        
(r25315)
+++ nixos/trunk/modules/misc/nixpkgs.nix        Tue Dec 28 21:27:52 2010        
(r25316)
@@ -24,12 +24,5 @@
       '';
     };
 
-    nixpkgs.platform = pkgs.lib.mkOption {
-      default = pkgs.platforms.pc;
-      description = ''
-        The platform for the Nix Packages collection.
-      '';
-    };
-
   };
 }

Modified: nixos/trunk/release.nix
==============================================================================
--- nixos/trunk/release.nix     Tue Dec 28 21:19:57 2010        (r25315)
+++ nixos/trunk/release.nix     Tue Dec 28 21:27:52 2010        (r25316)
@@ -49,9 +49,7 @@
     }:
 
     with import nixpkgs {inherit system;};
-
     let
-
       version = builtins.readFile ./VERSION + (if officialRelease then "" else 
"pre${toString nixosSrc.rev}");
 
       versionModule = { system.nixosVersion = version; };
@@ -60,7 +58,7 @@
         inherit system nixpkgs;
         modules = [ module versionModule ];
       }).config;
-      
+
       tarball = config.system.build.tarball;
     in
       tarball //
@@ -68,6 +66,7 @@
             description = "NixOS system tarball for ${system} - 
${stdenv.platform.name}";
             maintainers = map (x: lib.getAttr x lib.maintainers) maintainers;
           };
+          inherit config;
         };
 
 
@@ -136,6 +135,18 @@
       module = ./modules/installer/cd-dvd/system-tarball-pc.nix;
     };
 
+    system_tarball_fuloong2f =
+        assert builtins.currentSystem == "mips64-linux";
+      makeSystemTarball {
+      module = ./modules/installer/cd-dvd/system-tarball-fuloong2f.nix;
+    } { system = "mips64-linux"; };
+
+    system_tarball_sheevaplug =
+        assert builtins.currentSystem == "armv5tel-linux";
+      makeSystemTarball {
+      module = ./modules/installer/cd-dvd/system-tarball-sheevaplug.nix;
+    } { system = "armv5tel-linux"; };
+
     # Hacky: doesn't depend on configuration. Yet configuration is evaluated 
(TODO)
     minimal_install_archive = {system ? "i686-linux"}: (iso_minimal {inherit 
system;})
       .config.system.build.minimalInstallArchive;
_______________________________________________
nix-commits mailing list
[email protected]
http://mail.cs.uu.nl/mailman/listinfo/nix-commits

Reply via email to