mirror of https://github.com/KaiserY/trpl-zh-cn
				
				
				
			
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							80 lines
						
					
					
						
							3.7 KiB
						
					
					
				
			
		
		
	
	
							80 lines
						
					
					
						
							3.7 KiB
						
					
					
				name: CI
 | 
						|
on:
 | 
						|
  # Trigger the workflow on push or pull request,
 | 
						|
  # but only for the main branch
 | 
						|
  push:
 | 
						|
    branches:
 | 
						|
      - main
 | 
						|
  pull_request:
 | 
						|
    branches:
 | 
						|
      - main
 | 
						|
 | 
						|
jobs:
 | 
						|
  build:
 | 
						|
    name: Build
 | 
						|
    runs-on: ubuntu-22.04
 | 
						|
    steps:
 | 
						|
    - uses: actions/checkout@main
 | 
						|
    - name: Update rustup
 | 
						|
      run: rustup self update
 | 
						|
    - name: Install Rust
 | 
						|
      run: |
 | 
						|
        rustup set profile minimal
 | 
						|
        rustup toolchain install 1.74.1 -c rust-docs
 | 
						|
        rustup default 1.74.1        
 | 
						|
    - name: Install mdbook & mdbook-typst-pdf
 | 
						|
      run: |
 | 
						|
        mkdir bin
 | 
						|
        curl -sSL https://github.com/rust-lang/mdBook/releases/download/v0.4.49/mdbook-v0.4.49-x86_64-unknown-linux-gnu.tar.gz | tar -xz --directory=bin
 | 
						|
        curl -sSL https://github.com/KaiserY/mdbook-typst-pdf/releases/download/v0.6.3/mdbook-typst-pdf-x86_64-unknown-linux-musl.tar.xz | tar -xJ --directory=bin --strip-components 1
 | 
						|
        echo "$(pwd)/bin" >> ${GITHUB_PATH}        
 | 
						|
    - name: Install font
 | 
						|
      run: |
 | 
						|
        echo ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true | sudo debconf-set-selections
 | 
						|
        sudo apt-get -y install msttcorefonts
 | 
						|
        mkdir fonts
 | 
						|
        mkdir -p ~/.local/share/fonts
 | 
						|
        curl -sL -o Noto_Sans.zip https://github.com/notofonts/latin-greek-cyrillic/releases/download/NotoSans-v2.013/NotoSans-v2.013.zip
 | 
						|
        unzip Noto_Sans.zip -d fonts/Noto_Sans
 | 
						|
        curl -sL -o Noto_Sans_SC.zip https://github.com/notofonts/noto-cjk/releases/download/Sans2.004/08_NotoSansCJKsc.zip
 | 
						|
        unzip Noto_Sans_SC.zip -d fonts/Noto_Sans_SC
 | 
						|
        curl -sL -o Noto_Sans_Mono.zip https://github.com/notofonts/latin-greek-cyrillic/releases/download/NotoSansMono-v2.014/NotoSansMono-v2.014.zip
 | 
						|
        unzip Noto_Sans_Mono.zip -d fonts/Noto_Sans_Mono
 | 
						|
        curl -sL -o Noto_Sans_KR.zip https://github.com/notofonts/noto-cjk/releases/download/Sans2.004/07_NotoSansCJKkr.zip
 | 
						|
        unzip Noto_Sans_KR.zip -d fonts/Noto_Sans_KR
 | 
						|
        curl -sL -o Noto_Sans_Thai.zip https://github.com/notofonts/thai/releases/download/NotoSansThai-v2.002/NotoSansThai-v2.002.zip
 | 
						|
        unzip Noto_Sans_Thai.zip -d fonts/Noto_Sans_Thai
 | 
						|
        curl -sL -o Noto_Sans_Arabic.zip https://github.com/notofonts/arabic/releases/download/NotoNaskhArabic-v2.018/NotoNaskhArabic-v2.018.zip
 | 
						|
        unzip Noto_Sans_Arabic.zip -d fonts/Noto_Sans_Arabic
 | 
						|
        curl -sL -o Noto_Sans_Devanagari.zip https://github.com/notofonts/devanagari/releases/download/NotoSansDevanagari-v2.004/NotoSansDevanagari-v2.004.zip
 | 
						|
        unzip -: Noto_Sans_Devanagari.zip -d fonts/Noto_Sans_Devanagari
 | 
						|
        curl -sL -o NotoColorEmoji.ttf https://github.com/googlefonts/noto-emoji/raw/main/fonts/NotoColorEmoji.ttf
 | 
						|
        mv NotoColorEmoji.ttf fonts/NotoColorEmoji.ttf
 | 
						|
        curl -sL -o times_sans_serif.zip  https://dl.dafont.com/dl/?f=times_sans_serif
 | 
						|
        unzip times_sans_serif.zip -d fonts/times_sans_serif
 | 
						|
        curl -sOL https://github.com/notofonts/hebrew/releases/download/NotoSansHebrew-v2.003/NotoSansHebrew-v2.003.zip
 | 
						|
        unzip -: NotoSansHebrew-v2.003.zip
 | 
						|
        mv -v NotoSansHebrew fonts/
 | 
						|
        mv fonts/* ~/.local/share/fonts/
 | 
						|
        fc-cache -rv        
 | 
						|
    - name: Report versions
 | 
						|
      run: |
 | 
						|
        rustup --version
 | 
						|
        rustc -Vv
 | 
						|
        mdbook --version        
 | 
						|
    - name: Run mdBook Build
 | 
						|
      run:  |
 | 
						|
        mdbook build
 | 
						|
        mv book/html/* book/
 | 
						|
        mv "book/typst-pdf/Rust 程序设计语言 简体中文版.pdf" book/
 | 
						|
        rm -r book/html/
 | 
						|
        rm -rf book/typst-pdf/        
 | 
						|
    - name: Deploy gh-pages
 | 
						|
      if: ${{ github.ref == 'refs/heads/main' }}
 | 
						|
      uses: peaceiris/actions-gh-pages@v3
 | 
						|
      with:
 | 
						|
        github_token: ${{ secrets.GITHUB_TOKEN }}
 | 
						|
        publish_dir: ./book
 | 
						|
        force_orphan: true
 | 
						|
        enable_jekyll: true
 |