# # spec file for package vhs # # Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # %global _lto_cflags %nil Name: vhs Version: 0.8.0 Release: 1.1 Summary: CLI video recorder URL: https://github.com/charmbracelet/vhs Source0: %{name}-%{version}.tar.zst Source1: vendor.tar.zst License: MIT BuildRequires: zstd BuildRequires: golang(API) Requires: ffmpeg Requires: ttyd Recommends: %{name}-doc = %{version} %description VHS records your terminal as videos or gifs for demos. %package doc Summary: Documentation for %{name} Group: System/Shells Supplements: (%{name} and bash-completion) Requires: %{name} = %{version} Requires: bash-completion BuildArch: noarch %description doc Documentation files and examples for %{name}. %package bash-completion Summary: Bash Completion for %{name} Group: System/Shells Supplements: (%{name} and bash-completion) Requires: %{name} = %{version} Requires: bash-completion BuildArch: noarch %description bash-completion Bash command-line completion support for %{name}. %package fish-completion Summary: Fish Completion for %{name} Group: System/Shells Supplements: (%{name} and fish) Requires: %{name} = %{version} Requires: fish BuildArch: noarch %description fish-completion Fish command-line completion support for %{name}. %package zsh-completion Summary: Zsh Completion for %{name} Group: System/Shells Supplements: (%{name} and zsh) Requires: %{name} = %{version} Requires: zsh BuildArch: noarch %description zsh-completion Zsh command-line completion support for %{name}. %prep %autosetup -a1 # Delete outputs from examples. find examples -name '*.mp4' -delete \ -or -name '*.webm' -delete \ -or -name '*.gif' -delete \ -or -name '*.png' -delete %build %ifarch ppc64 BUILDMOD="" %else BUILDMOD="-buildmode=pie" %endif export CGO_CFLAGS="%{optflags}" export CGO_CXXFLAGS="%{optflags}" export CGO_CPPFLAGS="%{optflags}" go build -v -x -mod=vendor $BUILDMOD -a -ldflags "-s -X main.Version=%{version}" %install install -Dm755 %{name} %{buildroot}%{_bindir}/%{name} # Completions for sh in bash zsh fish; do ./%{name} completion $sh > %{name}.${sh} done install -Dm644 %{name}.bash %{buildroot}%{_datadir}/bash-completion/completions/%{name} install -Dm644 %{name}.zsh %{buildroot}%{_datadir}/zsh/site-functions/_%{name} install -Dm644 %{name}.fish %{buildroot}%{_datadir}/fish/vendor_completions.d/%{name}.fish %check go test -v ./... %files %{_bindir}/%{name} %license LICENSE %doc README.md %files doc %doc examples %files bash-completion %{_datadir}/bash-completion/* %files fish-completion %dir %{_datadir}/fish %{_datadir}/fish/* %files zsh-completion %dir %{_datadir}/zsh %{_datadir}/zsh/* %changelog * Tue Oct 22 2024 Joshua Smith - Enable tests - Update to version 0.8.0: New * cmd: add support for ENV command * set VHS_RECORD="true"while running Fixed * fix duplicate if statement * hide vhs publish info when exiting with tape errors * fix ShiftLeft when using Shift+Tab * data rase + better error reporting Docs * correct typo in ffmepg.go Other stuff * feat: update deps, fix lint issues * Tue Apr 16 2024 Joshua Smith - Update _service to use manual instead of deprecated disabled - Update to version 0.7.2: * Fix vhs serve mode * Update log dependency * Fix app crash when there is repeated SLEEP at the end of the "lines" slice * Refactor Lexer, Parser, Token into packages * Wed Feb 14 2024 Joshua Smith - Enabled completions for bash, zsh and fish. - Created docs subpackage. * Wed Dec 13 2023 Joshua Smith - Update to version 0.7.1: * With VHS v0.7.0, you can capture any moment of tape. Just add `Screenshot .png> to your tapes` * VHS can now talk to your system clipboard. Please keep this in mind when executing tapes from unknown sources. * VHS 0.7.0 has some new additions, introducing top level Shift+ modifier and the Insert + Delete keys! * parser: catch out of order modifiers * parser: refactor parseCtrl and test * Fix tomorrow themes * docs: document source command * feat: add insert and delete key * Update themes (#377) * fix: tests * docs: record clipboard.tape to clipboard.gif * Fix VHS for Nushell version ^0.83 (#373) * feat: improve vhs new (#355) * docs: add `LoopOffset` documentation * Thu Jul 20 2023 Joshua Smith - Update to version 0.6.0: * examples: glow.tape * feat: add Apple Symbols font fallback for braille characters * feat: add alt + shift modifiers (#316) * feat(deps): bump golang.org/x/crypto from 0.8.0 to 0.10.0 (#328) * add note on TypingSpeed for new users in `demo.tape` (#327) * docs: fix CursorBlink example sizing * docs: Set CursorBlink examples * feat: setting to control cursor blinking (#324) * fix: hint linguist to highlight tape files as elixir * fix: set color in fish shell using correct syntax * Sun Jun 18 2023 Joshua Smith - Update to version 0.5.0: * feat: Added `Alt+Enter` input * feat: Added Source command * docs: correct release year in license * docs: update license * fix: use `--writable` command for `ttyd` * fix: allow `Output` commands to be at end * fix: record sleep only in supported time units * Thu Feb 23 2023 Soc Virnyl Estela - Requires ttyd and ffmpeg * Fri Feb 17 2023 Soc Virnyl Estela - Initial spec for vhs 0.2.0