cygport patches for TeX Live

Ken Brown kbrown@cornell.edu
Fri Apr 15 17:33:00 GMT 2016


Yaakov,

I'm attaching three patches that I used in preparing the recent test 
release of the TeX Live collections.  The first is self-explanatory. 
The second and third reflect the fact that I'm now shipping .tlpobj 
files and maintaining /usr/share/tlpkg/texlive.tlpdb, so that tlmgr 
knows what collections and packages are installed.

Let me know if there are any questions.

Thanks.

Ken
-------------- next part --------------
From 457d553eb79130656d26656909da08f00d1c02c3 Mon Sep 17 00:00:00 2001
From: Ken Brown <kbrown@cornell.edu>
Date: Fri, 11 Mar 2016 09:34:16 -0500
Subject: [PATCH 1/3] prep_texlive: drop preparation for fc-cache calls

This is now handled by a perpetual postinstall script in
libfontconfig1.
---
 lib/src_postinst.cygpart | 12 +-----------
 1 file changed, 1 insertion(+), 11 deletions(-)

diff --git a/lib/src_postinst.cygpart b/lib/src_postinst.cygpart
index 8c065c0..eca5b99 100644
--- a/lib/src_postinst.cygpart
+++ b/lib/src_postinst.cygpart
@@ -228,7 +228,7 @@ __prep_gtk_icon_theme() {
 #****
 
 __prep_texlive() {
-	local d fmt fmts format formats map maps
+	local fmt fmts format formats map maps
 	local markerdir=/var/lib/texmf/postinstall
 
 	dodir /etc/postinstall /etc/preremove ${markerdir}
@@ -278,16 +278,6 @@ __prep_texlive() {
 			_EOF
 		done
 	fi
-
-	for d in /usr/share/texmf-dist/fonts/{opentype,truetype,type1}
-	do
-		if [ -d ${D}${d} ]
-		then
-			cat >> ${D}${markerdir}/${PN}.fc <<-_EOF
-				${d}
-			_EOF
-		fi
-	done
 }
 
 #****P* Postinstall/X Sessions
-- 
2.8.0

-------------- next part --------------
From 35274609cdcfb95f681b85a234fb079c90f39b1d Mon Sep 17 00:00:00 2001
From: Ken Brown <kbrown@cornell.edu>
Date: Mon, 28 Mar 2016 16:30:33 -0400
Subject: [PATCH 2/3] texlive: update for tlmgr

---
 cygclass/texlive.cygclass |  7 ++++---
 lib/src_postinst.cygpart  | 25 ++++++++++++++++++++++++-
 2 files changed, 28 insertions(+), 4 deletions(-)

diff --git a/cygclass/texlive.cygclass b/cygclass/texlive.cygclass
index c1a2055..13f68fc 100644
--- a/cygclass/texlive.cygclass
+++ b/cygclass/texlive.cygclass
@@ -158,6 +158,8 @@ texlive_install() {
 	for pkg in $pkgs
 	do
 		tlpobj="tlpkg/tlpobj/$pkg.tlpobj"
+		insinto /usr/share/tlpkg/tlpobj
+		doins $tlpobj
 		for f in $(grep '^ ' $tlpobj)
 		do
 			case $f in
@@ -191,10 +193,9 @@ texlive_install() {
 				continue ;;
 			RELOC/*)
 				src=${f#RELOC/}; dst=texmf-dist/${src} ;;
-			texmf/*|texmf-dist/*|tlpkg/TeXLive/*) # used by updmap
+			texmf/*|texmf-dist/*|tlpkg/*)
 				src=$f; dst=$f ;;
-			*)	# we don't use tlmgr, so tlpkg files aren't used
-				continue ;;
+			*)	continue ;;
 			esac
 
 			if [ "$(head -c 2 $src)" = '#!' -o "$(head -c 4 $src)" = 'eval' ]
diff --git a/lib/src_postinst.cygpart b/lib/src_postinst.cygpart
index eca5b99..e4b2eb3 100644
--- a/lib/src_postinst.cygpart
+++ b/lib/src_postinst.cygpart
@@ -228,7 +228,7 @@ __prep_gtk_icon_theme() {
 #****
 
 __prep_texlive() {
-	local fmt fmts format formats map maps
+	local fmt fmts format formats map maps tlp tlps
 	local markerdir=/var/lib/texmf/postinstall
 
 	dodir /etc/postinstall /etc/preremove ${markerdir}
@@ -278,6 +278,29 @@ __prep_texlive() {
 			_EOF
 		done
 	fi
+
+	if [ -d ${D}/usr/share/tlpkg/tlpobj ]
+	then
+		pushd ${D}/usr/share/tlpkg/tlpobj
+		tlps=$(ls *.tlpobj 2>/dev/null | sed -e 's/\.tlpobj//')
+		popd
+	fi
+	if [ -n "${tlps}" ]
+	then
+		cat >> ${D}/etc/preremove/${PN}.sh <<-_EOF
+			/usr/libexec/update_tlpdb remove \\
+		_EOF
+		for tlp in $tlps
+		do
+			cat >> ${D}/etc/preremove/${PN}.sh <<-_EOF
+				$tlp \\
+			_EOF
+			cat >> ${D}${markerdir}/${PN}.tlp <<-_EOF
+				$tlp
+			_EOF
+		done
+		echo >> ${D}/etc/preremove/${PN}.sh
+	fi
 }
 
 #****P* Postinstall/X Sessions
-- 
2.8.0

-------------- next part --------------
From 986f36ba20551fbb74a3ee585807944f30ca1f6e Mon Sep 17 00:00:00 2001
From: Ken Brown <kbrown@cornell.edu>
Date: Sun, 10 Apr 2016 13:57:19 -0400
Subject: [PATCH 3/3] texlive: include collection .tlpobj for tlmgr

---
 cygclass/texlive.cygclass | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/cygclass/texlive.cygclass b/cygclass/texlive.cygclass
index 13f68fc..f67a627 100644
--- a/cygclass/texlive.cygclass
+++ b/cygclass/texlive.cygclass
@@ -58,10 +58,13 @@
 #  mirror instead of from stable release repository mirrors, which are frozen
 #  during the pretest phase.
 #****
-if ! defined TEXLIVE_TEXMF_PKGS && ! defined TEXLIVE_ARCH_PKGS && ! defined TEXLIVE_DOC_PKGS
-then
-	TEXLIVE_TEXMF_PKGS=${PN#texlive-}
-fi
+
+# For the sake of tlmgr we want to include the .tlpobj file for the
+# collection.
+case ${PN} in
+*-doc)	;;
+*)	TEXLIVE_TEXMF_PKGS+=" ${PN#texlive-}" ;;
+esac
 
 #****o* texlive.cygclass/CATEGORY (texlive)
 #  DEFINITION
-- 
2.8.0



More information about the Cygwin-apps mailing list