summary refs log tree commit diff
path: root/doc
diff options
context:
space:
mode:
authorRobin Gloster <mail@glob.in>2016-03-28 15:16:29 +0000
committerRobin Gloster <mail@glob.in>2016-03-28 15:16:29 +0000
commitf60c9df0ba66767dfa64bf2fb95eb6776cafa2c3 (patch)
tree0f17999d3a5444f16f09e0c1d7f3075e0224e731 /doc
parent3f45f0948d6fe158bed063adb66850ded0ba4861 (diff)
parentc61445357e2a92470bee43a71a10baef1a3196e4 (diff)
downloadnixpkgs-f60c9df0ba66767dfa64bf2fb95eb6776cafa2c3.tar
nixpkgs-f60c9df0ba66767dfa64bf2fb95eb6776cafa2c3.tar.gz
nixpkgs-f60c9df0ba66767dfa64bf2fb95eb6776cafa2c3.tar.bz2
nixpkgs-f60c9df0ba66767dfa64bf2fb95eb6776cafa2c3.tar.lz
nixpkgs-f60c9df0ba66767dfa64bf2fb95eb6776cafa2c3.tar.xz
nixpkgs-f60c9df0ba66767dfa64bf2fb95eb6776cafa2c3.tar.zst
nixpkgs-f60c9df0ba66767dfa64bf2fb95eb6776cafa2c3.zip
Merge remote-tracking branch 'upstream/master' into hardened-stdenv
Diffstat (limited to 'doc')
-rw-r--r--doc/languages-frameworks/index.xml18
-rw-r--r--doc/languages-frameworks/ruby.xml11
-rw-r--r--doc/languages-frameworks/texlive.xml59
3 files changed, 67 insertions, 21 deletions
diff --git a/doc/languages-frameworks/index.xml b/doc/languages-frameworks/index.xml
index e63ff3ab140..ab62afa40d6 100644
--- a/doc/languages-frameworks/index.xml
+++ b/doc/languages-frameworks/index.xml
@@ -23,22 +23,8 @@ such as Perl or Haskell.  These are described in this chapter.</para>
 <xi:include href="idris.xml" /> <!-- generated from ../../pkgs/development/idris-modules/README.md  -->
 <xi:include href="r.xml" /> <!-- generated from ../../pkgs/development/r-modules/README.md  -->
 <xi:include href="qt.xml" />
-
-
-<!--
-<section><title>Haskell</title>
-
-<para>TODO</para>
-
-</section>
-
-
-<section><title>TeX / LaTeX</title>
-
-<para>* Special support for building TeX documents</para>
-
-</section>
--->
+<xi:include href="texlive.xml" />
 
 
 </chapter>
+
diff --git a/doc/languages-frameworks/ruby.xml b/doc/languages-frameworks/ruby.xml
index d81422b610e..15c0802ad69 100644
--- a/doc/languages-frameworks/ruby.xml
+++ b/doc/languages-frameworks/ruby.xml
@@ -12,25 +12,26 @@
 <screen>
 <![CDATA[$ cd pkgs/servers/monitoring
 $ mkdir sensu
+$ cd sensu
 $ cat > Gemfile
 source 'https://rubygems.org'
 gem 'sensu'
-$ bundler package --path /tmp/vendor/bundle
+$ nix-shell -p bundler --command "bundler package --path /tmp/vendor/bundle"
 $ $(nix-build '<nixpkgs>' -A bundix)/bin/bundix
 $ cat > default.nix
 { lib, bundlerEnv, ruby }:
 
-bundlerEnv {
-  name = "sensu-0.17.1";
+bundlerEnv rec {
+  name = "sensu-${version}";
 
+  version = (import gemset).sensu.version;
   inherit ruby;
   gemfile = ./Gemfile;
   lockfile = ./Gemfile.lock;
   gemset = ./gemset.nix;
 
   meta = with lib; {
-    description = "A monitoring framework that aims to be simple, malleable,
-and scalable.";
+    description = "A monitoring framework that aims to be simple, malleable, and scalable";
     homepage    = http://sensuapp.org/;
     license     = with licenses; mit;
     maintainers = with maintainers; [ theuni ];
diff --git a/doc/languages-frameworks/texlive.xml b/doc/languages-frameworks/texlive.xml
new file mode 100644
index 00000000000..0e3c1dd13d7
--- /dev/null
+++ b/doc/languages-frameworks/texlive.xml
@@ -0,0 +1,59 @@
+<section xmlns="http://docbook.org/ns/docbook"
+         xmlns:xlink="http://www.w3.org/1999/xlink"
+         xml:id="sec-language-texlive">
+
+<title>TeX Live</title>
+
+<para>Since release 15.09 there is a new TeX Live packaging that lives entirely under attribute <varname>texlive</varname>.</para>
+<section><title>User's guide</title>
+  <itemizedlist>
+    <listitem><para>
+      For basic usage just pull <varname>texlive.combined.scheme-basic</varname> for an environment with basic LaTeX support.</para></listitem>
+    <listitem><para>
+      It typically won't work to use separately installed packages together.
+      Instead, you can build a custom set of packages like this:
+      <programlisting>
+texlive.combine {
+  inherit (texlive) scheme-small collection-langkorean algorithms cm-super;
+}
+      </programlisting>
+      There are all the schemes, collections and a few thousand packages, as defined upstream (perhaps with tiny differences).
+    </para></listitem>
+    <listitem><para>
+      By default you only get executables and files needed during runtime, and a little documentation for the core packages.  To change that, you need to add <varname>pkgFilter</varname> function to <varname>combine</varname>.
+      <programlisting>
+texlive.combine {
+  # inherit (texlive) whatever-you-want;
+  pkgFilter = pkg:
+    pkg.tlType == "run" || pkg.tlType == "bin" || pkg.pname == "cm-super";
+  # elem tlType [ "run" "bin" "doc" "source" ]
+  # there are also other attributes: version, name
+}
+      </programlisting>
+    </para></listitem>
+    <listitem><para>
+      You can list packages e.g. by <command>nix-repl</command>.
+      <programlisting>
+$ nix-repl
+nix-repl> texlive.collection-&lt;TAB>
+      </programlisting>
+    </para></listitem>
+  </itemizedlist>
+</section>
+
+<section><title>Known problems</title>
+  <itemizedlist>
+    <listitem><para>
+      Some tools are still missing, e.g. luajittex;</para></listitem>
+    <listitem><para>
+      some apps aren't packaged/tested yet (asymptote, biber, etc.);</para></listitem>
+    <listitem><para>
+      feature/bug: when a package is rejected by <varname>pkgFilter</varname>, its dependencies are still propagated;</para></listitem>
+    <listitem><para>
+      in case of any bugs or feature requests, file a github issue or better a pull request and /cc @vcunat.</para></listitem>
+  </itemizedlist>
+</section>
+
+
+</section>
+