aboutsummaryrefslogtreecommitdiff
path: root/infra/libkookie/nixpkgs/pkgs/data/sgml+xml
diff options
context:
space:
mode:
authorMx Kookie <kookie@spacekookie.de>2020-10-31 19:35:09 +0100
committerMx Kookie <kookie@spacekookie.de>2020-10-31 19:35:09 +0100
commitc4625b175f8200f643fd6e11010932ea44c78433 (patch)
treebce3f89888c8ac3991fa5569a878a9eab6801ccc /infra/libkookie/nixpkgs/pkgs/data/sgml+xml
parent49f735974dd103039ddc4cb576bb76555164a9e7 (diff)
parentd661aa56a8843e991261510c1bb28fdc2f6975ae (diff)
Add 'infra/libkookie/' from commit 'd661aa56a8843e991261510c1bb28fdc2f6975ae'
git-subtree-dir: infra/libkookie git-subtree-mainline: 49f735974dd103039ddc4cb576bb76555164a9e7 git-subtree-split: d661aa56a8843e991261510c1bb28fdc2f6975ae
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/data/sgml+xml')
-rw-r--r--infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/docbook-5.0/default.nix36
-rw-r--r--infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/sgml-dtd/docbook/3.1.nix37
-rw-r--r--infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/sgml-dtd/docbook/4.1.nix37
-rw-r--r--infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook-ebnf/default.nix25
-rw-r--r--infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook-ebnf/docbook-ebnf.cat2
-rw-r--r--infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.1.2.nix27
-rw-r--r--infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.2.nix13
-rw-r--r--infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.3.nix13
-rw-r--r--infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.4.nix13
-rw-r--r--infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.5.nix13
-rw-r--r--infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/generic.nix23
-rw-r--r--infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/xhtml1/default.nix32
-rw-r--r--infra/libkookie/nixpkgs/pkgs/data/sgml+xml/stylesheets/xslt/docbook-xsl/catalog-legacy-uris.patch10
-rw-r--r--infra/libkookie/nixpkgs/pkgs/data/sgml+xml/stylesheets/xslt/docbook-xsl/default.nix86
14 files changed, 367 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/docbook-5.0/default.nix b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/docbook-5.0/default.nix
new file mode 100644
index 000000000000..68bc6101d03c
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/docbook-5.0/default.nix
@@ -0,0 +1,36 @@
+{ lib, stdenv, fetchurl, unzip }:
+
+stdenv.mkDerivation rec {
+ pname = "docbook5";
+ version = "5.0.1";
+
+ src = fetchurl {
+ url = "http://www.docbook.org/xml/${version}/docbook-${version}.zip";
+ sha256 = "1iz3hq1lqgnshvlz4j9gvh4jy1ml74qf90vqf2ikbq0h4i2xzybs";
+ };
+
+ nativeBuildInputs = [ unzip ];
+
+ installPhase =
+ ''
+ dst=$out/share/xml/docbook-5.0
+ mkdir -p $dst
+ cp -prv * $dst/
+
+ substituteInPlace $dst/catalog.xml --replace 'uri="' "uri=\"$dst/"
+
+ rm -rf $dst/docs $dst/ChangeLog
+
+ # Backwards compatibility. Will remove eventually.
+ mkdir -p $out/xml/rng $out/xml/dtd
+ ln -s $dst/rng $out/xml/rng/docbook
+ ln -s $dst/dtd $out/xml/dtd/docbook
+ '';
+
+ meta = {
+ description = "Schemas for DocBook 5.0, a semantic markup language for technical documentation";
+ homepage = "https://docbook.org/xml/5.0/";
+ maintainers = [ lib.maintainers.eelco ];
+ platforms = lib.platforms.all;
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/sgml-dtd/docbook/3.1.nix b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/sgml-dtd/docbook/3.1.nix
new file mode 100644
index 000000000000..0faad5b594f6
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/sgml-dtd/docbook/3.1.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchurl, unzip }:
+
+let
+
+ src = fetchurl {
+ url = "http://www.oasis-open.org/docbook/sgml/3.1/docbk31.zip";
+ sha256 = "0f25ch7bywwhdxb1qa0hl28mgq1blqdap3rxzamm585rf4kis9i0";
+ };
+
+ isoents = fetchurl {
+ url = "http://www.oasis-open.org/cover/ISOEnts.zip";
+ sha256 = "1clrkaqnvc1ja4lj8blr0rdlphngkcda3snm7b9jzvcn76d3br6w";
+ };
+
+in
+
+stdenv.mkDerivation {
+ name = "docbook-sgml-3.1";
+
+ dontUnpack = true;
+
+ nativeBuildInputs = [ unzip ];
+
+ installPhase =
+ ''
+ o=$out/sgml/dtd/docbook-3.1
+ mkdir -p $o
+ cd $o
+ unzip ${src}
+ unzip ${isoents}
+ sed -e "s/iso-/ISO/" -e "s/.gml//" -i docbook.cat
+ '';
+
+ meta = {
+ platforms = stdenv.lib.platforms.unix;
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/sgml-dtd/docbook/4.1.nix b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/sgml-dtd/docbook/4.1.nix
new file mode 100644
index 000000000000..4b0ced9daaea
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/sgml-dtd/docbook/4.1.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchurl, unzip }:
+
+let
+
+ src = fetchurl {
+ url = "http://www.oasis-open.org/docbook/sgml/4.1/docbk41.zip";
+ sha256 = "04b3gp4zkh9c5g9kvnywdkdfkcqx3kjc04j4mpkr4xk7lgqgrany";
+ };
+
+ isoents = fetchurl {
+ url = "http://www.oasis-open.org/cover/ISOEnts.zip";
+ sha256 = "1clrkaqnvc1ja4lj8blr0rdlphngkcda3snm7b9jzvcn76d3br6w";
+ };
+
+in
+
+stdenv.mkDerivation {
+ name = "docbook-sgml-4.1";
+
+ dontUnpack = true;
+
+ nativeBuildInputs = [ unzip ];
+
+ installPhase =
+ ''
+ o=$out/sgml/dtd/docbook-4.1
+ mkdir -p $o
+ cd $o
+ unzip ${src}
+ unzip ${isoents}
+ sed -e "s/iso-/ISO/" -e "s/.gml//" -i docbook.cat
+ '';
+
+ meta = {
+ platforms = stdenv.lib.platforms.unix;
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook-ebnf/default.nix b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook-ebnf/default.nix
new file mode 100644
index 000000000000..a3b7067b2a42
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook-ebnf/default.nix
@@ -0,0 +1,25 @@
+{stdenv, fetchurl}:
+
+stdenv.mkDerivation {
+ name = "docbook-xml-ebnf-1.2b1";
+
+ dtd = fetchurl {
+ url = "http://www.docbook.org/xml/ebnf/1.2b1/dbebnf.dtd";
+ sha256 = "0min5dsc53my13b94g2yd65q1nkjcf4x1dak00bsc4ckf86mrx95";
+ };
+ catalog = ./docbook-ebnf.cat;
+
+ unpackPhase = ''
+ mkdir -p $out/xml/dtd/docbook-ebnf
+ cd $out/xml/dtd/docbook-ebnf
+ '';
+
+ installPhase = ''
+ cp -p $dtd dbebnf.dtd
+ cp -p $catalog $(stripHash $catalog)
+ '';
+
+ meta = {
+ platforms = stdenv.lib.platforms.unix;
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook-ebnf/docbook-ebnf.cat b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook-ebnf/docbook-ebnf.cat
new file mode 100644
index 000000000000..896a8338f118
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook-ebnf/docbook-ebnf.cat
@@ -0,0 +1,2 @@
+PUBLIC "-//OASIS//DTD DocBook EBNF Module V1.0//EN"
+ "dbebnf.dtd"
diff --git a/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.1.2.nix b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.1.2.nix
new file mode 100644
index 000000000000..de126da9f909
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.1.2.nix
@@ -0,0 +1,27 @@
+{stdenv, fetchurl, unzip, findXMLCatalogs}:
+
+let
+
+ # Urgh, DocBook 4.1.2 doesn't come with an XML catalog. Use the one
+ # from 4.2.
+ docbook42catalog = fetchurl {
+ url = "http://www.docbook.org/xml/4.2/catalog.xml";
+ sha256 = "18lhp6q2l0753s855r638shkbdwq9blm6akdjsc9nrik24k38j17";
+ };
+
+in
+
+import ./generic.nix {
+ inherit stdenv unzip findXMLCatalogs;
+ name = "docbook-xml-4.1.2";
+ src = fetchurl {
+ url = "http://www.docbook.org/xml/4.1.2/docbkx412.zip";
+ sha256 = "0wkp5rvnqj0ghxia0558mnn4c7s3n501j99q2isp3sp0ci069w1h";
+ };
+ postInstall = "
+ sed 's|V4.2|V4.1.2|g' < ${docbook42catalog} > catalog.xml
+ ";
+ meta = {
+ branch = "4.1.2";
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.2.nix b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.2.nix
new file mode 100644
index 000000000000..f894db24827e
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.2.nix
@@ -0,0 +1,13 @@
+{stdenv, fetchurl, unzip, findXMLCatalogs}:
+
+import ./generic.nix {
+ inherit stdenv unzip findXMLCatalogs;
+ name = "docbook-xml-4.2";
+ src = fetchurl {
+ url = "http://www.docbook.org/xml/4.2/docbook-xml-4.2.zip";
+ sha256 = "acc4601e4f97a196076b7e64b368d9248b07c7abf26b34a02cca40eeebe60fa2";
+ };
+ meta = {
+ branch = "4.2";
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.3.nix b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.3.nix
new file mode 100644
index 000000000000..dc2ec36ccef7
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.3.nix
@@ -0,0 +1,13 @@
+{stdenv, fetchurl, unzip, findXMLCatalogs}:
+
+import ./generic.nix {
+ inherit stdenv unzip findXMLCatalogs;
+ name = "docbook-xml-4.3";
+ src = fetchurl {
+ url = "http://www.docbook.org/xml/4.3/docbook-xml-4.3.zip";
+ sha256 = "0r1l2if1z4wm2v664sqdizm4gak6db1kx9y50jq89m3gxaa8l1i3";
+ };
+ meta = {
+ branch = "4.3";
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.4.nix b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.4.nix
new file mode 100644
index 000000000000..93b03d854572
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.4.nix
@@ -0,0 +1,13 @@
+{stdenv, fetchurl, unzip, findXMLCatalogs}:
+
+import ./generic.nix {
+ inherit stdenv unzip findXMLCatalogs;
+ name = "docbook-xml-4.4";
+ src = fetchurl {
+ url = "http://www.docbook.org/xml/4.4/docbook-xml-4.4.zip";
+ sha256 = "141h4zsyc71sfi2zzd89v4bb4qqq9ca1ri9ix2als9f4i3mmkw82";
+ };
+ meta = {
+ branch = "4.4";
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.5.nix b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.5.nix
new file mode 100644
index 000000000000..5bdb63e69da2
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/4.5.nix
@@ -0,0 +1,13 @@
+{stdenv, fetchurl, unzip, findXMLCatalogs}:
+
+import ./generic.nix {
+ inherit stdenv unzip findXMLCatalogs;
+ name = "docbook-xml-4.5";
+ src = fetchurl {
+ url = "http://www.docbook.org/xml/4.5/docbook-xml-4.5.zip";
+ sha256 = "1d671lcjckjri28xfbf6dq7y3xnkppa910w1jin8rjc35dx06kjf";
+ };
+ meta = {
+ branch = "4.5";
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/generic.nix b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/generic.nix
new file mode 100644
index 000000000000..41c4b73d3f62
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/docbook/generic.nix
@@ -0,0 +1,23 @@
+{ stdenv, unzip, src, name, postInstall ? "true", meta ? {}, findXMLCatalogs }:
+
+stdenv.mkDerivation {
+ inherit src name postInstall;
+
+ nativeBuildInputs = [unzip];
+ propagatedNativeBuildInputs = [ findXMLCatalogs ];
+
+ unpackPhase = ''
+ mkdir -p $out/xml/dtd/docbook
+ cd $out/xml/dtd/docbook
+ unpackFile $src
+ '';
+
+ installPhase = ''
+ find . -type f -exec chmod -x {} \;
+ runHook postInstall
+ '';
+
+ meta = meta // {
+ platforms = stdenv.lib.platforms.unix;
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/xhtml1/default.nix b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/xhtml1/default.nix
new file mode 100644
index 000000000000..383a8750f1f8
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/schemas/xml-dtd/xhtml1/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchurl, libxml2 }:
+
+stdenv.mkDerivation {
+ name = "xhtml1-20020801";
+
+ src = fetchurl {
+ url = "http://www.w3.org/TR/xhtml1/xhtml1.tgz";
+ sha256 = "0rr0d89i0z75qvjbm8il93bippx09hbmjwy0y2sj44n9np69x3hl";
+ };
+
+ nativeBuildInputs = [ libxml2 ];
+
+ installPhase =
+ ''
+ mkdir -p $out/xml/dtd/xhtml1
+ cp DTD/*.ent DTD/*.dtd $out/xml/dtd/xhtml1
+
+ # Generate an XML catalog.
+ cat=$out/xml/dtd/xhtml1/catalog.xml
+ xmlcatalog --noout --create $cat
+ grep PUBLIC DTD/*.soc | while read x; do
+ eval a=($x)
+ xmlcatalog --noout --add public "''${a[1]}" "''${a[2]}" $cat
+ done
+ ''; # */
+
+ meta = {
+ homepage = "http://www.w3.org/TR/xhtml1/";
+ description = "DTDs for XHTML 1.0, the Extensible HyperText Markup Language";
+ platforms = stdenv.lib.platforms.unix;
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/stylesheets/xslt/docbook-xsl/catalog-legacy-uris.patch b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/stylesheets/xslt/docbook-xsl/catalog-legacy-uris.patch
new file mode 100644
index 000000000000..72922eee96c4
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/stylesheets/xslt/docbook-xsl/catalog-legacy-uris.patch
@@ -0,0 +1,10 @@
+--- a/catalog.xml
++++ b/catalog.xml
+@@ -5,4 +5,7 @@
+ <rewriteSystem systemIdStartString="http://cdn.docbook.org/release/xsl@suffix@/current/" rewritePrefix="./"/>
+ <rewriteURI uriStartString="http://cdn.docbook.org/release/xsl@suffix@/@version@/" rewritePrefix="./"/>
+ <rewriteSystem systemIdStartString="http://cdn.docbook.org/release/xsl@suffix@/@version@/" rewritePrefix="./"/>
++ <!-- legacy URIs -->
++ <rewriteURI uriStartString="http://docbook.sourceforge.net/release/xsl@legacySuffix@/current/" rewritePrefix="./"/>
++ <rewriteSystem systemIdStartString="http://docbook.sourceforge.net/release/xsl@legacySuffix@/current/" rewritePrefix="./"/>
+ </catalog>
diff --git a/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/stylesheets/xslt/docbook-xsl/default.nix b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/stylesheets/xslt/docbook-xsl/default.nix
new file mode 100644
index 000000000000..28737253af5e
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/data/sgml+xml/stylesheets/xslt/docbook-xsl/default.nix
@@ -0,0 +1,86 @@
+{ lib, stdenv, substituteAll, fetchurl, fetchpatch, findXMLCatalogs, writeScriptBin, ruby, bash }:
+
+let
+
+ common = { pname, sha256, suffix ? "" }: let
+ legacySuffix = if suffix == "-nons" then "" else "-ns";
+ self = stdenv.mkDerivation rec {
+ inherit pname;
+ version = "1.79.2";
+
+ src = fetchurl {
+ url = "https://github.com/docbook/xslt10-stylesheets/releases/download/release%2F${version}/docbook-xsl${suffix}-${version}.tar.bz2";
+ inherit sha256;
+ };
+
+ patches = [
+ # Prevent a potential stack overflow
+ # https://github.com/docbook/xslt10-stylesheets/pull/37
+ (fetchpatch {
+ url = "https://src.fedoraproject.org/rpms/docbook-style-xsl/raw/e3ae7a97ed1d185594dd35954e1a02196afb205a/f/docbook-style-xsl-non-recursive-string-subst.patch";
+ sha256 = "0lrjjg5kpwwmbhkxzz6i5zmimb6lsvrrdhzc2qgjmb3r6jnsmii3";
+ stripLen = "1";
+ })
+
+ # Fix reproducibility by respecting generate.consistent.ids in indexes
+ # https://github.com/docbook/xslt10-stylesheets/pull/88
+ # https://sourceforge.net/p/docbook/bugs/1385/
+ (fetchpatch {
+ url = "https://github.com/docbook/xslt10-stylesheets/commit/07631601e6602bc49b8eac3aab9d2b35968d3e7a.patch";
+ sha256 = "0igfhcr6hzcydqsnjsd181h5yl3drjnrwdmxcybr236m8255vkq3";
+ stripLen = "1";
+ })
+
+ # Add legacy sourceforge.net URIs to the catalog
+ (substituteAll {
+ src = ./catalog-legacy-uris.patch;
+ inherit legacySuffix suffix version;
+ })
+ ];
+
+ propagatedBuildInputs = [ findXMLCatalogs ];
+
+ dontBuild = true;
+
+ installPhase = ''
+ dst=$out/share/xml/${pname}
+ mkdir -p $dst
+ rm -rf RELEASE* README* INSTALL TODO NEWS* BUGS install.sh tools Makefile tests extensions webhelp
+ mv * $dst/
+
+ # Backwards compatibility. Will remove eventually.
+ mkdir -p $out/xml/xsl
+ ln -s $dst $out/xml/xsl/docbook
+
+ # More backwards compatibility
+ ln -s $dst $out/share/xml/docbook-xsl${legacySuffix}
+ '';
+
+ passthru.dbtoepub = writeScriptBin "dbtoepub"
+ ''
+ #!${bash}/bin/bash
+ exec -a dbtoepub ${ruby}/bin/ruby ${self}/share/xml/${pname}/epub/bin/dbtoepub "$@"
+ '';
+
+ meta = {
+ homepage = "http://wiki.docbook.org/topic/DocBookXslStylesheets";
+ description = "XSL stylesheets for transforming DocBook documents into HTML and various other formats";
+ maintainers = [ lib.maintainers.eelco ];
+ platforms = lib.platforms.all;
+ };
+ };
+ in self;
+
+in {
+
+ docbook-xsl-nons = common {
+ pname = "docbook-xsl-nons";
+ suffix = "-nons";
+ sha256 = "00i1hdyxim8jymv2dz68ix3wbs5w6isxm8ijb03qk3vs1g59x2zf";
+ };
+
+ docbook-xsl-ns = common {
+ pname = "docbook-xsl-ns";
+ sha256 = "0wd33z41kdsybyx3ay21w6bdlmgpd9kyn3mr5y520lsf8km28r9i";
+ };
+}