Profiles Configuration
A profile is a set of software needed for a particular use case. All profiles configuration files are in modules/profiles.
To add a new profile, do the following:
- Create your own configuration file using modules/profiles/mvp-user-trial.nix as a reference.
- Depending on the location of your reference appvms, services, or programs change the includes to point to them.
- Create a new enable option to enable the profile, for example,
new-cool-profile
. - In the lower section, under the correct area appvms, services, programs, make sure to describe additional definitions you need.
For example, a safe-and-unsave-browsing.nix
file with a simple setup that includes business-vm and chrome-vm could look like this:
config = lib.mkIf cfg.enable {
ghaf = {
reference = {
appvms = {
enable = true;
chromium-vm = true;
business-vm = true;
};
services = {
enable = true;
};
programs = {
};
};
profiles = {
laptop-x86 = {
enable = true;
netvmExtraModules = [../reference/services];
guivmExtraModules = [../reference/programs];
inherit (config.ghaf.reference.appvms) enabled-app-vms;
};
};
};
};