From bfb8679e91a28b81a185f3622695a9dc6307ec9e Mon Sep 17 00:00:00 2001 From: Midou Date: Tue, 13 May 2025 20:31:47 +0100 Subject: [PATCH] Replace some stuff, add VideoPlayer fix (thanks https://github.com/ccar30) --- .github/workflows/main.yaml | 42 ++-- .goreleaser.yml | 234 ++++++++---------- frontend/src/components/files/VideoPlayer.vue | 15 +- 3 files changed, 132 insertions(+), 159 deletions(-) diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml index ee01149a..d96ebac5 100644 --- a/.github/workflows/main.yaml +++ b/.github/workflows/main.yaml @@ -1,13 +1,10 @@ +--- name: main - on: push: - branches: - - "master" - tags: - - "v*" + branches: [master] + tags: [v*] pull_request: - jobs: # linters lint-frontend: @@ -16,12 +13,12 @@ jobs: - uses: actions/checkout@v4 - uses: pnpm/action-setup@v4 with: - package_json_file: "frontend/package.json" + package_json_file: frontend/package.json - uses: actions/setup-node@v4 with: - node-version: "22.x" - cache: "pnpm" - cache-dependency-path: "frontend/pnpm-lock.yaml" + node-version: 22.x + cache: pnpm + cache-dependency-path: frontend/pnpm-lock.yaml - run: make lint-frontend lint-backend: runs-on: ubuntu-latest @@ -44,12 +41,12 @@ jobs: - uses: actions/checkout@v4 - uses: pnpm/action-setup@v4 with: - package_json_file: "frontend/package.json" + package_json_file: frontend/package.json - uses: actions/setup-node@v4 with: - node-version: "22.x" - cache: "pnpm" - cache-dependency-path: "frontend/pnpm-lock.yaml" + node-version: 22.x + cache: pnpm + cache-dependency-path: frontend/pnpm-lock.yaml - run: make test-frontend test-backend: runs-on: ubuntu-latest @@ -79,12 +76,12 @@ jobs: go-version: 1.23.0 - uses: pnpm/action-setup@v4 with: - package_json_file: "frontend/package.json" + package_json_file: frontend/package.json - uses: actions/setup-node@v4 with: - node-version: "22.x" - cache: "pnpm" - cache-dependency-path: "frontend/pnpm-lock.yaml" + node-version: 22.x + cache: pnpm + cache-dependency-path: frontend/pnpm-lock.yaml - name: Set up QEMU uses: docker/setup-qemu-action@v1 - name: Set up Docker Buildx @@ -92,14 +89,15 @@ jobs: - name: Build frontend run: make build-frontend - name: Login to Docker Hub - uses: docker/login-action@v1 + uses: docker/login-action@v3 with: - username: ${{ secrets.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_TOKEN }} + registry: https://git.linuxcrack.zip + username: ${{ gitea.actor }} + password: ${{ secrets.USER_TOKEN }} - name: Run GoReleaser uses: goreleaser/goreleaser-action@v2 with: version: latest args: release --clean env: - GITHUB_TOKEN: ${{ secrets.GH_PAT }} + GITHUB_TOKEN: ${{ secrets.USER_TOKEN }} diff --git a/.goreleaser.yml b/.goreleaser.yml index 0e0a5d65..c0a83bd8 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -1,193 +1,159 @@ +--- version: 2 - project_name: filebrowser - -env: - - GO111MODULE=on - +env: [GO111MODULE=on] builds: - - env: - - CGO_ENABLED=0 + - env: [CGO_ENABLED=0] ldflags: - - -s -w -X github.com/filebrowser/filebrowser/v2/version.Version={{ .Version }} -X github.com/filebrowser/filebrowser/v2/version.CommitSHA={{ .ShortCommit }} + - -s -w -X git.linuxcrack.zip/midou/filebrowser/v2/version.Version={{ .Version }} + -X git.linuxcrack.zip/midou/filebrowser/v2/version.CommitSHA={{ .ShortCommit }} main: main.go binary: filebrowser - goos: - - darwin - - linux - - windows - - freebsd - goarch: - - amd64 - - 386 - - arm - - arm64 - - riscv64 - goarm: - - 5 - - 6 - - 7 + goos: [darwin, linux, windows, freebsd] + goarch: [amd64, 386, arm, arm64, riscv64] + goarm: [5, 6, 7] ignore: - goos: darwin goarch: 386 - goos: freebsd goarch: arm - archives: - - - name_template: "{{.Os}}-{{.Arch}}{{if .Arm}}v{{.Arm}}{{end}}-{{ .ProjectName }}" - formats: [ 'tar.gz' ] + - name_template: '{{.Os}}-{{.Arch}}{{if .Arm}}v{{.Arm}}{{end}}-{{ .ProjectName }}' + formats: [tar.gz] format_overrides: - goos: windows - formats: [ 'zip' ] - + formats: [zip] dockers: - - - dockerfile: Dockerfile + - dockerfile: Dockerfile use: buildx build_flag_templates: - - "--pull" - - "--label=org.opencontainers.image.created={{.Date}}" - - "--label=org.opencontainers.image.name={{.ProjectName}}" - - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.version={{.Version}}" - - "--label=org.opencontainers.image.source={{.GitURL}}" - - "--platform=linux/amd64" + - --pull + - --label=org.opencontainers.image.created={{.Date}} + - --label=org.opencontainers.image.name={{.ProjectName}} + - --label=org.opencontainers.image.revision={{.FullCommit}} + - --label=org.opencontainers.image.version={{.Version}} + - --label=org.opencontainers.image.source={{.GitURL}} + - --platform=linux/amd64 goos: linux goarch: amd64 image_templates: - - "filebrowser/filebrowser:{{ .Tag }}-amd64" - - "filebrowser/filebrowser:v{{ .Major }}-amd64" - extra_files: - - docker_config.json - - healthcheck.sh - - - dockerfile: Dockerfile + - filebrowser/filebrowser:{{ .Tag }}-amd64 + - filebrowser/filebrowser:v{{ .Major }}-amd64 + extra_files: [docker_config.json, healthcheck.sh] + - dockerfile: Dockerfile use: buildx build_flag_templates: - - "--pull" - - "--label=org.opencontainers.image.created={{.Date}}" - - "--label=org.opencontainers.image.name={{.ProjectName}}" - - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.version={{.Version}}" - - "--label=org.opencontainers.image.source={{.GitURL}}" - - "--platform=linux/arm64" + - --pull + - --label=org.opencontainers.image.created={{.Date}} + - --label=org.opencontainers.image.name={{.ProjectName}} + - --label=org.opencontainers.image.revision={{.FullCommit}} + - --label=org.opencontainers.image.version={{.Version}} + - --label=org.opencontainers.image.source={{.GitURL}} + - --platform=linux/arm64 goos: linux goarch: arm64 image_templates: - - "filebrowser/filebrowser:{{ .Tag }}-arm64" - - "filebrowser/filebrowser:v{{ .Major }}-arm64" - extra_files: - - docker_config.json - - healthcheck.sh - - - dockerfile: Dockerfile + - filebrowser/filebrowser:{{ .Tag }}-arm64 + - filebrowser/filebrowser:v{{ .Major }}-arm64 + extra_files: [docker_config.json, healthcheck.sh] + - dockerfile: Dockerfile use: buildx build_flag_templates: - - "--pull" - - "--label=org.opencontainers.image.created={{.Date}}" - - "--label=org.opencontainers.image.name={{.ProjectName}}" - - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.version={{.Version}}" - - "--label=org.opencontainers.image.source={{.GitURL}}" - - "--platform=linux/arm/v6" + - --pull + - --label=org.opencontainers.image.created={{.Date}} + - --label=org.opencontainers.image.name={{.ProjectName}} + - --label=org.opencontainers.image.revision={{.FullCommit}} + - --label=org.opencontainers.image.version={{.Version}} + - --label=org.opencontainers.image.source={{.GitURL}} + - --platform=linux/arm/v6 goos: linux goarch: arm goarm: '6' image_templates: - - "filebrowser/filebrowser:{{ .Tag }}-armv6" - - "filebrowser/filebrowser:v{{ .Major }}-armv6" - extra_files: - - docker_config.json - - healthcheck.sh - - - dockerfile: Dockerfile + - filebrowser/filebrowser:{{ .Tag }}-armv6 + - filebrowser/filebrowser:v{{ .Major }}-armv6 + extra_files: [docker_config.json, healthcheck.sh] + - dockerfile: Dockerfile use: buildx build_flag_templates: - - "--pull" - - "--label=org.opencontainers.image.created={{.Date}}" - - "--label=org.opencontainers.image.name={{.ProjectName}}" - - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.version={{.Version}}" - - "--label=org.opencontainers.image.source={{.GitURL}}" - - "--platform=linux/arm/v7" + - --pull + - --label=org.opencontainers.image.created={{.Date}} + - --label=org.opencontainers.image.name={{.ProjectName}} + - --label=org.opencontainers.image.revision={{.FullCommit}} + - --label=org.opencontainers.image.version={{.Version}} + - --label=org.opencontainers.image.source={{.GitURL}} + - --platform=linux/arm/v7 goos: linux goarch: arm goarm: '7' image_templates: - - "filebrowser/filebrowser:{{ .Tag }}-armv7" - - "filebrowser/filebrowser:v{{ .Major }}-armv7" + - filebrowser/filebrowser:{{ .Tag }}-armv7 + - filebrowser/filebrowser:v{{ .Major }}-armv7 extra_files: - docker_config.json - healthcheck.sh ## s6 based docker images - - - dockerfile: Dockerfile.s6 + - dockerfile: Dockerfile.s6 use: buildx build_flag_templates: - - "--pull" - - "--label=org.opencontainers.image.created={{.Date}}" - - "--label=org.opencontainers.image.name={{.ProjectName}}" - - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.version={{.Version}}" - - "--label=org.opencontainers.image.source={{.GitURL}}" - - "--platform=linux/amd64" + - --pull + - --label=org.opencontainers.image.created={{.Date}} + - --label=org.opencontainers.image.name={{.ProjectName}} + - --label=org.opencontainers.image.revision={{.FullCommit}} + - --label=org.opencontainers.image.version={{.Version}} + - --label=org.opencontainers.image.source={{.GitURL}} + - --platform=linux/amd64 goos: linux goarch: amd64 image_templates: - - "filebrowser/filebrowser:{{ .Tag }}-amd64-s6" - - "filebrowser/filebrowser:v{{ .Major }}-amd64-s6" - extra_files: - - docker/root - - healthcheck.sh - - - dockerfile: Dockerfile.s6.aarch64 + - filebrowser/filebrowser:{{ .Tag }}-amd64-s6 + - filebrowser/filebrowser:v{{ .Major }}-amd64-s6 + extra_files: [docker/root, healthcheck.sh] + - dockerfile: Dockerfile.s6.aarch64 use: buildx build_flag_templates: - - "--pull" - - "--label=org.opencontainers.image.created={{.Date}}" - - "--label=org.opencontainers.image.name={{.ProjectName}}" - - "--label=org.opencontainers.image.revision={{.FullCommit}}" - - "--label=org.opencontainers.image.version={{.Version}}" - - "--label=org.opencontainers.image.source={{.GitURL}}" - - "--platform=linux/arm64" + - --pull + - --label=org.opencontainers.image.created={{.Date}} + - --label=org.opencontainers.image.name={{.ProjectName}} + - --label=org.opencontainers.image.revision={{.FullCommit}} + - --label=org.opencontainers.image.version={{.Version}} + - --label=org.opencontainers.image.source={{.GitURL}} + - --platform=linux/arm64 goos: linux goarch: arm64 image_templates: - - "filebrowser/filebrowser:{{ .Tag }}-arm64-s6" - - "filebrowser/filebrowser:v{{ .Major }}-arm64-s6" - extra_files: - - docker/root - - healthcheck.sh + - filebrowser/filebrowser:{{ .Tag }}-arm64-s6 + - filebrowser/filebrowser:v{{ .Major }}-arm64-s6 + extra_files: [docker/root, healthcheck.sh] docker_manifests: - - name_template: "filebrowser/filebrowser:latest" + - name_template: filebrowser/filebrowser:latest image_templates: - - "filebrowser/filebrowser:{{ .Tag }}-amd64" - - "filebrowser/filebrowser:{{ .Tag }}-arm64" - - "filebrowser/filebrowser:{{ .Tag }}-armv7" - - name_template: "filebrowser/filebrowser:{{ .Tag }}" + - filebrowser/filebrowser:{{ .Tag }}-amd64 + - filebrowser/filebrowser:{{ .Tag }}-arm64 + - filebrowser/filebrowser:{{ .Tag }}-armv7 + - name_template: filebrowser/filebrowser:{{ .Tag }} image_templates: - - "filebrowser/filebrowser:{{ .Tag }}-amd64" - - "filebrowser/filebrowser:{{ .Tag }}-arm64" - - "filebrowser/filebrowser:{{ .Tag }}-armv7" - - name_template: "filebrowser/filebrowser:v{{ .Major }}" + - filebrowser/filebrowser:{{ .Tag }}-amd64 + - filebrowser/filebrowser:{{ .Tag }}-arm64 + - filebrowser/filebrowser:{{ .Tag }}-armv7 + - name_template: filebrowser/filebrowser:v{{ .Major }} image_templates: - - "filebrowser/filebrowser:v{{ .Major }}-amd64" - - "filebrowser/filebrowser:v{{ .Major }}-arm64" - - "filebrowser/filebrowser:v{{ .Major }}-armv7" + - filebrowser/filebrowser:v{{ .Major }}-amd64 + - filebrowser/filebrowser:v{{ .Major }}-arm64 + - filebrowser/filebrowser:v{{ .Major }}-armv7 ## s6 image manifests - - name_template: "filebrowser/filebrowser:s6" + - name_template: filebrowser/filebrowser:s6 image_templates: - - "filebrowser/filebrowser:{{ .Tag }}-amd64-s6" - - "filebrowser/filebrowser:{{ .Tag }}-arm64-s6" - - name_template: "filebrowser/filebrowser:{{ .Tag }}-s6" + - filebrowser/filebrowser:{{ .Tag }}-amd64-s6 + - filebrowser/filebrowser:{{ .Tag }}-arm64-s6 + - name_template: filebrowser/filebrowser:{{ .Tag }}-s6 image_templates: - - "filebrowser/filebrowser:{{ .Tag }}-amd64-s6" - - "filebrowser/filebrowser:{{ .Tag }}-arm64-s6" - - name_template: "filebrowser/filebrowser:v{{ .Major }}-s6" + - filebrowser/filebrowser:{{ .Tag }}-amd64-s6 + - filebrowser/filebrowser:{{ .Tag }}-arm64-s6 + - name_template: filebrowser/filebrowser:v{{ .Major }}-s6 image_templates: - - "filebrowser/filebrowser:v{{ .Major }}-amd64-s6" - - "filebrowser/filebrowser:v{{ .Major }}-arm64-s6" + - filebrowser/filebrowser:v{{ .Major }}-amd64-s6 + - filebrowser/filebrowser:v{{ .Major }}-arm64-s6 brews: - name: filebrowser repository: @@ -198,5 +164,7 @@ brews: commit_author: name: FileBrowser Robot email: robot@filebrowser.org - description: File Browser is a create-your-own-cloud-kind of software where you can install it on a server, direct it to a path and then access your files through a nice web interface - license: "MIT" + description: File Browser is a create-your-own-cloud-kind of software where you + can install it on a server, direct it to a path and then access your files through + a nice web interface + license: MIT diff --git a/frontend/src/components/files/VideoPlayer.vue b/frontend/src/components/files/VideoPlayer.vue index a1947f90..40ac4d3e 100644 --- a/frontend/src/components/files/VideoPlayer.vue +++ b/frontend/src/components/files/VideoPlayer.vue @@ -92,10 +92,17 @@ const initVideoPlayer = async () => { const getOptions = (...srcOpt: any[]) => { const options = { controlBar: { - skipButtons: { - forward: 5, - backward: 5, - }, + volumePanel: {}, + playbackRateButton: {}, + currentTimeDisplay: {}, + timeDivider: {}, + durationDisplay: {}, + remainingTimeDisplay: {}, + progressControl: {}, + liveDisplay: {}, + customControlSpacer: {}, + playToggle: {}, + fullscreenToggle: {}, }, html5: { nativeTextTracks: false,