Skip to content
This repository was archived by the owner on Feb 20, 2026. It is now read-only.

Microsoft Fonts

Microsoft Fonts #165

Workflow file for this run

name: Microsoft Fonts
on:
push:
schedule:
- cron: "0 0 * * 0" # Runs at 00:00, only on Sunday
workflow_dispatch:
jobs:
build:
name: Build
runs-on: windows-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Download Fido
# ref: <https://github.com/pbatard/Fido>
run: |-
Invoke-WebRequest -Uri 'https://github.com/pbatard/Fido/raw/refs/heads/master/Fido.ps1' -OutFile 'Fido.ps1'
- name: List Windows Versions
run: .\Fido.ps1 -Win List
continue-on-error: true
- name: List Windows Languages
run: .\Fido.ps1 -Lang List
continue-on-error: true
- name: Download Windows ISO
uses: nick-fields/retry@v3
with:
timeout_minutes: 5
max_attempts: 3
command: .\Fido.ps1 -Win "${{ matrix.Win }}" -Lang "${{ matrix.Lang }}"
- name: List Directory Contents
run: Get-ChildItem
- name: Parse ISO Filename
run: python 'ms-fonts/parse-iso-filename.py' *.iso
shell: bash
- name: Extract Fonts
# ref: <https://wiki.archlinux.org/title/Microsoft_fonts#Extracting_fonts_from_a_Windows_ISO>
run: |-
7z e *.iso sources/install.wim
7z e -y install.wim 1/Windows/{Fonts/"*".{ttf,ttc},System32/Licenses/neutral/"*"/"*"/license.rtf} -ofonts/
shell: bash
- name: Pack Fonts
run: 7z a "$WIN-$LANG.zip" *
working-directory: fonts/
shell: bash
- name: Upload Artifacts
uses: actions/upload-artifact@v6
with:
name: ${{ matrix.Win }}-${{ matrix.Lang }}
path: fonts/*.zip
strategy:
matrix:
Win:
- Windows 11
- Windows 10
Lang:
- Chinese (Simplified)
- English
release:
name: Release
permissions:
contents: write
needs:
- build
if: github.ref == 'refs/heads/main'
runs-on: ubuntu-latest
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}-${{ matrix.Win }}
cancel-in-progress: true
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Download Artifacts
uses: actions/download-artifact@v7
with:
path: dist
pattern: ${{ matrix.Win }}-*
merge-multiple: true
- id: parse
name: Parse Artifact Filename
run: python 'ms-fonts/parse-asset-filename.py' dist/*.zip
- name: Release
uses: liblaf/actions/release@dist
with:
clobber: true
files: dist/*.zip
tag: ${{ steps.parse.outputs.tag }}
strategy:
matrix:
Win:
- Windows 11
- Windows 10