| 
									
										
										
										
											2009-05-29 12:43:29 +00:00
										 |  |  | # This module generates nixos-install, nixos-rebuild, | 
					
						
							| 
									
										
										
										
											2013-10-11 14:44:32 +02:00
										 |  |  | # nixos-generate-config, etc. | 
					
						
							| 
									
										
										
										
											2009-05-29 12:43:29 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-10-19 14:10:04 +02:00
										 |  |  | { config, pkgs, modulesPath, ... }: | 
					
						
							| 
									
										
										
										
											2009-05-29 12:43:29 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | let | 
					
						
							| 
									
										
										
										
											2013-10-11 14:17:59 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-04-25 01:03:57 +00:00
										 |  |  |   cfg = config.installer; | 
					
						
							| 
									
										
										
										
											2009-05-29 12:43:29 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |   makeProg = args: pkgs.substituteAll (args // { | 
					
						
							|  |  |  |     dir = "bin"; | 
					
						
							|  |  |  |     isExecutable = true; | 
					
						
							|  |  |  |   }); | 
					
						
							| 
									
										
										
										
											2011-04-25 01:03:57 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-10-11 14:17:59 +02:00
										 |  |  |   nixos-build-vms = makeProg { | 
					
						
							| 
									
										
										
										
											2010-10-21 22:50:12 +00:00
										 |  |  |     name = "nixos-build-vms"; | 
					
						
							|  |  |  |     src = ./nixos-build-vms/nixos-build-vms.sh; | 
					
						
							|  |  |  |   }; | 
					
						
							| 
									
										
										
										
											2011-04-25 01:03:57 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-10-11 14:17:59 +02:00
										 |  |  |   nixos-install = makeProg { | 
					
						
							| 
									
										
										
										
											2009-05-29 12:43:29 +00:00
										 |  |  |     name = "nixos-install"; | 
					
						
							|  |  |  |     src = ./nixos-install.sh; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-07 01:25:06 +01:00
										 |  |  |     inherit (pkgs) perl pathsFromGraph rsync; | 
					
						
							| 
									
										
										
										
											2016-04-24 14:06:04 +03:00
										 |  |  |     nix = config.nix.package.out; | 
					
						
							| 
									
										
										
										
											2016-05-20 15:30:56 +03:00
										 |  |  |     cacert = "${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"; | 
					
						
							| 
									
										
										
										
											2016-08-16 04:02:20 +01:00
										 |  |  |     root_uid = config.ids.uids.root; | 
					
						
							| 
									
										
										
										
											2016-08-16 01:15:27 +01:00
										 |  |  |     nixbld_gid = config.ids.gids.nixbld; | 
					
						
							| 
									
										
										
										
											2009-05-29 12:43:29 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |     nixClosure = pkgs.runCommand "closure" | 
					
						
							| 
									
										
										
										
											2016-04-24 14:06:04 +03:00
										 |  |  |       { exportReferencesGraph = ["refs" config.nix.package.out]; } | 
					
						
							| 
									
										
										
										
											2009-05-29 12:43:29 +00:00
										 |  |  |       "cp refs $out"; | 
					
						
							|  |  |  |   }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-10-11 14:17:59 +02:00
										 |  |  |   nixos-rebuild = makeProg { | 
					
						
							| 
									
										
										
										
											2009-05-29 12:43:29 +00:00
										 |  |  |     name = "nixos-rebuild"; | 
					
						
							|  |  |  |     src = ./nixos-rebuild.sh; | 
					
						
							| 
									
										
										
										
											2016-04-24 14:06:04 +03:00
										 |  |  |     nix = config.nix.package.out; | 
					
						
							| 
									
										
										
										
											2009-05-29 12:43:29 +00:00
										 |  |  |   }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-10-11 14:22:22 +02:00
										 |  |  |   nixos-generate-config = makeProg { | 
					
						
							|  |  |  |     name = "nixos-generate-config"; | 
					
						
							|  |  |  |     src = ./nixos-generate-config.pl; | 
					
						
							| 
									
										
										
										
											2016-01-03 19:21:27 +01:00
										 |  |  |     path = [ pkgs.btrfs-progs ]; | 
					
						
							| 
									
										
										
										
											2013-10-11 14:44:32 +02:00
										 |  |  |     perl = "${pkgs.perl}/bin/perl -I${pkgs.perlPackages.FileSlurp}/lib/perl5/site_perl"; | 
					
						
							| 
									
										
										
										
											2015-07-27 19:46:36 +02:00
										 |  |  |     inherit (config.system) nixosRelease; | 
					
						
							| 
									
										
										
										
											2009-05-29 12:43:29 +00:00
										 |  |  |   }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-10-11 14:17:59 +02:00
										 |  |  |   nixos-option = makeProg { | 
					
						
							| 
									
										
										
										
											2010-09-03 19:10:50 +00:00
										 |  |  |     name = "nixos-option"; | 
					
						
							|  |  |  |     src = ./nixos-option.sh; | 
					
						
							|  |  |  |   }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2013-10-11 14:17:59 +02:00
										 |  |  |   nixos-version = makeProg { | 
					
						
							| 
									
										
										
										
											2012-04-10 20:56:38 +00:00
										 |  |  |     name = "nixos-version"; | 
					
						
							|  |  |  |     src = ./nixos-version.sh; | 
					
						
							| 
									
										
										
										
											2014-12-27 21:43:04 +01:00
										 |  |  |     inherit (config.system) nixosVersion nixosCodeName nixosRevision; | 
					
						
							| 
									
										
										
										
											2012-04-10 20:56:38 +00:00
										 |  |  |   }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-05-29 12:43:29 +00:00
										 |  |  | in | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | { | 
					
						
							| 
									
										
										
										
											2015-08-07 05:28:17 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-09-03 19:10:54 +00:00
										 |  |  |   config = { | 
					
						
							| 
									
										
										
										
											2015-08-07 05:28:17 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-09-03 19:10:54 +00:00
										 |  |  |     environment.systemPackages = | 
					
						
							| 
									
										
										
										
											2013-10-11 14:17:59 +02:00
										 |  |  |       [ nixos-build-vms | 
					
						
							|  |  |  |         nixos-install | 
					
						
							|  |  |  |         nixos-rebuild | 
					
						
							| 
									
										
										
										
											2013-10-11 14:22:22 +02:00
										 |  |  |         nixos-generate-config | 
					
						
							| 
									
										
										
										
											2013-10-11 14:17:59 +02:00
										 |  |  |         nixos-option | 
					
						
							|  |  |  |         nixos-version | 
					
						
							| 
									
										
										
										
											2013-10-30 18:16:30 +01:00
										 |  |  |       ]; | 
					
						
							| 
									
										
										
										
											2009-09-13 22:13:19 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-09-03 19:10:54 +00:00
										 |  |  |     system.build = { | 
					
						
							| 
									
										
										
										
											2016-03-01 20:47:08 +01:00
										 |  |  |       inherit nixos-install nixos-generate-config nixos-option nixos-rebuild; | 
					
						
							| 
									
										
										
										
											2010-09-03 19:10:54 +00:00
										 |  |  |     }; | 
					
						
							| 
									
										
										
										
											2015-08-07 05:28:17 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-12-15 06:37:32 +00:00
										 |  |  |   }; | 
					
						
							| 
									
										
										
										
											2015-08-07 05:28:17 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-05-29 12:43:29 +00:00
										 |  |  | } |