fork repo
	
		
			
	
		
	
	
		
	
		
			Some checks failed
		
		
	
	
		
			
				
	
				backend / cross (aarch64) (push) Failing after 17s
				
			
		
			
				
	
				backend / cross (armhf) (push) Failing after 31s
				
			
		
			
				
	
				backend / cross (mips) (push) Failing after 31s
				
			
		
			
				
	
				backend / cross (mips64) (push) Failing after 31s
				
			
		
			
				
	
				backend / cross (mips64el) (push) Failing after 31s
				
			
		
			
				
	
				frontend / build (push) Failing after 32s
				
			
		
			
				
	
				backend / cross (arm) (push) Failing after 2m19s
				
			
		
			
				
	
				backend / cross (i686) (push) Failing after 1s
				
			
		
			
				
	
				backend / cross (mipsel) (push) Failing after 31s
				
			
		
			
				
	
				backend / cross (s390x) (push) Failing after 31s
				
			
		
			
				
	
				backend / cross (win32) (push) Failing after 31s
				
			
		
			
				
	
				backend / cross (x86_64) (push) Failing after 32s
				
			
		
			
				
	
				docker / build (push) Failing after 6m14s
				
			
		
		
	
	
				
					
				
			
		
			Some checks failed
		
		
	
	backend / cross (aarch64) (push) Failing after 17s
				
			backend / cross (armhf) (push) Failing after 31s
				
			backend / cross (mips) (push) Failing after 31s
				
			backend / cross (mips64) (push) Failing after 31s
				
			backend / cross (mips64el) (push) Failing after 31s
				
			frontend / build (push) Failing after 32s
				
			backend / cross (arm) (push) Failing after 2m19s
				
			backend / cross (i686) (push) Failing after 1s
				
			backend / cross (mipsel) (push) Failing after 31s
				
			backend / cross (s390x) (push) Failing after 31s
				
			backend / cross (win32) (push) Failing after 31s
				
			backend / cross (x86_64) (push) Failing after 32s
				
			docker / build (push) Failing after 6m14s
				
			This commit is contained in:
		
							
								
								
									
										2
									
								
								.github/FUNDING.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								.github/FUNDING.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,2 @@
 | 
			
		||||
github: tsl0922
 | 
			
		||||
patreon: tsl0922
 | 
			
		||||
							
								
								
									
										31
									
								
								.github/ISSUE_TEMPLATE/bug_report.md
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								.github/ISSUE_TEMPLATE/bug_report.md
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,31 @@
 | 
			
		||||
---
 | 
			
		||||
name: Bug report
 | 
			
		||||
about: Create a report to help us improve
 | 
			
		||||
title: ''
 | 
			
		||||
labels: bug
 | 
			
		||||
assignees: ''
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
**Describe the bug**
 | 
			
		||||
A clear and concise description of what the bug is.
 | 
			
		||||
 | 
			
		||||
**To Reproduce**
 | 
			
		||||
Steps to reproduce the behavior:
 | 
			
		||||
1. Go to '...'
 | 
			
		||||
2. Click on '....'
 | 
			
		||||
3. Scroll down to '....'
 | 
			
		||||
4. See error
 | 
			
		||||
 | 
			
		||||
**Expected behavior**
 | 
			
		||||
A clear and concise description of what you expected to happen.
 | 
			
		||||
 | 
			
		||||
**Screenshots**
 | 
			
		||||
If applicable, add screenshots to help explain your problem.
 | 
			
		||||
 | 
			
		||||
**Environment:**
 | 
			
		||||
 - OS: [e.g. macOS 10.15.2]
 | 
			
		||||
 - Browser: [e.g. Chrome 79.0.3945.130]
 | 
			
		||||
 | 
			
		||||
**Additional context**
 | 
			
		||||
Add any other context about the problem here.
 | 
			
		||||
							
								
								
									
										20
									
								
								.github/ISSUE_TEMPLATE/feature_request.md
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								.github/ISSUE_TEMPLATE/feature_request.md
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,20 @@
 | 
			
		||||
---
 | 
			
		||||
name: Feature request
 | 
			
		||||
about: Suggest an idea for this project
 | 
			
		||||
title: ''
 | 
			
		||||
labels: enhancement
 | 
			
		||||
assignees: ''
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
**Is your feature request related to a problem? Please describe.**
 | 
			
		||||
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
 | 
			
		||||
 | 
			
		||||
**Describe the solution you'd like**
 | 
			
		||||
A clear and concise description of what you want to happen.
 | 
			
		||||
 | 
			
		||||
**Describe alternatives you've considered**
 | 
			
		||||
A clear and concise description of any alternative solutions or features you've considered.
 | 
			
		||||
 | 
			
		||||
**Additional context**
 | 
			
		||||
Add any other context or screenshots about the feature request here.
 | 
			
		||||
							
								
								
									
										10
									
								
								.github/ISSUE_TEMPLATE/support-request.md
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								.github/ISSUE_TEMPLATE/support-request.md
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,10 @@
 | 
			
		||||
---
 | 
			
		||||
name: Support Request
 | 
			
		||||
about: Support request or question
 | 
			
		||||
title: ''
 | 
			
		||||
labels: question
 | 
			
		||||
assignees: ''
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
Describe your problem or question here.
 | 
			
		||||
							
								
								
									
										7
									
								
								.github/dependabot.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								.github/dependabot.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,7 @@
 | 
			
		||||
version: 2
 | 
			
		||||
updates:
 | 
			
		||||
- package-ecosystem: npm
 | 
			
		||||
  directory: "/html"
 | 
			
		||||
  schedule:
 | 
			
		||||
    interval: daily
 | 
			
		||||
  open-pull-requests-limit: 10
 | 
			
		||||
							
								
								
									
										39
									
								
								.github/workflows/backend.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								.github/workflows/backend.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,39 @@
 | 
			
		||||
name: backend
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  push:
 | 
			
		||||
    paths:
 | 
			
		||||
    - ".github/workflows/backend.yml"
 | 
			
		||||
    - "CMakeLists.txt"
 | 
			
		||||
    - "src/*"
 | 
			
		||||
    - "scripts/*"
 | 
			
		||||
  pull_request:
 | 
			
		||||
    paths:
 | 
			
		||||
    - ".github/workflows/backend.yml"
 | 
			
		||||
    - "CMakeLists.txt"
 | 
			
		||||
    - "src/*"
 | 
			
		||||
    - "scripts/*"
 | 
			
		||||
  workflow_call:
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  cross:
 | 
			
		||||
    runs-on: ubuntu-22.04
 | 
			
		||||
    strategy:
 | 
			
		||||
      fail-fast: false
 | 
			
		||||
      matrix:
 | 
			
		||||
        target: [i686, x86_64, arm, armhf, aarch64, mips, mipsel, mips64, mips64el, s390x, win32]
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v4
 | 
			
		||||
      - name: Install packages
 | 
			
		||||
        run: |
 | 
			
		||||
          sudo apt-get update
 | 
			
		||||
          sudo apt-get install -y autoconf automake build-essential cmake curl file libtool
 | 
			
		||||
      - name: Cross build (${{ matrix.target }})
 | 
			
		||||
        env:
 | 
			
		||||
          BUILD_TARGET: ${{ matrix.target }}
 | 
			
		||||
        run: ./scripts/cross-build.sh
 | 
			
		||||
      - uses: actions/upload-artifact@v4
 | 
			
		||||
        with:
 | 
			
		||||
          name: ttyd.${{ matrix.target }}
 | 
			
		||||
          path: build/ttyd*
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										71
									
								
								.github/workflows/docker.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										71
									
								
								.github/workflows/docker.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,71 @@
 | 
			
		||||
name: docker
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  push:
 | 
			
		||||
    branches: main
 | 
			
		||||
    tags: ["*"]
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  build:
 | 
			
		||||
    runs-on: ubuntu-22.04
 | 
			
		||||
    permissions:
 | 
			
		||||
      packages: write
 | 
			
		||||
      contents: read
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v4
 | 
			
		||||
      - name: Install packages
 | 
			
		||||
        run: |
 | 
			
		||||
          sudo apt-get update
 | 
			
		||||
          sudo apt-get install -y autoconf automake build-essential cmake curl file libtool
 | 
			
		||||
      - name: Cross build multi-arch binary
 | 
			
		||||
        run: |
 | 
			
		||||
          mkdir dist
 | 
			
		||||
          for arch in amd64 armv7 arm64 s390x; do
 | 
			
		||||
            env BUILD_TARGET=$arch ./scripts/cross-build.sh
 | 
			
		||||
            [ "$arch" = "armv7" ] && arch="arm" 
 | 
			
		||||
            mkdir -p dist/$arch && cp build/ttyd dist/$arch/ttyd
 | 
			
		||||
          done
 | 
			
		||||
      - uses: docker/setup-qemu-action@v3
 | 
			
		||||
      - uses: docker/setup-buildx-action@v3
 | 
			
		||||
      - uses: docker/login-action@v3
 | 
			
		||||
        with:
 | 
			
		||||
          username: ${{ secrets.DOCKER_HUB_USER }}
 | 
			
		||||
          password: ${{ secrets.DOCKER_HUB_TOKEN }}
 | 
			
		||||
      - uses: docker/login-action@v3
 | 
			
		||||
        with:
 | 
			
		||||
          registry: ghcr.io
 | 
			
		||||
          username: ${{ github.actor }}
 | 
			
		||||
          password: ${{ secrets.GITHUB_TOKEN }}
 | 
			
		||||
      - name: Determine docker tags
 | 
			
		||||
        id: docker_tag
 | 
			
		||||
        run: |
 | 
			
		||||
          case $GITHUB_REF in
 | 
			
		||||
            refs/tags/*)
 | 
			
		||||
              TAG_NAME=${GITHUB_REF#refs/tags/}
 | 
			
		||||
              echo "DOCKER_TAG=tsl0922/ttyd:${TAG_NAME}" >> $GITHUB_ENV
 | 
			
		||||
              echo "ALPINE_TAG=tsl0922/ttyd:${TAG_NAME}-alpine" >> $GITHUB_ENV
 | 
			
		||||
              ;;
 | 
			
		||||
            *)
 | 
			
		||||
              echo "DOCKER_TAG=tsl0922/ttyd:latest" >> $GITHUB_ENV
 | 
			
		||||
              echo "ALPINE_TAG=tsl0922/ttyd:alpine" >> $GITHUB_ENV
 | 
			
		||||
          esac
 | 
			
		||||
      - name: build/push docker image
 | 
			
		||||
        uses: docker/build-push-action@v6
 | 
			
		||||
        with:
 | 
			
		||||
          context: .
 | 
			
		||||
          file: ./Dockerfile
 | 
			
		||||
          platforms: linux/amd64,linux/arm/v7,linux/arm64,linux/s390x
 | 
			
		||||
          push: true
 | 
			
		||||
          tags: |
 | 
			
		||||
            ${{ env.DOCKER_TAG }}
 | 
			
		||||
            ghcr.io/${{ env.DOCKER_TAG }}
 | 
			
		||||
      - name: build/push docker image (alpine)
 | 
			
		||||
        uses: docker/build-push-action@v6
 | 
			
		||||
        with:
 | 
			
		||||
          context: .
 | 
			
		||||
          file: ./Dockerfile.alpine
 | 
			
		||||
          platforms: linux/amd64,linux/arm/v7,linux/arm64,linux/s390x
 | 
			
		||||
          push: true
 | 
			
		||||
          tags: |
 | 
			
		||||
            ${{ env.ALPINE_TAG }}
 | 
			
		||||
            ghcr.io/${{ env.ALPINE_TAG }}
 | 
			
		||||
							
								
								
									
										28
									
								
								.github/workflows/frontend.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								.github/workflows/frontend.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,28 @@
 | 
			
		||||
name: frontend
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  push:
 | 
			
		||||
    paths:
 | 
			
		||||
    - ".github/workflows/frontend.yml"
 | 
			
		||||
    - "html/*"
 | 
			
		||||
  pull_request:
 | 
			
		||||
    paths:
 | 
			
		||||
    - ".github/workflows/frontend.yml"
 | 
			
		||||
    - "html/*"
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  build:
 | 
			
		||||
    runs-on: ubuntu-22.04
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v4
 | 
			
		||||
      - uses: actions/setup-node@v4
 | 
			
		||||
        with:
 | 
			
		||||
          node-version: 18
 | 
			
		||||
      - name: Run yarn install, check and build
 | 
			
		||||
        run: |
 | 
			
		||||
          corepack enable
 | 
			
		||||
          corepack prepare yarn@stable --activate
 | 
			
		||||
          yarn install
 | 
			
		||||
          yarn run check
 | 
			
		||||
          yarn run build
 | 
			
		||||
        working-directory: html
 | 
			
		||||
							
								
								
									
										37
									
								
								.github/workflows/release.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								.github/workflows/release.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,37 @@
 | 
			
		||||
name: release
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  push:
 | 
			
		||||
    tags: ["*"]
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  build:
 | 
			
		||||
    uses: ./.github/workflows/backend.yml
 | 
			
		||||
  publish:
 | 
			
		||||
    needs: [build]
 | 
			
		||||
    runs-on: ubuntu-22.04
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v4
 | 
			
		||||
      - name: Check version bump
 | 
			
		||||
        run: |
 | 
			
		||||
          TAG=$(git describe --tags --match "[0-9]*.[0-9]*.[0-9]*" --abbrev=8)
 | 
			
		||||
          VERSION=$(grep project CMakeLists.txt| awk '{print $3}')
 | 
			
		||||
          if [ "$TAG" != "$VERSION" ]; then
 | 
			
		||||
            echo "=== Version in CMakeLists.txt and git tag does not match!"
 | 
			
		||||
            echo "=== Git Tag: $TAG, Version: $VERSION"
 | 
			
		||||
            exit 1
 | 
			
		||||
          fi
 | 
			
		||||
      - uses: actions/download-artifact@v4
 | 
			
		||||
      - run: |
 | 
			
		||||
          mkdir build
 | 
			
		||||
          for file in ttyd.*/*; do
 | 
			
		||||
            target=$(echo $file | awk -F/ '{print $1}')
 | 
			
		||||
            [[ $file == *.exe ]] && target="$target.exe"
 | 
			
		||||
            mv $file build/$target
 | 
			
		||||
          done
 | 
			
		||||
          pushd build; sha256sum ttyd.* > SHA256SUMS; popd
 | 
			
		||||
      - uses: ncipollo/release-action@v1
 | 
			
		||||
        with:
 | 
			
		||||
          artifacts: build/*
 | 
			
		||||
          allowUpdates: true
 | 
			
		||||
          draft: true
 | 
			
		||||
		Reference in New Issue
	
	Block a user