63 lines
1.2 KiB
Nix
63 lines
1.2 KiB
Nix
|
|
{
|
||
|
|
config,
|
||
|
|
lib,
|
||
|
|
pkgs,
|
||
|
|
...
|
||
|
|
}:
|
||
|
|
|
||
|
|
{
|
||
|
|
imports = [ ];
|
||
|
|
|
||
|
|
options.me = {
|
||
|
|
flatpak.enable = lib.mkOption {
|
||
|
|
type = lib.types.bool;
|
||
|
|
default = false;
|
||
|
|
example = true;
|
||
|
|
description = "Whether we want to install flatpak.";
|
||
|
|
};
|
||
|
|
};
|
||
|
|
|
||
|
|
config = lib.mkIf config.me.flatpak.enable {
|
||
|
|
services.flatpak.enable = true;
|
||
|
|
|
||
|
|
environment.persistence."/persist" = lib.mkIf (config.me.mountPersistence) {
|
||
|
|
hideMounts = true;
|
||
|
|
|
||
|
|
directories = [
|
||
|
|
{
|
||
|
|
directory = "/var/lib/flatpak";
|
||
|
|
user = "root";
|
||
|
|
group = "root";
|
||
|
|
mode = "0755";
|
||
|
|
}
|
||
|
|
];
|
||
|
|
|
||
|
|
users.talexander = {
|
||
|
|
directories = [
|
||
|
|
{
|
||
|
|
# User-specific configuration.
|
||
|
|
directory = ".local/share/flatpak";
|
||
|
|
user = "talexander";
|
||
|
|
group = "talexander";
|
||
|
|
mode = "0755";
|
||
|
|
}
|
||
|
|
{
|
||
|
|
# App data
|
||
|
|
directory = ".var/app";
|
||
|
|
user = "talexander";
|
||
|
|
group = "talexander";
|
||
|
|
mode = "0755";
|
||
|
|
}
|
||
|
|
{
|
||
|
|
# Flatpak Lutris installs
|
||
|
|
directory = "Games";
|
||
|
|
user = "talexander";
|
||
|
|
group = "talexander";
|
||
|
|
mode = "0755";
|
||
|
|
}
|
||
|
|
];
|
||
|
|
};
|
||
|
|
};
|
||
|
|
};
|
||
|
|
}
|