Skip to content

Overlay with VapourSynth plugins packaged for Nix

License

Notifications You must be signed in to change notification settings

aidalgol/vs-overlay

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vs-overlay

A collection of packages (mostly plugins) related to using VapourSynth with Nix.

Standalone Nix

Add the repository to ~/.config/nixpkgs/overlays.nix:

[
  (import (builtins.fetchTarball "https://github.com/nix-community/vs-overlay/archive/master.tar.gz"))
]

NixOS, without flakes

Add the repository to the nixpkgs.overlays option of configuration.nix:

{
  nixpkgs.overlays = [
    (import (builtins.fetchTarball "https://github.com/nix-community/vs-overlay/archive/master.tar.gz"))
  ];
}

NixOS, with flakes

Note: Flakes are an experimental feature of Nix.
If you're not already using them, you should follow NixOS, without flakes instead.

Note: This only fetches the overlay as a flake, it doesn't use the pinned Nixpkgs version.
See Usage as a flake for more information.

In flake.nix, add vs-overlay as an input:

{
  inputs.vs-overlay.url = "github:nix-community/vs-overlay";
}

Then add vs-overlay.overlay to nixpkgs.overlays:

{
  nixpkgs.overlays = [
    vs-overlay.overlay
  ];
}

Usage

Adding the repository as an overlay will add the packages to the main pkgs set, using them is the same as packages from Nixpkgs:

Manually building

# Build a standalone package
nix-build '<nixpkgs>' -A getnative

# Build a VSEdit package with the given plugins
nix-build -E '
  { pkgs ? import <nixpkgs> {} }:
  with pkgs;
  vapoursynth-editor.withPlugins [
    vapoursynthPlugins.mvtools
    vapoursynthPlugins.vsutil
  ]
'

NixOS config

{
  environment.systemPackages = with pkgs; [
    # Standalone package from this overlay
    getnative

    # Vapoursynth (from Nixpkgs) with plugins
    (vapoursynth.withPlugins [
        vapoursynthPlugins.mvtools
    ])

    # VSEdit (from Nixpkgs) with plugins
    (vapoursynth-editor.withPlugins [
        vapoursynthPlugins.vsutil
    ])
  ];
}

Usage as a flake

Note: Flakes are an experimental Nix feature intended to improve reproducibility.

When this repository is used as a flake, it uses a pinned version of Nixpkgs rather than the system set.
This has both advantages and disadvantages: a newer revision of Nixpkgs could have an important fix for a plugin dependency, but an update could also break a plugin due to backwards-incompatible changes.

Setup

In flake.nix, add vs-overlay as an input:

{
  inputs.vs-overlay.url = "github:nix-community/vs-overlay";
}

Usage

Packages are accessible through vs-overlay.packages.<system>:

{
  environment.systemPackages = with pkgs; [
    vs-overlay.packages.x86_64-linux.getnative

    (vapoursynth.withPlugins [
      vs-overlay.packages.x86_64-linux.vapoursynthPlugins.vsutil
    ])
  ];
}

License

Like Nixpkgs itself, this repository uses the MIT license.
It only applies to the files in this repository, not the results of building the packages.

About

Overlay with VapourSynth plugins packaged for Nix

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Nix 100.0%