Files
nixos-blueprint/packages/helium-browser-bwrapped/default.nix
T

78 lines
2.0 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 rec {
app = {
inherit addPkgs;
package = perSystem.self.helium-browser;
id = "net.imput.Helium" + "_bwrapped";
runScript = "helium";
env = {
GSETTINGS_BACKEND = "dconf";
};
};
# https://github.com/flathub/io.github.ungoogled_software.ungoogled_chromium/blob/master/io.github.ungoogled_software.ungoogled_chromium.yaml
dbus.system.talks = [
"org.bluez"
"org.freedesktop.Avahi"
"org.freedesktop.UPower"
];
dbus.session.talks = [
# "org.a11y.Bus"
# "org.gtk.vfs.*"
"ca.desrt.dconf"
"com.canonical.AppMenu.Registrar"
"org.cinnamon.ScreenSaver"
"org.freedesktop.FileManager1"
"org.freedesktop.Notifications"
"org.freedesktop.ScreenSaver"
"org.freedesktop.secrets"
"org.gnome.Mutter.IdleMonitor.*"
"org.gnome.ScreenSaver"
"org.gnome.SessionManager"
"org.kde.StatusNotifierWatcher"
"org.kde.kwalletd5"
"org.kde.kwalletd6"
"org.xfce.ScreenSaver"
];
dbus.session.owns = [
"org.mpris.MediaPlayer2.chromium.*"
];
mounts.readWrite = [
# - --filesystem=/run/.heim_org.h5l.kcm-socket
# - --filesystem=host-etc
# "$XDG_RUNTIME_DIR/app/${app.id}"
# "$XDG_RUNTIME_DIR/speech-dispatcher:ro"
"$XDG_RUNTIME_DIR/pipewire-0"
# For GNOME proxy resolution
"$XDG_RUNTIME_DIR/dconf"
# To install a PWA application
"~/.local/share/applications"
"~/.local/share/icons"
];
mounts.read = [
"$HOME/.config/dconf"
];
}
bwrapperOpts))