1
0
Fork 0
mirror of https://github.com/nix-community/home-manager synced 2025-01-01 14:49:48 +01:00
home-manager/tests/modules/misc/xdg/desktop-entries.nix
cwyc 426ab2cf11
xdg-desktop-entries: reflect changes in makeDesktopItem API ()
Based on nixpkgs commit c4b3aa62608d592d8a983be685f7e82000f4de30
stringBool is not needed because makeDesktopItem handles converting boolean parameters to string,
and noDisplay and prefersNonDefaultGPU parameters have been added.
2022-01-04 22:58:20 -05:00

60 lines
1.5 KiB
Nix

{ config, lib, pkgs, ... }:
with lib;
{
config = {
xdg.desktopEntries = {
full = { # full definition
type = "Application";
exec = "test --option";
icon = "test";
comment = "My Application";
terminal = true;
name = "Test";
genericName = "Web Browser";
mimeType = [ "text/html" "text/xml" ];
categories = [ "Network" "WebBrowser" ];
startupNotify = false;
noDisplay = false;
prefersNonDefaultGPU = false;
extraConfig = ''
[X-ExtraSection]
Exec=foo -o
'';
settings = {
Keywords = "calc;math";
DBusActivatable = "false";
};
fileValidation = true;
};
min = { # minimal definition
exec = "test --option";
name = "Test";
};
};
#testing that preexisting entries in the store are overridden
home.packages = [
(pkgs.makeDesktopItem {
name = "full";
desktopName = "We don't want this";
exec = "no";
})
(pkgs.makeDesktopItem {
name = "min";
desktopName = "We don't want this";
exec = "no";
})
];
nmt.script = ''
assertFileExists home-path/share/applications/full.desktop
assertFileExists home-path/share/applications/min.desktop
assertFileContent home-path/share/applications/full.desktop \
${./desktop-full-expected.desktop}
assertFileContent home-path/share/applications/min.desktop \
${./desktop-min-expected.desktop}
'';
};
}