mirror of
https://github.com/chromebrew/chromebrew.git
synced 2026-01-08 23:18:10 -05:00
111 lines
4.6 KiB
Ruby
111 lines
4.6 KiB
Ruby
require 'package'
|
|
|
|
class Docbook_xml44 < Package
|
|
description 'A widely used XML scheme for writing documentation and help'
|
|
homepage 'https://www.oasis-open.org/docbook/'
|
|
@_ver = '4.4'
|
|
version "#{@_ver}-1"
|
|
license 'MIT'
|
|
compatibility 'all'
|
|
source_url "https://docbook.org/xml/#{@_ver}/docbook-xml-#{@_ver}.zip"
|
|
source_sha256 '02f159eb88c4254d95e831c51c144b1863b216d909b5ff45743a1ce6f5273090'
|
|
|
|
binary_url({
|
|
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml44-4.4-1-chromeos-armv7l.tar.xz',
|
|
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml44-4.4-1-chromeos-armv7l.tar.xz',
|
|
i686: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml44-4.4-1-chromeos-i686.tar.xz',
|
|
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/docbook_xml44-4.4-1-chromeos-x86_64.tar.xz'
|
|
})
|
|
binary_sha256({
|
|
aarch64: '0781dda33ce4845ca3f18d533469ca888c5823f8b1c5b41fa9c633e25569d971',
|
|
armv7l: '0781dda33ce4845ca3f18d533469ca888c5823f8b1c5b41fa9c633e25569d971',
|
|
i686: 'f681134f0aa6bee29744c33612c5d5b71d52601777a00af170fc3528d9af9474',
|
|
x86_64: '46f1158d117549d339ace891d87e2ac27a0cc5d778f75991c462201e57f11e0b'
|
|
})
|
|
|
|
depends_on 'libxml2'
|
|
depends_on 'xmlcatmgr'
|
|
|
|
def self.install
|
|
FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/share/xml/docbook/xml-dtd-#{@_ver}"
|
|
system "cp -dr docbook.cat *.dtd ent/ *.mod #{CREW_DEST_PREFIX}/share/xml/docbook/xml-dtd-#{@_ver}"
|
|
FileUtils.mkdir_p "#{CREW_DEST_PREFIX}/etc/xml"
|
|
end
|
|
|
|
def self.preinstall
|
|
# Docbook common preinstall block
|
|
FileUtils.mkdir_p "#{CREW_PREFIX}/etc/xml"
|
|
|
|
if File.exist?("#{CREW_PREFIX}/etc/xml/catalog") && !File.zero?("#{CREW_PREFIX}/etc/xml/catalog")
|
|
puts "#{CREW_PREFIX}/etc/xml/catalog exists"
|
|
else
|
|
puts "Creating #{CREW_PREFIX}/etc/xml/catalog"
|
|
FileUtils.rm_f "#{CREW_PREFIX}/etc/xml/catalog"
|
|
system "xmlcatalog --noout --create #{CREW_PREFIX}/etc/xml/catalog"
|
|
end
|
|
|
|
if File.exist?("#{CREW_PREFIX}/etc/xml/docbook-xml") && !File.zero?("#{CREW_PREFIX}/etc/xml/docbook-xml")
|
|
puts "#{CREW_PREFIX}/etc/xml/docbook-xml not empty"
|
|
else
|
|
puts "Creating #{CREW_PREFIX}/etc/xml/docbook-xml"
|
|
FileUtils.rm_f "#{CREW_PREFIX}/etc/xml/docbook-xml"
|
|
system "xmlcatalog --noout --create #{CREW_PREFIX}/etc/xml/docbook-xml"
|
|
end
|
|
# End Docbook common preinstall block
|
|
end
|
|
|
|
def self.postinstall
|
|
# Docbook common postinstall block
|
|
ENV['XML_CATALOG_FILES'] = "#{CREW_PREFIX}/etc/xml/catalog"
|
|
|
|
xml_catalog_files_in_bashrc = `grep -c "XML_CATALOG_FILES" ~/.bashrc || true`
|
|
unless xml_catalog_files_in_bashrc.to_i.positive?
|
|
puts "Putting \"export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog\" in ~/.bashrc".lightblue
|
|
system "echo 'export XML_CATALOG_FILES=#{CREW_PREFIX}/etc/xml/catalog' >> ~/.bashrc"
|
|
puts 'To complete the installation, execute the following:'.orange
|
|
puts 'source ~/.bashrc'.orange
|
|
end
|
|
# End Docbook common postinstall block
|
|
|
|
system "xmlcatalog --noout --add 'public' \
|
|
'-//OASIS//ELEMENTS DocBook XML HTML Tables V#{@_ver}//EN' \
|
|
'http://www.oasis-open.org/docbook/xml/#{@_ver}/htmltblx.mod' \
|
|
'#{CREW_PREFIX}/etc/xml/docbook-xml'"
|
|
|
|
system "xmlcatalog --noout --add rewriteSystem \
|
|
http://www.oasis-open.org/docbook/xml/#{@_ver} \
|
|
#{CREW_PREFIX}/share/xml/docbook/xml-dtd-#{@_ver} \
|
|
#{CREW_PREFIX}/etc/xml/docbook-xml"
|
|
|
|
system "xmlcatalog --noout --add rewriteURI \
|
|
http://www.oasis-open.org/docbook/xml/#{@_ver} \
|
|
#{CREW_PREFIX}/share/xml/docbook/xml-dtd-#{@_ver} \
|
|
#{CREW_PREFIX}/etc/xml/docbook-xml"
|
|
|
|
system "xmlcatalog --noout --add 'public' \
|
|
'-//OASIS//DTD DocBook XML V#{@_ver}//EN' \
|
|
'http://www.oasis-open.org/docbook/xml/#{@_ver}/docbookx.dtd' \
|
|
'#{CREW_PREFIX}/etc/xml/docbook-xml'"
|
|
|
|
system "xmlcatalog --noout --add \"delegatePublic\" \
|
|
\"-//OASIS//ENTITIES DocBook XML\" \
|
|
\"file://#{CREW_PREFIX}/etc/xml/docbook-xml\" \
|
|
'#{CREW_PREFIX}/etc/xml/catalog'"
|
|
|
|
system "xmlcatalog --noout --add \"delegatePublic\" \
|
|
\"-//OASIS//DTD DocBook XML\" \
|
|
\"file://#{CREW_PREFIX}/etc/xml/docbook-xml\" \
|
|
'#{CREW_PREFIX}/etc/xml/catalog'"
|
|
|
|
system "xmlcatalog --noout --add \"delegateSystem\" \
|
|
\"http://www.oasis-open.org/docbook/\" \
|
|
\"file://#{CREW_PREFIX}/etc/xml/docbook-xml\" \
|
|
'#{CREW_PREFIX}/etc/xml/catalog'"
|
|
|
|
system "xmlcatalog --noout --add \"delegateURI\" \
|
|
\"http://www.oasis-open.org/docbook/\" \
|
|
\"file://#{CREW_PREFIX}/etc/xml/docbook-xml\" \
|
|
'#{CREW_PREFIX}/etc/xml/catalog'"
|
|
end
|
|
end
|