25 lines
719 B
Nix
25 lines
719 B
Nix
{ lib, config, pkgs, inputs, outputs, home-manager, ... }@args:
|
|
with lib; let
|
|
osConfig = if args ? osConfig then args.osConfig else args.config;
|
|
cfg = if osConfig ? roles && osConfig.roles ? citrix then osConfig.roles.citrix else {enable = false;};
|
|
citrixPkgs = import inputs.nixpkgs {
|
|
system = pkgs.system;
|
|
config = pkgs.config // {
|
|
allowUnfree = true;
|
|
allowInsecure = true;
|
|
};
|
|
};
|
|
in {
|
|
config = mkIf cfg.enable {
|
|
home.packages = with citrixPkgs; [ citrix_workspace ];
|
|
nixpkgs.config = {
|
|
allowUnfree = true;
|
|
allowInsecure = true;
|
|
};
|
|
home.file."ICAClient" = {
|
|
recursive = true;
|
|
source = ./files/citrix;
|
|
target = ".ICAClient";
|
|
};
|
|
};
|
|
}
|