Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib 2, callPackage 3, fetchFromGitHub 4}: 5/* 6** To customize the enabled beets plugins, use the pluginOverrides input to the 7** derivation. 8** Examples: 9** 10** Disabling a builtin plugin: 11** beets.override { pluginOverrides = { beatport.enable = false; }; } 12** 13** Enabling an external plugin: 14** beets.override { pluginOverrides = { 15** alternatives = { enable = true; propagatedBuildInputs = [ beetsPackages.alternatives ]; }; 16** }; } 17*/ 18lib.makeExtensible (self: { 19 beets = self.beets-stable; 20 21 beets-stable = callPackage ./common.nix rec { 22 version = "1.6.0"; 23 src = fetchFromGitHub { 24 owner = "beetbox"; 25 repo = "beets"; 26 rev = "v${version}"; 27 hash = "sha256-fT+rCJJQR7bdfAcmeFRaknmh4ZOP4RCx8MXpq7/D8tM="; 28 }; 29 }; 30 31 beets-minimal = self.beets.override { disableAllPlugins = true; }; 32 33 beets-unstable = callPackage ./common.nix { 34 version = "unstable-2022-08-27"; 35 src = fetchFromGitHub { 36 owner = "beetbox"; 37 repo = "beets"; 38 rev = "50bd693057de472470ab5175fae0cdb5b75811c6"; 39 hash = "sha256-91v1StaByG60ryhQqByBXu6sFCjk0qT0nsUPnocSEE4="; 40 }; 41 pluginOverrides = { 42 # unstable has a new plugin, so we register it here. 43 limit = { builtin = true; }; 44 }; 45 }; 46 47 alternatives = callPackage ./plugins/alternatives.nix { beets = self.beets-minimal; }; 48 copyartifacts = callPackage ./plugins/copyartifacts.nix { beets = self.beets-minimal; }; 49 extrafiles = callPackage ./plugins/extrafiles.nix { beets = self.beets-minimal; }; 50})