diff --git a/pkgs/applications/video/vcs/default.nix b/pkgs/applications/video/vcs/default.nix new file mode 100644 index 00000000000..0cbdeaaf6ff --- /dev/null +++ b/pkgs/applications/video/vcs/default.nix @@ -0,0 +1,39 @@ +{ stdenv, fetchurl, makeWrapper +, coreutils, ffmpeg, gawk, gnugrep, gnused, imagemagick, mplayer, utillinux +, dejavu_fonts +}: +with stdenv.lib; +let + version = "1.13.4"; + runtimeDeps = [ coreutils ffmpeg gawk gnugrep gnused imagemagick mplayer utillinux ]; +in +stdenv.mkDerivation { + pname = "vcs"; + inherit version; + src = fetchurl { + url = "http://p.outlyer.net/files/vcs/vcs-${version}.bash"; + sha256 = "0nhwcpffp3skz24kdfg4445i6j37ks6a0qsbpfd3dbi4vnpa60a0"; + }; + + unpackCmd = "mkdir src; cp $curSrc src/vcs"; + patches = [ ./fonts.patch ]; + nativeBuildInputs = [ makeWrapper ]; + doBuild = false; + + inherit dejavu_fonts; + installPhase = '' + mkdir -p $out/bin + mv vcs $out/bin/vcs + substituteAllInPlace $out/bin/vcs + chmod +x $out/bin/vcs + wrapProgram $out/bin/vcs --argv0 vcs --set PATH "${makeBinPath runtimeDeps}" + ''; + + meta = { + description = "Generates contact sheets from video files"; + homepage = "http://p.outlyer.net/vcs"; + license = licenses.cc-by-nc-sa-30; + maintainers = with maintainers; [ elitak ]; + platforms = with platforms; unix; + }; +} diff --git a/pkgs/applications/video/vcs/fonts.patch b/pkgs/applications/video/vcs/fonts.patch new file mode 100644 index 00000000000..3df0359f8b2 --- /dev/null +++ b/pkgs/applications/video/vcs/fonts.patch @@ -0,0 +1,23 @@ +--- a/vcs 2020-04-04 14:37:53.531095977 -0700 ++++ b/vcs 2020-04-04 14:40:46.459407878 -0700 +@@ -3669,18 +3669,8 @@ + [[ ( -z $USR_FONT_TITLE ) && ( $FONT_TITLE != 'DejaVu-Sans-Book' ) ]] && return + [[ ( -z $USR_FONT_TSTAMPS ) && ( $FONT_TSTAMPS != 'DejaVu-Sans-Book' ) ]] && return + [[ ( -z $USR_FONT_SIGN ) && ( $FONT_SIGN != 'DejaVu-Sans-Book' ) ]] && return +- # Try to locate DejaVu Sans +- local dvs='' +- if [[ -d /usr/local/share/fonts ]]; then +- dvs=$(find /usr/local/share/fonts/ -type f -iname 'dejavusans.ttf') +- fi +- if [[ ( -z $dvs ) && ( -d /usr/share/fonts ) ]]; then +- dvs=$(find /usr/share/fonts/ -type f -iname 'dejavusans.ttf') +- fi +- if [[ -z $dvs ]]; then +- warn "Unable to locate DejaVu Sans font. Falling back to helvetica." +- dvs=helvetica +- fi ++ # Use DejaVu Sans, by default ++ local dvs='@dejavu_fonts@/share/fonts/truetype/DejaVuSans.ttf' + [[ -z $USR_FONT_HEADING ]] && FONT_HEADING="$dvs" + [[ -z $USR_FONT_TITLE ]] && FONT_TITLE="$dvs" + [[ -z $USR_FONT_TSTAMPS ]] && FONT_TSTAMPS="$dvs" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f31eed2a198..c78db798c4d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -23775,6 +23775,8 @@ in vcprompt = callPackage ../applications/version-management/vcprompt { }; + vcs = callPackage ../applications/video/vcs { }; + vcv-rack = callPackage ../applications/audio/vcv-rack { }; vdirsyncer = with python3Packages; toPythonApplication vdirsyncer;