{ osConfig, pkgs, lib, ... }: let inherit (lib) mkIf; inherit (osConfig) modules; sys = modules.system; prg = sys.programs; dev = modules.device; acceptedTypes = ["laptop" "desktop" "hybrid" "lite"]; in { config = mkIf ((prg.gui.enable && sys.printing."3d".enable) && (builtins.elem dev.type acceptedTypes)) { home.packages = with pkgs; [ freecad prusa-slicer ]; }; }