There's no change in content except for amending the title of the section to mention "frameworks", as e.g. I don't consider Qt a language, and it's likely there will be more of similar cases in future. To be certain, I checked diff of the generated HTMLs.
		
			
				
	
	
		
			52 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
<section xmlns="http://docbook.org/ns/docbook"
 | 
						|
         xmlns:xlink="http://www.w3.org/1999/xlink"
 | 
						|
         xml:id="sec-language-lua">
 | 
						|
 | 
						|
<title>Lua</title>
 | 
						|
 | 
						|
<para>
 | 
						|
  Lua packages are built by the <varname>buildLuaPackage</varname> function.  This function is
 | 
						|
  implemented
 | 
						|
  in <link xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/lua-modules/generic/default.nix">
 | 
						|
  <filename>pkgs/development/lua-modules/generic/default.nix</filename></link>
 | 
						|
  and works similarly to <varname>buildPerlPackage</varname>. (See
 | 
						|
  <xref linkend="sec-language-perl"/> for details.)
 | 
						|
</para>
 | 
						|
 | 
						|
<para>
 | 
						|
  Lua packages are defined
 | 
						|
  in <link xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/top-level/lua-packages.nix"><filename>pkgs/top-level/lua-packages.nix</filename></link>.
 | 
						|
  Most of them are simple. For example:
 | 
						|
 | 
						|
  <programlisting>
 | 
						|
fileSystem = buildLuaPackage {
 | 
						|
  name = "filesystem-1.6.2";
 | 
						|
  src = fetchurl {
 | 
						|
    url = "https://github.com/keplerproject/luafilesystem/archive/v1_6_2.tar.gz";
 | 
						|
    sha256 = "1n8qdwa20ypbrny99vhkmx8q04zd2jjycdb5196xdhgvqzk10abz";
 | 
						|
  };
 | 
						|
  meta = {
 | 
						|
    homepage = "https://github.com/keplerproject/luafilesystem";
 | 
						|
    hydraPlatforms = stdenv.lib.platforms.linux;
 | 
						|
    maintainers = with maintainers; [ flosse ];
 | 
						|
  };
 | 
						|
};
 | 
						|
  </programlisting>
 | 
						|
</para>
 | 
						|
 | 
						|
<para>
 | 
						|
  Though, more complicated package should be placed in a seperate file in
 | 
						|
  <link
 | 
						|
  xlink:href="https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/lua-modules"><filename>pkgs/development/lua-modules</filename></link>.
 | 
						|
</para>
 | 
						|
<para>
 | 
						|
  Lua packages accept additional parameter <varname>disabled</varname>, which defines
 | 
						|
  the condition of disabling package from luaPackages. For example, if package has
 | 
						|
  <varname>disabled</varname> assigned to <literal>lua.luaversion != "5.1"</literal>,
 | 
						|
  it will not be included in any luaPackages except lua51Packages, making it
 | 
						|
  only be built for lua 5.1.
 | 
						|
</para>
 | 
						|
 | 
						|
</section>
 | 
						|
 |