{ config, lib, pkgs, user, ... }: let this = config.my.application.spotify; graphical = config.my.graphical; in with lib; { options = { my.application.spotify.enable = mkOption { default = graphical.enable; type = with types; bool; }; }; config = mkIf this.enable { home-manager.users."${user.name}" = { home.packages = with pkgs; [ spotify ]; }; # Local discovery - https://nixos.wiki/wiki/Spotify networking.firewall.allowedTCPPorts = [ 57621 ]; }; }