blob: ec17a61d5a9558263d64fa2f481c04349f7491a5 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
{
pkgs,
sysLib,
...
}: {
services.dbus.enable = true;
xdg = {
portal = {
enable = true;
termfilechooser = {
enable = true;
settings = {
filechooser = {
cmd = let
nativeBuildInputs = with pkgs; [makeWrapper lf gawk coreutils mktemp dash fd gnugrep];
in "${pkgs.runCommandLocal "lf_wrapper" {
inherit nativeBuildInputs;
} ''
install -m755 ${./scripts/lf_wrapper} -D "$out/bin/lf_wrapper"
patchShebangs "$out/bin/lf_wrapper"
wrapProgram "$out/bin/lf_wrapper" --prefix PATH : ${pkgs.lib.makeBinPath nativeBuildInputs};
chown -R 1000:100 "$out/bin"
''}/bin/lf_wrapper";
};
};
};
wlr = {
enable = true;
};
config = {
common = {
# NOTE: The next entry is supposedly needed for gtk based apps <2023-08-31>
default = ["wlr" "gtk"];
"org.freedesktop.impl.portal.FileChooser" = ["termfilechooser"];
};
# TODO: Also activate, when on another wlr-based compositor <2023-11-25>
river = {
default = ["wlr" "gtk"];
"org.freedesktop.impl.portal.FileChooser" = ["termfilechooser"];
};
};
extraPortals = with pkgs; [
xdg-desktop-portal-gtk
xdg-desktop-portal-wlr
xdg-desktop-portal-termfilechooser
];
};
};
# TODO: mime = {};
}
|