52 lines
1.2 KiB
Nix
52 lines
1.2 KiB
Nix
{
|
|
# lib,
|
|
# pkgs,
|
|
inputs,
|
|
system,
|
|
# perSystem,
|
|
addPkgs ? [],
|
|
bwrapperOpts ? {},
|
|
packageOverrides ? {},
|
|
unfreePkgs ? [],
|
|
...
|
|
}: let
|
|
pkgs = import inputs.nixpkgs {
|
|
config.allowUnfreePredicate = pkg:
|
|
builtins.elem (pkgs.lib.getName pkg) unfreePkgs;
|
|
|
|
inherit system;
|
|
overlays = [inputs.nix-bwrapper.overlays.bwrapper];
|
|
};
|
|
in (pkgs.mkBwrapper (pkgs.lib.attrsets.recursiveUpdate {
|
|
app = {
|
|
inherit addPkgs;
|
|
package = pkgs.legcord.override packageOverrides;
|
|
runScript = "legcord";
|
|
# TODO: figure out the right id
|
|
id = "dev.pzurek.Legcord" + "_bwrapped";
|
|
execArgs = "--disable-gpu-memory-buffer-video-frames";
|
|
env = {
|
|
ELECTRON_TRASH = "gio";
|
|
};
|
|
};
|
|
mounts.readWrite = [
|
|
"$XDG_RUNTIME_DIR/app/com.discordapp.Discord"
|
|
"$XDG_RUNTIME_DIR/speech-dispatcher"
|
|
# "$HOME/Downloads"
|
|
];
|
|
dbus.session.talks = [
|
|
"org.freedesktop.ScreenSaver"
|
|
"org.kde.StatusNotifierWatcher"
|
|
"com.canonical.AppMenu.Registrar"
|
|
"com.canonical.indicator.application"
|
|
"com.canonical.Unity"
|
|
];
|
|
dbus.system.talks = [
|
|
"org.freedesktop.UPower"
|
|
];
|
|
dbus.session.owns = [
|
|
"com.discordapp.Discord"
|
|
];
|
|
}
|
|
bwrapperOpts))
|