| 
									
										
										
										
											2018-10-05 10:46:58 -04:00
										 |  |  | { pkgs ? (import ./.. { }), nixpkgs ? { }}: | 
					
						
							| 
									
										
										
										
											2015-12-19 16:04:36 +01:00
										 |  |  | let | 
					
						
							| 
									
										
										
										
											2016-07-20 17:57:31 +02:00
										 |  |  |   lib = pkgs.lib; | 
					
						
							| 
									
										
										
										
											2018-10-05 10:46:58 -04:00
										 |  |  |   locationsXml = import ./lib-function-locations.nix { inherit pkgs nixpkgs; }; | 
					
						
							| 
									
										
										
										
											2015-12-19 16:04:36 +01:00
										 |  |  | in | 
					
						
							| 
									
										
										
										
											2016-07-20 17:57:31 +02:00
										 |  |  | pkgs.stdenv.mkDerivation { | 
					
						
							| 
									
										
										
										
											2014-08-24 11:02:23 +02:00
										 |  |  |   name = "nixpkgs-manual"; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-30 22:35:54 -04:00
										 |  |  |   buildInputs = with pkgs; [ pandoc libxml2 libxslt zip jing  xmlformat ]; | 
					
						
							| 
									
										
										
										
											2014-08-24 11:02:23 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-03-24 11:36:10 -04:00
										 |  |  |   src = ./.; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-03-26 08:24:27 -04:00
										 |  |  |   # Hacking on these variables? Make sure to close and open | 
					
						
							|  |  |  |   # nix-shell between each test, maybe even: | 
					
						
							|  |  |  |   # $ nix-shell --run "make clean all" | 
					
						
							|  |  |  |   # otherwise they won't reapply :) | 
					
						
							|  |  |  |   HIGHLIGHTJS = pkgs.documentation-highlighter; | 
					
						
							| 
									
										
										
										
											2018-07-17 16:11:16 -04:00
										 |  |  |   XSL = "${pkgs.docbook_xsl_ns}/xml/xsl"; | 
					
						
							| 
									
										
										
										
											2018-03-24 11:36:10 -04:00
										 |  |  |   RNG = "${pkgs.docbook5}/xml/rng/docbook/docbook.rng"; | 
					
						
							| 
									
										
										
										
											2018-04-30 22:35:54 -04:00
										 |  |  |   XMLFORMAT_CONFIG = ../nixos/doc/xmlformat.conf; | 
					
						
							| 
									
										
										
										
											2018-03-24 11:36:10 -04:00
										 |  |  |   xsltFlags = lib.concatStringsSep " " [ | 
					
						
							|  |  |  |     "--param section.autolabel 1" | 
					
						
							|  |  |  |     "--param section.label.includes.component.label 1" | 
					
						
							| 
									
										
										
										
											2018-03-26 08:24:27 -04:00
										 |  |  |     "--stringparam html.stylesheet 'style.css overrides.css highlightjs/mono-blue.css'" | 
					
						
							|  |  |  |     "--stringparam html.script './highlightjs/highlight.pack.js ./highlightjs/loader.js'" | 
					
						
							| 
									
										
										
										
											2018-03-24 11:36:10 -04:00
										 |  |  |     "--param xref.with.number.and.title 1" | 
					
						
							|  |  |  |     "--param toc.section.depth 3" | 
					
						
							| 
									
										
										
										
											2018-03-26 14:04:19 -04:00
										 |  |  |     "--stringparam admon.style ''" | 
					
						
							|  |  |  |     "--stringparam callout.graphics.extension .svg" | 
					
						
							| 
									
										
										
										
											2018-03-24 11:36:10 -04:00
										 |  |  |   ]; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   postPatch = ''
 | 
					
						
							| 
									
										
										
										
											2018-10-05 10:46:58 -04:00
										 |  |  |     rm -rf ./functions/library/locations.xml | 
					
						
							|  |  |  |     ln -s ${locationsXml} ./functions/library/locations.xml | 
					
						
							| 
									
										
										
										
											2018-04-26 10:31:05 +02:00
										 |  |  |     echo ${lib.version} > .version | 
					
						
							| 
									
										
										
										
											2018-03-24 11:36:10 -04:00
										 |  |  |   '';
 | 
					
						
							| 
									
										
										
										
											2014-08-24 11:02:23 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-03-24 11:36:10 -04:00
										 |  |  |   installPhase = ''
 | 
					
						
							|  |  |  |     dest="$out/share/doc/nixpkgs" | 
					
						
							|  |  |  |     mkdir -p "$(dirname "$dest")" | 
					
						
							|  |  |  |     mv out/html "$dest" | 
					
						
							|  |  |  |     mv "$dest/index.html" "$dest/manual.html" | 
					
						
							| 
									
										
										
										
											2016-07-20 17:57:31 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-03-24 11:36:10 -04:00
										 |  |  |     mv out/epub/manual.epub "$dest/nixpkgs-manual.epub" | 
					
						
							| 
									
										
										
										
											2016-07-20 17:57:31 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-03-24 11:36:10 -04:00
										 |  |  |     mkdir -p $out/nix-support/ | 
					
						
							|  |  |  |     echo "doc manual $dest manual.html" >> $out/nix-support/hydra-build-products | 
					
						
							| 
									
										
										
										
											2018-06-06 22:36:17 +02:00
										 |  |  |     echo "doc manual $dest nixpkgs-manual.epub" >> $out/nix-support/hydra-build-products | 
					
						
							| 
									
										
										
										
											2014-08-24 11:02:23 +02:00
										 |  |  |   '';
 | 
					
						
							|  |  |  | } |