33 rpath = lib.makeLibraryPath [
61 platformStr = "linuxarm64";
62 projectArch = "arm64";
65 platformStr = "linux64";
66 projectArch = "x86_64";
69 platforms."aarch64-linux".sha256 = "12sp58nxa3nv800badv62vpvc30hyb0ykywdaxgv9y8pswp9lq0z";
70 platforms."x86_64-linux".sha256 = "0vzzwq1k6bv9d209yg3samvfnfwj7s58y9r3p3pd98wxa9iyzf4j";
72 platformInfo = builtins.getAttr stdenv.hostPlatform.system platforms;
74 stdenv.mkDerivation rec {
77 gitRevision = "5053a95";
78 chromiumVersion = "117.0.5938.150";
81 url = "https://cef-builds.spotifycdn.com/cef_binary_${version}+g${gitRevision}+chromium-${chromiumVersion}_${platformInfo.platformStr}_minimal.tar.bz2";
82 inherit (platformInfo) sha256;
85 nativeBuildInputs = [ cmake ];
86 cmakeFlags = [ "-DPROJECT_ARCH=${platformInfo.projectArch}" ];
87 makeFlags = [ "libcef_dll_wrapper" ];
92 mkdir -p $out/lib/ $out/share/cef/
93 cp libcef_dll_wrapper/libcef_dll_wrapper.a $out/lib/
94 cp ../Release/libcef.so $out/lib/
95 patchelf --set-rpath "${rpath}" $out/lib/libcef.so
96 cp ../Release/*.bin $out/share/cef/
97 cp -r ../Resources/* $out/share/cef/
98 cp -r ../include $out/
102 inherit obs-studio; # frequently breaks on CEF updates
104 passthru.updateScript = ./update.sh;
107 description = "Simple framework for embedding Chromium-based browsers in other applications";
108 homepage = "https://cef-builds.spotifycdn.com/index.html";
109 maintainers = with maintainers; [ puffnfresh ];
110 sourceProvenance = with sourceTypes; [
114 license = licenses.bsd3;
115 platforms = [ "x86_64-linux" "aarch64-linux" ];