tvl-depot/third_party/default.nix
Vincent Ambo 066d34b50e feat(ops/nixos/nugget): Add chromium with VAAPI patches
These patches enable hardware-accelerated video decoding, which is
useful for Stadia.

The main issue with this is that Hydra doesn't currently cache
Chromium with these patches, which means that it is built from scratch
which takes in the order of 5 hours on an otherwise unused nugget.
2020-04-17 12:43:25 +01:00

134 lines
2.6 KiB
Nix

# This file controls the import of external dependencies (i.e.
# third-party code) into my package tree.
#
# This includes *all packages needed from nixpkgs*.
{ ... }:
let
# Tracking nixos-20.03 as of 2020-04-04.
commit = "b0c285807d6a9f1b7562ec417c24fa1a30ecc31a";
nixpkgsSrc = fetchTarball {
url = "https://github.com/NixOS/nixpkgs-channels/archive/${commit}.tar.gz";
sha256 = "0waapr7aqz0h1fy1fqlx981ygllh91qx9sz1l2j2h59s46cdircl";
};
nixpkgs = import nixpkgsSrc {
config.allowUnfree = true;
config.allowBroken = true;
};
exposed = {
# Inherit the packages from nixpkgs that should be available inside
# of the repo. They become available under `pkgs.third_party.<name>`
inherit (nixpkgs)
age
autoconf
bashInteractive
bat
buildGoModule
buildGoPackage
bzip2
c-ares
cacert
cachix
cargo
cgit
clang_9
cmake
coreutils
cudatoolkit
darwin
dockerTools
emacs26
emacs26-nox
emacsPackages
emacsPackagesGen
fetchFromGitHub
fetchurl
fetchzip
fira
fira-code
fira-mono
gettext
glibc
gnutar
go
google-cloud-sdk
grpc
gzip
haskell
iana-etc
imagemagickBig
jq
kontemplate
lib
libredirect
llvmPackages
luajit
luatex
makeFontsConf
makeWrapper
mdbook
mime-types
moreutils
nano
nginx
nix
openssh
openssl
overrideCC
overrideCCC
pandoc
parallel
pkgconfig
pounce
protobuf
python3Packages
remarshal
rink
ripgrep
rsync
runCommand
runCommandNoCC
rustPlatform
rustc
sbcl
stdenv
stern
symlinkJoin
systemd
tdlib
terraform_0_12
texlive
thttpd
tree
writeShellScript
writeShellScriptBin
writeText
writeTextFile
xz
zlib
zstd;
};
in exposed // {
callPackage = nixpkgs.lib.callPackageWith exposed;
# Provide the source code of nixpkgs, but do not provide an imported
# version of it.
inherit nixpkgsSrc;
# Packages to be overridden
originals = {
inherit (nixpkgs) git notmuch;
ffmpeg = nixpkgs.ffmpeg-full;
};
# Make NixOS available
nixos = import "${nixpkgsSrc}/nixos";
# Build a Chromium with VAAPI (hardware-accelerated video decoding)
# enabled. This is useful for Stadia on desktop.
chromiumVaapi = nixpkgs.chromium.override {
useVaapi = true;
};
}