39 lines
1 KiB
Nix
39 lines
1 KiB
Nix
#
|
|
# Fixes armcord to work on wayland.
|
|
#
|
|
# vim: et:ts=2:sw=2:
|
|
#
|
|
{ ... }:
|
|
let
|
|
overlay = final': prev': {
|
|
armcord = prev'.armcord.overrideAttrs (prev: {
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
|
|
mkdir -p "$out/bin"
|
|
cp -R "opt" "$out"
|
|
cp -R "usr/share" "$out/share"
|
|
chmod -R g-w "$out"
|
|
|
|
# Wrap the startup command
|
|
makeWrapper $out/opt/ArmCord/armcord $out/bin/armcord \
|
|
"''${gappsWrapperArgs[@]}" \
|
|
--prefix XDG_DATA_DIRS : "${prev'.gtk3}/share/gsettings-schemas/${prev'.gtk3.name}/" \
|
|
--add-flags "--ozone-platform=wayland --enable-features=WebRTCPipeWireCapturer" \
|
|
--prefix LD_LIBRARY_PATH : "${prev'.lib.makeLibraryPath prev.buildInputs}" \
|
|
--suffix PATH : ${prev'.lib.makeBinPath [ prev'.xdg-utils ]}
|
|
|
|
# Fix desktop link
|
|
substituteInPlace $out/share/applications/armcord.desktop \
|
|
--replace /opt/ArmCord/ $out/bin/
|
|
|
|
runHook postInstall
|
|
'';
|
|
});
|
|
|
|
};
|
|
in
|
|
{
|
|
nixpkgs.overlays = [ overlay ];
|
|
}
|