89 lines
2.3 KiB
Nix
89 lines
2.3 KiB
Nix
{
|
|
# lib,
|
|
# pkgs,
|
|
inputs,
|
|
system,
|
|
perSystem,
|
|
addPkgs ? [],
|
|
bwrapperOpts ? {},
|
|
# packageOverrides ? {},
|
|
unfreePkgs ? [],
|
|
...
|
|
}: let
|
|
pkgs = import inputs.nixpkgs {
|
|
inherit system;
|
|
overlays = [inputs.nix-bwrapper.overlays.bwrapper];
|
|
|
|
config.allowUnfreePredicate = pkg:
|
|
builtins.elem (pkgs.lib.getName pkg) unfreePkgs;
|
|
};
|
|
in (pkgs.mkBwrapper (pkgs.lib.attrsets.recursiveUpdate rec {
|
|
app = {
|
|
addPkgs =
|
|
[
|
|
pkgs.flatpak-xdg-utils
|
|
]
|
|
++ addPkgs;
|
|
package = perSystem.helium.helium;
|
|
id = "net.imput.Helium" + "_bwrapped";
|
|
env = {
|
|
GSETTINGS_BACKEND = "dconf";
|
|
|
|
# use freedesktop portals (like file picker)
|
|
GTK_USE_PORTAL = 1;
|
|
# QT_QPA_PLATFORMTHEME = "flatpak";
|
|
};
|
|
};
|
|
fhsenv.opts.dieWithParent = false;
|
|
fhsenv.performDesktopPostInstall = true;
|
|
|
|
# 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"
|
|
"org.freedesktop.portal.Documents"
|
|
"org.freedesktop.portal.FileManager"
|
|
];
|
|
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
|
|
"$HOME/.local/share/applications"
|
|
"$HOME/.local/share/icons"
|
|
];
|
|
mounts.read = [
|
|
"$HOME/.config/dconf"
|
|
];
|
|
}
|
|
bwrapperOpts))
|