This commit is contained in:
Vivian 2024-03-18 09:21:59 +01:00
parent 52483f2ea1
commit 121d11c0ab
8 changed files with 53 additions and 101 deletions

View file

@ -7,8 +7,6 @@ https://git.catgirl.cloud/999eagle/dotfiles-nix/-/blob/main/overlay/mastodon/gli
*/
{ lib, stdenv, nodejs-slim, bundlerEnv, nixosTests
, yarn, callPackage, ruby, writeShellScript
, fetchYarnDeps, prefetch-yarn-deps
, yarn-berry, callPackage, imagemagick, ffmpeg, file, ruby, writeShellScript
, brotli
@ -31,6 +29,18 @@ stdenv.mkDerivation rec {
name = "${pname}-gems-${version}";
inherit version gemset ruby;
gemdir = src;
# This fix (copied from https://github.com/NixOS/nixpkgs/pull/76765) replaces the gem
# symlinks with directories, resolving this error when running rake:
# /nix/store/451rhxkggw53h7253izpbq55nrhs7iv0-mastodon-gems-3.0.1/lib/ruby/gems/2.6.0/gems/bundler-1.17.3/lib/bundler/settings.rb:6:in `<module:Bundler>': uninitialized constant Bundler::Settings (NameError)
postBuild = ''
for gem in "$out"/lib/ruby/gems/*/gems/*; do
cp -a "$gem/" "$gem.new"
rm "$gem"
# needed on macOS, otherwise the mv yields permission denied
chmod +w "$gem.new"
mv "$gem.new" "$gem"
done
'';
};
mastodonModules = stdenv.mkDerivation {
@ -97,8 +107,7 @@ stdenv.mkDerivation rec {
'';
};
propagatedBuildInputs = [ mastodonGems.wrappedRuby ];
nativeBuildInputs = [ brotli ];
propagatedBuildInputs = [ imagemagick ffmpeg file mastodonGems.wrappedRuby ];
buildInputs = [ mastodonGems nodejs-slim ];
buildPhase = ''