Author: eelco
Date: Fri Mar 16 01:57:23 2012
New Revision: 33133
URL: https://nixos.org/websvn/nix/?rev=33133&sc=1

Log:
* nixos-hardware-scan: detect if we're in a VirtualBox guest and
  enable the guest additions in that case.

Modified:
   nixos/trunk/modules/installer/tools/nixos-hardware-scan.pl
   nixos/trunk/modules/installer/tools/tools.nix

Modified: nixos/trunk/modules/installer/tools/nixos-hardware-scan.pl
==============================================================================
--- nixos/trunk/modules/installer/tools/nixos-hardware-scan.pl  Fri Mar 16 
01:46:39 2012        (r33132)
+++ nixos/trunk/modules/installer/tools/nixos-hardware-scan.pl  Fri Mar 16 
01:57:23 2012        (r33133)
@@ -8,6 +8,7 @@
 my @kernelModules = ();
 my @initrdKernelModules = ();
 my @modulePackages = ();
+my @requires = ("<nixos/modules/installer/scan/not-detected.nix>");
 
 
 sub debug {
@@ -182,6 +183,14 @@
 }
 
 
+# Check if we're a VirtualBox guest.  If so, enable the guest
+# additions.
+my $dmi = `@dmidecode@/sbin/dmidecode`;
+if ($dmi =~ /Manufacturer: innotek/) {
+    push @attrs, "services.virtualbox.enable = true;"
+}
+
+
 # Generate the configuration file.
 
 sub removeDups {
@@ -218,6 +227,8 @@
 my $kernelModules = toNixExpr(removeDups @kernelModules);
 my $modulePackages = toNixExpr(removeDups @modulePackages);
 my $attrs = multiLineList("  ", removeDups @attrs);
+my $requires = multiLineList("    ", removeDups @requires);
+
 
 print <<EOF ;
 # This is a generated file.  Do not modify!
@@ -225,9 +236,7 @@
 { config, pkgs, ... }:
 
 {
-  require = [
-    <nixos/modules/installer/scan/not-detected.nix>
-  ];
+  require = [$requires  ];
 
   boot.initrd.kernelModules = [$initrdKernelModules ];
   boot.kernelModules = [$kernelModules ];

Modified: nixos/trunk/modules/installer/tools/tools.nix
==============================================================================
--- nixos/trunk/modules/installer/tools/tools.nix       Fri Mar 16 01:46:39 
2012        (r33132)
+++ nixos/trunk/modules/installer/tools/tools.nix       Fri Mar 16 01:57:23 
2012        (r33133)
@@ -48,7 +48,7 @@
   nixosHardwareScan = makeProg {
     name = "nixos-hardware-scan";
     src = ./nixos-hardware-scan.pl;
-    inherit (pkgs) perl;
+    inherit (pkgs) perl dmidecode;
   };
 
   nixosOption = makeProg {
_______________________________________________
nix-commits mailing list
[email protected]
http://lists.science.uu.nl/mailman/listinfo/nix-commits

Reply via email to