Files
packages-blueprint/packages/obsidian-bwrapped/default.nix
2025-12-31 20:05:41 +02:00

50 lines
1.1 KiB
Nix

{
# lib,
# pkgs,
inputs,
system,
addPkgs ? [],
bwrapperOpts ? {},
isCli ? false,
packageOverrides ? {},
unfreePkgs ? ["obsidian"],
...
}: 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 = pkgs.obsidian.override packageOverrides;
id = "md.obsidian.Obsidian" + "_bwrapped";
};
# app.overwriteExec = !isCli;
# isFhsenv = true;
app.env = {
XDG_DATA_DIRS = "$XDG_DATA_DIRS";
};
fhsenv.opts.dieWithParent = false;
fhsenv.skipExtraInstallCmds = isCli;
sockets = {
x11 = !isCli;
wayland = !isCli;
pulseaudio = !isCli;
pipewire = !isCli;
};
mounts.readWrite = [
"$XDG_RUNTIME_DIR/app/${app.id}"
];
mounts.read = [
# "$HOME/.local/share/applications"
# "$HOME/.config/mimeapps.list"
];
}
bwrapperOpts)