ttf-ms-win10-auto: auto updated to 10.0.19042.789-7

This commit is contained in:
Lilac 2024-12-21 07:30:51 +00:00
parent c9966718be
commit 509d9ee295

View file

@ -1,4 +1,5 @@
# Maintainer: RubenKelevra # Maintainer: RubenKelevra
# Contributor: jprt
# Contributor: Zepman <the_zep_man@hotmail.com> # Contributor: Zepman <the_zep_man@hotmail.com>
# Contributor: Michael Lass <bevan@bi-co.net> # Contributor: Michael Lass <bevan@bi-co.net>
# Contributor: Doug Newgard <scimmia at archlinux dot info> # Contributor: Doug Newgard <scimmia at archlinux dot info>
@ -7,22 +8,23 @@
# BUILD INSTRUCTIONS: # BUILD INSTRUCTIONS:
# ------------------- # -------------------
# #
# Please note, that usage of Microsoft fonts outside running Windows # Please note that the usage of Microsoft fonts outside the Windows system is prohibited
# system is prohibited by EULA (although in certain countries EULA is invalid). # by EULA (although in certain countries, EULA is invalid).
# Please consult Microsoft license before using fonts. # Please consult the Microsoft license before using fonts.
# #
# This PKGBUILD attempts to download fonts directly from Microsoft, by # This PKGBUILD attempts to download fonts directly from Microsoft, by retrieving
# retrieving selective parts of the Windows 10 Enterprise 90-day evaluation # selective parts of the Windows 10 Enterprise 90-day evaluation edition. This only works
# edition. This only works if the user is allowed to mount filesystems through # if the user is allowed to mount filesystems through udisks2. This is determined by
# udisks2. This is determined by Polkit, which by default only allows users to # Polkit, which by default only allows users to do this when they are logged in locally
# do this when they are logged in locally (e.g. not through SSH). # (e.g., not through SSH).
# #
# If it is possible to download fonts directly, around 200 MiB of data will be # If it is possible to download fonts directly, around 200 MB of data will be downloaded.
# downloaded. Downloading the fonts this way can take 8-20 minutes, even on a # Downloading the fonts this way can take 820 minutes, even on a fast connection. Be
# fast connection. Be patient. Note that for tis method, it is necessary to # patient. Note that for this method, it is necessary to mount an HTTP source and an ISO
# mount an HTTP source and an ISO file as a loop device using FUSE. If the # file as a loop device using FUSE. If the build fails, it might be that these must be
# build fails, it might be that these must be unmounted manually. This can be # unmounted manually. If you rerun the build, this cleanup is done automatically.
# done with: #
# To clean up manually run:
# #
# $ udisksctl unmount -b /dev/loop0 # $ udisksctl unmount -b /dev/loop0
# $ udisksctl loop-delete -b /dev/loop0 # $ udisksctl loop-delete -b /dev/loop0
@ -31,41 +33,41 @@
# Replace /dev/loop0 with the relevant loop device, which is reported during # Replace /dev/loop0 with the relevant loop device, which is reported during
# package build. # package build.
# #
# For the download, HTTP is used instead of HTTPS due to that httpfs2 does not # For the download, HTTP is used instead of HTTPS because httpfs2 does not support modern
# support modern TLS versions. A file integrity check is performed after # TLS versions. A file integrity check is performed after the download. Due to the
# download. Due to the unconventional way that the data is downloaded, the # unconventional way that the data is downloaded, the verification is done in prepare().
# verification is done in prepare().
# #
# If fonts cannot be downloaded directly, the ISO fill will be fully # If fonts cannot be downloaded directly, the ISO fill will be fully downloaded. Due to
# downloaded. Due to that install.wim will be extracted from the ISO, it is # that install.wim will be extracted from the ISO, it is assumed that twice its size
# assumed that twice its size (almost 8 GiB) is necessary as temporary disk # (almost 8 GiB) is necessary as temporary disk space. A free disk space check is
# space. A free disk space check is performed before the ISO is downloaded. # performed before the ISO is downloaded.
# #
# Please ignore any 'ln' errors when building this package. This is expected # Please ignore any 'ln' errors when building this package. This is expected behavior.
# behavior.
# #
# If for some reason you want to download the full ISO file, please visit: # If, for some reason, you want to download the full ISO file, please visit:
# #
# http://www.microsoft.com/en-us/evalcenter/evaluate-windows-10-enterprise # http://www.microsoft.com/en-us/evalcenter/evaluate-windows-10-enterprise
# #
# This package is based on ttf-ms-win10. Use that package if font files from # This package is based on ttf-ms-win10. Use that package if font files from a local
# a local source need to be used. # source need to be used.
# #
# ttf-ms-win10 is considered to be upstream for this package, which is why its # ttf-ms-win10 is considered to be upstream for this package, which is why its
# maintainers and contributors are added as contributors to this package. # maintainers and contributors are added as contributors to this package.
# Without their effort this package would not exist, nor be updated. # Without their effort, this package would not exist or be updated.
# #
pkgbase=ttf-ms-win10-auto pkgbase=ttf-ms-win10-auto
pkgname=($pkgbase{,-japanese,-korean,-sea,-thai,-zh_cn,-zh_tw,-other}) pkgname=($pkgbase{,-japanese,-korean,-sea,-thai,-zh_cn,-zh_tw,-other})
pkgver=10.0.19042.789 pkgver=10.0.19042.789
pkgrel=6 pkgrel=7
arch=(any) arch=(any)
url='http://www.microsoft.com/typography/fonts/product.aspx?PID=164' url='http://www.microsoft.com/typography/fonts/product.aspx?PID=164'
license=(custom) license=(custom)
provides=(ttf-font ttf-ms-win10) provides=(ttf-font ttf-ms-win10)
conflicts=(ttf-vista-fonts ttf-ms-win11-auto ttf-ms-win11) conflicts=(ttf-vista-fonts ttf-ms-win11-auto ttf-ms-win11)
makedepends=(udisks2 p7zip httpfs2-2gbplus) makedepends=(udisks2 p7zip httpfs2-2gbplus wget udftools util-linux)
# URL of ISO file from which to extract the fonts. # URL of ISO file from which to extract the fonts.
# Must be HTTP due to limitations of httpfs2. # Must be HTTP due to limitations of httpfs2.
@ -392,14 +394,30 @@ prepare() {
if [ $_mount ]; then if [ $_mount ]; then
echo "allowed" echo "allowed"
echo "- Checking for old loop devices created by by this package"
for loop_device in $(losetup --list | grep "${pkgbase}" | awk '{print $1}')
do
echo -ne " - deleting '$loop_device'..."
udisksctl loop-delete -b "$loop_device"
echo " done."
done
for fuse_mount_points in $(cat /etc/mtab | grep "${pkgbase}" | awk '{print $2}')
do
echo -ne " - unmounting '$fuse_mount_points'..."
fusermount -u "$fuse_mount_points"
echo " done."
done
echo "- Downloading fonts directly" echo "- Downloading fonts directly"
mkdir -p mnt/http mkdir -p mnt/http
echo " - Mounting HTTP file" echo " - Mounting HTTP file"
httpfs2 -c /dev/null "$_iso" mnt/http httpfs2 -c /dev/null "$_iso" mnt/http
echo " - Creating loop device" echo " - Creating loop device"
_isoFile="mnt/http/$(echo "$_iso" | awk -F "/" '{print $NF}')" _isoFile="mnt/http/$(echo "$_iso" | awk -F "/" '{print $NF}')"
_loopDev=$(udisksctl loop-setup -r -f "${_isoFile}" --no-user-interaction | awk '{print $NF}') _loopDev=$(udisksctl loop-setup -r -f "${_isoFile}" --no-user-interaction 2>/dev/null | awk '{print $NF}')
_loopDev=${_loopDev::-1} _loopDev=$(losetup --list | grep "$_isoFile" | awk '{print $1}')
echo " - Mounting loop device: $_loopDev" echo " - Mounting loop device: $_loopDev"
_mountpoint=$(udisksctl mount -t udf -b "$_loopDev" --no-user-interaction | awk '{print $NF}') _mountpoint=$(udisksctl mount -t udf -b "$_loopDev" --no-user-interaction | awk '{print $NF}')
echo " - Loop device mounted as ISO at: $_mountpoint" echo " - Loop device mounted as ISO at: $_mountpoint"
@ -410,10 +428,23 @@ prepare() {
echo " - Unmounting loop device $_loopDev as ISO at: $_mountpoint" echo " - Unmounting loop device $_loopDev as ISO at: $_mountpoint"
udisksctl unmount -b "$_loopDev" --no-user-interaction udisksctl unmount -b "$_loopDev" --no-user-interaction
echo " - Deleting loop device: $_loopDev"
udisksctl loop-delete -b "$_loopDev" --no-user-interaction echo " - Deleting loop devices..."
echo " - Unmounting HTTP file" for loop_device in $(losetup --list | grep "${pkgbase}" | awk '{print $1}')
fusermount -uz mnt/http do
echo -ne " - deleting '$loop_device'..."
udisksctl loop-delete -b "$loop_device"
echo " done."
done
echo " - Unmounting HTTP files..."
for fuse_mount_points in $(cat /etc/mtab | grep "${pkgbase}" | awk '{print $2}')
do
echo -ne " - unmounting '$fuse_mount_points'..."
fusermount -u "$fuse_mount_points"
echo " done."
done
rmdir -p mnt/http rmdir -p mnt/http
else else
echo "not allowed" echo "not allowed"
@ -431,7 +462,7 @@ prepare() {
fi fi
echo " - Downloading ISO" echo " - Downloading ISO"
curl -JLO "$_iso" wget --no-verbose -c --tries=20 --waitretry=20 --timeout=60 "$_iso"
echo " - Extracting Windows installation image" echo " - Extracting Windows installation image"
7z x $(echo "$_iso" | awk -F "/" '{print $NF}') sources/install.wim 7z x $(echo "$_iso" | awk -F "/" '{print $NF}') sources/install.wim