mirror of
https://github.com/foo-dogsquared/nixos-config.git
synced 2025-03-15 06:19:00 +00:00
lib/builders: add settings attribute for XDG MIME list builder
This commit is contained in:
parent
72b6d22f71
commit
494cfe614f
@ -10,6 +10,11 @@
|
||||
# with.
|
||||
desktopName ? "",
|
||||
|
||||
# Optional Nix-representable settings in INI format. Mutually exclusive with
|
||||
# `addedAssociations`, `removedAssociations`, and `defaultApplications` and
|
||||
# basically ignores proper checking if set.
|
||||
settings ? { },
|
||||
|
||||
# Applications to be put in `Added Associations`. This is not set when the
|
||||
# database is desktop-specific (when the `desktopName` is non-empty.)
|
||||
addedAssociations ? { },
|
||||
@ -28,12 +33,14 @@ writeTextFile {
|
||||
text =
|
||||
# Non-desktop-specific mimeapps.list are only allowed to specify
|
||||
# default applications.
|
||||
lib.generators.toINI { } ({
|
||||
"Default Applications" = defaultApplications;
|
||||
} // (lib.optionalAttrs (desktopName == "") {
|
||||
"Added Associations" = addedAssociations;
|
||||
"Removed Associations" = removedAssociations;
|
||||
}));
|
||||
lib.generators.toINI { } (
|
||||
if (settings != { }) then settings
|
||||
else {
|
||||
"Default Applications" = defaultApplications;
|
||||
} // (lib.optionalAttrs (desktopName == "") {
|
||||
"Added Associations" = addedAssociations;
|
||||
"Removed Associations" = removedAssociations;
|
||||
}));
|
||||
destination = "/share/applications/${
|
||||
lib.optionalString (desktopName != "") "${desktopName}-"
|
||||
}mimeapps.list";
|
||||
|
Loading…
Reference in New Issue
Block a user